feat: add Hermes Agent support#1095
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughThis pull request adds Hermes Agent support to OpenSpec by registering it as an available tool option. The configuration exports a new Hermes Agent entry with a ChangesHermes Agent Configuration and Documentation
Possibly related PRs
Suggested reviewers
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Tip 💬 Introducing Slack Agent: The best way for teams to turn conversations into code.Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.
Built for teams:
One agent for your entire SDLC. Right inside Slack. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
alfred-openspec
left a comment
There was a problem hiding this comment.
Thanks for adding this. I checked the Hermes docs/source and the skill-directory piece looks real, but I think this needs one tightening pass before merge.
Blocking bits:
- Please drop
CONTEXT.mdfromdetectionPathsunless there is a current Hermes source/docs reference for it. Hermes' docs list.hermes.md/HERMES.md, thenAGENTS.md,CLAUDE.md,.cursorrules, and.cursor/rules/*.mdc;CONTEXT.mdis generic enough that this would false-detect Hermes in unrelated repos. - Add a small
available-toolstest for Hermes detection, especially asserting a plainCONTEXT.mddoes not selecthermesif we remove it.
Non-blocking but worth fixing while here: the docs row should probably show the user-facing Hermes skill invocation (/openspec-propose) or explain that skill_view('openspec-propose') is the internal/tool call path, since Hermes' user docs present installed skills as slash commands.
What
Adds Hermes Agent (NousResearch) as a supported tool.
Changes
src/core/config.ts— newhermesentry inAI_TOOLSwithskillsDir: '.hermes'and detection paths forHERMES.md,.hermes.md, andCONTEXT.md(Hermes's standard project-context files)docs/supported-tools.md— new row in the tool table, footnote explaining theexternal_dirswiring required for project-local skills,hermesadded to the--toolsID listHow Hermes loads skills
Hermes reads skills from
~/.hermes/skills/by default. Project-local skill directories are supported viaskills.external_dirsin~/.hermes/config.yaml. The footnote in the docs covers the one-time config step needed to wire.hermes/skills/into Hermes.Hermes uses a skill-first invocation model (
skill_view('openspec-propose')), so no command adapter is needed — skills alone are sufficient.Notes
CONTEXT.mddetection path is the Hermes-conventional per-project context fileSummary by CodeRabbit
New Features
Documentation