Skip to content

Support generic ACP session forking - #1599

Open
smsunarto wants to merge 1 commit into
get-bb:mainfrom
smsunarto:bb/add-generic-acp-thread-forking-thr_uvafee5iy4
Open

Support generic ACP session forking#1599
smsunarto wants to merge 1 commit into
get-bb:mainfrom
smsunarto:bb/add-generic-acp-thread-forking-thr_uvafee5iy4

Conversation

@smsunarto

Copy link
Copy Markdown
Contributor

Summary

  • Enable the existing app, public API, and CLI fork path for generic acp-* providers.
  • Parse agentCapabilities.sessionCapabilities.fork during ACP initialization.
  • Send unstable ACP session/fork with the source provider session ID, target cwd, and MCP servers.
  • Persist the returned child session ID and use it for later turns.
  • Reject agents that do not advertise fork support without creating a fresh history-free session.
  • Accept the nullable configOptions response defined by ACP SDK 1.3.0.

This is provider-generic and has no acp-amp special case.

Implementation notes

The existing server provisioning path already carries the source provider session ID and persists the provider session returned by the host. This change extends the generic ACP adapter and bridge to use that path.

No host-daemon protocol version bump is required because the server-to-daemon fork command already contains the required fork data.

Validation

  • Affected package typechecks passed.
  • Host-daemon typecheck and build passed.
  • Agent providers: 11 tests passed.
  • Agent runtime: 947 tests passed.
  • App: 2,706 tests passed.
  • Server: 1,499 tests passed.
  • ESLint, Prettier, and git diff --check passed.

AGENT GENERATED: by Amp

Negotiate the unstable ACP fork capability, route session/fork through the existing thread fork path, and persist the returned child session identity.

Amp-Thread-ID: https://ampcode.com/threads/T-019ffeea-31bc-70de-833b-bf6045f8578d
Co-authored-by: Amp <amp@ampcode.com>
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