Tracks ACP schema 0.12.2, which promotes session/close and session/resume from unstable to the stable surface. Agent implementations must now provide CloseSession and ResumeSession, and the corresponding unstable types and AgentExperimental methods have been removed.
Added
Agentinterface gained two new required methods backed by stable schema entries (#35):CloseSession(ctx context.Context, params CloseSessionRequest) (CloseSessionResponse, error) ResumeSession(ctx context.Context, params ResumeSessionRequest) (ResumeSessionResponse, error)
SessionCapabilitiesnow advertises support via stableClose *SessionCloseCapabilitiesandResume *SessionResumeCapabilitiesfields.ResumeSessionRequestcarriesAdditionalDirectoriesandMcpServers;ResumeSessionResponsereturnsConfigOptionsandModes(with an unstableModelsfield still gated).
Changed
- Schema version bumped to 0.12.2; the
session/closeandsession/resumerequest/response types and capability descriptors no longer carry the UNSTABLE marker in their godoc (#35). ClientSideConnection.UnstableCloseSession/UnstableResumeSessionwere renamed toCloseSession/ResumeSession. Callers must update method names and parameter/return types.ResumeSessionResponse.ConfigOptionsswitched element type fromUnstableSessionConfigOptionto the stableSessionConfigOption.UnstableProviderInfo.Currentis now optional (json:"current,omitempty") and removed from the JSON-required field list — both omission andnullindicate a disabled provider.
Removed
AgentExperimental.UnstableCloseSessionandAgentExperimental.UnstableResumeSession, plus theUnstableCloseSessionRequest/ResponseandUnstableResumeSessionRequest/Responsetypes. Migrate to the stableAgent.CloseSession/Agent.ResumeSessionmethods and the unprefixed types (#35).
Breaking Changes
All Agent implementors must add CloseSession and ResumeSession methods (returning MethodNotFound is fine if the agent doesn't advertise the capability — see the updated example/agent/main.go). Code referencing the unstable types or ClientSideConnection.Unstable{Close,Resume}Session must be renamed:
| Before | After |
|---|---|
AgentExperimental.UnstableCloseSession |
Agent.CloseSession |
AgentExperimental.UnstableResumeSession |
Agent.ResumeSession |
UnstableCloseSessionRequest / Response |
CloseSessionRequest / Response |
UnstableResumeSessionRequest / Response |
ResumeSessionRequest / Response |
ClientSideConnection.UnstableCloseSession |
ClientSideConnection.CloseSession |
ClientSideConnection.UnstableResumeSession |
ClientSideConnection.ResumeSession |
Consumers of UnstableProviderInfo that relied on current always being present should treat a missing or null value as "provider disabled".
Full Changelog: v0.12.0...v0.12.2