[ 
https://issues.apache.org/jira/browse/CAMEL-24663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18113796#comment-18113796
 ] 

Claus Ibsen commented on CAMEL-24663:
-------------------------------------

Merged to main as e69a5860507d via https://github.com/apache/camel/pull/26244

_Claude Code on behalf of davsclaus_

> Camel TUI: ACP coding-agent provider for the AI panel
> -----------------------------------------------------
>
>                 Key: CAMEL-24663
>                 URL: https://issues.apache.org/jira/browse/CAMEL-24663
>             Project: Camel
>          Issue Type: New Feature
>          Components: camel-jbang
>    Affects Versions: 4.22.0
>            Reporter: Luigi De Masi
>            Assignee: Luigi De Masi
>            Priority: Major
>             Fix For: 4.23.0
>
>
> h3. What
> The TUI's F8 AI panel today runs its own tool-calling loop against a raw LLM 
> API (Anthropic, OpenAI, Gemini, Azure, Watsonx, Ollama). This adds a second 
> backend: the panel can hand the conversation to an external coding agent that 
> speaks the Agent Client Protocol (ACP, https://agentclientprotocol.com), 
> spawned as a subprocess. The agent receives the TUI's own MCP server in 
> {{session/new}} and drives the TUI through the same {{tui_*}} tools external 
> MCP clients use, while its answer, tool calls and permission requests are 
> shown in the panel.
> h3. Why
> * Users get their agent's subscription login (Claude Code, ChatGPT/Codex, IBM 
> Bob, ...) instead of managing API keys in the TUI.
> * Models that reliably call tools, removing the "at least 14B local model" 
> caveat of the Ollama path.
> * The agent brings its own file and terminal tools, so it can fix the route 
> source, not only observe.
> * One protocol covers every ACP agent; the ACP registry lists about 40.
> h3. Design
> * New provider ids next to the existing ones (Ctrl+P / 
> {{camel.tui.ai.provider}}): {{acp:claude}}, {{acp:codex}}, {{acp:bob}}, 
> {{acp:qwen}}, {{acp:opencode}}, {{acp:dsh}} and {{acp:custom}} 
> ({{camel.tui.ai.acp.command}}).
> * A hand-rolled ACP v1 client over stdio using camel-util-json; no new 
> dependency (the ACP Java SDK would add Reactor and Jackson and is itself 
> 0.x). Protocol v1 only; v2 is still labelled draft by the ACP project.
> * Verified adapters: Claude Code and Codex via the official 
> {{@agentclientprotocol}} npm adapters, IBM Bob Shell 2.0.2 ({{bob acp}}), 
> Qwen Code ({{qwen --acp}}), OpenCode ({{opencode acp}}), DeepSeek Harness 
> ({{dsh --profile acp}}, preview). All advertise HTTP MCP support and 
> negotiate protocol 1. Gemini CLI and Antigravity are deliberately not presets 
> (Gemini CLI stopped serving personal Google accounts in June 2026; the 
> Antigravity CLI has no ACP mode yet); both remain reachable through 
> {{acp:custom}}.
> * The embedded MCP server is started on demand on an ephemeral loopback port 
> when an ACP provider is used; {{--mcp}} is not required.
> * Permissions: calls to the camel-tui MCP tools are approved silently; 
> anything else the agent wants to run (file edits, commands) opens a popup 
> with the agent's own options (Enter selects, Esc rejects, Ctrl+C cancels the 
> turn).
> * Streamed answers, one status line per tool call, cancel with Esc/Ctrl+C, 
> {{/clear}} opens a fresh session, agent slash commands and skills reachable 
> as {{/agent:<name>}} and listed in the completion hints, a header strip 
> showing agent, session, working directory and command count.
> * Lazy spawn on the first question so a slow first {{npx}} download never 
> freezes the UI; one {{authenticate}} attempt for agent-managed login methods, 
> otherwise a login hint per preset.
> * Docs: new "Using a coding agent (ACP)" subsection in the TUI manual. No 
> upgrade-guide entry: nothing existing changes behaviour.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to