You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add Hermes Agent as native spawn target (#63)
* feat: add Hermes Agent as native spawn target
Add first-class support for Hermes Agent CLI in the spawn adapter system,
following the same patterns used by OpenClaw, Claude, Codex, and other agents.
Spawn adapters (adapters.py, tmux_backend.py, subprocess_backend.py):
- is_hermes_command() detection in command_validation.py and adapters.py
- Hermes included in is_interactive_cli() across all modules
- Auto-insert 'chat' subcommand when bare 'hermes' is passed
- Prompt via -q flag, session isolation via --continue
- Model forwarding via -m in tmux_backend
- --yolo for skip_permissions across all three backends
- None-guard on agent_name to prevent literal "None" session keys
Tests (test_adapters.py):
- is_hermes_command detection (bare name, full path, negatives)
- is_interactive_cli includes hermes
- 7 new tests: yolo, chat insertion, no-duplicate-chat, prompt via -q,
--continue session, no-continue-without-name, yolo-preserved-with-chat
470 tests pass, 0 failures.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: replace invalid --continue flag with --source tool for Hermes spawns
Discovered during end-to-end testing: Hermes --continue only RESUMES existing
sessions and errors out with "No session found" when given a fresh name. Fresh
spawns must let Hermes auto-generate the session ID.
Changes:
- Remove automatic --continue flag from Hermes spawn commands
- Add --source tool so clawteam-spawned Hermes sessions don't pollute the
user's session list (default --source cli)
- Update tests to verify --source tool is set and --continue is absent
Verified end-to-end: hermes chat --yolo --source tool -q "..." responds
correctly and exits cleanly with an auto-generated session ID.
470 tests pass.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* docs: add Hermes Agent to README supported agents
List Hermes in the agents badge, the prose agent list, and the Supported
Agents table. Spawn command: clawteam spawn hermes --team ...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: address codex review findings for Hermes adapter
Codex independent review caught 3 real issues:
[P1] subprocess_backend missing Hermes command block
- Before: Hermes fell through to generic 'hermes -p <prompt>' on Windows
or explicit subprocess backend. Hermes -p means --profile, not prompt.
- After: Added Hermes block with chat insertion, --source tool, -m model,
and -q prompt. Mirrors tmux_backend behavior.
[P2] Blind 'chat' insertion clobbered global options
- Before: insert(1, 'chat') on any hermes command, rewriting 'hermes --profile
foo' into 'hermes chat --profile foo' and breaking argv order.
- After: Only insert chat when user's original command is bare 'hermes'
(len(normalized_command) == 1). Respect user-supplied global options
and alternate subcommands (sessions, model, setup, etc.).
[P3] No backend-level Hermes tests
- Added test_tmux_backend_hermes_chat_source_and_prompt
- Added test_subprocess_backend_hermes_chat_source_and_prompt
- Added test_hermes_preserves_global_options (regression for --profile)
- Added test_hermes_preserves_alternate_subcommand
[P3] README overstated support
- Clarified Hermes status: "Full support (tmux + subprocess)"
474 tests pass (up from 470, +4 new).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
You set the goal. The agent swarm handles the rest — spawning workers, splitting tasks, coordinating, and merging results.
37
37
38
-
Works with [OpenClaw](https://openclaw.ai) (default), [Claude Code](https://claude.ai/claude-code), [Codex](https://openai.com/codex), [nanobot](https://github.com/HKUDS/nanobot), [Cursor](https://cursor.com), and any CLI agent.
38
+
Works with [OpenClaw](https://openclaw.ai) (default), [Claude Code](https://claude.ai/claude-code), [Codex](https://openai.com/codex), [Hermes Agent](https://github.com/NousResearch/hermes-agent), [nanobot](https://github.com/HKUDS/nanobot), [Cursor](https://cursor.com), and any CLI agent.
0 commit comments