Skip to content

Add minimal Agent Client Protocol (ACP) stdio mode to ds4-agent#315

Closed
omercelik wants to merge 1 commit into
antirez:mainfrom
omercelik:agent-acp-stdio
Closed

Add minimal Agent Client Protocol (ACP) stdio mode to ds4-agent#315
omercelik wants to merge 1 commit into
antirez:mainfrom
omercelik:agent-acp-stdio

Conversation

@omercelik

@omercelik omercelik commented May 31, 2026

Copy link
Copy Markdown

Summary

This adds a minimal Agent Client Protocol mode to ds4-agent behind --acp. ACP lets editors and other clients drive the agent over stdio using newline delimited JSON-RPC.

The implementation keeps stdout reserved for protocol messages in ACP mode and leaves the existing TUI and --non-interactive paths unchanged.

Scope

  • adds --acp
  • handles initialize, session/new, session/prompt, and session/cancel
  • streams assistant text and tool updates through session/update
  • supports baseline text and resource_link prompt blocks
  • returns standard JSON-RPC errors for parse, request, method, params, and internal failures

Not included

  • session/load or session/list
  • modes or config options
  • client filesystem or terminal methods
  • ACP permission requests

References

Test environment

  • Machine: Apple M4 Max MacBook Pro, 128 GB RAM
  • OS: macOS 26.4.1
  • Backend: Metal
  • Test model: DeepSeek-V4-Flash-IQ2XXS-w2Q2K-AProjQ8-SExpQ8-OutQ8-chat-v2-imatrix.gguf

Tests

  • make clean
  • make
  • make test
  • ./ds4_test --server
  • ./ds4_test --acp
  • make cpu
  • git diff --check

@omercelik omercelik force-pushed the agent-acp-stdio branch 2 times, most recently from c03248b to b6f7547 Compare June 7, 2026 21:57
@omercelik omercelik changed the title Add ACP stdio mode to ds4-agent Add minimal Agent Client Protocol (ACP) stdio mode to ds4-agent Jun 7, 2026
@omercelik

Copy link
Copy Markdown
Author

Closing this in favor of #354, which keeps the same ACP stdio entry point but includes the full non-optional ACP v1 agent coverage and supported DS4 optional capabilities.

@omercelik omercelik closed this Jun 8, 2026
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.

1 participant