Skip to content

feat(acp): pass --skills arg through to ACP session preloader - #24683

Closed
shanewas wants to merge 2 commits into
NousResearch:mainfrom
shanewas:feat/acp-skills-preload
Closed

feat(acp): pass --skills arg through to ACP session preloader#24683
shanewas wants to merge 2 commits into
NousResearch:mainfrom
shanewas:feat/acp-skills-preload

Conversation

@shanewas

Copy link
Copy Markdown

Summary

New feature: pass --skills argument through to the ACP session preloader.

Changes

  • hermes_cli/main.py: When launching an ACP session with hermes sessions start --acp, the --skills flag is now forwarded to the session preloader, allowing skills to be preloaded at session creation time.
  • acp_adapter/session.py: Session preloader now accepts and handles the skills parameter.
  • tests/acp_adapter/test_acp_skills_preload.py: 228 lines of test coverage for the new preloading behavior.

Files changed

  • hermes_cli/main.py
  • acp_adapter/session.py
  • tests/acp_adapter/test_acp_skills_preload.py

shanewas added 2 commits May 13, 2026 09:48
Closes #24466.

Skills passed via `-s` / `--skills` on the `hermes acp` command were
silently discarded because cmd_acp() called acp_main() with no arguments.
The fix mirrors the existing TUI pattern:

1. hermes_cli/main.py — cmd_acp() now reads args.skills and writes
   HERMES_ACP_SKILLS=<comma-separated> into the environment before
   calling acp_main().  The argument uses action='append' so multiple
   `-s foo -s bar` or comma-separated values both work.

2. acp_adapter/session.py — _make_agent() now reads HERMES_ACP_SKILLS at
   session-creation time, calls build_preloaded_skills_prompt() (same
   function the TUI and CLI chat mode use), and injects the result as
   ephemeral_system_prompt on the AIAgent.  Failures are logged at DEBUG
   level so they never crash the ACP server.
test_acp_skills_env_var_injects_ephemeral_system_prompt
test_acp_no_skills_without_env_var
test_acp_comma_separated_skills_parsed_into_list
test_acp_missing_skills_log_at_debug_only
@alt-glitch alt-glitch added type/feature New feature or request P2 Medium — degraded but workaround exists comp/acp Agent Communication Protocol adapter comp/cli CLI entry point, hermes_cli/, setup wizard tool/skills Skills system (list, view, manage) duplicate This issue or pull request already exists labels May 13, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Duplicate of #24521 (same author, same approach via HERMES_ACP_SKILLS env var, same files changed). Also see #24474 (earliest fix for #24466) and #24635 (another competing PR).

@shanewas

Copy link
Copy Markdown
Author

Closing as duplicate of #24474 which has 13 checks passing and follows the full call-chain approach (main.py → acp_main() → entry.py → server.py → session.py). #24474 is the superior implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/acp Agent Communication Protocol adapter comp/cli CLI entry point, hermes_cli/, setup wizard duplicate This issue or pull request already exists P2 Medium — degraded but workaround exists tool/skills Skills system (list, view, manage) type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants