{
"id": "mux:transport-mux",
"_kind": "Mux",
"_file": "extensions/muxes/canonical-muxes.yaml",
"_cluster": "extensions",
"attributes": {
"displayName": "transport-mux",
"protocolType": "llm-wire",
"nativeSide": [
"Anthropic Messages",
"OpenAI Responses",
"OpenAI ChatCompletions",
"Gemini generateContent",
"Bedrock Invoke",
"Bedrock Converse",
"Custom proprietary"
],
"canonicalSide": "Unified inference request/response shape",
"position": "Between Transport-Client (in Agent-Core) and Provider",
"bridgingConcerns": [
"request shape (messages array vs prompt vs alternating roles)",
"streaming framing (SSE vs JSONL vs custom)",
"tool-use schema differences",
"thinking / reasoning channel mapping (Anthropic thinking_delta โ OpenAI reasoning_delta โ Gemini equivalents)",
"token usage and cost reporting",
"error-mapping across providers",
"model name aliasing per provider"
],
"catalogInputNodeKinds": [
"ModelTransportProtocol",
"ModelVersion"
],
"trustChainParticipation": "planned",
"description": "Bridges between concrete LLM wire protocols and one canonical inference\nrequest/response shape. Adding a new native impl is a Catalog edit\n(TransportDescriptor + ModelVersion.speaks) plus a generator pass.\n"
},
"outgoingEdges": [
{
"from": "mux:transport-mux",
"to": "layer:3-transport",
"kind": "bridges_protocol_type",
"attributes": {}
},
{
"from": "mux:transport-mux",
"to": "provider:anthropic",
"kind": "bridges_for",
"attributes": {}
},
{
"from": "mux:transport-mux",
"to": "provider:openai",
"kind": "bridges_for",
"attributes": {}
},
{
"from": "mux:transport-mux",
"to": "provider:google",
"kind": "bridges_for",
"attributes": {}
},
{
"from": "mux:transport-mux",
"to": "provider:gcp-vertex",
"kind": "bridges_for",
"attributes": {}
},
{
"from": "mux:transport-mux",
"to": "provider:aws-bedrock",
"kind": "bridges_for",
"attributes": {}
}
],
"incomingEdges": []
}