Exports
ChannelAdapter
Platform-specific transport that normalizes events and sends replies. Extensions implement this contract without exposing raw provider drivers. Normalization is synchronous and offline so fixtures can be tested without live credentials; sending is the only network-owned operation.— means no declared default):
Example
Example
ChannelAdapter.start
Example
Example
ChannelAdapter.normalize_event
Parameters and example
Parameters and example
ChannelAdapter.send_reply
Parameters and example
Parameters and example
ChannelAdapter.close
Example
Example
ChannelAdapterConflictError
Two extensions registered a channel adapter under the same name.Example
Example
ChannelAdapterFactory
Example
Example
ChannelAdapterNotFoundError
No extension registered a channel adapter under the requested name.Example
Example
ChannelBinding
Local policy connecting one platform conversation scope to this agent.extension names the registered ChannelAdapter factory that owns the
platform transport (for example a Fused-backed Slack extension, or a
direct-API extension); the binding itself never depends on how that
extension talks to the platform. Empty allow-lists mean nothing is
authorized yet, not that everything is; an adapter must fail closed.
— means no declared default):
Parameters and example
Parameters and example
ChannelError
Base class for channel configuration and adapter failures.Example
Example
ChannelEvent
One inbound platform message, normalized by a ChannelAdapter.delivery_id identifies this specific transport delivery and may repeat
across retries; provider_event_id is the platform’s stable identity for
deduplication. reply_to is an opaque, adapter-owned address a later
reply must target and is never interpreted by the store.
— means no declared default):
Parameters and example
Parameters and example
ChannelHTTPInvoker
Use caller-owned HTTP transport and explicit per-actor authentication headers. The server’s authenticator must validate the service credential and map the supplied actor identity to its principal. Metadata never establishes identity.Parameters and example
Parameters and example
ChannelHTTPInvoker.call
Parameters and example
Parameters and example
ChannelReply
One outbound answer queued for durable, at-least-once delivery.status is pending, sent, failed, or delivery_unknown (an ambiguous
send that must be reconciled before replay, never blindly retried).
— means no declared default):
Parameters and example
Parameters and example
ChannelStore
Atomic operations required for durable, deduplicated channel messaging. All identity, scope, and ordering predicates execute inside the datastore. A provider must durably commit before returning success.Example
Example
ChannelStore.start
Example
Example
ChannelStore.close
Example
Example
ChannelStore.admit_event
Parameters and example
Parameters and example
ChannelStore.get_event
Parameters and example
Parameters and example
ChannelStore.bind_session
Parameters and example
Parameters and example
ChannelStore.get_session_binding
Parameters and example
Parameters and example
ChannelStore.enqueue_reply
Parameters and example
Parameters and example
ChannelStore.claim_replies
Parameters and example
Parameters and example
ChannelStore.finish_reply
Parameters and example
Parameters and example
ChannelStoreConflictError
An admitted event or reply has a different definition than the request.Example
Example
ChannelWorker
Admit before ACK, fence work, and persist replies before any provider send. The caller owns the started task store and authenticated invoke/send callbacks. Jobs never automatically retry an ambiguous model execution or provider send. Pending jobs survive restart; interrupted claimed jobs require reconciliation.Parameters and example
Parameters and example
ChannelWorker.accepts
Parameters and example
Parameters and example
ChannelWorker.admit
Parameters and example
Parameters and example
ChannelWorker.step
Example
Example
ChannelWorker.run
Parameters and example
Parameters and example
MemoryChannelStore
Implement the atomic channel contract in one process; nothing survives restart.Example
Example
MemoryChannelStore.start
Example
Example
MemoryChannelStore.close
Example
Example
MemoryChannelStore.admit_event
Parameters and example
Parameters and example
MemoryChannelStore.get_event
Parameters and example
Parameters and example
MemoryChannelStore.bind_session
Parameters and example
Parameters and example
MemoryChannelStore.get_session_binding
Parameters and example
Parameters and example
MemoryChannelStore.enqueue_reply
Parameters and example
Parameters and example
MemoryChannelStore.claim_replies
Parameters and example
Parameters and example
MemoryChannelStore.finish_reply
Parameters and example
Parameters and example
create_channel_adapter
Build the adapter a binding names, raising if its extension is absent.Parameters and example
Parameters and example
discover_channel_bindings
Load every ChannelBinding exported by a project’s channels/ directory. Mirrors the discovery convention used for tools and MCP clients: one file per binding, named after the platform, exporting a callablebinding().
Parameters and example
Parameters and example
register_channel_adapter
Register one packaged extension’s adapter factory under its unique name.Parameters and example
Parameters and example
registered_channel_adapters
List currently registered extension names for inspection and errors.Example
Example