Skip to content

feat(acp): add editor protocol server - #8

Open
yan-ad wants to merge 4 commits into
Blankeos:mainfrom
yan-ad:feat/acp
Open

feat(acp): add editor protocol server#8
yan-ad wants to merge 4 commits into
Blankeos:mainfrom
yan-ad:feat/acp

Conversation

@yan-ad

@yan-ad yan-ad commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Add crabcode acp [--cwd PATH], a stdio Agent Client Protocol server backed by the Rust ACP SDK.
  • Implement persisted ACP session lifecycle: create, list, load, resume, close, fork, prompt streaming, cancellation, mode selection, tool updates, and permission forwarding.
  • Expose selectable Crabcode models to ACP clients with validated, session-local provider/model changes.
  • Add crabcode models [provider] for non-interactive model discovery using the same credentials, custom providers, free models, runtime models, and effective catalog as Crabcode.
  • Make configuration and history initialization workspace-aware for ACP sessions.
  • Document Zed setup and add an ACP capability matrix with supported behavior, limitations, and follow-up work.

Editor Validation

The crabcode acp command was tested successfully with Zed IDE:

  • Zed version: 1.13.1
  • Zed commit: 00bd72e7838f4b875a913cd112b47a0ebe1ca62b
  • Full version: 1.13.1+stable.332.00bd72e7838f4b875a913cd112b47a0ebe1ca62b

Validation

  • cargo build
  • cargo fmt --check
  • cargo test acp::service::tests --bin crabcode
  • cargo test parses_acp_command_with_workspace --bin crabcode
  • cargo test parses_models_command_with_optional_provider --bin crabcode
  • cargo test model::catalog::tests --bin crabcode
  • cargo test config::configuration --bin crabcode
  • git diff --check

Notes

  • ACP model choices use canonical provider/model identifiers and remain session-local.
  • The capability matrix intentionally documents unsupported image/audio ACP prompts, client-supplied MCP overlays, terminal embedding, reasoning-effort selection, and authoritative usage updates instead of advertising them.

@Blankeos

Copy link
Copy Markdown
Owner

Was thinking of this for a while now. Thanks for adding! Will review asap

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants