Skip to content

fix(acp): invert slash command routing to allowlist approach#1679

Merged
bug-ops merged 1 commit intomainfrom
fix/acp-agent-loop-slash-commands
Mar 13, 2026
Merged

fix(acp): invert slash command routing to allowlist approach#1679
bug-ops merged 1 commit intomainfrom
fix/acp-agent-loop-slash-commands

Conversation

@bug-ops
Copy link
Owner

@bug-ops bug-ops commented Mar 13, 2026

Summary

  • Replaces the denylist/pass-through pattern in handle_prompt() with an allowlist: only the 5 ACP-native commands (/help, /model, /mode, /clear, /review) are intercepted; everything else is forwarded to the agent loop unchanged
  • Removes the slash_command_pass_through helper function entirely
  • Fixes /plan, /graph, /status, /skills, /scheduler, /compact, and all future agent-loop commands in ACP sessions

Closes #1672

Test plan

  • slash_unknown_command_forwarded_to_agent_loop — unknown commands reach the agent loop
  • acp_native_commands_are_intercepted/help, /help foo, /model, /model foo, /mode, /mode bar, /clear, /review all intercepted
  • agent_loop_commands_are_not_intercepted/plan, /graph, /status, /skills, /scheduler, /compact, /unknown all pass through
  • slash_help_with_args_returns_end_turn — async integration test for /help foo
  • cargo nextest run -p zeph-acp — 314 tests pass

@github-actions github-actions bot added bug Something isn't working documentation Improvements or additions to documentation rust Rust code changes size/M Medium PR (51-200 lines) and removed bug Something isn't working labels Mar 13, 2026
Only ACP-native commands (/help, /model, /mode, /clear, /review) are
intercepted by handle_prompt(); all other slash commands are forwarded
to the agent loop unchanged. Removes the denylist/pass-through pattern
that blocked /plan, /graph, /status, /skills, /scheduler, /compact, etc.
@bug-ops bug-ops force-pushed the fix/acp-agent-loop-slash-commands branch from 9b5d08e to b02b1a7 Compare March 13, 2026 20:00
@github-actions github-actions bot added the bug Something isn't working label Mar 13, 2026
@bug-ops bug-ops enabled auto-merge (squash) March 13, 2026 20:02
@bug-ops bug-ops merged commit c00d5b5 into main Mar 13, 2026
15 checks passed
@bug-ops bug-ops deleted the fix/acp-agent-loop-slash-commands branch March 13, 2026 20:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working documentation Improvements or additions to documentation rust Rust code changes size/M Medium PR (51-200 lines)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(acp): all agent-loop slash commands broken in ACP sessions (plan, graph, status, etc.)

1 participant