Skip to content

acp: implement session lifecycle (initialize, new, load, prompt) #765

@bug-ops

Description

@bug-ops

Parent: #762

Task

Implement the core ACP session lifecycle: capability negotiation, session creation/loading, and prompt handling.

Acceptance criteria

  • server.rsAcpServer struct: dispatches incoming JSON-RPC methods to handlers
  • session.rsAcpSession struct: holds session state, message history, config options
  • initialize handler: exchange AgentCapabilities / ClientCapabilities, report supported features
  • session/new handler: create session, return session ID
  • session/load handler: restore session from persisted state (SQLite via zeph-memory)
  • session/prompt handler: accept user prompt, bridge to agent loop via LoopbackChannel
  • session/cancel notification: forward cancellation to CancellationToken
  • session/set_mode handler: map to agent modes if applicable
  • Integration with LoopbackChannel::pair() pattern (same as A2A TaskProcessor)

Metadata

Metadata

Assignees

No one assigned

    Labels

    acpAgent Client Protocol integrationcorefeatureNew functionality

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions