Skip to content

feat: Move to the renamed claude-agent-acp#131

Merged
carlos-algms merged 4 commits intomainfrom
feat/add-claude-agent-acp
Mar 8, 2026
Merged

feat: Move to the renamed claude-agent-acp#131
carlos-algms merged 4 commits intomainfrom
feat/add-claude-agent-acp

Conversation

@carlos-algms
Copy link
Owner

@carlos-algms carlos-algms commented Feb 21, 2026

Issues before merge:

@coderabbitai
Copy link

coderabbitai bot commented Feb 21, 2026

📝 Walkthrough

Walkthrough

This pull request consolidates ACP provider naming and expands the provider ecosystem. The Claude Code ACP provider is renamed to Claude Agent ACP across configuration, adapter modules, and CLI commands. Three new ACP providers are introduced: Cursor Agent, Augment Code (Auggie), and Mistral Vibe, each with their own adapter modules and configuration entries. User message chunk filtering is centralized in the base ACPClient class, and a new ClaudeAgentACPAdapter is added to handle Claude-specific tool call updates with support for multiple tool kinds including read, edit, fetch, think, SubAgent, SlashCommand, and Skill operations.

Possibly related PRs

Poem

🐰 Hop, skip, and a bound!
Claude's name has turned around—
Agent ACP's the way,
New providers join the fray!
Cursor, Auggie, Mistral's might,
Tool calls flowing left and right!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately reflects the main change: migrating to the renamed claude-agent-acp provider across the codebase.
Description check ✅ Passed The description is directly related to the changeset, explaining the rationale for the rename (brand guidelines compliance) and documenting specific issues fixed.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/add-claude-agent-acp

Tip

Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs).
Share your feedback on Discord.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

carlos-algms added a commit that referenced this pull request Mar 4, 2026
- This was motivated by #131 - Claude is not sending the events anymore
- This also reduces the Agentic responsibilities, leaving it to the
agents
@carlos-algms carlos-algms marked this pull request as ready for review March 4, 2026 20:35
@carlos-algms carlos-algms reopened this Mar 4, 2026
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@AGENTS.md`:
- Line 735: Update the AGENTS.md examples to reflect the new adapter/name:
locate the `claude_acp_adapter.lua` example and the sample key
`["claude-agent-acp"]` and replace the old display name `"Claude ACP"` with the
current adapter display name used in codebase (use the new canonical name), and
update any other occurrences around lines referenced (also check the block at
~752-755) so examples and keys match the actual adapter naming. Ensure the
sample entry and any descriptive text consistently use the new adapter
identifier and display name.

In `@lua/agentic/acp/adapters/claude_agent_acp_adapter.lua`:
- Around line 30-115: Add focused unit tests for
ClaudeAgentACPAdapter:__build_tool_call_update that cover every parsing branch
(read -> file_path and edit -> diff with new_string/old_string/replace_all,
fetch -> query path, fetch -> url with prompt, think with subagent_type ->
SubAgent kind, explicit "SubAgent" kind -> argument formatting and prompt ->
body, other -> SlashCommand and Skill title/args, and the default command/table
conversion fallback). For each test, construct minimal update payloads
exercising FileSystem.to_smart_path, safe_split, extract_content_body and the
command table-to-string conversion, then assert the returned message fields
(tool_call_id, status, kind, argument, body, diff/all) match the expected
normalized shapes to lock behavior and prevent regressions.

In `@lua/agentic/config_default.lua`:
- Line 54: The default provider in config_default.lua is set to
"claude-agent-acp" but upstream parity blockers remain; change the default back
to the stable provider (restore the previous default value for the global
"provider" setting) while keeping "claude-agent-acp" available in the provider
options list; update the single assignment of provider in this file (the line
setting provider = "claude-agent-acp") to the stable provider name instead and
leave the new provider entry intact elsewhere so it can be selected but not used
by default.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 2a39243a-37b4-425c-a2e9-9c7da0c45217

📥 Commits

Reviewing files that changed from the base of the PR and between ce1ecb2 and 99a43ec.

📒 Files selected for processing (6)
  • AGENTS.md
  • README.md
  • lua/agentic/acp/adapters/claude_agent_acp_adapter.lua
  • lua/agentic/acp/agent_instance.lua
  • lua/agentic/config_default.lua
  • openspec/project.md

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

♻️ Duplicate comments (1)
lua/agentic/config_default.lua (1)

54-54: ⚠️ Potential issue | 🟠 Major

Keep claude-agent-acp opt-in until the upstream blocker is actually cleared.

The PR description from February 21, 2026 still says this path is blocked upstream. Making it the shipped default now turns that upstream gap into first-run breakage for anyone relying on the default configuration; keep the new provider entry, but leave the default on the existing stable Claude provider until that blocker is resolved.

🔧 Suggested temporary adjustment
-    provider = "claude-agent-acp",
+    provider = "claude-acp",
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@lua/agentic/config_default.lua` at line 54, The default provider was changed
to "claude-agent-acp" but upstream is still blocked; revert the shipped default
back to the existing stable Claude provider while keeping the new
"claude-agent-acp" entry present for opt-in. Update the provider assignment in
config_default.lua (the provider key) to the previous stable Claude string
(restore the original value used for the stable Claude provider) and leave
"claude-agent-acp" available in the list/config for users to opt into once the
blocker is resolved.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@lua/agentic/acp/adapters/claude_agent_acp_adapter.lua`:
- Around line 34-40: The function ClaudeAgentACPAdapter:__build_tool_call_update
incorrectly types its local/return value as
agentic.ui.MessageWriter.ToolCallBase even though updates are partial (may only
include rawInput and not status); change the function return annotation and the
local 'message' annotation to a new partial-update alias (e.g.,
agentic.ui.MessageWriter.ToolCallUpdate or ToolCallPartial) that marks fields
optional to match the runtime contract, and update any other builder in this
file that currently uses ToolCallBase for updates (the second update builder
mentioned in the review) to use the same partial alias so MessageWriter merging
via tbl_deep_extend handles missing fields correctly.

---

Duplicate comments:
In `@lua/agentic/config_default.lua`:
- Line 54: The default provider was changed to "claude-agent-acp" but upstream
is still blocked; revert the shipped default back to the existing stable Claude
provider while keeping the new "claude-agent-acp" entry present for opt-in.
Update the provider assignment in config_default.lua (the provider key) to the
previous stable Claude string (restore the original value used for the stable
Claude provider) and leave "claude-agent-acp" available in the list/config for
users to opt into once the blocker is resolved.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: f6adc783-43a3-4de3-95d7-895a2f6f5a43

📥 Commits

Reviewing files that changed from the base of the PR and between ce1ecb2 and 9af9388.

📒 Files selected for processing (9)
  • AGENTS.md
  • README.md
  • lua/agentic/acp/acp_client.lua
  • lua/agentic/acp/adapters/claude_agent_acp_adapter.lua
  • lua/agentic/acp/adapters/cursor_acp_adapter.lua
  • lua/agentic/acp/adapters/mistral_vibe_acp_adapter.lua
  • lua/agentic/acp/agent_instance.lua
  • lua/agentic/config_default.lua
  • openspec/project.md
💤 Files with no reviewable changes (1)
  • lua/agentic/acp/adapters/mistral_vibe_acp_adapter.lua

@carlos-algms carlos-algms merged commit dcbb969 into main Mar 8, 2026
8 checks passed
@carlos-algms carlos-algms deleted the feat/add-claude-agent-acp branch March 8, 2026 11:14
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