Channel Adapter Contract v0
Scope
Defines the minimum AIOS v0 contract for Channel Adapter implementations that bridge external channels such as WeChat or Telegram into the canonicaldialog model.
This page covers adapter responsibility boundaries, capability declaration, canonical inbound events, canonical outbound actions, configuration mapping, and health reporting.
Terminology
- Channel Adapter: the transport and protocol bridge between an external channel and the AIOS canonical dialog model.
- Canonical inbound event: normalized event emitted from adapter into AIOS.
- Canonical outbound action: normalized action received by adapter from AIOS.
- Supported target: channel target values that the adapter knows how to translate.
Normative Spec
Adapter Boundary
Channel Adapter sits between the external channel transport and the AIOS canonical dialog model. The adapter MUST:- receive external channel messages
- normalize them into canonical inbound events
- receive canonical outbound actions from AIOS
- translate them into channel-specific output
- scheduling
- global route decisions
- canonical session authority
- cross-tenant policy
- transcript persistence
Capability Declaration
Adapter capability payload MUST include:adapter_idadapter_versionsupported_targetssupported_featureshealth
Required Message Fields
Canonical adapter event or action models MUST include:channel_typetargetsession_idmessage_idwhen message-orientedevent_typepayloadtimestampcorrelation_id
Canonical Inbound Event
Canonical inbound events SHOULD include:workspace_idagent_idsession_idmessage_idevent_typetimestampcorrelation_idpayload
messagestatuserrorattachment_meta
Canonical Outbound Action
Allowed v0 outbound action types:messagestatuserrorapproval_request
Config Mapping Rule
Every adapter MUST be representable by the Channel Integration Page model and MUST map cleanly into these top-level groups:authconfigroutepolicy
Health Reporting
Adapter health model MUST expose at least:healthlast_error_codelast_seen_at
ChannelStatusChangedAdapterFault
Examples
Capability declaration
Canonical inbound event
Canonical outbound action
Error & Recovery
- Adapter transport failures MUST surface through health and fault events, not hidden retry loops.
- Adapter replay or reconnect handling MUST preserve forward-only transcript boundaries.
- Unsupported channel payloads SHOULD degrade to metadata-oriented
errororattachment_metaevents rather than inventing non-canonical event classes.
Security & Audit
- Adapter implementations MUST not persist full dialog transcript bodies as a long-term store.
- Adapter configuration and health state MUST be auditable through metadata.
- Adapter reuse from external ecosystems MUST remain wrapped by AIOS canonical contracts.
Status
Current status:draft
Source discussions:
docs/maintainers/conversation-records/agent-platform/2026-03-24-channel-adapter-contract-v0-draft.mddocs/maintainers/conversation-records/agent-platform/2026-03-24-dialog-channel-ecosystem-reuse-strategy-v0.mddocs/maintainers/conversation-records/agent-platform/2026-03-24-p1-freeze-result-accepted.md
Changelog
- 2026-03-24: Initial formal channel adapter specification created from frozen discussion drafts.