Skip to content

Add ACP agent sessions with isolated client processes#579

Merged
GCWing merged 9 commits intoGCWing:mainfrom
wgqqqqq:feature/acp-server-model-selection
Apr 29, 2026
Merged

Add ACP agent sessions with isolated client processes#579
GCWing merged 9 commits intoGCWing:mainfrom
wgqqqqq:feature/acp-server-model-selection

Conversation

@wgqqqqq
Copy link
Copy Markdown
Collaborator

@wgqqqqq wgqqqqq commented Apr 29, 2026

Summary

  • Add ACP client session support across desktop, Rust ACP client management, FlowChat state, and session persistence.
  • Add the ACP Agents settings page with preset setup for OpenCode, Claude Code, and Codex, including requirement probing, download/install actions, permission mode selection, and JSON config editing.
  • Integrate ACP agents into workspace session creation and FlowChat streaming, including model selection, permission/tool cards, session history metadata, and external-agent session handling.
  • Isolate ACP client processes per BitFun session so multiple Codex/Claude/OpenCode sessions do not share one ACP process or leak state between sessions.
  • Remove ACP client auto-start/manual start semantics; ACP processes are launched from the workspace/session creation path and stopped with session/client lifecycle cleanup.
  • Add a FlowChat loading indicator while an ACP session is being created, and tighten nav/sidebar overflow handling for the expanded session/workspace UI.

Behavior Notes

  • The workspace menu only offers ACP session entries for enabled and runnable ACP clients.
  • ACP config is normalized under acpClients; deprecated autoStart is no longer written back.
  • stop_acp_client remains available to stop all running session-scoped processes for a client.
  • Session-scoped ACP connections use the BitFun session id as part of the connection key to avoid cross-session process reuse.

Verification

  • cargo check -p bitfun-desktop
  • pnpm run type-check:web
  • pnpm run lint:web
  • pnpm --dir src/web-ui run test:run
  • git diff --check

@GCWing GCWing merged commit 7f7cecc into GCWing:main Apr 29, 2026
4 checks passed
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