Skip to content

perf(think): broadcast transcript deltas at turn boundaries - #2235

Draft
mattzcarey wants to merge 1 commit into
mainfrom
perf/think-delta-broadcasts
Draft

perf(think): broadcast transcript deltas at turn boundaries#2235
mattzcarey wants to merge 1 commit into
mainfrom
perf/think-delta-broadcasts

Conversation

@mattzcarey

Copy link
Copy Markdown
Contributor

Problem

Think._broadcastMessages() serialises the whole cached transcript (up to the 32 MiB hydration budget) to every connected socket, and runs at least twice per turn: after the incoming persist and after the assistant cutover. On a long transcript every turn costs two full snapshots per client.

Change

Protocol (shared, packages/agents/src/chat) — this is a wire change:

  • New server→client frame cf_agent_chat_messages_delta { epoch, messages }: only the messages a turn boundary persisted (upsert by id; unknown ids append in order).
  • cf_agent_chat_messages gains an optional epoch naming the snapshot.
  • Backward compatible: older clients ignore the unknown frame; older servers never send it (epoch-less snapshots make the client refuse every delta).

Client (useAgentChat) — stores the epoch of the last snapshot applied and drops any delta whose epoch differs, so a delta arriving before its snapshot, or after the server re-derived its transcript, is never applied out of order. Delta upsert keeps the protected streaming assistant and the cross-tab observed accumulator exactly as the snapshot path does.

Server (think.ts)_cacheEpoch bumps in _replaceCachedMessages (hydration, branch/regeneration resync, compaction, clear, repair). Each connection records the epoch of the last snapshot it was sent (connect, dropped-submit rollback, or broadcast). _broadcastMessagesDelta(ids) sends a delta only when every connection is aligned to the current epoch; otherwise it sends the full frame, which re-aligns everyone.

Now deltas: incoming persist (_handleChatRequest, chat() RPC, programmatic turns), addMessages, and the happy-path assistant cutover (WS and RPC).

Still a full snapshot, and why:

  • connect / resume / dropped-submit rollback — the client has no base
  • a connection that joined mid-stream — never received a snapshot (resume replays chunks only); forces the cutover broadcast to be full
  • regeneration / branch — the resync bumps the epoch; rows before the tail change
  • clear, compaction — the cache is re-derived (epoch bump)
  • transcript repair, orphan materialisation — rows the client never streamed change in place
  • stalled / errored partial re-anchors — left as-is (rare, safety over bytes)
  • post context-overflow retry — the client rendered chunks that were discarded without persisting; only a snapshot reconciles them (explicit _transcriptNeedsSnapshot flag at both comment sites)
  • any boundary where a persisted id is not in the cache (windowed cache, message stripped to nothing)

ai-chat is untouched server-side (still snapshots) but shares the client, so it can adopt the frame later.

Numbers

packages/think/src/tests/delta-broadcasts.test.ts (fails on main): 40-message transcript, one observer.

  • Before: 2 × cf_agent_chat_messages per turn, ~86 KiB each
  • After: 2 × cf_agent_chat_messages_delta, one row each (bench asserts < 1/20 of a snapshot)

Tests

  • Server: turn = two deltas on a large transcript; clear → next boundary is a snapshot with a new epoch then deltas; mid-stream connect gets a snapshot (and an aligned peer gets that same broadcast), then both are back on deltas.
  • Client (packages/think/src/react-tests/delta-broadcasts.test.tsx): delta before snapshot dropped; wrong epoch / other instance dropped; matching delta upserts and appends; newer snapshot re-keys the guard; epoch-less snapshot accepts no deltas.
  • Adjusted think-session, assistant-agent, and the e2e waitForMessagesBroadcast barrier to accept delta frames.

Suites: think workers 897/897, think react 7/7, ai-chat workers 653/653, agents chat 545/545, agents react 136/136.

Think's _broadcastMessages() serialised the whole cached transcript (up to
the 32 MiB hydration budget) to every socket at least twice per turn: after
the incoming persist and after the assistant cutover.

Add a cf_agent_chat_messages_delta frame to the shared chat protocol that
carries only the messages a turn boundary persisted, plus the epoch of the
snapshot it applies to. cf_agent_chat_messages now carries that epoch too.
The client (useAgentChat) upserts deltas by id (append for unknown ids) and
drops any delta whose epoch differs from the last snapshot it applied, so a
delta can never land on the wrong base.

Server side, the cache epoch bumps whenever the live cache is wholesale
replaced (hydration, branch/regeneration resync, compaction, clear, repair)
and every connection records the epoch of the last snapshot it was sent. A
delta goes out only when every connection is aligned; otherwise the full
snapshot is sent and re-aligns them. Still full: connect/resume, transcript
repair, orphan materialisation, stalled/errored partial re-anchors, the
post-overflow-retry broadcast (streamed chunks were discarded; only a
snapshot reconciles them), and any boundary where an id is not in the cache.

Bench (think tests/delta-broadcasts): a turn on a 40-message transcript
costs two ~2 KiB deltas instead of two ~86 KiB snapshots.
@changeset-bot

changeset-bot Bot commented Sep 10, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 4ec3570

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@agent-think

agent-think Bot commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

🟡 agents import sizes

Measured 336 runtime imports as minified bundles. The primary size is gzip; raw minified size is included for diagnosis. An existing import growing by more than 10% is marked red. This report is informational.

Red Yellow Green Unchanged New Removed
0 101 0 235 0 0

Compared e18d42f4 with 4ec35704. Open workflow run.

