Skip to content

feat(channels): stream outbound messages - #2180

Merged
cjol merged 5 commits into
mainfrom
docs/channel-streaming-rfc
Sep 9, 2026
Merged

feat(channels): stream outbound messages#2180
cjol merged 5 commits into
mainfrom
docs/channel-streaming-rfc

Conversation

@cjol

@cjol cjol commented Aug 28, 2026

Copy link
Copy Markdown
Contributor

This PR adds outbound message streaming to @cloudflare/channels, including native Slack and Telegram streaming, composite routing, and an AI SDK adapter.

Why

  • Channels currently wait for a complete model response before delivering anything, even when the destination supports progressive rendering.
  • Streaming needs transport-neutral chunks because provider-specific payloads do not compose across Slack, Telegram, fallback routes, and fanout routes.
  • A Channel owns stream consumption and terminal provider calls. This ensures an interrupted generation still finalizes its provider message instead of leaving a draft or streaming message unfinished.
  • Channels that cannot stream collect the text and use ordinary delivery, so callers use one Host API regardless of transport capability.
  • Slack cannot stream at the top level of an ordinary channel. The adapter collects and posts one ordinary message there, while threads and direct messages use Slack's native streaming methods.

Public API Surface

Symbol Kind Notes
ChannelChunk Type Neutral text, reasoning, tool, and source stream chunks
ChannelChunkSource Type Normalized ReadableStream<ChannelChunk> input
ChannelDeliveryOptions Type Wraps caller-owned delivery context
ChannelStreamOptions Type Supplies an optional title and delivery context
Channel.stream Optional method Lets a Channel consume and finalize a streamed answer
OutboundResolver.stream Method Recursively streams through composite Channels
ChannelHost.stream Method Resolves a destination and streams or collects before delivery
consumeChunks Function Finalizes exactly once after normal or interrupted consumption
ChunkConsumer Type Defines chunk and finalization callbacks
StreamOutcome Type Reports normal or interrupted stream completion
toChannelChunks Function Maps an AI SDK fullStream to Channel chunks

DeliveryResult now permits a reference on its uncertain arm.

deliver now takes ChannelDeliveryOptions as its third argument instead of a bare ChannelDeliveryContext.

Architectural Changes

ReadableStream<ChannelChunk>
             |
        ChannelHost
             |
       +-----+------+
       |            |
 Channel.stream   collect text
       |            |
 native provider  Channel.deliver

Composite Channels preserve the same contract:

  • fanout tees the source so each destination receives its own stream.
  • fallback retains consumed chunks and replays them after a confirmed failure.
  • uncertain stops fallback to avoid potentially duplicating partial delivery.

Code Changes

  • Slack uses chat.startStream, chat.appendStream, and chat.stopStream for threads and direct messages. Top-level channel streams collect into chat.postMessage.
  • Telegram uses sendMessageDraft for private-chat previews and always finishes with sendMessage, including after an interrupted generation.
  • The Host collects text for Channels without native streaming support and uses TextSegmentJoiner to preserve semantic spacing around tool and metadata boundaries.
  • The AI SDK adapter maps fullStream parts into neutral chunks and turns abort or error parts into abnormal stream completion.
  • Live fixtures independently observe Telegram, Slack top-level, Slack threads, and email through one shared provider matrix.

Compatibility

The third argument to deliver changed from:

ChannelDeliveryContext

to:

ChannelDeliveryOptions

Callers passing a delivery ID must wrap it:

host.deliver(surface, message, {
  delivery: { deliveryId }
});

Devin Review

@changeset-bot

changeset-bot Bot commented Aug 28, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: b681fb9

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@cloudflare/channels Minor

Not sure what this means? Click here to learn what changesets are.

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

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

This report is out of date. Scroll down for Devin Review's latest report on this PR.

🔍 Devin Review: 1 flag

Not posted on this PR by your GitHub settings — view it in Devin Review. (Configure)

Devin Review

@pkg-pr-new

pkg-pr-new Bot commented Aug 28, 2026

Copy link
Copy Markdown

Open in StackBlitz

agents

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

@cloudflare/ai-chat

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

@cloudflare/codemode

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

hono-agents

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

@cloudflare/shell

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

@cloudflare/think

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

@cloudflare/voice

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

@cloudflare/worker-bundler

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

commit: b681fb9

@agent-think

agent-think Bot commented Sep 8, 2026

Copy link
Copy Markdown
Contributor

🔴 agents import sizes

Measured 295 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
65 27 85 58 30 30

Compared 04c1e61b with b681fb94. Open workflow run.

