colmugx/acp/agent does not have a README file
type AgentContextRequestBroker = async (ClientRequest) -> Result[AgentOutboundReply, AgentContextError]type AgentSetConfigOptionHandler = async (AgentContext, SetSessionConfigOptionParams) -> SetSessionConfigOptionResultpub(all) enum AgentAdapterAdmission {
Immediate(AgentAdapterStep)
Invoke(state~ : AgentAdapterState, invocation~ : AgentAdapterInvocation)
}pub(all) enum AgentAdapterCommand {
CancelRequest(request_id~ : RequestId)
TraceError(method_name~ : String, error~ : JsonRpcError)
CloseConnection(reason~ : String)
} derive(Eq, Debug)pub(all) enum AgentAdapterCompletion {
AuthenticateCompleted(id~ : RequestId, result~ : Result[AuthenticateResult, HandlerError])
LogoutCompleted(id~ : RequestId, result~ : Result[LogoutResult, HandlerError])
SessionNewCompleted(id~ : RequestId, result~ : Result[NewSessionResult, HandlerError])
SessionLoadCompleted(id~ : RequestId, result~ : Result[LoadSessionResult, HandlerError])
SessionResumeCompleted(id~ : RequestId, result~ : Result[ResumeSessionResult, HandlerError])
SessionListCompleted(id~ : RequestId, result~ : Result[ListSessionsResult, HandlerError])
SessionDeleteCompleted(id~ : RequestId, result~ : Result[DeleteSessionResult, HandlerError])
SessionCloseCompleted(id~ : RequestId, result~ : Result[CloseSessionResult, HandlerError])
SessionSetModeCompleted(id~ : RequestId, result~ : Result[SetSessionModeResult, HandlerError])
SessionSetConfigOptionCompleted(id~ : RequestId, result~ : Result[SetSessionConfigOptionResult, HandlerError])
SessionPromptCompleted(id~ : RequestId, result~ : Result[PromptResult, HandlerError])
SessionCancelCompleted(result~ : Result[Unit, HandlerError])
} derive(Eq, Debug)pub(all) enum AgentAdapterInvocation {
AuthenticateInvocation(id~ : RequestId, params~ : AuthenticateParams)
LogoutInvocation(id~ : RequestId, params~ : LogoutParams)
SessionNewInvocation(id~ : RequestId, params~ : NewSessionParams)
SessionLoadInvocation(id~ : RequestId, params~ : LoadSessionParams)
SessionResumeInvocation(id~ : RequestId, params~ : ResumeSessionParams)
SessionListInvocation(id~ : RequestId, params~ : ListSessionsParams)
SessionDeleteInvocation(id~ : RequestId, params~ : DeleteSessionParams)
SessionCloseInvocation(id~ : RequestId, params~ : CloseSessionParams)
SessionSetModeInvocation(id~ : RequestId, params~ : SetSessionModeParams)
SessionSetConfigOptionInvocation(id~ : RequestId, params~ : SetSessionConfigOptionParams)
SessionPromptInvocation(id~ : RequestId, params~ : PromptParams)
SessionCancelInvocation(params~ : CancelParams)
} derive(Eq, Debug)pub(all) enum AgentAdapterOutput {
Response(JsonRpcResponse)
Notification(JsonRpcNotification)
Command(AgentAdapterCommand)
} derive(Eq, Debug)pub(all) struct AgentAdapterState {
protocol : AgentProtocolState
reservation : AgentAdapterReservation
} derive(Eq, Debug)pub(all) struct AgentAdapterStep {
state : AgentAdapterState
outputs : Array[AgentAdapterOutput]
} derive(Eq, Debug)pub struct AgentAuthService {
methods : Array[AuthMethod]
authenticate_handler : async (AgentContext, AuthenticateParams) -> AuthenticateResult
logout_handler : async (AgentContext, LogoutParams) -> LogoutResult?
}pub struct AgentContext {
request_broker : async (ClientRequest) -> Result[AgentOutboundReply, AgentContextError]
notification_broker : async (ClientNotification) -> Result[Unit, AgentContextError]
}async fn AgentContext::cancel_request(self : AgentContext, request_id : RequestId) -> Unit raise AgentContextErrorasync fn AgentContext::elicitation_complete(self : AgentContext, params : ElicitationCompleteParams) -> Unit raise AgentContextErrorasync fn AgentContext::elicitation_create(self : AgentContext, params : ElicitationCreateParams) -> ElicitationCreateResult raise AgentContextErrorasync fn AgentContext::read_text_file(self : AgentContext, params : ReadTextFileParams) -> ReadTextFileResult raise AgentContextErrorasync fn AgentContext::request_permission(self : AgentContext, request : RequestPermissionRequest) -> RequestPermissionResponse raise AgentContextErrorasync fn AgentContext::session_update(self : AgentContext, params : SessionUpdateParams) -> Unit raise AgentContextErrorasync fn AgentContext::terminal_create(self : AgentContext, params : TerminalCreateParams) -> TerminalCreateResult raise AgentContextErrorasync fn AgentContext::terminal_kill(self : AgentContext, params : TerminalKillParams) -> TerminalKillResult raise AgentContextErrorasync fn AgentContext::terminal_output(self : AgentContext, params : TerminalOutputParams) -> TerminalOutputResult raise AgentContextErrorasync fn AgentContext::terminal_release(self : AgentContext, params : TerminalReleaseParams) -> TerminalReleaseResult raise AgentContextErrorasync fn AgentContext::terminal_wait_for_exit(self : AgentContext, params : TerminalWaitForExitParams) -> TerminalWaitForExitResult raise AgentContextErrorasync fn AgentContext::write_text_file(self : AgentContext, params : WriteTextFileParams) -> WriteTextFileResult raise AgentContextErrorpub struct AgentEndpoint {
info : Implementation
sessions : AgentSessionService
auth : AgentAuthService?
capabilities : AgentCapabilities
auth_methods : ProtocolNullable[Array[AuthMethod]]
}async fn AgentEndpoint::authenticate(self : AgentEndpoint, context : AgentContext, params : AuthenticateParams) -> AuthenticateResult raise HandlerErrorasync fn AgentEndpoint::cancel(self : AgentEndpoint, context : AgentContext, params : CancelParams) -> Unit raise HandlerErrorasync fn AgentEndpoint::close_session(self : AgentEndpoint, context : AgentContext, params : CloseSessionParams) -> CloseSessionResult raise HandlerErrorasync fn AgentEndpoint::delete_session(self : AgentEndpoint, context : AgentContext, params : DeleteSessionParams) -> DeleteSessionResult raise HandlerErrorasync fn AgentEndpoint::list_sessions(self : AgentEndpoint, context : AgentContext, params : ListSessionsParams) -> ListSessionsResult raise HandlerErrorasync fn AgentEndpoint::load_session(self : AgentEndpoint, context : AgentContext, params : LoadSessionParams) -> LoadSessionResult raise HandlerErrorasync fn AgentEndpoint::logout(self : AgentEndpoint, context : AgentContext, params : LogoutParams) -> LogoutResult raise HandlerErrorasync fn AgentEndpoint::new_session(self : AgentEndpoint, context : AgentContext, params : NewSessionParams) -> NewSessionResult raise HandlerErrorasync fn AgentEndpoint::prompt(self : AgentEndpoint, context : AgentContext, params : PromptParams) -> PromptResult raise HandlerErrorasync fn AgentEndpoint::resume_session(self : AgentEndpoint, context : AgentContext, params : ResumeSessionParams) -> ResumeSessionResult raise HandlerErrorasync fn AgentEndpoint::set_config_option(self : AgentEndpoint, context : AgentContext, params : SetSessionConfigOptionParams) -> SetSessionConfigOptionResult raise HandlerErrorasync fn AgentEndpoint::set_mode(self : AgentEndpoint, context : AgentContext, params : SetSessionModeParams) -> SetSessionModeResult raise HandlerErrorpub(all) enum AgentOutboundReply {
AgentReplyRequestPermission(RequestPermissionResponse)
AgentReplyFsReadTextFile(ReadTextFileResult)
AgentReplyFsWriteTextFile(WriteTextFileResult)
AgentReplyTerminalCreate(TerminalCreateResult)
AgentReplyTerminalOutput(TerminalOutputResult)
AgentReplyTerminalWaitForExit(TerminalWaitForExitResult)
AgentReplyTerminalKill(TerminalKillResult)
AgentReplyTerminalRelease(TerminalReleaseResult)
AgentReplyElicitationCreate(ElicitationCreateResult)
} derive(Eq, Debug)pub struct AgentSessionService {
new_handler : async (AgentContext, NewSessionParams) -> NewSessionResult
prompt_handler : async (AgentContext, PromptParams) -> PromptResult
cancel_handler : async (AgentContext, CancelParams) -> Unit
load_handler : async (AgentContext, LoadSessionParams) -> LoadSessionResult?
resume_handler : async (AgentContext, ResumeSessionParams) -> ResumeSessionResult?
list_handler : async (AgentContext, ListSessionsParams) -> ListSessionsResult?
delete_handler : async (AgentContext, DeleteSessionParams) -> DeleteSessionResult?
close_handler : async (AgentContext, CloseSessionParams) -> CloseSessionResult?
set_mode_handler : async (AgentContext, SetSessionModeParams) -> SetSessionModeResult?
set_config_option_handler : async (AgentContext, SetSessionConfigOptionParams) -> SetSessionConfigOptionResult?
}pub struct AgentSpec {
info : Implementation
sessions : AgentSessionService
support : AgentSupport
auth : AgentAuthService?
}pub struct AgentSupport {
prompt_image : Bool
prompt_audio : Bool
prompt_embedded_context : Bool
mcp_http : Bool
mcp_sse : Bool
additional_directories : Bool
}fn agent_adapter_admit(state : AgentAdapterState, endpoint : AgentEndpoint, message : JsonRpcMessage) -> AgentAdapterAdmission raise AgentAdapterErrorfn agent_adapter_complete(state : AgentAdapterState, invocation : AgentAdapterInvocation, completion : AgentAdapterCompletion) -> AgentAdapterStep raise AgentAdapterErrorasync fn agent_adapter_execute(invocation : AgentAdapterInvocation, endpoint : AgentEndpoint, context : AgentContext) -> AgentAdapterCompletion noraisefn agent_auth_service(methods~ : Array[AuthMethod], authenticate~ : async (AgentContext, AuthenticateParams) -> AuthenticateResult, logout? : async (AgentContext, LogoutParams) -> LogoutResult) -> AgentAuthService raise AgentCompositionErrorfn agent_context(request_broker~ : async (ClientRequest) -> Result[AgentOutboundReply, AgentContextError], notification_broker~ : async (ClientNotification) -> Result[Unit, AgentContextError]) -> AgentContextfn agent_runtime_owner_port(endpoint~ : AgentEndpoint, context~ : AgentContext, initial_state~ : AgentAdapterState) -> RuntimeOwnerPort[AgentAdapterState, AgentAdapterInvocation, AgentAdapterCompletion, AgentAdapterCommand]async fn agent_runtime_run(endpoint~ : AgentEndpoint, context~ : AgentContext, initial_state~ : AgentAdapterState, ports~ : RuntimePorts, options~ : RuntimeOptions) -> Unitasync fn agent_runtime_run_with_outbound(endpoint~ : AgentEndpoint, context_factory~ : (RuntimeOutboundChannel[AgentAdapterCompletion]) -> AgentContext, initial_state~ : AgentAdapterState, ports~ : RuntimePorts, options~ : RuntimeOptions) -> Unitasync fn agent_serve_stdio(endpoint~ : AgentEndpoint, context~ : AgentContext, initial_state~ : AgentAdapterState, options? : RuntimeOptions, trace? : (RuntimeTraceEvent) -> Unit) -> Unitasync fn agent_serve_stdio_with_outbound(endpoint~ : AgentEndpoint, context_factory~ : (RuntimeOutboundChannel[AgentAdapterCompletion]) -> AgentContext, initial_state~ : AgentAdapterState, options? : RuntimeOptions, trace? : (RuntimeTraceEvent) -> Unit) -> Unitfn agent_session_service(new_session~ : async (AgentContext, NewSessionParams) -> NewSessionResult, prompt~ : async (AgentContext, PromptParams) -> PromptResult, cancel~ : async (AgentContext, CancelParams) -> Unit, load? : async (AgentContext, LoadSessionParams) -> LoadSessionResult, resume_session? : async (AgentContext, ResumeSessionParams) -> ResumeSessionResult, list? : async (AgentContext, ListSessionsParams) -> ListSessionsResult, delete? : async (AgentContext, DeleteSessionParams) -> DeleteSessionResult, close? : async (AgentContext, CloseSessionParams) -> CloseSessionResult, set_mode? : async (AgentContext, SetSessionModeParams) -> SetSessionModeResult, set_config_option? : async (AgentContext, SetSessionConfigOptionParams) -> SetSessionConfigOptionResult) -> AgentSessionServicefn agent_spec(info~ : Implementation, sessions~ : AgentSessionService, support~ : AgentSupport, auth? : AgentAuthService) -> Result[AgentSpec, AgentCompositionError]fn agent_support(prompt_image? : Bool, prompt_audio? : Bool, prompt_embedded_context? : Bool, mcp_http? : Bool, mcp_sse? : Bool, additional_directories? : Bool) -> AgentSupportDependencies