You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(website): review fixes on the runtime support matrix
- Credit AWS Strands alongside Microsoft Agent Framework for reading the
protocol-standard top-level resume array (verified against
strands-resume.request.json and to-agent.ts, which serves both from one
branch).
- Note that the Mastra row was measured against a real server with live
model calls and committed transcripts, but is not yet running in the
hosted demo deployment.
- Compact the cause column to scannable labels; the legend below the
table carries the definitions.
- State the adapter-cause history once, in current-state framing.
- Two blog-register lines moved to reference register.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Every gap in that table falls into one of three causes, and the distinction is the point of the column:
100
100
101
101
-**Protocol** — the AG-UI event vocabulary has no way to express the capability. Nothing an adapter or a backend author can do about it today.
102
102
-**Upstream integration** — the protocol can express it, but the runtime's AG-UI bridge does not emit the events. Fixable upstream.
103
103
-**Our adapter** — `@threadplane/ag-ui` failed to consume something the wire already carried. Our bug, and our responsibility.
104
104
105
-
No cell in the current matrix is caused by the protocol, and no cell is caused by our adapter.
106
-
Two cells were caused by our adapter when the measurement started, and both are fixed.
105
+
No cell in the current matrix is caused by the protocol, and no cell is caused by a bug in our adapter — the two that were are fixed.
107
106
108
107
### Reading the individual cells
109
108
@@ -120,10 +119,14 @@ The adapter detects either convention, and within a single run the first signal
120
119
121
120
**Resume payloads are not portable, so the adapter shapes them per runtime.**
122
121
Mastra reads `forwardedProps.command.interruptEvent`, carrying a tool-call id and a run id.
123
-
Microsoft Agent Framework reads the protocol-standard top-level `resume` array first.
122
+
AWS Strands and Microsoft Agent Framework both read the protocol-standard top-level `resume` array, one `{ interruptId, status, payload }` entry per interrupt; Microsoft additionally expects an entry for every pending interrupt.
124
123
The LangGraph bridge reads `forwardedProps.command.resume`.
125
124
You pass one neutral `submit({ resume })`, and the adapter derives the wire shape from how the interrupt arrived.
126
125
126
+
**The Mastra row was measured, but not in the hosted demo.**
127
+
Its cells come from a real Mastra server driven with live model calls, and its transcripts are committed and replayed like the others.
128
+
Unlike the Strands and Microsoft Agent Framework rows, it is not yet running in the hosted demo deployment.
129
+
127
130
**Subagents are red for every third-party runtime, and none of those reds are a bug.**
128
131
The three runtimes do not fail to implement one thing; they model delegation three different ways.
129
132
Strands routes handoffs through a `CUSTOM` event plus step events, with no `ACTIVITY` events at all.
@@ -138,8 +141,8 @@ Treat server-declared subagents as a capability of LangGraph and of backends you
138
141
Each runtime got a real server, started against the upstream AG-UI integration and driven with live model calls.
139
142
The raw Server-Sent Events were captured off the wire, then replayed event-for-event through the pinned `@ag-ui/client` — schema parse plus `verifyEvents` — and through the adapter reducer itself.
140
143
141
-
The captures are committed at [`libs/ag-ui/fixtures/runtime-transcripts/`](https://github.com/cacheplane/angular-agent-framework/tree/main/libs/ag-ui/fixtures/runtime-transcripts), verbatim from the wire, and the adapter test suite replays them.
142
-
A regression in interrupt detection or resume shaping now fails a test rather than a user.
144
+
The captures are committed at [`libs/ag-ui/fixtures/runtime-transcripts/`](https://github.com/cacheplane/angular-agent-framework/tree/main/libs/ag-ui/fixtures/runtime-transcripts), verbatim from the wire.
145
+
The adapter test suite replays them on every run.
143
146
144
147
### Runnable examples
145
148
@@ -150,7 +153,6 @@ Each runtime has a standalone Angular example bound through `@threadplane/ag-ui`
150
153
-[`cockpit/runtimes/mastra`](https://github.com/cacheplane/angular-agent-framework/tree/main/cockpit/runtimes/mastra) — TypeScript, hosted by a Node AG-UI service, because the upstream Mastra integration ships an in-process bridge rather than an HTTP endpoint.
151
154
152
155
In all three, the Angular component is ordinary `<chat [agent]="agent" />` over `injectAgent()`.
0 commit comments