Changed imports (237)
Status Import Base gzip Head gzip Delta
🔴 agents/lifecycle#Lifecycle 4.0 KiB 8.3 KiB +4.3 KiB (+108.31%)
🔴 agents/schedules/parser#scheduleSchema 63.3 KiB 85.3 KiB +22.1 KiB (+34.87%)
🔴 agents/schedule#scheduleSchema 63.3 KiB 85.3 KiB +22.1 KiB (+34.85%)
🔴 agents/schedule#unstable_scheduleSchema 63.3 KiB 85.3 KiB +22.1 KiB (+34.85%)
🔴 agents/schedules/parser#getSchedulePrompt 63.7 KiB 85.8 KiB +22.1 KiB (+34.62%)
🔴 agents/schedule#getSchedulePrompt 63.8 KiB 85.8 KiB +22.1 KiB (+34.6%)
🔴 agents/schedule#unstable_getSchedulePrompt 63.8 KiB 85.9 KiB +22.1 KiB (+34.55%)
🔴 agents/agent-tools#agentTool 90.3 KiB 112.5 KiB +22.2 KiB (+24.64%)
🔴 agents/browser/ai#createQuickActionTools 100.7 KiB 122.5 KiB +21.8 KiB (+21.62%)
🔴 agents/chat#createToolsFromClientSchemas 94.3 KiB 114.3 KiB +20.0 KiB (+21.21%)
🔴 agents/chat/react#useAgentChat 111.1 KiB 132.9 KiB +21.8 KiB (+19.65%)
🔴 agents/browser/ai#createBrowserRuntime 124.2 KiB 146.0 KiB +21.8 KiB (+17.55%)
🔴 agents/browser/ai#createBrowserTools 124.2 KiB 146.0 KiB +21.8 KiB (+17.54%)
🔴 agents/mcp/client#MCPClientManager 136.5 KiB 158.6 KiB +22.2 KiB (+16.24%)
🔴 agents/browser/tanstack-ai#createBrowserTools 139.9 KiB 161.7 KiB +21.8 KiB (+15.58%)
🔴 agents#DurableObjectOAuthClientProvider 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#normalizeServerId 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#getCurrentAgent 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#Agent 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#camelCaseToKebabCase 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#AGENT_TOOL_MILESTONE_PART 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#isDurableObjectMemoryLimitReset 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#isDurableObjectCodeUpdateReset 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#MCP_SERVER_ID_MAX_LENGTH 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#DEFAULT_AGENT_STATIC_OPTIONS 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#getAgentByName 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#callable 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents/chat-sdk#defaultThreadShard 226.2 KiB 258.7 KiB +32.4 KiB (+14.33%)
🔴 agents#parseSubAgentPath 226.2 KiB 258.6 KiB +32.4 KiB (+14.33%)
🔴 agents#isPlatformTransientError 226.2 KiB 258.6 KiB +32.4 KiB (+14.32%)
🔴 agents#StreamingResponse 226.2 KiB 258.6 KiB +32.4 KiB (+14.32%)
🔴 agents#isDurableObjectStorageReset 226.2 KiB 258.6 KiB +32.4 KiB (+14.32%)
🔴 agents#__DO_NOT_USE_WILL_BREAK__withInvocationScope 226.2 KiB 258.6 KiB +32.4 KiB (+14.32%)
🔴 agents#SUB_PREFIX 226.2 KiB 258.6 KiB +32.4 KiB (+14.32%)
🔴 agents#AGENT_TOOL_PROGRESS_PART 226.2 KiB 258.6 KiB +32.4 KiB (+14.32%)
🔴 agents#SqlError 226.2 KiB 258.6 KiB +32.4 KiB (+14.32%)
🔴 agents#__DO_NOT_USE_WILL_BREAK__agentContext 226.2 KiB 258.6 KiB +32.4 KiB (+14.32%)
🔴 agents/chat-sdk#defaultKeyShard 226.4 KiB 258.8 KiB +32.4 KiB (+14.32%)
🔴 agents#unstable_callable 226.3 KiB 258.7 KiB +32.4 KiB (+14.31%)
🔴 agents#MessageType 226.4 KiB 258.8 KiB +32.4 KiB (+14.31%)
🔴 agents/workflows#WorkflowRejectedError 226.3 KiB 258.7 KiB +32.4 KiB (+14.31%)
🔴 agents#createHeaderBasedEmailResolver 226.4 KiB 258.8 KiB +32.4 KiB (+14.31%)
🔴 agents#routeAgentEmail 226.5 KiB 258.9 KiB +32.4 KiB (+14.31%)
🔴 agents#routeSubAgentRequest 226.4 KiB 258.8 KiB +32.4 KiB (+14.3%)
🔴 agents#getSubAgentByName 226.5 KiB 258.9 KiB +32.4 KiB (+14.29%)
🔴 agents#buildAgentPath 226.8 KiB 259.1 KiB +32.4 KiB (+14.28%)
🔴 agents#buildAgentUrl 226.9 KiB 259.3 KiB +32.4 KiB (+14.27%)
🔴 agents/chat-sdk#ChatSdkStateAgent 227.9 KiB 260.4 KiB +32.5 KiB (+14.25%)
🔴 agents#routeAgentRequest 226.9 KiB 259.2 KiB +32.3 KiB (+14.24%)
🔴 agents/workflows#AgentWorkflow 227.6 KiB 260.0 KiB +32.4 KiB (+14.23%)
🔴 agents/chat-sdk#ChatSdkStateAdapter 228.5 KiB 261.0 KiB +32.5 KiB (+14.21%)
🔴 agents/chat-sdk#createChatSdkState 228.5 KiB 261.0 KiB +32.5 KiB (+14.2%)
🔴 agents/skills#SkillRegistry 375.7 KiB 416.4 KiB +40.8 KiB (+10.85%)
🔴 agents/mcp#getMcpAuthContext 309.6 KiB 342.5 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#McpAgent 309.5 KiB 342.5 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#RPC_DO_PREFIX 309.6 KiB 342.5 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#RPCServerTransport 309.6 KiB 342.5 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#RPCClientTransport 309.6 KiB 342.5 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#StreamableHTTPEdgeClientTransport 309.6 KiB 342.6 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#normalizeServerId 309.6 KiB 342.5 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#MCP_SERVER_ID_MAX_LENGTH 309.5 KiB 342.5 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#SSEEdgeClientTransport 309.6 KiB 342.6 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#ElicitRequestSchema 309.6 KiB 342.5 KiB +32.9 KiB (+10.63%)
🔴 agents/mcp#DurableObjectEventStore 309.6 KiB 342.5 KiB +32.9 KiB (+10.62%)
🔴 agents/mcp#WorkerTransport 313.0 KiB 345.8 KiB +32.9 KiB (+10.5%)
🟡 agents/mcp#experimental_createMcpHandler 343.0 KiB 376.1 KiB +33.1 KiB (+9.65%)
🟡 agents/mcp#createLegacyMcpHandler 342.9 KiB 375.9 KiB +33.1 KiB (+9.65%)
🟡 agents/mcp#createMcpHandler 355.1 KiB 388.2 KiB +33.1 KiB (+9.32%)
🟡 agents/mcp/client#MCP_SERVER_ID_MAX_LENGTH 58.0 KiB 62.9 KiB +4.8 KiB (+8.32%)
🟡 agents/mcp/client#getNamespacedData 58.1 KiB 62.9 KiB +4.8 KiB (+8.31%)
🟡 agents/mcp/client#normalizeServerId 58.2 KiB 63.0 KiB +4.8 KiB (+8.29%)
🟡 agents/mcp/server#getMcpAuthContext 59.2 KiB 64.0 KiB +4.8 KiB (+8.19%)
🟡 agents/lifecycle#getCurrentAgent 350 B 376 B +26 B (+7.43%)
🟡 agents/observability#genericObservability 439 B 470 B +31 B (+7.06%)
🟡 agents/observability#channels 243 B 259 B +16 B (+6.58%)
🟡 agents/mcp/server#createMcpHandler 75.7 KiB 80.5 KiB +4.8 KiB (+6.3%)
🟡 agents/lifecycle#LifecycleCapability 456 B 484 B +28 B (+6.14%)
🟡 agents/experimental/webmcp#registerWebMcp 80.5 KiB 85.2 KiB +4.7 KiB (+5.9%)
🟡 agents/observability#subscribe 308 B 324 B +16 B (+5.19%)
🟡 agents/chat#ResumableStream 4.5 KiB 4.6 KiB +135 B (+2.94%)
🟡 agents/websockets#isCallablesRpcUpgrade 12.4 KiB 12.4 KiB +30 B (+0.24%)
🟡 agents/websockets#CALLABLES_RPC_VALUE 12.4 KiB 12.4 KiB +29 B (+0.23%)
🟡 agents/websockets#CALLABLES_RPC_QUERY 12.4 KiB 12.4 KiB +29 B (+0.23%)
🟡 agents/websockets#callablesFromDecorated 12.7 KiB 12.7 KiB +28 B (+0.22%)
🟡 agents/websockets#callablesRpcUrl 12.4 KiB 12.5 KiB +24 B (+0.19%)
🟡 agents/websockets#WebSockets 17.7 KiB 17.7 KiB +28 B (+0.15%)
🟡 agents/vite#default 353.3 KiB 353.8 KiB +498 B (+0.14%)
🟡 agents/skills#runner 369.0 KiB 369.0 KiB +9 B (+0%)
🟡 agents/skills#parseSkillFrontmatter 328.4 KiB 328.4 KiB +4 B (+0%)
🟡 agents/skills#r2 330.2 KiB 330.2 KiB +4 B (+0%)
🟡 agents/skills#fromManifest 309.8 KiB 309.8 KiB +2 B (+0%)
🟡 agents/skills#parseSkillMarkdown 328.6 KiB 328.6 KiB +1 B (+0%)
🟢 agents/chat#CHAT_RECOVERY_ALARM_DEBOUNCE_MS 4.5 KiB 2.3 KiB -2.2 KiB (-48.63%)
🟢 agents/chat#CHAT_RECOVERING_FLAG_TTL_MS 4.5 KiB 2.3 KiB -2.2 KiB (-48.63%)
🟢 agents/chat#CHAT_RECOVERY_INCIDENT_TTL_MS 4.5 KiB 2.3 KiB -2.2 KiB (-48.63%)
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_NO_PROGRESS_TIMEOUT_MS 4.5 KiB 2.3 KiB -2.2 KiB (-48.62%)
🟢 agents/chat#aiSdkRecoveryCodec 4.5 KiB 2.3 KiB -2.2 KiB (-48.61%)
🟢 agents/chat#applyChunkToParts 4.5 KiB 2.3 KiB -2.2 KiB (-48.61%)
🟢 agents/chat#AutoContinuationController 4.5 KiB 2.3 KiB -2.2 KiB (-48.61%)
🟢 agents/chat#CHAT_MESSAGE_TYPES 4.5 KiB 2.3 KiB -2.2 KiB (-48.61%)
🟢 agents/chat#CHAT_RECOVERY_STABLE_RETRY_DELAY_SECONDS 4.5 KiB 2.3 KiB -2.2 KiB (-48.6%)
🟢 agents/chat#KV_DELETE_MAX_KEYS 4.5 KiB 2.3 KiB -2.2 KiB (-48.59%)
🟢 agents/chat#normalizeToolInput 4.5 KiB 2.3 KiB -2.2 KiB (-48.59%)
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_ATTEMPTS 4.5 KiB 2.3 KiB -2.2 KiB (-48.58%)
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_OOM_RETRIES 4.5 KiB 2.3 KiB -2.2 KiB (-48.58%)
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_WORK 4.5 KiB 2.3 KiB -2.2 KiB (-48.57%)
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_STABLE_TIMEOUT_MS 4.5 KiB 2.3 KiB -2.2 KiB (-48.57%)
🟢 agents/chat#AGENT_TOOL_STREAM_PROGRESS_BUMP_THROTTLE_MS 4.5 KiB 2.3 KiB -2.2 KiB (-48.54%)
🟢 agents/chat#CHAT_STREAM_PROGRESS_CREDIT_THROTTLE_MS 4.5 KiB 2.3 KiB -2.2 KiB (-48.54%)
🟢 agents/chat#MAX_BOUND_PARAMS 4.5 KiB 2.3 KiB -2.2 KiB (-48.52%)
🟢 agents/chat#CHAT_RECOVERING_KEY 4.5 KiB 2.3 KiB -2.2 KiB (-48.51%)
🟢 agents/chat#ROW_MAX_BYTES 4.5 KiB 2.3 KiB -2.2 KiB (-48.51%)
🟢 agents/chat#CHAT_RECOVERY_PROGRESS_KEY 4.5 KiB 2.3 KiB -2.2 KiB (-48.45%)
🟢 agents/chat#CHAT_LAST_TERMINAL_KEY 4.5 KiB 2.3 KiB -2.2 KiB (-48.44%)
🟢 agents/chat#CHAT_RECOVERY_INCIDENT_KEY_PREFIX 4.5 KiB 2.3 KiB -2.2 KiB (-48.42%)
🟢 agents/chat#TIMED_OUT 4.5 KiB 2.3 KiB -2.2 KiB (-48.42%)
🟢 agents/chat#wrapChatFiberSnapshot 4.5 KiB 2.3 KiB -2.2 KiB (-48.42%)
🟢 agents/chat#toolPartHasSettledResult 4.5 KiB 2.3 KiB -2.2 KiB (-48.29%)
🟢 agents/chat#createAgentToolEventState 4.5 KiB 2.3 KiB -2.2 KiB (-48.25%)
🟢 agents/chat#readChatRecoveryProgress 4.5 KiB 2.3 KiB -2.2 KiB (-48.23%)
🟢 agents/chat#clientResolvableToolNames 4.5 KiB 2.3 KiB -2.2 KiB (-48.23%)
🟢 agents/chat#clearChatTerminal 4.5 KiB 2.3 KiB -2.2 KiB (-48.2%)
🟢 agents/chat#pendingChatTerminal 4.5 KiB 2.3 KiB -2.2 KiB (-48.19%)
🟢 agents/chat#drainInteractionApplies 4.5 KiB 2.3 KiB -2.2 KiB (-48.18%)
🟢 agents/chat#STREAM_RESUME_NONE_REASONS 4.5 KiB 2.3 KiB -2.2 KiB (-48.18%)
🟢 agents/chat#recordChatTerminal 4.5 KiB 2.4 KiB -2.2 KiB (-48.14%)
🟢 agents/chat#ChatStreamStalledError 4.5 KiB 2.4 KiB -2.2 KiB (-48.11%)
🟢 agents/chat#bumpChatRecoveryProgress 4.5 KiB 2.4 KiB -2.2 KiB (-48.08%)
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_TERMINAL_MESSAGE 4.5 KiB 2.4 KiB -2.2 KiB (-48.06%)
🟢 agents/chat#AgentToolStreamProgressThrottle 4.5 KiB 2.4 KiB -2.2 KiB (-48.06%)
🟢 agents/chat#StreamProgressCreditThrottle 4.5 KiB 2.4 KiB -2.2 KiB (-48.06%)
🟢 agents/chat#shouldCreditStreamProgress 4.5 KiB 2.4 KiB -2.2 KiB (-48.05%)
🟢 agents/chat#buildChatRecoveringFrame 4.6 KiB 2.4 KiB -2.2 KiB (-47.76%)
🟢 agents/chat#pausedExecutionUpdate 4.6 KiB 2.4 KiB -2.2 KiB (-47.73%)
🟢 agents/chat#toolResultUpdate 4.6 KiB 2.4 KiB -2.2 KiB (-47.71%)
🟢 agents/chat#isReplayChunk 4.6 KiB 2.4 KiB -2.2 KiB (-47.71%)
🟢 agents/chat#applyToolUpdate 4.6 KiB 2.4 KiB -2.2 KiB (-47.71%)
🟢 agents/chat#resolveToolMergeId 4.6 KiB 2.4 KiB -2.2 KiB (-47.69%)
🟢 agents/chat#partAwaitsClientInteraction 4.6 KiB 2.4 KiB -2.2 KiB (-47.68%)
🟢 agents/chat#reconcileOrphanPartial 4.6 KiB 2.4 KiB -2.2 KiB (-47.62%)
🟢 agents/chat#toolApprovalUpdate 4.6 KiB 2.4 KiB -2.2 KiB (-47.58%)
🟢 agents/chat#listActiveChatRecoveryIncidents 4.6 KiB 2.4 KiB -2.2 KiB (-47.57%)
🟢 agents/chat#awaitWithDeadline 4.6 KiB 2.4 KiB -2.2 KiB (-47.55%)
🟢 agents/chat#crossMessageToolResultUpdate 4.6 KiB 2.4 KiB -2.2 KiB (-47.44%)
🟢 agents/chat#unwrapChatFiberSnapshot 4.6 KiB 2.4 KiB -2.2 KiB (-47.32%)
🟢 agents/chat#classifyAgentToolChildRecovery 4.6 KiB 2.4 KiB -2.2 KiB (-47.31%)
🟢 agents/chat#MessageType 4.6 KiB 2.4 KiB -2.2 KiB (-47.29%)
🟢 agents/chat#hasIncompleteToolBatch 4.6 KiB 2.4 KiB -2.2 KiB (-47.27%)
🟢 agents/chat#buildInClauseStrings 4.6 KiB 2.4 KiB -2.2 KiB (-47.25%)
🟢 agents/chat#sweepStaleChatRecoveryIncidents 4.6 KiB 2.4 KiB -2.2 KiB (-47.14%)
🟢 agents/chat#setChatRecovering 4.6 KiB 2.5 KiB -2.2 KiB (-47.08%)
🟢 agents/chat#createChatFiberSnapshot 4.6 KiB 2.5 KiB -2.2 KiB (-46.89%)
🟢 agents/chat#sendIfOpen 4.5 KiB 2.4 KiB -2.1 KiB (-46.78%)
🟢 agents/chat#interceptAgentToolBroadcast 4.7 KiB 2.5 KiB -2.2 KiB (-46.75%)
🟢 agents/chat#parseProtocolMessage 4.7 KiB 2.5 KiB -2.2 KiB (-46.43%)
🟢 agents/chat#sanitizeMessage 4.7 KiB 2.5 KiB -2.2 KiB (-46.3%)
🟢 agents/chat#AbortRegistry 4.7 KiB 2.5 KiB -2.2 KiB (-46.17%)
🟢 agents/chat#runChatRecoveryExhaustion 4.7 KiB 2.6 KiB -2.2 KiB (-46.06%)
🟢 agents/chat#resolveChatRecoveryConfig 4.7 KiB 2.6 KiB -2.2 KiB (-46.01%)
🟢 agents/chat#iterateWithStallWatchdog 4.8 KiB 2.6 KiB -2.2 KiB (-45.6%)
🟢 agents/chat#repairInterruptedToolParts 4.8 KiB 2.6 KiB -2.2 KiB (-45.53%)
🟢 agents/chat#byteLength 4.5 KiB 2.5 KiB -2.0 KiB (-45.5%)
🟢 agents/chat#TurnQueue 4.8 KiB 2.6 KiB -2.2 KiB (-45.44%)
🟢 agents/chat#AgentToolProgressEmitter 4.8 KiB 2.7 KiB -2.2 KiB (-45.07%)
🟢 agents/chat#TextSegmentJoiner 4.9 KiB 2.7 KiB -2.2 KiB (-44.71%)
🟢 agents/chat#PreStreamTurns 4.7 KiB 2.6 KiB -2.1 KiB (-44.29%)
🟢 agents/chat#ContinuationState 4.7 KiB 2.7 KiB -2.1 KiB (-44.07%)
🟢 agents/chat#reconcileMessages 5.0 KiB 2.8 KiB -2.2 KiB (-43.97%)
🟢 agents/chat#SubmitConcurrencyController 5.1 KiB 2.9 KiB -2.2 KiB (-43.08%)
🟢 agents/chat#StreamAccumulator 5.1 KiB 2.9 KiB -2.2 KiB (-42.37%)
🟢 agents/chat#persistReconstructedOrphan 5.2 KiB 3.1 KiB -2.2 KiB (-41.45%)
🟢 agents/chat#ResumeHandshake 5.0 KiB 3.0 KiB -2.1 KiB (-41.24%)
🟢 agents/chat#broadcastTransition 5.3 KiB 3.2 KiB -2.2 KiB (-40.71%)
🟢 agents/chat#applyAgentToolEvent 5.4 KiB 3.2 KiB -2.2 KiB (-40.69%)
🟢 agents/chat#enforceRowSizeLimit 5.5 KiB 3.5 KiB -2.0 KiB (-36.52%)
🟢 agents/chat#ChatRecoveryEngine 6.5 KiB 4.4 KiB -2.2 KiB (-33.01%)
🟢 agents/schedules#Scheduler 8.1 KiB 6.8 KiB -1.3 KiB (-16.53%)
agents/chat#CHAT_RECOVERY_TASK_NAME 2.3 KiB
agents/chat#chatRecoveryTaskRunOptions 2.4 KiB
agents/chat#createChatRecoveryTaskDefinition 2.6 KiB
agents/chat#createChatStreams 6.3 KiB
agents/chat#createChatTurnTaskDefinition 2.7 KiB
agents/chat#dispatchChatRecoveryToHandoff 3.0 KiB
agents/chat#isPlatformFailure 2.6 KiB
agents/chat#truncateOlderMessages 3.2 KiB
agents/context#AgentContextProvider 412 B
agents/context#AgentSearchProvider 640 B
agents/context#ContextBlocks 87.4 KiB
agents/routing#getAgentByName 795 B
agents/routing#routeAgentRequest 1.6 KiB
agents/routing#RoutedAgents 2.4 KiB
agents/sessions#createCompactFunction 1.7 KiB
agents/sessions#Session 2.0 KiB
agents/sessions#Sessions 9.0 KiB
agents/streams#DEFAULT_MAX_CHUNK_BYTES 94 B
agents/streams#sseResponse 855 B
agents/streams#StreamClosedError 175 B
agents/streams#StreamNotFoundError 215 B
agents/streams#Streams 4.1 KiB
agents/streams#StreamSerializationError 171 B
agents/tasks#DuplicateTaskStepError 328 B
agents/tasks#MAX_SERIALIZED_BYTES 190 B
agents/tasks#MissingTaskDefinitionError 358 B
agents/tasks#NonRetryableError 238 B
agents/tasks#TaskReplayDivergedError 341 B
agents/tasks#Tasks 8.9 KiB
agents/tasks#TaskSerializationError 258 B
🟢 agents/chat#chatRecoverySchedulePolicy 4.5 KiB
🟢 agents/chat#cleanupStreamBuffers 4.5 KiB
🟢 agents/chat#STREAM_CLEANUP_DELAY_SECONDS 4.5 KiB
🟢 agents/experimental/memory/session#AgentContextProvider 425 B
🟢 agents/experimental/memory/session#AgentSearchProvider 821 B
🟢 agents/experimental/memory/session#AgentSessionProvider 2.5 KiB
🟢 agents/experimental/memory/session#isSearchProvider 128 B
🟢 agents/experimental/memory/session#isSkillProvider 127 B
🟢 agents/experimental/memory/session#isWritableProvider 126 B
🟢 agents/experimental/memory/session#PostgresContextProvider 422 B
🟢 agents/experimental/memory/session#PostgresSearchProvider 630 B
🟢 agents/experimental/memory/session#PostgresSessionProvider 1.7 KiB
🟢 agents/experimental/memory/session#R2SkillProvider 436 B
🟢 agents/experimental/memory/session#Session 71.3 KiB
🟢 agents/experimental/memory/session#SessionManager 72.5 KiB
🟢 agents/experimental/memory/utils#alignBoundaryBackward 291 B
🟢 agents/experimental/memory/utils#alignBoundaryForward 275 B
🟢 agents/experimental/memory/utils#buildSummaryPrompt 867 B
🟢 agents/experimental/memory/utils#CHARS_PER_TOKEN 51 B
🟢 agents/experimental/memory/utils#COMPACTION_PREFIX 63 B
🟢 agents/experimental/memory/utils#computeSummaryBudget 363 B
🟢 agents/experimental/memory/utils#createCompactFunction 1.8 KiB
🟢 agents/experimental/memory/utils#estimateMessageTokens 336 B
🟢 agents/experimental/memory/utils#estimateStringTokens 142 B
🟢 agents/experimental/memory/utils#findTailCutByTokens 597 B
🟢 agents/experimental/memory/utils#isCompactionMessage 98 B
🟢 agents/experimental/memory/utils#sanitizeToolPairs 537 B
🟢 agents/experimental/memory/utils#TOKENS_PER_MESSAGE 51 B
🟢 agents/experimental/memory/utils#truncateOlderMessages 1022 B
🟢 agents/experimental/memory/utils#WORDS_TOKEN_MULTIPLIER 53 B
All 265 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 146.0 KiB 630.3 KiB
🔴 agents/browser/ai#createBrowserTools 146.0 KiB 630.3 KiB
🔴 agents/browser/ai#createQuickActionTools 122.5 KiB 554.3 KiB
🔴 agents/browser/tanstack-ai#createBrowserTools 161.7 KiB 699.2 KiB
🟢 agents/chat#AbortRegistry 2.5 KiB 8.9 KiB
🟢 agents/chat#AGENT_TOOL_STREAM_PROGRESS_BUMP_THROTTLE_MS 2.3 KiB 8.2 KiB
🟢 agents/chat#AgentToolProgressEmitter 2.7 KiB 9.5 KiB
🟢 agents/chat#AgentToolStreamProgressThrottle 2.4 KiB 8.3 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.4 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.4 KiB
🟢 agents/chat#buildChatRecoveringFrame 2.4 KiB 8.4 KiB
🟢 agents/chat#buildInClauseStrings 2.4 KiB 8.4 KiB
🟢 agents/chat#bumpChatRecoveryProgress 2.4 KiB 8.3 KiB
🟢 agents/chat#byteLength 2.5 KiB 8.4 KiB
🟢 agents/chat#CHAT_LAST_TERMINAL_KEY 2.3 KiB 8.2 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.2 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.2 KiB
🟢 agents/chat#CHAT_RECOVERY_INCIDENT_TTL_MS 2.3 KiB 8.2 KiB
🟢 agents/chat#CHAT_RECOVERY_PROGRESS_KEY 2.3 KiB 8.2 KiB
🟢 agents/chat#CHAT_RECOVERY_STABLE_RETRY_DELAY_SECONDS 2.3 KiB 8.2 KiB
agents/chat#CHAT_RECOVERY_TASK_NAME 2.3 KiB 8.2 KiB
🟢 agents/chat#CHAT_STREAM_PROGRESS_CREDIT_THROTTLE_MS 2.3 KiB 8.2 KiB
🟢 agents/chat#ChatRecoveryEngine 4.4 KiB 15.3 KiB
agents/chat#chatRecoveryTaskRunOptions 2.4 KiB 8.6 KiB
🟢 agents/chat#ChatStreamStalledError 2.4 KiB 8.3 KiB
🟢 agents/chat#classifyAgentToolChildRecovery 2.4 KiB 8.5 KiB
🟢 agents/chat#clearChatTerminal 2.3 KiB 8.3 KiB
🟢 agents/chat#clientResolvableToolNames 2.3 KiB 8.3 KiB
🟢 agents/chat#ContinuationState 2.7 KiB 9.8 KiB
🟢 agents/chat#createAgentToolEventState 2.3 KiB 8.3 KiB
🟢 agents/chat#createChatFiberSnapshot 2.5 KiB 8.6 KiB
agents/chat#createChatRecoveryTaskDefinition 2.6 KiB 9.0 KiB
agents/chat#createChatStreams 6.3 KiB 21.7 KiB
agents/chat#createChatTurnTaskDefinition 2.7 KiB 8.9 KiB
🔴 agents/chat#createToolsFromClientSchemas 114.3 KiB 545.4 KiB
🟢 agents/chat#crossMessageToolResultUpdate 2.4 KiB 8.6 KiB
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_ATTEMPTS 2.3 KiB 8.2 KiB
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_OOM_RETRIES 2.3 KiB 8.2 KiB
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_MAX_WORK 2.3 KiB 8.2 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.2 KiB
🟢 agents/chat#DEFAULT_CHAT_RECOVERY_TERMINAL_MESSAGE 2.4 KiB 8.3 KiB
agents/chat#dispatchChatRecoveryToHandoff 3.0 KiB 9.9 KiB
🟢 agents/chat#drainInteractionApplies 2.3 KiB 8.3 KiB
🟢 agents/chat#enforceRowSizeLimit 3.5 KiB 11.2 KiB
🟢 agents/chat#hasIncompleteToolBatch 2.4 KiB 8.6 KiB
🟢 agents/chat#interceptAgentToolBroadcast 2.5 KiB 8.7 KiB
agents/chat#isPlatformFailure 2.6 KiB 8.9 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.4 KiB
🟢 agents/chat#MAX_BOUND_PARAMS 2.3 KiB 8.2 KiB
🟢 agents/chat#MessageType 2.4 KiB 9.0 KiB
🟢 agents/chat#normalizeToolInput 2.3 KiB 8.2 KiB
🟢 agents/chat#parseProtocolMessage 2.5 KiB 9.0 KiB
🟢 agents/chat#partAwaitsClientInteraction 2.4 KiB 8.6 KiB
🟢 agents/chat#pausedExecutionUpdate 2.4 KiB 8.4 KiB
🟢 agents/chat#pendingChatTerminal 2.3 KiB 8.3 KiB
🟢 agents/chat#persistReconstructedOrphan 3.1 KiB 11.0 KiB
🟢 agents/chat#PreStreamTurns 2.6 KiB 9.3 KiB
🟢 agents/chat#readChatRecoveryProgress 2.3 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.1 KiB
🟢 agents/chat#resolveChatRecoveryConfig 2.6 KiB 8.9 KiB
🟢 agents/chat#resolveToolMergeId 2.4 KiB 8.5 KiB
🟡 agents/chat#ResumableStream 4.6 KiB 15.6 KiB
🟢 agents/chat#ResumeHandshake 3.0 KiB 10.4 KiB
🟢 agents/chat#ROW_MAX_BYTES 2.3 KiB 8.2 KiB
🟢 agents/chat#runChatRecoveryExhaustion 2.6 KiB 8.9 KiB
🟢 agents/chat#sanitizeMessage 2.5 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.3 KiB
🟢 agents/chat#STREAM_RESUME_NONE_REASONS 2.3 KiB 8.2 KiB
🟢 agents/chat#StreamAccumulator 2.9 KiB 10.7 KiB
🟢 agents/chat#StreamProgressCreditThrottle 2.4 KiB 8.3 KiB
🟢 agents/chat#SubmitConcurrencyController 2.9 KiB 10.3 KiB
🟢 agents/chat#sweepStaleChatRecoveryIncidents 2.4 KiB 8.5 KiB
🟢 agents/chat#TextSegmentJoiner 2.7 KiB 9.2 KiB
🟢 agents/chat#TIMED_OUT 2.3 KiB 8.2 KiB
🟢 agents/chat#toolApprovalUpdate 2.4 KiB 8.5 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.5 KiB
🟢 agents/chat#wrapChatFiberSnapshot 2.3 KiB 8.2 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 132.9 KiB 609.7 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#createCompactFunction 1.7 KiB 4.0 KiB
agents/sessions#Session 2.0 KiB 6.0 KiB
agents/sessions#Sessions 9.0 KiB 31.8 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 855 B 1.6 KiB
agents/streams#StreamClosedError 175 B 212 B
agents/streams#StreamNotFoundError 215 B 276 B
agents/streams#Streams 4.1 KiB 13.5 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/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].

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

