Goose codex-acp integration still uses legacy mode values, but @agentclientprotocol/codex-acp now only accepts:
read-only, agent, agent-full-access.
So Goose sessions that still send GOOSE_MODE=auto (default) or smart-approve/approve/chat fail with invalidParams when mode is set/updated.
Observed in code:
agentclientprotocol/codex-acp:
src/AgentMode.ts: AgentMode.all() only returns 3 IDs above; find() is exact-match only.
src/CodexAcpServer.ts: setSessionMode/setSessionConfigOption call applyModeChange, which rejects unknown mode IDs.
- Goose:
crates/goose/src/providers/codex_acp.rs: legacy mapping (GooseMode::Auto -> danger-full-access and map entries Auto -> "full-access", SmartApprove -> "auto", etc.).
- Goose docs still reference old package
@zed-industries/codex-acp.
Request: please add compatibility mapping (e.g. auto/full-access -> agent-full-access, smart-approve -> agent, approve/chat -> read-only) with deprecation notice, to avoid breaking existing Goose users during migration.
Goose
codex-acpintegration still uses legacy mode values, but@agentclientprotocol/codex-acpnow only accepts:read-only,agent,agent-full-access.So Goose sessions that still send
GOOSE_MODE=auto(default) orsmart-approve/approve/chatfail withinvalidParamswhen mode is set/updated.Observed in code:
agentclientprotocol/codex-acp:src/AgentMode.ts:AgentMode.all()only returns 3 IDs above;find()is exact-match only.src/CodexAcpServer.ts:setSessionMode/setSessionConfigOptioncallapplyModeChange, which rejects unknown mode IDs.crates/goose/src/providers/codex_acp.rs: legacy mapping (GooseMode::Auto -> danger-full-accessand map entriesAuto -> "full-access",SmartApprove -> "auto", etc.).@zed-industries/codex-acp.Request: please add compatibility mapping (e.g.
auto/full-access -> agent-full-access,smart-approve -> agent,approve/chat -> read-only) with deprecation notice, to avoid breaking existing Goose users during migration.