Bug Description
Summary
The acp extra currently allows agent-client-protocol>=0.8.1,<1.0, but hermes-acp appears incompatible with agent-client-protocol==0.9.0.
What I observed
Installing Hermes with the ACP extra resolves and installs ACP successfully, but launching hermes-acp fails with:
ImportError: cannot import name 'AuthMethod' from 'acp.schema'
Why this seems to happen
In pyproject.toml, Hermes defines:
acp = ["agent-client-protocol>=0.8.1,<1.0"]
But in acp_adapter/server.py, Hermes imports and uses:
from acp.schema import AuthMethod
With agent-client-protocol==0.9.0, acp.schema no longer seems to expose AuthMethod; the newer schema uses concrete auth method types instead ( 'AuthMethodAgent', 'AuthMethodEnvVar', 'AuthMethodTerminal').
Steps to Reproduce
cd ~/.hermes/hermes-agent
VIRTUAL_ENV="$HOME/.hermes/hermes-agent/venv" uv pip install -e ".[acp]"
VIRTUAL_ENV="$HOME/.hermes/hermes-agent/venv" uv pip install "agent-client-protocol==0.9.0"
~/.hermes/hermes-agent/venv/bin/hermes-acp
Expected Behavior
2026-03-26 02:22:26 [INFO] acp_adapter.entry: Loaded env from /home/myro/.hermes/.env
2026-03-26 02:22:26 [INFO] acp_adapter.entry: Starting hermes-agent ACP adapter
2026-03-26 02:22:27 [INFO] acp_adapter.server: ACP client connected
Actual Behavior
Traceback (most recent call last):
File "/home/myro/.hermes/hermes-agent/venv/bin/hermes-acp", line 10, in
sys.exit(main())
^^^^^^
File "/home/myro/.hermes/hermes-agent/acp_adapter/entry.py", line 73, in main
from .server import HermesACPAgent
File "/home/myro/.hermes/hermes-agent/acp_adapter/server.py", line 12, in
from acp.schema import (
ImportError: cannot import name 'AuthMethod' from 'acp.schema' (/home/myro/.hermes/hermes-agent/venv/lib/python3.11/site-packages/acp/schema.py)
Affected Component
CLI (interactive chat)
Messaging Platform (if gateway-related)
No response
Operating System
Rocky Linux 9.7
Python Version
3.11.15
Hermes Version
v0.4.0
Relevant Logs / Traceback
Traceback (most recent call last):
File "/home/myro/.hermes/hermes-agent/venv/bin/hermes-acp", line 10, in <module>
sys.exit(main())
^^^^^^
File "/home/myro/.hermes/hermes-agent/acp_adapter/entry.py", line 73, in main
from .server import HermesACPAgent
File "/home/myro/.hermes/hermes-agent/acp_adapter/server.py", line 12, in <module>
from acp.schema import (
ImportError: cannot import name 'AuthMethod' from 'acp.schema' (/home/myro/.hermes/hermes-agent/venv/lib/python3.11/site-packages/acp/schema.py)
Root Cause Analysis (optional)
In pyproject.toml, Hermes defines:
acp = ["agent-client-protocol>=0.8.1,<1.0"]
But in acp_adapter/server.py, Hermes imports and uses:
from acp.schema import AuthMethod
With agent-client-protocol==0.9.0, acp.schema no longer seems to expose AuthMethod; the newer schema uses concrete auth method types instead.
I verified that AuthMethod did not exist in the new schema by running
import acp.schema
print(dir(acp.schema))
The new auth methods are 'AuthMethodAgent', 'AuthMethodEnvVar', 'AuthMethodTerminal'
Proposed Fix (optional)
No response
Are you willing to submit a PR for this?
Bug Description
Summary
The
acpextra currently allowsagent-client-protocol>=0.8.1,<1.0, buthermes-acpappears incompatible withagent-client-protocol==0.9.0.What I observed
Installing Hermes with the ACP extra resolves and installs ACP successfully, but launching
hermes-acpfails with:Why this seems to happen
In
pyproject.toml, Hermes defines:But in
acp_adapter/server.py, Hermes imports and uses:With
agent-client-protocol==0.9.0,acp.schemano longer seems to exposeAuthMethod; the newer schema uses concrete auth method types instead ( 'AuthMethodAgent', 'AuthMethodEnvVar', 'AuthMethodTerminal').Steps to Reproduce
Expected Behavior
2026-03-26 02:22:26 [INFO] acp_adapter.entry: Loaded env from /home/myro/.hermes/.env
2026-03-26 02:22:26 [INFO] acp_adapter.entry: Starting hermes-agent ACP adapter
2026-03-26 02:22:27 [INFO] acp_adapter.server: ACP client connected
Actual Behavior
Traceback (most recent call last):
File "/home/myro/.hermes/hermes-agent/venv/bin/hermes-acp", line 10, in
sys.exit(main())
^^^^^^
File "/home/myro/.hermes/hermes-agent/acp_adapter/entry.py", line 73, in main
from .server import HermesACPAgent
File "/home/myro/.hermes/hermes-agent/acp_adapter/server.py", line 12, in
from acp.schema import (
ImportError: cannot import name 'AuthMethod' from 'acp.schema' (/home/myro/.hermes/hermes-agent/venv/lib/python3.11/site-packages/acp/schema.py)
Affected Component
CLI (interactive chat)
Messaging Platform (if gateway-related)
No response
Operating System
Rocky Linux 9.7
Python Version
3.11.15
Hermes Version
v0.4.0
Relevant Logs / Traceback
Root Cause Analysis (optional)
In
pyproject.toml, Hermes defines:But in
acp_adapter/server.py, Hermes imports and uses:With
agent-client-protocol==0.9.0,acp.schemano longer seems to exposeAuthMethod; the newer schema uses concrete auth method types instead.I verified that AuthMethod did not exist in the new schema by running
The new auth methods are 'AuthMethodAgent', 'AuthMethodEnvVar', 'AuthMethodTerminal'
Proposed Fix (optional)
No response
Are you willing to submit a PR for this?