This report is out of date. Scroll down for Devin Review's latest report on this PR.

Devin Review found 2 new potential issues.

1 flag not posted on this PR by your GitHub settings — view it in Devin Review. (Configure)

Devin Review

Comment thread packages/channels/src/fallback.ts Outdated
return invalidSurface();
}

const channel = this.#configuredChannel(surface.channelKey);

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Unknown destinations leave producers running

Unknown destinations make #configuredChannel throw before chunks is cancelled. Producers can retain timers or external resources after delivery has failed.

Suggested change
const channel = this.#configuredChannel(surface.channelKey);
let channel: Channel;
try {
channel = this.#configuredChannel(surface.channelKey);
} catch (error) {
await chunks.cancel().catch(() => {});
throw error;
}
Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

This report is out of date. Scroll down for Devin Review's latest report on this PR.

Devin Review found 2 new potential issues.

2 flags not posted on this PR by your GitHub settings — view them in Devin Review. (Configure)

Devin Review

Comment on lines +1002 to +1007
if (
apiResponse?.ok === true &&
typeof apiResponse.channel === "string" &&
typeof apiResponse.ts === "string"
) {
return { channelId: apiResponse.channel, ts: apiResponse.ts };

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 Successful Slack streams truncate

callSlack rejects successful append and stop responses unless they repeat the channel and timestamp. The first append cancels the remaining answer, and the completed stream reports uncertain.

Prompt for agents
Slack Web API success payloads differ by method. chat.startStream returns the channel and timestamp needed to create a reference, while chat.appendStream and chat.stopStream can return only ok: true. Refactor callSlack in packages/channels/src/adapters/slack.ts so each caller validates the success shape appropriate to its method. Keep requiring channel and timestamp for chat.startStream and chat.postMessage, but accept an ok-only success for append and stop. Add tests whose append and stop responses contain only ok: true, matching the provider contract.
Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Comment on lines +458 to +461
...(!isDirectMessage && {
recipientUserId: actorId,
recipientTeamId: teamId
})

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Direct-message approval replies fail

Direct-message approval surfaces omit the recipient IDs required by chat.startStream. Streaming a reply to those approval actions is rejected by Slack.

Suggested change
...(!isDirectMessage && {
recipientUserId: actorId,
recipientTeamId: teamId
})
recipientUserId: actorId,
recipientTeamId: teamId
Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

devin-ai-integration[bot]

This comment was marked as resolved.

@cjol
cjol merged commit d2b5130 into main Sep 9, 2026
7 checks passed
@cjol
cjol deleted the docs/channel-streaming-rfc branch September 9, 2026 09:52
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