Conversation
tmchow
force-pushed
the
fix/hermes-openclaw-safe-skill
branch
from
May 30, 2026 19:47
3df023e to
fd72f56
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR makes the here.now skill safer for agent runtimes and makes its runtime metadata explicit for both Hermes and OpenClaw/ClawHub, while preserving the existing bundled helper-script model.
Important current-state note: until this PR is merged, the documented public install from
heredotnow/skillstill pulls the older skill behavior. The branch in this PR is the version that removes implicit credential-file reads and normalizes metadata.Changes:
metadata.hermesandmetadata.openclawfrontmatter across the canonical, compatibility, and Hermes skill manifestscategory: devops, tags, homepage, andrequires_toolsets: [terminal]hermes/devops/here.nowand update the README install commandcurl,file,jq), and optional env varsprimaryEnvfrom OpenClaw metadata because anonymous publishing works without credentials;HERENOW_API_KEYandHERENOW_DRIVE_TOKENare listed as optionalenvVarsinstead~/.herenow/credentialsherenowcliexists, but this repo does not identify it as an official here.now distribution channel, so the skill should not treat it as the official CLI unless here.now confirms and documents it.env,.git/,.ssh/,.aws/,.gcloud/,.1password/,.hermes/,.herenow/,node_modules/,*.pem,*.key, and filenames containingcredentialorsecretCloses #4.
Rationale
Hermes currently blocks the official here.now skill because the bundled publish helper reads a credential file and then performs network publishing. Even for an official integration, that is a scanner-hostile shape: a skill-installed shell script can read local credentials, walk directories, and make authenticated network requests.
This PR does not weaken scanners and does not claim here.now has an official npm CLI. It keeps the existing script-based integration, but makes the scripts and manifests easier for scanners, users, and registries to reason about:
On the npm question: there is an npm package named
herenowcliwithherenow/here-nowbinaries, but I did not find repo/docs evidence that it is official or maintained by here.now. Until maintainers confirm that package, the safer PR posture is to document it as not an official integration surface and keep these helpers narrow/auditable. If here.now later adopts an official CLI, the skill should prefer that documented CLI and delete duplicated helper logic where practical.Verification
Ran locally:
Validated frontmatter/content structurally with Ruby YAML parsing:
SKILL.mdfiles parse as YAML frontmattermetadata.hermes.category: devopsmetadata.hermes.requires_toolsets: [terminal]metadata.openclaw.requires.bins: [curl, file, jq]HERENOW_API_KEYandHERENOW_DRIVE_TOKENas optional OpenClaw env varsprimaryEnv, because credentials are not required for anonymous publishinghermes/devops/here.now/SKILL.mdRan Hermes skill security scan directly against the local Hermes skill bundle:
Runtime credential-file check:
~/.herenow/credentialspublish.shwithHERENOW_API_KEY/HERENOW_DRIVE_TOKENunset and a localhost API basedrive.sh defaultwith the same fake credential file and unset env vars; it correctly reported missing explicit credentialsAlso checked the mirrored helper scripts remain synchronized by SHA-256 across canonical, compatibility, and Hermes copies.