Changed imports (101)
Status Import Base gzip Head gzip Delta
🟡 agents/chat#MessageType 2.4 KiB 2.5 KiB +23 B (+0.92%)
🟡 agents/chat#TIMED_OUT 2.3 KiB 2.3 KiB +15 B (+0.63%)
🟡 agents/chat#isReplayChunk 2.4 KiB 2.4 KiB +15 B (+0.61%)
🟡 agents/chat#toolResultUpdate 2.4 KiB 2.4 KiB +15 B (+0.61%)
🟡 agents/chat#chatRecoveryTaskRunOptions 2.4 KiB 2.5 KiB +15 B (+0.6%)
🟡 agents/chat#CHAT_RECOVERING_FLAG_TTL_MS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#AutoContinuationController 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#CHAT_RECOVERY_ALARM_DEBOUNCE_MS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_NO_PROGRESS_TIMEOUT_MS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#CHAT_RECOVERY_STABLE_RETRY_DELAY_SECONDS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_OOM_RETRIES 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#KV_DELETE_MAX_KEYS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#AGENT_TOOL_STREAM_PROGRESS_BUMP_THROTTLE_MS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#CHAT_STREAM_PROGRESS_CREDIT_THROTTLE_MS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_WORK 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_STABLE_TIMEOUT_MS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#MAX_BOUND_PARAMS 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#ROW_MAX_BYTES 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#CHAT_RECOVERING_KEY 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#CHAT_RECOVERY_PROGRESS_KEY 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#wrapChatFiberSnapshot 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#CHAT_RECOVERY_INCIDENT_KEY_PREFIX 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#toolPartHasSettledResult 2.3 KiB 2.3 KiB +14 B (+0.59%)
🟡 agents/chat#clientResolvableToolNames 2.3 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#readChatRecoveryProgress 2.3 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#pendingChatTerminal 2.3 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#clearChatTerminal 2.3 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#STREAM_RESUME_NONE_REASONS 2.3 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#drainInteractionApplies 2.3 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#AgentToolStreamProgressThrottle 2.4 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#StreamProgressCreditThrottle 2.4 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#parseProtocolMessage 2.5 KiB 2.5 KiB +15 B (+0.58%)
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_TERMINAL_MESSAGE 2.4 KiB 2.4 KiB +14 B (+0.58%)
🟡 agents/chat#runChatRecoveryExhaustion 2.6 KiB 2.6 KiB +15 B (+0.57%)
🟡 agents/chat#resolveToolMergeId 2.4 KiB 2.4 KiB +14 B (+0.57%)
🟡 agents/chat#reconcileOrphanPartial 2.4 KiB 2.4 KiB +14 B (+0.57%)
🟡 agents/chat#partAwaitsClientInteraction 2.4 KiB 2.4 KiB +14 B (+0.57%)
🟡 agents/chat#listActiveChatRecoveryIncidents 2.4 KiB 2.4 KiB +14 B (+0.57%)
🟡 agents/chat#toolApprovalUpdate 2.4 KiB 2.4 KiB +14 B (+0.57%)
🟡 agents/chat#iterateWithStallWatchdog 2.6 KiB 2.6 KiB +15 B (+0.56%)
🟡 agents/chat#unwrapChatFiberSnapshot 2.4 KiB 2.4 KiB +14 B (+0.56%)
🟡 agents/chat#hasIncompleteToolBatch 2.4 KiB 2.4 KiB +14 B (+0.56%)
🟡 agents/chat#createChatRecoveryTaskDefinition 2.6 KiB 2.6 KiB +15 B (+0.56%)
🟡 agents/chat#setChatRecovering 2.5 KiB 2.5 KiB +14 B (+0.56%)
🟡 agents/chat#byteLength 2.5 KiB 2.5 KiB +14 B (+0.56%)
🟡 agents/chat#isPlatformFailure 2.6 KiB 2.6 KiB +15 B (+0.56%)
🟡 agents/chat#createChatFiberSnapshot 2.5 KiB 2.5 KiB +14 B (+0.55%)
🟡 agents/chat#interceptAgentToolBroadcast 2.5 KiB 2.5 KiB +14 B (+0.55%)
🟡 agents/chat#ContinuationState 2.7 KiB 2.7 KiB +15 B (+0.55%)
🟡 agents/chat#aiSdkRecoveryCodec 2.3 KiB 2.3 KiB +13 B (+0.55%)
🟡 agents/chat#CHAT_RECOVERY_INCIDENT_TTL_MS 2.3 KiB 2.3 KiB +13 B (+0.55%)
🟡 agents/chat#normalizeToolInput 2.3 KiB 2.3 KiB +13 B (+0.55%)
🟡 agents/chat#applyChunkToParts 2.3 KiB 2.3 KiB +13 B (+0.55%)
🟡 agents/chat#CHAT_MESSAGE_TYPES 2.3 KiB 2.3 KiB +13 B (+0.55%)
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_ATTEMPTS 2.3 KiB 2.3 KiB +13 B (+0.55%)
🟡 agents/chat#CHAT_RECOVERY_TASK_NAME 2.3 KiB 2.3 KiB +13 B (+0.55%)
🟡 agents/chat#CHAT_LAST_TERMINAL_KEY 2.3 KiB 2.3 KiB +13 B (+0.55%)
🟡 agents/chat#createAgentToolEventState 2.3 KiB 2.4 KiB +13 B (+0.54%)
🟡 agents/chat#TextSegmentJoiner 2.7 KiB 2.7 KiB +15 B (+0.54%)
🟡 agents/chat#recordChatTerminal 2.4 KiB 2.4 KiB +13 B (+0.54%)
🟡 agents/chat#ChatStreamStalledError 2.4 KiB 2.4 KiB +13 B (+0.54%)
🟡 agents/chat#sanitizeMessage 2.5 KiB 2.6 KiB +14 B (+0.54%)
🟡 agents/chat#bumpChatRecoveryProgress 2.4 KiB 2.4 KiB +13 B (+0.54%)
🟡 agents/chat#shouldCreditStreamProgress 2.4 KiB 2.4 KiB +13 B (+0.54%)
🟡 agents/chat#resolveChatRecoveryConfig 2.6 KiB 2.6 KiB +14 B (+0.53%)
🟡 agents/chat#applyToolUpdate 2.4 KiB 2.4 KiB +13 B (+0.53%)
🟡 agents/chat#buildChatRecoveringFrame 2.4 KiB 2.4 KiB +13 B (+0.53%)
🟡 agents/chat#sendIfOpen 2.4 KiB 2.4 KiB +13 B (+0.53%)
🟡 agents/chat#pausedExecutionUpdate 2.4 KiB 2.4 KiB +13 B (+0.53%)
🟡 agents/chat#crossMessageToolResultUpdate 2.4 KiB 2.4 KiB +13 B (+0.53%)
🟡 agents/chat#buildInClauseStrings 2.4 KiB 2.4 KiB +13 B (+0.52%)
🟡 agents/chat#repairInterruptedToolParts 2.6 KiB 2.6 KiB +14 B (+0.52%)
🟡 agents/chat#PreStreamTurns 2.6 KiB 2.6 KiB +14 B (+0.52%)
🟡 agents/chat#sweepStaleChatRecoveryIncidents 2.4 KiB 2.5 KiB +13 B (+0.52%)
🟡 agents/chat#createChatTurnTaskDefinition 2.7 KiB 2.7 KiB +14 B (+0.51%)
🟡 agents/chat#AgentToolProgressEmitter 2.7 KiB 2.7 KiB +14 B (+0.51%)
🟡 agents/chat#dispatchChatRecoveryToHandoff 3.0 KiB 3.1 KiB +16 B (+0.51%)
🟡 agents/chat#persistReconstructedOrphan 3.1 KiB 3.1 KiB +16 B (+0.51%)
🟡 agents/chat#AbortRegistry 2.5 KiB 2.6 KiB +13 B (+0.5%)
🟡 agents/chat#StreamAccumulator 2.9 KiB 3.0 KiB +15 B (+0.5%)
🟡 agents/chat#broadcastTransition 3.2 KiB 3.2 KiB +16 B (+0.5%)
🟡 agents/chat#awaitWithDeadline 2.4 KiB 2.4 KiB +12 B (+0.49%)
🟡 agents/chat#TurnQueue 2.6 KiB 2.6 KiB +13 B (+0.49%)
🟡 agents/chat#classifyAgentToolChildRecovery 2.4 KiB 2.4 KiB +12 B (+0.48%)
🟡 agents/chat#ResumeHandshake 3.0 KiB 3.0 KiB +14 B (+0.46%)
🟡 agents/chat#reconcileMessages 2.8 KiB 2.8 KiB +13 B (+0.46%)
🟡 agents/chat#SubmitConcurrencyController 2.9 KiB 2.9 KiB +13 B (+0.44%)
🟡 agents/chat#truncateOlderMessages 3.2 KiB 3.2 KiB +14 B (+0.43%)
🟡 agents/chat#applyAgentToolEvent 3.2 KiB 3.2 KiB +13 B (+0.4%)
🟡 agents/chat#enforceRowSizeLimit 3.5 KiB 3.5 KiB +14 B (+0.39%)
🟡 agents/chat#ChatRecoveryEngine 4.4 KiB 4.4 KiB +13 B (+0.29%)
🟡 agents/chat#ResumableStream 5.1 KiB 5.1 KiB +15 B (+0.29%)
🟡 agents/chat#createChatStreams 6.4 KiB 6.4 KiB +14 B (+0.21%)
🟡 agents/chat/react#useAgentChat 132.9 KiB 133.1 KiB +179 B (+0.13%)
🟡 agents/chat/react#getToolInput 3.1 KiB 3.1 KiB +2 B (+0.06%)
🟡 agents/chat/react#getToolCallId 3.1 KiB 3.1 KiB +2 B (+0.06%)
🟡 agents/chat/react#extractClientToolSchemas 3.2 KiB 3.2 KiB +2 B (+0.06%)
🟡 agents/chat/transport#WebSocketChatTransport 2.8 KiB 2.8 KiB +1 B (+0.03%)
🟡 agents/chat/react#getToolOutput 3.1 KiB 3.1 KiB +1 B (+0.03%)
🟡 agents/chat/react#getToolPartState 3.2 KiB 3.2 KiB +1 B (+0.03%)
🟡 agents/chat#createToolsFromClientSchemas 114.3 KiB 114.3 KiB +15 B (+0.01%)
All 336 current runtime imports
Status Import Gzip Raw minified
agents#__DO_NOT_USE_WILL_BREAK__agentContext 258.6 KiB 1130.0 KiB
agents#__DO_NOT_USE_WILL_BREAK__withInvocationScope 258.6 KiB 1130.0 KiB
agents#Agent 258.6 KiB 1130.0 KiB
agents#AGENT_TOOL_MILESTONE_PART 258.6 KiB 1130.0 KiB
agents#AGENT_TOOL_PROGRESS_PART 258.6 KiB 1130.0 KiB
agents#buildAgentPath 259.1 KiB 1132.3 KiB
agents#buildAgentUrl 259.3 KiB 1132.7 KiB
agents#callable 258.6 KiB 1130.1 KiB
agents#camelCaseToKebabCase 258.6 KiB 1130.0 KiB
agents#createHeaderBasedEmailResolver 258.8 KiB 1130.4 KiB
agents#DEFAULT_AGENT_STATIC_OPTIONS 258.6 KiB 1130.0 KiB
agents#DurableObjectOAuthClientProvider 258.6 KiB 1130.0 KiB
agents#getAgentByName 258.6 KiB 1130.0 KiB
agents#getCurrentAgent 258.6 KiB 1130.0 KiB
agents#getSubAgentByName 258.9 KiB 1130.7 KiB
agents#isDurableObjectCodeUpdateReset 258.6 KiB 1130.0 KiB
agents#isDurableObjectMemoryLimitReset 258.6 KiB 1130.0 KiB
agents#isDurableObjectStorageReset 258.6 KiB 1130.1 KiB
agents#isPlatformTransientError 258.6 KiB 1130.0 KiB
agents#MCP_SERVER_ID_MAX_LENGTH 258.6 KiB 1130.0 KiB
agents#MessageType 258.8 KiB 1130.3 KiB
agents#normalizeServerId 258.6 KiB 1130.0 KiB
agents#parseSubAgentPath 258.6 KiB 1130.0 KiB
agents#routeAgentEmail 258.9 KiB 1130.7 KiB
agents#routeAgentRequest 259.2 KiB 1131.9 KiB
agents#routeSubAgentRequest 258.8 KiB 1130.6 KiB
agents#SqlError 258.6 KiB 1130.0 KiB
agents#StreamingResponse 258.6 KiB 1130.0 KiB
agents#SUB_PREFIX 258.6 KiB 1130.0 KiB
agents#unstable_callable 258.7 KiB 1130.2 KiB
agents/agent-tools#agentTool 112.5 KiB 538.2 KiB
agents/browser#BrowserConnector 50.5 KiB 176.6 KiB
agents/browser#browserContent 36.3 KiB 127.4 KiB
agents/browser#browserExtract 36.3 KiB 127.4 KiB
agents/browser#browserLinks 36.3 KiB 127.4 KiB
agents/browser#browserMarkdown 36.3 KiB 127.4 KiB
agents/browser#browserPdf 36.3 KiB 127.3 KiB
agents/browser#BrowserRenderingError 36.0 KiB 126.7 KiB
agents/browser#browserScrape 36.3 KiB 127.4 KiB
agents/browser#browserScreenshot 36.3 KiB 127.3 KiB
agents/browser#browserSnapshot 36.3 KiB 127.4 KiB
agents/browser#CdpSession 37.2 KiB 129.8 KiB
agents/browser#CodemodeRuntime 39.6 KiB 139.0 KiB
agents/browser#connectBrowser 37.8 KiB 131.4 KiB
agents/browser#connectBrowserSession 37.5 KiB 130.4 KiB
agents/browser#connectUrl 37.6 KiB 130.5 KiB
agents/browser#createBrowserSession 36.3 KiB 127.5 KiB
agents/browser#DEFAULT_EXEC_SWEEP_IDLE_MS 36.0 KiB 126.6 KiB
agents/browser#DEFAULT_SWEEP_IDLE_MS 36.0 KiB 126.6 KiB
agents/browser#deleteBrowserSession 36.1 KiB 126.9 KiB
agents/browser#DurableBrowserSessionStore 36.4 KiB 127.6 KiB
agents/browser#getBrowserRecording 36.2 KiB 127.1 KiB
agents/browser#listBrowserTargets 36.1 KiB 126.9 KiB
agents/browser#loadCdpSpec 36.6 KiB 128.3 KiB
agents/browser#runQuickAction 36.0 KiB 126.6 KiB
agents/browser/ai#createBrowserRuntime 147.0 KiB 632.8 KiB
agents/browser/ai#createBrowserTools 147.0 KiB 632.9 KiB
agents/browser/ai#createQuickActionTools 122.5 KiB 554.3 KiB
agents/browser/tanstack-ai#createBrowserTools 162.7 KiB 701.7 KiB
agents/channels#ChannelHost 3.3 KiB 9.1 KiB
agents/channels#consumeChunks 237 B 321 B
agents/channels#createUserIdentityStore 1.3 KiB 3.2 KiB
agents/channels#fallback 155 B 160 B
agents/channels#fallbackChannel 893 B 1.9 KiB
agents/channels#fanout 151 B 156 B
agents/channels#fanoutChannel 875 B 1.9 KiB
agents/channels#identityKey 178 B 223 B
agents/channels#isChannelMessageSurface 271 B 452 B
agents/channels#linkChannelIdentities 113 B 99 B
agents/channels#matchesPath 110 B 96 B
agents/channels#routes 307 B 507 B
agents/channels#UserIdentityConflictError 248 B 335 B
agents/channels/ai-sdk#createSendMessageTool 112.2 KiB 537.4 KiB
agents/channels/ai-sdk#toChannelChunks 112.5 KiB 538.4 KiB
agents/channels/email#email 23.5 KiB 75.4 KiB
agents/channels/email#inboundEmail 22.3 KiB 72.3 KiB
agents/channels/slack#slack 5.5 KiB 14.6 KiB
agents/channels/slack#slackWebhook 2.2 KiB 5.1 KiB
agents/channels/tanstack-ai#createSendMessageTool 16.2 KiB 68.4 KiB
agents/channels/telegram#telegram 3.8 KiB 10.3 KiB
agents/channels/telegram#telegramWebhook 1.6 KiB 3.6 KiB
agents/channels/voice#browserVoice 1010 B 2.2 KiB
🟡 agents/chat#AbortRegistry 2.6 KiB 9.0 KiB
🟡 agents/chat#AGENT_TOOL_STREAM_PROGRESS_BUMP_THROTTLE_MS 2.3 KiB 8.3 KiB
🟡 agents/chat#AgentToolProgressEmitter 2.7 KiB 9.6 KiB
🟡 agents/chat#AgentToolStreamProgressThrottle 2.4 KiB 8.4 KiB
🟡 agents/chat#aiSdkRecoveryCodec 2.3 KiB 8.2 KiB
🟡 agents/chat#applyAgentToolEvent 3.2 KiB 11.0 KiB
🟡 agents/chat#applyChunkToParts 2.3 KiB 8.2 KiB
🟡 agents/chat#applyToolUpdate 2.4 KiB 8.5 KiB
🟡 agents/chat#AutoContinuationController 2.3 KiB 8.2 KiB
🟡 agents/chat#awaitWithDeadline 2.4 KiB 8.4 KiB
🟡 agents/chat#broadcastTransition 3.2 KiB 11.5 KiB
🟡 agents/chat#buildChatRecoveringFrame 2.4 KiB 8.4 KiB
🟡 agents/chat#buildInClauseStrings 2.4 KiB 8.5 KiB
🟡 agents/chat#bumpChatRecoveryProgress 2.4 KiB 8.4 KiB
🟡 agents/chat#byteLength 2.5 KiB 8.5 KiB
🟡 agents/chat#CHAT_LAST_TERMINAL_KEY 2.3 KiB 8.3 KiB
🟡 agents/chat#CHAT_MESSAGE_TYPES 2.3 KiB 8.2 KiB
🟡 agents/chat#CHAT_RECOVERING_FLAG_TTL_MS 2.3 KiB 8.2 KiB
🟡 agents/chat#CHAT_RECOVERING_KEY 2.3 KiB 8.3 KiB
🟡 agents/chat#CHAT_RECOVERY_ALARM_DEBOUNCE_MS 2.3 KiB 8.2 KiB
🟡 agents/chat#CHAT_RECOVERY_INCIDENT_KEY_PREFIX 2.3 KiB 8.3 KiB
🟡 agents/chat#CHAT_RECOVERY_INCIDENT_TTL_MS 2.3 KiB 8.2 KiB
🟡 agents/chat#CHAT_RECOVERY_PROGRESS_KEY 2.3 KiB 8.3 KiB
🟡 agents/chat#CHAT_RECOVERY_STABLE_RETRY_DELAY_SECONDS 2.3 KiB 8.3 KiB
🟡 agents/chat#CHAT_RECOVERY_TASK_NAME 2.3 KiB 8.3 KiB
🟡 agents/chat#CHAT_STREAM_PROGRESS_CREDIT_THROTTLE_MS 2.3 KiB 8.3 KiB
🟡 agents/chat#ChatRecoveryEngine 4.4 KiB 15.3 KiB
🟡 agents/chat#chatRecoveryTaskRunOptions 2.5 KiB 8.6 KiB
🟡 agents/chat#ChatStreamStalledError 2.4 KiB 8.4 KiB
🟡 agents/chat#classifyAgentToolChildRecovery 2.4 KiB 8.5 KiB
🟡 agents/chat#clearChatTerminal 2.4 KiB 8.3 KiB
🟡 agents/chat#clientResolvableToolNames 2.4 KiB 8.3 KiB
🟡 agents/chat#ContinuationState 2.7 KiB 9.9 KiB
🟡 agents/chat#createAgentToolEventState 2.4 KiB 8.3 KiB
🟡 agents/chat#createChatFiberSnapshot 2.5 KiB 8.7 KiB
🟡 agents/chat#createChatRecoveryTaskDefinition 2.6 KiB 9.0 KiB
🟡 agents/chat#createChatStreams 6.4 KiB 22.1 KiB
🟡 agents/chat#createChatTurnTaskDefinition 2.7 KiB 9.0 KiB
🟡 agents/chat#createToolsFromClientSchemas 114.3 KiB 545.4 KiB
🟡 agents/chat#crossMessageToolResultUpdate 2.4 KiB 8.7 KiB
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_ATTEMPTS 2.3 KiB 8.3 KiB
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_OOM_RETRIES 2.3 KiB 8.3 KiB
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_WORK 2.3 KiB 8.3 KiB
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_NO_PROGRESS_TIMEOUT_MS 2.3 KiB 8.2 KiB
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_STABLE_TIMEOUT_MS 2.3 KiB 8.3 KiB
🟡 agents/chat#DEFAULT_CHAT_RECOVERY_TERMINAL_MESSAGE 2.4 KiB 8.3 KiB
🟡 agents/chat#dispatchChatRecoveryToHandoff 3.1 KiB 9.9 KiB
🟡 agents/chat#drainInteractionApplies 2.4 KiB 8.3 KiB
🟡 agents/chat#enforceRowSizeLimit 3.5 KiB 11.2 KiB
🟡 agents/chat#hasIncompleteToolBatch 2.4 KiB 8.7 KiB
🟡 agents/chat#interceptAgentToolBroadcast 2.5 KiB 8.7 KiB
🟡 agents/chat#isPlatformFailure 2.6 KiB 9.0 KiB
🟡 agents/chat#isReplayChunk 2.4 KiB 8.7 KiB
🟡 agents/chat#iterateWithStallWatchdog 2.6 KiB 8.8 KiB
🟡 agents/chat#KV_DELETE_MAX_KEYS 2.3 KiB 8.2 KiB
🟡 agents/chat#listActiveChatRecoveryIncidents 2.4 KiB 8.5 KiB
🟡 agents/chat#MAX_BOUND_PARAMS 2.3 KiB 8.3 KiB
🟡 agents/chat#MessageType 2.5 KiB 9.1 KiB
🟡 agents/chat#normalizeToolInput 2.3 KiB 8.2 KiB
🟡 agents/chat#parseProtocolMessage 2.5 KiB 9.1 KiB
🟡 agents/chat#partAwaitsClientInteraction 2.4 KiB 8.6 KiB
🟡 agents/chat#pausedExecutionUpdate 2.4 KiB 8.4 KiB
🟡 agents/chat#pendingChatTerminal 2.4 KiB 8.3 KiB
🟡 agents/chat#persistReconstructedOrphan 3.1 KiB 11.1 KiB
🟡 agents/chat#PreStreamTurns 2.6 KiB 9.3 KiB
🟡 agents/chat#readChatRecoveryProgress 2.4 KiB 8.3 KiB
🟡 agents/chat#reconcileMessages 2.8 KiB 9.6 KiB
🟡 agents/chat#reconcileOrphanPartial 2.4 KiB 8.5 KiB
🟡 agents/chat#recordChatTerminal 2.4 KiB 8.3 KiB
🟡 agents/chat#repairInterruptedToolParts 2.6 KiB 9.2 KiB
🟡 agents/chat#resolveChatRecoveryConfig 2.6 KiB 8.9 KiB
🟡 agents/chat#resolveToolMergeId 2.4 KiB 8.5 KiB
🟡 agents/chat#ResumableStream 5.1 KiB 16.9 KiB
🟡 agents/chat#ResumeHandshake 3.0 KiB 10.4 KiB
🟡 agents/chat#ROW_MAX_BYTES 2.3 KiB 8.3 KiB
🟡 agents/chat#runChatRecoveryExhaustion 2.6 KiB 9.0 KiB
🟡 agents/chat#sanitizeMessage 2.6 KiB 8.8 KiB
🟡 agents/chat#sendIfOpen 2.4 KiB 8.4 KiB
🟡 agents/chat#setChatRecovering 2.5 KiB 8.5 KiB
🟡 agents/chat#shouldCreditStreamProgress 2.4 KiB 8.4 KiB
🟡 agents/chat#STREAM_RESUME_NONE_REASONS 2.4 KiB 8.3 KiB
🟡 agents/chat#StreamAccumulator 3.0 KiB 10.8 KiB
🟡 agents/chat#StreamProgressCreditThrottle 2.4 KiB 8.4 KiB
🟡 agents/chat#SubmitConcurrencyController 2.9 KiB 10.3 KiB
🟡 agents/chat#sweepStaleChatRecoveryIncidents 2.5 KiB 8.5 KiB
🟡 agents/chat#TextSegmentJoiner 2.7 KiB 9.3 KiB
🟡 agents/chat#TIMED_OUT 2.3 KiB 8.3 KiB
🟡 agents/chat#toolApprovalUpdate 2.4 KiB 8.6 KiB
🟡 agents/chat#toolPartHasSettledResult 2.3 KiB 8.4 KiB
🟡 agents/chat#toolResultUpdate 2.4 KiB 8.5 KiB
🟡 agents/chat#truncateOlderMessages 3.2 KiB 10.4 KiB
🟡 agents/chat#TurnQueue 2.6 KiB 9.2 KiB
🟡 agents/chat#unwrapChatFiberSnapshot 2.4 KiB 8.6 KiB
🟡 agents/chat#wrapChatFiberSnapshot 2.3 KiB 8.3 KiB
agents/chat-sdk#ChatSdkStateAdapter 261.0 KiB 1141.6 KiB
agents/chat-sdk#ChatSdkStateAgent 260.4 KiB 1139.1 KiB
agents/chat-sdk#createChatSdkState 261.0 KiB 1141.6 KiB
agents/chat-sdk#defaultKeyShard 258.8 KiB 1130.2 KiB
agents/chat-sdk#defaultThreadShard 258.7 KiB 1130.1 KiB
agents/chat/react#detectToolsRequiringConfirmation 3.3 KiB 8.3 KiB
🟡 agents/chat/react#extractClientToolSchemas 3.2 KiB 8.3 KiB
agents/chat/react#getAgentMessages 3.4 KiB 8.6 KiB
agents/chat/react#getToolApproval 3.1 KiB 8.0 KiB
🟡 agents/chat/react#getToolCallId 3.1 KiB 8.0 KiB
🟡 agents/chat/react#getToolInput 3.1 KiB 8.0 KiB
🟡 agents/chat/react#getToolOutput 3.1 KiB 8.0 KiB
🟡 agents/chat/react#getToolPartState 3.2 KiB 8.2 KiB
🟡 agents/chat/react#useAgentChat 133.1 KiB 610.2 KiB
agents/chat/react#WebSocketChatTransport 5.7 KiB 17.1 KiB
🟡 agents/chat/transport#WebSocketChatTransport 2.8 KiB 9.2 KiB
agents/client#AgentClient 5.7 KiB 16.6 KiB
agents/client#AgentConnectionError 582 B 993 B
agents/client#agentFetch 4.2 KiB 12.3 KiB
agents/client#createStubProxy 638 B 1.0 KiB
agents/client#DEFAULT_CALL_TIMEOUT_MS 473 B 770 B
agents/client#isTerminalCloseEvent 509 B 822 B
agents/context#AgentContextProvider 412 B 792 B
agents/context#AgentSearchProvider 640 B 1.3 KiB
agents/context#ContextBlocks 87.4 KiB 429.7 KiB
agents/email#createAddressBasedEmailResolver 193 B 227 B
agents/email#createCatchAllEmailResolver 110 B 97 B
agents/email#createHeaderBasedEmailResolver 334 B 492 B
agents/email#createSecureReplyEmailResolver 718 B 1.3 KiB
agents/email#DEFAULT_MAX_AGE_SECONDS 56 B 39 B
agents/email#isAutoReplyEmail 201 B 249 B
agents/email#signAgentHeaders 424 B 812 B
agents/experimental/webmcp#registerWebMcp 85.2 KiB 295.8 KiB
agents/lifecycle#getCurrentAgent 376 B 798 B
agents/lifecycle#Lifecycle 8.3 KiB 25.8 KiB
agents/lifecycle#LifecycleCapability 484 B 975 B
agents/mcp#createLegacyMcpHandler 375.9 KiB 1572.2 KiB
agents/mcp#createMcpHandler 388.2 KiB 1617.4 KiB
agents/mcp#DurableObjectEventStore 342.5 KiB 1430.7 KiB
agents/mcp#ElicitRequestSchema 342.5 KiB 1430.7 KiB
agents/mcp#experimental_createMcpHandler 376.1 KiB 1572.5 KiB
agents/mcp#getMcpAuthContext 342.5 KiB 1430.8 KiB
agents/mcp#MCP_SERVER_ID_MAX_LENGTH 342.5 KiB 1430.7 KiB
agents/mcp#McpAgent 342.5 KiB 1430.7 KiB
agents/mcp#normalizeServerId 342.5 KiB 1430.7 KiB
agents/mcp#RPC_DO_PREFIX 342.5 KiB 1430.7 KiB
agents/mcp#RPCClientTransport 342.5 KiB 1430.7 KiB
agents/mcp#RPCServerTransport 342.5 KiB 1430.7 KiB
agents/mcp#SSEEdgeClientTransport 342.6 KiB 1431.0 KiB
agents/mcp#StreamableHTTPEdgeClientTransport 342.6 KiB 1431.0 KiB
agents/mcp#WorkerTransport 345.8 KiB 1447.6 KiB
agents/mcp/client#getNamespacedData 62.9 KiB 240.0 KiB
agents/mcp/client#MCP_SERVER_ID_MAX_LENGTH 62.9 KiB 239.9 KiB
agents/mcp/client#MCPClientManager 158.6 KiB 702.6 KiB
agents/mcp/client#normalizeServerId 63.0 KiB 240.2 KiB
agents/mcp/do-oauth-client-provider#DurableObjectOAuthClientProvider 2.1 KiB 6.6 KiB
agents/mcp/server#createMcpHandler 80.5 KiB 307.2 KiB
agents/mcp/server#getMcpAuthContext 64.0 KiB 245.5 KiB
agents/observability#channels 259 B 549 B
agents/observability#genericObservability 470 B 1.2 KiB
agents/observability#subscribe 324 B 668 B
agents/observability/ai#wrapAISDK 8.8 KiB 30.5 KiB
agents/react#_testUtils 3.8 KiB 9.5 KiB
agents/react#useAgent 10.8 KiB 31.1 KiB
agents/react#useAgentToolEvents 5.6 KiB 16.8 KiB
agents/routing#getAgentByName 795 B 1.7 KiB
agents/routing#routeAgentRequest 1.6 KiB 3.6 KiB
agents/routing#RoutedAgents 2.4 KiB 6.2 KiB
agents/schedule#getSchedulePrompt 85.8 KiB 424.7 KiB
agents/schedule#scheduleSchema 85.3 KiB 423.6 KiB
agents/schedule#unstable_getSchedulePrompt 85.9 KiB 424.9 KiB
agents/schedule#unstable_scheduleSchema 85.3 KiB 423.6 KiB
agents/schedules#Scheduler 6.8 KiB 22.0 KiB
agents/schedules/parser#getSchedulePrompt 85.8 KiB 424.7 KiB
agents/schedules/parser#scheduleSchema 85.3 KiB 423.6 KiB
agents/sessions#COMPACTION_PREFIX 147 B 160 B
agents/sessions#createCompactFunction 1.7 KiB 4.0 KiB
agents/sessions#isCompactionMessage 177 B 200 B
agents/sessions#Session 2.0 KiB 6.3 KiB
agents/sessions#Sessions 9.5 KiB 34.3 KiB
agents/skills#fromManifest 309.8 KiB 1084.0 KiB
agents/skills#parseSkillFrontmatter 328.4 KiB 1146.2 KiB
agents/skills#parseSkillMarkdown 328.6 KiB 1146.5 KiB
agents/skills#r2 330.2 KiB 1150.4 KiB
agents/skills#runner 369.0 KiB 1297.8 KiB
agents/skills#SkillRegistry 416.4 KiB 1581.7 KiB
agents/skills/compile#compileSkillScript 15.4 KiB 43.4 KiB
agents/skills/compile#isCompilableSkillScript 15.4 KiB 43.3 KiB
agents/streams#DEFAULT_MAX_CHUNK_BYTES 94 B 96 B
agents/streams#sseResponse 857 B 1.6 KiB
agents/streams#StreamClosedError 175 B 212 B
agents/streams#StreamNotFoundError 215 B 276 B
agents/streams#Streams 4.2 KiB 13.8 KiB
agents/streams#StreamSerializationError 171 B 201 B
agents/tasks#DuplicateTaskStepError 328 B 463 B
agents/tasks#MAX_SERIALIZED_BYTES 190 B 232 B
agents/tasks#MissingTaskDefinitionError 358 B 536 B
agents/tasks#NonRetryableError 238 B 308 B
agents/tasks#TaskReplayDivergedError 341 B 483 B
agents/tasks#Tasks 8.9 KiB 31.8 KiB
agents/tasks#TaskSerializationError 258 B 339 B
agents/types#MessageType 211 B 365 B
agents/vite#default 353.8 KiB 1356.1 KiB
agents/voice#addSFUTracks 324 B 424 B
agents/voice#createSFUSession 255 B 306 B
agents/voice#createSFUWebSocketAdapter 331 B 429 B
agents/voice#decodeVarint 157 B 160 B
agents/voice#downsample48kStereoTo16kMono 238 B 324 B
agents/voice#encodePayloadToProtobuf 189 B 279 B
agents/voice#encodeVarint 129 B 122 B
agents/voice#extractPayloadFromProtobuf 271 B 425 B
agents/voice#iterateText 1.6 KiB 3.8 KiB
agents/voice#renegotiateSFUSession 329 B 428 B
agents/voice#SentenceChunker 550 B 1.1 KiB
agents/voice#sfuFetch 294 B 358 B
agents/voice#upsample16kMonoTo48kStereo 211 B 272 B
agents/voice#VOICE_PROTOCOL_VERSION 51 B 31 B
agents/voice#withVoice 9.5 KiB 32.7 KiB
agents/voice#withVoiceInput 4.8 KiB 16.0 KiB
agents/voice#WorkersAIFluxSTT 1.5 KiB 4.3 KiB
agents/voice#WorkersAINova3STT 1.6 KiB 4.3 KiB
agents/voice#WorkersAITTS 682 B 1.4 KiB
agents/voice/client#VOICE_PROTOCOL_VERSION 473 B 768 B
agents/voice/client#VoiceClient 10.1 KiB 31.6 KiB
agents/voice/client#WebSocketVoiceTransport 4.6 KiB 13.3 KiB
agents/voice/errors#logVoiceError 132 B 173 B
agents/voice/errors#toVoiceError 94 B 80 B
agents/voice/errors#voiceErrorMessage 125 B 111 B
agents/voice/errors#VoiceProviderError 190 B 345 B
agents/voice/react#useVoiceAgent 13.6 KiB 42.5 KiB
agents/voice/react#useVoiceInput 13.3 KiB 41.4 KiB
agents/voice/react#WebSocketVoiceTransport 7.4 KiB 21.3 KiB
agents/voice/sfu#addSFUTracks 323 B 424 B
agents/voice/sfu#createSFUSession 254 B 306 B
agents/voice/sfu#createSFUWebSocketAdapter 329 B 429 B
agents/voice/sfu#decodeVarint 155 B 160 B
agents/voice/sfu#downsample48kStereoTo16kMono 236 B 324 B
agents/voice/sfu#encodePayloadToProtobuf 188 B 279 B
agents/voice/sfu#encodeVarint 129 B 122 B
agents/voice/sfu#extractPayloadFromProtobuf 270 B 425 B
agents/voice/sfu#renegotiateSFUSession 329 B 428 B
agents/voice/sfu#sfuFetch 292 B 358 B
agents/voice/sfu#upsample16kMonoTo48kStereo 209 B 272 B
agents/voice/text#iterateText 1.6 KiB 3.8 KiB
agents/voice/text#SentenceChunker 549 B 1.1 KiB
agents/voice/types#VOICE_PROTOCOL_VERSION 51 B 31 B
agents/voice/workers-ai#WorkersAIFluxSTT 1.5 KiB 4.3 KiB
agents/voice/workers-ai#WorkersAINova3STT 1.6 KiB 4.3 KiB
agents/voice/workers-ai#WorkersAITTS 682 B 1.4 KiB
agents/websockets#CALLABLES_RPC_QUERY 12.4 KiB 43.3 KiB
agents/websockets#CALLABLES_RPC_VALUE 12.4 KiB 43.3 KiB
agents/websockets#callablesFromDecorated 12.7 KiB 44.3 KiB
agents/websockets#callablesRpcUrl 12.5 KiB 43.5 KiB
agents/websockets#isCallablesRpcUpgrade 12.4 KiB 43.4 KiB
agents/websockets#WebSockets 17.7 KiB 62.2 KiB
agents/workflows#AgentWorkflow 260.0 KiB 1134.8 KiB
agents/workflows#WorkflowRejectedError 258.7 KiB 1130.2 KiB
agents/x402#normalizeNetwork 14.7 KiB 61.1 KiB
agents/x402#withX402 23.0 KiB 89.2 KiB
agents/x402#withX402Client 104.1 KiB 346.5 KiB

Reported by agent-think[bot].

@pkg-pr-new

pkg-pr-new Bot commented Sep 10, 2026

Copy link
Copy Markdown

Open in StackBlitz

agents

npm i https://pkg.pr.new/agents@2235

@cloudflare/ai-chat

npm i https://pkg.pr.new/@cloudflare/ai-chat@2235

@cloudflare/codemode

npm i https://pkg.pr.new/@cloudflare/codemode@2235

hono-agents

npm i https://pkg.pr.new/hono-agents@2235

@cloudflare/shell

npm i https://pkg.pr.new/@cloudflare/shell@2235

@cloudflare/think

npm i https://pkg.pr.new/@cloudflare/think@2235

@cloudflare/voice

npm i https://pkg.pr.new/@cloudflare/voice@2235

@cloudflare/worker-bundler

npm i https://pkg.pr.new/@cloudflare/worker-bundler@2235

commit: 4ec3570

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant