hermes - ✅(Solved) Fix Bug: delegate_tool.py docs claim 'claude --acp --stdio' works — Claude Code CLI has no --acp flag [2 pull requests, 1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
NousResearch/hermes-agent#19055Fetched 2026-05-04 05:18:21
View on GitHub
Comments
0
Participants
1
Timeline
6
Reactions
0
Author
Participants
Timeline (top)
labeled ×4cross-referenced ×2

tools/delegate_tool.py contains two misleading references that suggest delegate_task(acp_command="claude") should work:

  1. acp_command parameter description:

    "Per-task ACP command override (e.g. 'claude'). Overrides the top-level acp_command for this task only."

  2. acp_args description:

    "Enables spawning Claude Code (claude --acp --stdio)"

In reality, Claude Code CLI (v2.1.126) does not support --acp or --stdio flags:

$ claude --help | grep -E "acp|stdio"
(no matches)

$ claude --acp --stdio
error: unknown option '--acp'

The underlying implementation (agent/copilot_acp_client.py) is specifically built for GitHub Copilot CLI (copilot --acp --stdio), not Claude Code. The file name itself makes this clear.

Error Message

$ claude --help | grep -E "acp|stdio" (no matches)

$ claude --acp --stdio error: unknown option '--acp'

Root Cause

tools/delegate_tool.py contains two misleading references that suggest delegate_task(acp_command="claude") should work:

  1. acp_command parameter description:

    "Per-task ACP command override (e.g. 'claude'). Overrides the top-level acp_command for this task only."

  2. acp_args description:

    "Enables spawning Claude Code (claude --acp --stdio)"

In reality, Claude Code CLI (v2.1.126) does not support --acp or --stdio flags:

$ claude --help | grep -E "acp|stdio"
(no matches)

$ claude --acp --stdio
error: unknown option '--acp'

The underlying implementation (agent/copilot_acp_client.py) is specifically built for GitHub Copilot CLI (copilot --acp --stdio), not Claude Code. The file name itself makes this clear.

Fix Action

Fixed

PR fix notes

PR #19058: fix(delegate): correct ACP docs — Claude Code CLI has no --acp flag

Description (problem / solution / changelog)

Problem

tools/delegate_tool.py schema descriptions claim delegate_task(acp_command="claude") spawns Claude Code via claude --acp --stdio. Claude Code CLI (v2.1.126+) does not support --acp or --stdio flags — the ACP subprocess transport is specifically built for GitHub Copilot CLI (copilot --acp --stdio) in agent/copilot_acp_client.py.

Changes

  • Per-task acp_command example: 'claude''copilot'
  • Top-level acp_command description: Remove "Claude Code (claude --acp --stdio)" reference; clarify requirement for ACP-compatible CLI (currently Copilot only)
  • acp_args description: Remove misleading claude-opus-4-6 model example

1 file changed, +6/-5.

Verification

# Confirm no remaining misleading references
grep -rn "claude.*acp\|Claude Code.*acp" tools/delegate_tool.py
# (no output — clean)

Fixes #19055

Changed files

  • gateway/platforms/whatsapp.py (modified, +4/-1)
  • tests/tools/test_file_tools.py (modified, +37/-0)
  • tools/delegate_tool.py (modified, +6/-5)
  • tools/file_tools.py (modified, +6/-6)

PR #19059: fix(docs): correct ACP command docs - remove misleading claude references

Description (problem / solution / changelog)

Summary

Fixes #19055

The delegate_task tool schema in tools/delegate_tool.py contained misleading references suggesting claude --acp --stdio works as an ACP transport. In reality, Claude Code CLI (v2.1.126+) does not support --acp or --stdio flags. The underlying implementation (agent/copilot_acp_client.py) is built for GitHub Copilot CLI (copilot --acp --stdio), not Claude Code.

Changes

  1. Per-task acp_command description: Changed example from 'claude' to 'copilot', added note that only ACP-compatible CLIs are supported
  2. Top-level acp_command description: Changed example from 'claude', 'copilot' to 'copilot', replaced "Enables spawning Claude Code (claude --acp --stdio)" with "Enables spawning ACP-capable CLIs (e.g. GitHub Copilot: copilot --acp --stdio)"
  3. acp_args description example: Changed model example from 'claude-opus-4-6' to 'gpt-4o' to avoid implying Claude works with ACP transport

Test Plan

  • Python syntax validated (compile() check passes)
  • No functional code changes — only doc/description strings modified
  • copilot --acp --stdio is the correct invocation per agent/copilot_acp_client.py

Changed files

  • tools/delegate_tool.py (modified, +5/-5)

Code Example

$ claude --help | grep -E "acp|stdio"
(no matches)

$ claude --acp --stdio
error: unknown option '--acp'
RAW_BUFFERClick to expand / collapse

Description

tools/delegate_tool.py contains two misleading references that suggest delegate_task(acp_command="claude") should work:

  1. acp_command parameter description:

    "Per-task ACP command override (e.g. 'claude'). Overrides the top-level acp_command for this task only."

  2. acp_args description:

    "Enables spawning Claude Code (claude --acp --stdio)"

In reality, Claude Code CLI (v2.1.126) does not support --acp or --stdio flags:

$ claude --help | grep -E "acp|stdio"
(no matches)

$ claude --acp --stdio
error: unknown option '--acp'

The underlying implementation (agent/copilot_acp_client.py) is specifically built for GitHub Copilot CLI (copilot --acp --stdio), not Claude Code. The file name itself makes this clear.

Steps to Reproduce

  1. delegate_task(acp_command="claude", goal="say hello")
  2. Child agent runs claude --acp --stdio
  3. Fails with: error: unknown option '--acp'

Expected Behavior

Either:

  • (A) Fix the docs — remove "claude" from the example and clarify this only works with ACP-compatible CLIs (currently only copilot)
  • (B) Fix the implementation — detect when acp_command="claude" and fall back to claude -p (print mode) instead of --acp --stdio

Option (A) is a quick doc fix. Option (B) is covered by #5257 and #15300.

Related Issues

  • #5257 — Generalized ACP client for multi-agent CLI orchestration (broader solution)
  • #15300 — claude-code-print SKILL.md for non-ACP delegation
  • #9712 — acp_command silently ignored under Anthropic parent

Environment

  • Hermes: latest main (v23 config)
  • Claude Code: v2.1.126
  • OS: Linux (Ubuntu 24.04)

extent analysis

TL;DR

The most likely fix is to update the documentation in tools/delegate_tool.py to remove the misleading reference to "claude" as a valid acp_command value.

Guidance

  • Verify that the acp_command parameter description is updated to reflect that only ACP-compatible CLIs (currently only copilot) are supported.
  • Check the acp_args description to ensure it does not imply that claude supports --acp or --stdio flags.
  • Consider implementing a fallback to claude -p (print mode) when acp_command="claude" is detected, as proposed in Option (B) of the Expected Behavior section.
  • Review related issues (#5257, #15300, #9712) for broader solutions to ACP client implementation and compatibility.

Example

No code snippet is provided as it is not clearly supported by the issue, but an example of the updated documentation could be:

acp_command = "copilot"  # Only ACP-compatible CLIs are supported

Notes

The provided solution focuses on updating the documentation to reflect the current compatibility of the acp_command parameter. Implementing a fallback to claude -p (print mode) would require additional development and testing.

Recommendation

Apply workaround: Update the documentation to reflect the correct usage and compatibility of the acp_command parameter, as this is a quick and straightforward fix that can be implemented immediately.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING