@yolk-sdk/agent 0.1.0-canary.26 → 0.1.0-canary.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -21
- package/dist/client/index.d.mts +2 -2
- package/dist/client/index.mjs +2 -2
- package/dist/client/transport.d.mts +29 -1
- package/dist/client/transport.d.mts.map +1 -1
- package/dist/client/transport.mjs +255 -2
- package/dist/client/transport.mjs.map +1 -1
- package/dist/skillset/merge.d.mts +2 -2
- package/dist/skillset/name.d.mts +2 -2
- package/dist/skillset/name.d.mts.map +1 -1
- package/package.json +1 -1
- package/src/client/README.md +6 -0
- package/src/client/index.ts +15 -0
- package/src/client/transport.ts +477 -12
package/README.md
CHANGED
|
@@ -16,26 +16,26 @@ Canary APIs are unstable. Keep all `@yolk-sdk/*` packages on the same version.
|
|
|
16
16
|
|
|
17
17
|
## Subpaths
|
|
18
18
|
|
|
19
|
-
| Subpath
|
|
20
|
-
|
|
|
21
|
-
| `@yolk-sdk/agent/protocol`
|
|
22
|
-
| `@yolk-sdk/agent/loop`
|
|
23
|
-
| `@yolk-sdk/agent/loop/testing`
|
|
24
|
-
| `@yolk-sdk/agent/runtime`
|
|
25
|
-
| `@yolk-sdk/agent/client`
|
|
26
|
-
| `@yolk-sdk/agent/compaction`
|
|
27
|
-
| `@yolk-sdk/agent/tools`
|
|
28
|
-
| `@yolk-sdk/agent/react`
|
|
29
|
-
| `@yolk-sdk/agent/oauth`
|
|
30
|
-
| `@yolk-sdk/agent/providers/openai`
|
|
31
|
-
| `@yolk-sdk/agent/providers/openai/codex`
|
|
32
|
-
| `@yolk-sdk/agent/providers/openai/codex-provider`
|
|
33
|
-
| `@yolk-sdk/agent/providers/openai/provider`
|
|
34
|
-
| `@yolk-sdk/agent/providers/anthropic`
|
|
35
|
-
| `@yolk-sdk/agent/providers/anthropic/claude`
|
|
36
|
-
| `@yolk-sdk/agent/providers/anthropic/claude-provider` | Claude LLM provider factory
|
|
37
|
-
| `@yolk-sdk/agent/skillset`
|
|
38
|
-
| `@yolk-sdk/agent/voice`
|
|
19
|
+
| Subpath | Purpose |
|
|
20
|
+
| ----------------------------------------------------- | --------------------------------------------------------------- |
|
|
21
|
+
| `@yolk-sdk/agent/protocol` | Wire messages, events, content, usage, tool schemas |
|
|
22
|
+
| `@yolk-sdk/agent/loop` | Stateless LLM/tool loop |
|
|
23
|
+
| `@yolk-sdk/agent/loop/testing` | Faux provider and tool executor test helpers |
|
|
24
|
+
| `@yolk-sdk/agent/runtime` | Transcript or append-backed runtime orchestration |
|
|
25
|
+
| `@yolk-sdk/agent/client` | HTTP/NDJSON transport, HITL resume, retry/error state helpers |
|
|
26
|
+
| `@yolk-sdk/agent/compaction` | Pure host-owned context budget, planning, and transformer utils |
|
|
27
|
+
| `@yolk-sdk/agent/tools` | Tool module registry, `makeTool`, task/question tool contracts |
|
|
28
|
+
| `@yolk-sdk/agent/react` | Headless React chat hook, reducer, selectors, and render model |
|
|
29
|
+
| `@yolk-sdk/agent/oauth` | Provider-neutral OAuth token and broker contracts |
|
|
30
|
+
| `@yolk-sdk/agent/providers/openai` | OpenAI/Codex OAuth and broker helpers |
|
|
31
|
+
| `@yolk-sdk/agent/providers/openai/codex` | OpenAI Codex request and auth helpers |
|
|
32
|
+
| `@yolk-sdk/agent/providers/openai/codex-provider` | Codex LLM provider factory |
|
|
33
|
+
| `@yolk-sdk/agent/providers/openai/provider` | OpenAI-compatible LLM provider factory |
|
|
34
|
+
| `@yolk-sdk/agent/providers/anthropic` | Anthropic/Claude OAuth and broker helpers |
|
|
35
|
+
| `@yolk-sdk/agent/providers/anthropic/claude` | Claude request and auth helpers |
|
|
36
|
+
| `@yolk-sdk/agent/providers/anthropic/claude-provider` | Claude LLM provider factory |
|
|
37
|
+
| `@yolk-sdk/agent/skillset` | Portable skill and slash-command parsing/catalogs |
|
|
38
|
+
| `@yolk-sdk/agent/voice` | Provider-neutral voice tool-call bridge |
|
|
39
39
|
|
|
40
40
|
## Imports
|
|
41
41
|
|
|
@@ -52,7 +52,11 @@ import {
|
|
|
52
52
|
} from '@yolk-sdk/agent/protocol'
|
|
53
53
|
import { run } from '@yolk-sdk/agent/loop'
|
|
54
54
|
import { runRuntime } from '@yolk-sdk/agent/runtime'
|
|
55
|
-
import {
|
|
55
|
+
import {
|
|
56
|
+
initialAgentClientState,
|
|
57
|
+
streamAgentEventsUntilTerminal,
|
|
58
|
+
toolRunsFromHitlRequests
|
|
59
|
+
} from '@yolk-sdk/agent/client'
|
|
56
60
|
import {
|
|
57
61
|
makeContextBudget,
|
|
58
62
|
makePreviewSummaryMessage,
|
|
@@ -259,6 +263,31 @@ HITL is protocol-level, not UI-level:
|
|
|
259
263
|
HTTP client helpers treat `AgentEnd`, `AgentError`, and `AgentAwaitingInput` as logical stream
|
|
260
264
|
end for consumers. After a terminal event the response body drains to EOF; cancellation before a
|
|
261
265
|
terminal event still aborts the active body reader.
|
|
266
|
+
Durable Workflow clients can use `streamAgentEventsUntilTerminal`,
|
|
267
|
+
`streamAgentRunEventsUntilTerminal`, and `streamAgentRunHitlResponseEventsUntilTerminal` to follow
|
|
268
|
+
continuation chunks by `x-workflow-run-id` and `x-workflow-stream-tail-index` headers. These helpers
|
|
269
|
+
fail with `AgentTransportError` if no terminal event is reached before the continuation limit.
|
|
270
|
+
For HITL resume responses, `x-workflow-stream-tail-index` means the stream tail before the returned
|
|
271
|
+
body. The returned body starts at `tail + 1`; the next continuation starts after all returned
|
|
272
|
+
events. `continuationLimit: 0` disables follow-up chunks, so any non-terminal response fails
|
|
273
|
+
immediately.
|
|
274
|
+
|
|
275
|
+
```ts
|
|
276
|
+
import { streamAgentEventsUntilTerminal } from '@yolk-sdk/agent/client'
|
|
277
|
+
import { UserMessage } from '@yolk-sdk/agent/protocol'
|
|
278
|
+
|
|
279
|
+
for await (const event of streamAgentEventsUntilTerminal({
|
|
280
|
+
endpoint: '/api/agent/workflow',
|
|
281
|
+
sessionId: 'session_1',
|
|
282
|
+
messages: [UserMessage.make({ content: 'Hello' })],
|
|
283
|
+
runEndpoint: runId => `/api/agent/workflow/${encodeURIComponent(runId)}`
|
|
284
|
+
})) {
|
|
285
|
+
// Apply AgentEvent to app state.
|
|
286
|
+
}
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
The SDK client does not own durable route auth, run ownership, Workflow hook-token routing, or HITL
|
|
290
|
+
request matching. Hosts expose the run endpoints and validate access/response identity server-side.
|
|
262
291
|
|
|
263
292
|
## Task subagents
|
|
264
293
|
|
package/dist/client/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { documentPartFromTextFile, textFromBlob } from "./attachments.mjs";
|
|
2
2
|
import { AgentClientState, AgentRunStatus, AgentToolRun, AgentTranscript, ApplyAgentEventOptions, appendAgentMessage, applyAgentEvent, completedToolRuns, initialAgentClientState, isActiveToolRun, markAgentAborted, markAgentError, reduceAgentEvents, submitAgentUserMessage, toolRunsFromHitlRequests } from "./state.mjs";
|
|
3
|
-
import { AgentHttpResponseInfo, AgentTransportError, CancelAgentRunRequest, StreamAgentEventsRequest, StreamAgentRunEventsRequest, StreamCloudflareAgentEventsRequest, SubmitQuestionResponseRequest, SubmitToolApprovalResponseRequest, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, streamAgentEventStream, streamAgentEvents, streamAgentRunEventStream, streamAgentRunEvents, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitQuestionResponse, submitToolApprovalResponse } from "./transport.mjs";
|
|
4
|
-
export { type AgentClientState, type AgentHttpResponseInfo, type AgentRunStatus, type AgentToolRun, type AgentTranscript, AgentTransportError, type ApplyAgentEventOptions, type CancelAgentRunRequest, type StreamAgentEventsRequest, type StreamAgentRunEventsRequest, type StreamCloudflareAgentEventsRequest, type SubmitQuestionResponseRequest, type SubmitToolApprovalResponseRequest, appendAgentMessage, applyAgentEvent, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, completedToolRuns, documentPartFromTextFile, initialAgentClientState, isActiveToolRun, markAgentAborted, markAgentError, reduceAgentEvents, streamAgentEventStream, streamAgentEvents, streamAgentRunEventStream, streamAgentRunEvents, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitAgentUserMessage, submitQuestionResponse, submitToolApprovalResponse, textFromBlob, toolRunsFromHitlRequests };
|
|
3
|
+
import { AgentHttpResponseInfo, AgentRunContinuationOptions, AgentTransportError, CancelAgentRunRequest, StreamAgentEventHandler, StreamAgentEventsRequest, StreamAgentEventsUntilTerminalRequest, StreamAgentRunEventsRequest, StreamAgentRunEventsUntilTerminalRequest, StreamAgentRunHitlResponseEventsRequest, StreamAgentRunHitlResponseEventsUntilTerminalRequest, StreamCloudflareAgentEventsRequest, SubmitQuestionResponseRequest, SubmitToolApprovalResponseRequest, agentRunEndpointWithStartIndex, agentRunIdFromHeaders, agentRunStreamStartIndexFromHeaders, agentRunStreamTailIndexFromHeaders, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, streamAgentEventStream, streamAgentEvents, streamAgentEventsUntilTerminal, streamAgentRunEventStream, streamAgentRunEvents, streamAgentRunEventsUntilTerminal, streamAgentRunHitlResponseEventStream, streamAgentRunHitlResponseEvents, streamAgentRunHitlResponseEventsUntilTerminal, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitQuestionResponse, submitToolApprovalResponse } from "./transport.mjs";
|
|
4
|
+
export { type AgentClientState, type AgentHttpResponseInfo, type AgentRunContinuationOptions, type AgentRunStatus, type AgentToolRun, type AgentTranscript, AgentTransportError, type ApplyAgentEventOptions, type CancelAgentRunRequest, type StreamAgentEventHandler, type StreamAgentEventsRequest, type StreamAgentEventsUntilTerminalRequest, type StreamAgentRunEventsRequest, type StreamAgentRunEventsUntilTerminalRequest, type StreamAgentRunHitlResponseEventsRequest, type StreamAgentRunHitlResponseEventsUntilTerminalRequest, type StreamCloudflareAgentEventsRequest, type SubmitQuestionResponseRequest, type SubmitToolApprovalResponseRequest, agentRunEndpointWithStartIndex, agentRunIdFromHeaders, agentRunStreamStartIndexFromHeaders, agentRunStreamTailIndexFromHeaders, appendAgentMessage, applyAgentEvent, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, completedToolRuns, documentPartFromTextFile, initialAgentClientState, isActiveToolRun, markAgentAborted, markAgentError, reduceAgentEvents, streamAgentEventStream, streamAgentEvents, streamAgentEventsUntilTerminal, streamAgentRunEventStream, streamAgentRunEvents, streamAgentRunEventsUntilTerminal, streamAgentRunHitlResponseEventStream, streamAgentRunHitlResponseEvents, streamAgentRunHitlResponseEventsUntilTerminal, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitAgentUserMessage, submitQuestionResponse, submitToolApprovalResponse, textFromBlob, toolRunsFromHitlRequests };
|
package/dist/client/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { documentPartFromTextFile, textFromBlob } from "./attachments.mjs";
|
|
2
2
|
import { appendAgentMessage, applyAgentEvent, completedToolRuns, initialAgentClientState, isActiveToolRun, markAgentAborted, markAgentError, reduceAgentEvents, submitAgentUserMessage, toolRunsFromHitlRequests } from "./state.mjs";
|
|
3
|
-
import { AgentTransportError, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, streamAgentEventStream, streamAgentEvents, streamAgentRunEventStream, streamAgentRunEvents, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitQuestionResponse, submitToolApprovalResponse } from "./transport.mjs";
|
|
4
|
-
export { AgentTransportError, appendAgentMessage, applyAgentEvent, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, completedToolRuns, documentPartFromTextFile, initialAgentClientState, isActiveToolRun, markAgentAborted, markAgentError, reduceAgentEvents, streamAgentEventStream, streamAgentEvents, streamAgentRunEventStream, streamAgentRunEvents, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitAgentUserMessage, submitQuestionResponse, submitToolApprovalResponse, textFromBlob, toolRunsFromHitlRequests };
|
|
3
|
+
import { AgentTransportError, agentRunEndpointWithStartIndex, agentRunIdFromHeaders, agentRunStreamStartIndexFromHeaders, agentRunStreamTailIndexFromHeaders, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, streamAgentEventStream, streamAgentEvents, streamAgentEventsUntilTerminal, streamAgentRunEventStream, streamAgentRunEvents, streamAgentRunEventsUntilTerminal, streamAgentRunHitlResponseEventStream, streamAgentRunHitlResponseEvents, streamAgentRunHitlResponseEventsUntilTerminal, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitQuestionResponse, submitToolApprovalResponse } from "./transport.mjs";
|
|
4
|
+
export { AgentTransportError, agentRunEndpointWithStartIndex, agentRunIdFromHeaders, agentRunStreamStartIndexFromHeaders, agentRunStreamTailIndexFromHeaders, appendAgentMessage, applyAgentEvent, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, completedToolRuns, documentPartFromTextFile, initialAgentClientState, isActiveToolRun, markAgentAborted, markAgentError, reduceAgentEvents, streamAgentEventStream, streamAgentEvents, streamAgentEventsUntilTerminal, streamAgentRunEventStream, streamAgentRunEvents, streamAgentRunEventsUntilTerminal, streamAgentRunHitlResponseEventStream, streamAgentRunHitlResponseEvents, streamAgentRunHitlResponseEventsUntilTerminal, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitAgentUserMessage, submitQuestionResponse, submitToolApprovalResponse, textFromBlob, toolRunsFromHitlRequests };
|
|
@@ -23,10 +23,29 @@ type StreamAgentEventsRequest = {
|
|
|
23
23
|
};
|
|
24
24
|
type StreamAgentRunEventsRequest = {
|
|
25
25
|
readonly endpoint: string;
|
|
26
|
+
readonly startIndex?: number;
|
|
26
27
|
readonly signal?: AbortSignal;
|
|
27
28
|
readonly httpClientLayer?: Layer.Layer<HttpClient.HttpClient>;
|
|
28
29
|
readonly onResponse?: (response: AgentHttpResponseInfo) => void;
|
|
29
30
|
};
|
|
31
|
+
type StreamAgentRunHitlResponseEventsRequest = {
|
|
32
|
+
readonly endpoint: string;
|
|
33
|
+
readonly hitlResponses: ReadonlyArray<HitlResponse>;
|
|
34
|
+
readonly signal?: AbortSignal;
|
|
35
|
+
readonly httpClientLayer?: Layer.Layer<HttpClient.HttpClient>;
|
|
36
|
+
readonly onResponse?: (response: AgentHttpResponseInfo) => void;
|
|
37
|
+
};
|
|
38
|
+
type StreamAgentEventHandler = (event: AgentEvent, count: number) => void;
|
|
39
|
+
type AgentRunContinuationOptions = {
|
|
40
|
+
readonly continuationLimit?: number;
|
|
41
|
+
readonly onEvent?: StreamAgentEventHandler;
|
|
42
|
+
};
|
|
43
|
+
type StreamAgentEventsUntilTerminalRequest = StreamAgentEventsRequest & AgentRunContinuationOptions & {
|
|
44
|
+
readonly runEndpoint?: (runId: string) => string;
|
|
45
|
+
readonly onRunId?: (runId: string) => void;
|
|
46
|
+
};
|
|
47
|
+
type StreamAgentRunEventsUntilTerminalRequest = StreamAgentRunEventsRequest & AgentRunContinuationOptions;
|
|
48
|
+
type StreamAgentRunHitlResponseEventsUntilTerminalRequest = StreamAgentRunHitlResponseEventsRequest & AgentRunContinuationOptions;
|
|
30
49
|
type CancelAgentRunRequest = {
|
|
31
50
|
readonly endpoint: string;
|
|
32
51
|
readonly httpClientLayer?: Layer.Layer<HttpClient.HttpClient>;
|
|
@@ -49,19 +68,28 @@ type StreamCloudflareAgentEventsRequest = {
|
|
|
49
68
|
readonly reasoningEffort?: AgentReasoningEffort;
|
|
50
69
|
readonly signal?: AbortSignal;
|
|
51
70
|
};
|
|
71
|
+
declare const agentRunIdFromHeaders: (headers: Readonly<Record<string, string | undefined>>) => string | undefined;
|
|
72
|
+
declare const agentRunStreamTailIndexFromHeaders: (headers: Readonly<Record<string, string | undefined>>) => number | undefined;
|
|
73
|
+
declare const agentRunStreamStartIndexFromHeaders: (headers: Readonly<Record<string, string | undefined>>) => number | undefined;
|
|
74
|
+
declare const agentRunEndpointWithStartIndex: (endpoint: string, startIndex?: number) => string;
|
|
52
75
|
declare const streamAgentEventStream: (request: StreamAgentEventsRequest) => Stream.Stream<import("@yolk-sdk/agent/protocol").AgentStart | import("@yolk-sdk/agent/protocol").AgentError | import("@yolk-sdk/agent/protocol").AgentEnd | import("@yolk-sdk/agent/protocol").AgentAwaitingInput | import("@yolk-sdk/agent/protocol").UsageUpdate | import("@yolk-sdk/agent/protocol").AgentRetry | import("@yolk-sdk/agent/protocol").CompactionStart | import("@yolk-sdk/agent/protocol").CompactionEnd | import("@yolk-sdk/agent/protocol").TurnStart | import("@yolk-sdk/agent/protocol").TurnEnd | import("@yolk-sdk/agent/protocol").LLMStreamStart | import("@yolk-sdk/agent/protocol").LLMTextDelta | import("@yolk-sdk/agent/protocol").LLMReasoningDelta | import("@yolk-sdk/agent/protocol").ToolInputStart | import("@yolk-sdk/agent/protocol").ToolInputDelta | import("@yolk-sdk/agent/protocol").ToolInputEnd | import("@yolk-sdk/agent/protocol").LLMStreamEnd | import("@yolk-sdk/agent/protocol").AssistantMessageEvent | import("@yolk-sdk/agent/protocol").ToolApprovalRequested | import("@yolk-sdk/agent/protocol").ToolApprovalGranted | import("@yolk-sdk/agent/protocol").ToolApprovalDenied | import("@yolk-sdk/agent/protocol").QuestionRequested | import("@yolk-sdk/agent/protocol").QuestionAnswered | import("@yolk-sdk/agent/protocol").QuestionCancelled | import("@yolk-sdk/agent/protocol").ToolExecutionStarted | import("@yolk-sdk/agent/protocol").ToolExecutionCompleted | import("@yolk-sdk/agent/protocol").ToolExecutionError | import("@yolk-sdk/agent/protocol").ProviderToolResult | import("@yolk-sdk/agent/protocol").SubagentStarted | import("@yolk-sdk/agent/protocol").SubagentCompleted, AgentTransportError, never>;
|
|
53
76
|
declare const streamAgentRunEventStream: (request: StreamAgentRunEventsRequest) => Stream.Stream<import("@yolk-sdk/agent/protocol").AgentStart | import("@yolk-sdk/agent/protocol").AgentError | import("@yolk-sdk/agent/protocol").AgentEnd | import("@yolk-sdk/agent/protocol").AgentAwaitingInput | import("@yolk-sdk/agent/protocol").UsageUpdate | import("@yolk-sdk/agent/protocol").AgentRetry | import("@yolk-sdk/agent/protocol").CompactionStart | import("@yolk-sdk/agent/protocol").CompactionEnd | import("@yolk-sdk/agent/protocol").TurnStart | import("@yolk-sdk/agent/protocol").TurnEnd | import("@yolk-sdk/agent/protocol").LLMStreamStart | import("@yolk-sdk/agent/protocol").LLMTextDelta | import("@yolk-sdk/agent/protocol").LLMReasoningDelta | import("@yolk-sdk/agent/protocol").ToolInputStart | import("@yolk-sdk/agent/protocol").ToolInputDelta | import("@yolk-sdk/agent/protocol").ToolInputEnd | import("@yolk-sdk/agent/protocol").LLMStreamEnd | import("@yolk-sdk/agent/protocol").AssistantMessageEvent | import("@yolk-sdk/agent/protocol").ToolApprovalRequested | import("@yolk-sdk/agent/protocol").ToolApprovalGranted | import("@yolk-sdk/agent/protocol").ToolApprovalDenied | import("@yolk-sdk/agent/protocol").QuestionRequested | import("@yolk-sdk/agent/protocol").QuestionAnswered | import("@yolk-sdk/agent/protocol").QuestionCancelled | import("@yolk-sdk/agent/protocol").ToolExecutionStarted | import("@yolk-sdk/agent/protocol").ToolExecutionCompleted | import("@yolk-sdk/agent/protocol").ToolExecutionError | import("@yolk-sdk/agent/protocol").ProviderToolResult | import("@yolk-sdk/agent/protocol").SubagentStarted | import("@yolk-sdk/agent/protocol").SubagentCompleted, AgentTransportError, never>;
|
|
77
|
+
declare const streamAgentRunHitlResponseEventStream: (request: StreamAgentRunHitlResponseEventsRequest) => Stream.Stream<import("@yolk-sdk/agent/protocol").AgentStart | import("@yolk-sdk/agent/protocol").AgentError | import("@yolk-sdk/agent/protocol").AgentEnd | import("@yolk-sdk/agent/protocol").AgentAwaitingInput | import("@yolk-sdk/agent/protocol").UsageUpdate | import("@yolk-sdk/agent/protocol").AgentRetry | import("@yolk-sdk/agent/protocol").CompactionStart | import("@yolk-sdk/agent/protocol").CompactionEnd | import("@yolk-sdk/agent/protocol").TurnStart | import("@yolk-sdk/agent/protocol").TurnEnd | import("@yolk-sdk/agent/protocol").LLMStreamStart | import("@yolk-sdk/agent/protocol").LLMTextDelta | import("@yolk-sdk/agent/protocol").LLMReasoningDelta | import("@yolk-sdk/agent/protocol").ToolInputStart | import("@yolk-sdk/agent/protocol").ToolInputDelta | import("@yolk-sdk/agent/protocol").ToolInputEnd | import("@yolk-sdk/agent/protocol").LLMStreamEnd | import("@yolk-sdk/agent/protocol").AssistantMessageEvent | import("@yolk-sdk/agent/protocol").ToolApprovalRequested | import("@yolk-sdk/agent/protocol").ToolApprovalGranted | import("@yolk-sdk/agent/protocol").ToolApprovalDenied | import("@yolk-sdk/agent/protocol").QuestionRequested | import("@yolk-sdk/agent/protocol").QuestionAnswered | import("@yolk-sdk/agent/protocol").QuestionCancelled | import("@yolk-sdk/agent/protocol").ToolExecutionStarted | import("@yolk-sdk/agent/protocol").ToolExecutionCompleted | import("@yolk-sdk/agent/protocol").ToolExecutionError | import("@yolk-sdk/agent/protocol").ProviderToolResult | import("@yolk-sdk/agent/protocol").SubagentStarted | import("@yolk-sdk/agent/protocol").SubagentCompleted, AgentTransportError, never>;
|
|
54
78
|
declare const streamToolApprovalResponseEventStream: (request: SubmitToolApprovalResponseRequest) => Stream.Stream<import("@yolk-sdk/agent/protocol").AgentStart | import("@yolk-sdk/agent/protocol").AgentError | import("@yolk-sdk/agent/protocol").AgentEnd | import("@yolk-sdk/agent/protocol").AgentAwaitingInput | import("@yolk-sdk/agent/protocol").UsageUpdate | import("@yolk-sdk/agent/protocol").AgentRetry | import("@yolk-sdk/agent/protocol").CompactionStart | import("@yolk-sdk/agent/protocol").CompactionEnd | import("@yolk-sdk/agent/protocol").TurnStart | import("@yolk-sdk/agent/protocol").TurnEnd | import("@yolk-sdk/agent/protocol").LLMStreamStart | import("@yolk-sdk/agent/protocol").LLMTextDelta | import("@yolk-sdk/agent/protocol").LLMReasoningDelta | import("@yolk-sdk/agent/protocol").ToolInputStart | import("@yolk-sdk/agent/protocol").ToolInputDelta | import("@yolk-sdk/agent/protocol").ToolInputEnd | import("@yolk-sdk/agent/protocol").LLMStreamEnd | import("@yolk-sdk/agent/protocol").AssistantMessageEvent | import("@yolk-sdk/agent/protocol").ToolApprovalRequested | import("@yolk-sdk/agent/protocol").ToolApprovalGranted | import("@yolk-sdk/agent/protocol").ToolApprovalDenied | import("@yolk-sdk/agent/protocol").QuestionRequested | import("@yolk-sdk/agent/protocol").QuestionAnswered | import("@yolk-sdk/agent/protocol").QuestionCancelled | import("@yolk-sdk/agent/protocol").ToolExecutionStarted | import("@yolk-sdk/agent/protocol").ToolExecutionCompleted | import("@yolk-sdk/agent/protocol").ToolExecutionError | import("@yolk-sdk/agent/protocol").ProviderToolResult | import("@yolk-sdk/agent/protocol").SubagentStarted | import("@yolk-sdk/agent/protocol").SubagentCompleted, AgentTransportError, never>;
|
|
55
79
|
declare const streamQuestionResponseEventStream: (request: SubmitQuestionResponseRequest) => Stream.Stream<import("@yolk-sdk/agent/protocol").AgentStart | import("@yolk-sdk/agent/protocol").AgentError | import("@yolk-sdk/agent/protocol").AgentEnd | import("@yolk-sdk/agent/protocol").AgentAwaitingInput | import("@yolk-sdk/agent/protocol").UsageUpdate | import("@yolk-sdk/agent/protocol").AgentRetry | import("@yolk-sdk/agent/protocol").CompactionStart | import("@yolk-sdk/agent/protocol").CompactionEnd | import("@yolk-sdk/agent/protocol").TurnStart | import("@yolk-sdk/agent/protocol").TurnEnd | import("@yolk-sdk/agent/protocol").LLMStreamStart | import("@yolk-sdk/agent/protocol").LLMTextDelta | import("@yolk-sdk/agent/protocol").LLMReasoningDelta | import("@yolk-sdk/agent/protocol").ToolInputStart | import("@yolk-sdk/agent/protocol").ToolInputDelta | import("@yolk-sdk/agent/protocol").ToolInputEnd | import("@yolk-sdk/agent/protocol").LLMStreamEnd | import("@yolk-sdk/agent/protocol").AssistantMessageEvent | import("@yolk-sdk/agent/protocol").ToolApprovalRequested | import("@yolk-sdk/agent/protocol").ToolApprovalGranted | import("@yolk-sdk/agent/protocol").ToolApprovalDenied | import("@yolk-sdk/agent/protocol").QuestionRequested | import("@yolk-sdk/agent/protocol").QuestionAnswered | import("@yolk-sdk/agent/protocol").QuestionCancelled | import("@yolk-sdk/agent/protocol").ToolExecutionStarted | import("@yolk-sdk/agent/protocol").ToolExecutionCompleted | import("@yolk-sdk/agent/protocol").ToolExecutionError | import("@yolk-sdk/agent/protocol").ProviderToolResult | import("@yolk-sdk/agent/protocol").SubagentStarted | import("@yolk-sdk/agent/protocol").SubagentCompleted, AgentTransportError, never>;
|
|
80
|
+
declare function streamAgentEventsUntilTerminal(request: StreamAgentEventsUntilTerminalRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
81
|
+
declare function streamAgentRunEventsUntilTerminal(request: StreamAgentRunEventsUntilTerminalRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
82
|
+
declare function streamAgentRunHitlResponseEventsUntilTerminal(request: StreamAgentRunHitlResponseEventsUntilTerminalRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
56
83
|
declare const streamCloudflareAgentEventStream: (request: StreamCloudflareAgentEventsRequest) => Stream.Stream<import("@yolk-sdk/agent/protocol").AgentStart | import("@yolk-sdk/agent/protocol").AgentError | import("@yolk-sdk/agent/protocol").AgentEnd | import("@yolk-sdk/agent/protocol").AgentAwaitingInput | import("@yolk-sdk/agent/protocol").UsageUpdate | import("@yolk-sdk/agent/protocol").AgentRetry | import("@yolk-sdk/agent/protocol").CompactionStart | import("@yolk-sdk/agent/protocol").CompactionEnd | import("@yolk-sdk/agent/protocol").TurnStart | import("@yolk-sdk/agent/protocol").TurnEnd | import("@yolk-sdk/agent/protocol").LLMStreamStart | import("@yolk-sdk/agent/protocol").LLMTextDelta | import("@yolk-sdk/agent/protocol").LLMReasoningDelta | import("@yolk-sdk/agent/protocol").ToolInputStart | import("@yolk-sdk/agent/protocol").ToolInputDelta | import("@yolk-sdk/agent/protocol").ToolInputEnd | import("@yolk-sdk/agent/protocol").LLMStreamEnd | import("@yolk-sdk/agent/protocol").AssistantMessageEvent | import("@yolk-sdk/agent/protocol").ToolApprovalRequested | import("@yolk-sdk/agent/protocol").ToolApprovalGranted | import("@yolk-sdk/agent/protocol").ToolApprovalDenied | import("@yolk-sdk/agent/protocol").QuestionRequested | import("@yolk-sdk/agent/protocol").QuestionAnswered | import("@yolk-sdk/agent/protocol").QuestionCancelled | import("@yolk-sdk/agent/protocol").ToolExecutionStarted | import("@yolk-sdk/agent/protocol").ToolExecutionCompleted | import("@yolk-sdk/agent/protocol").ToolExecutionError | import("@yolk-sdk/agent/protocol").ProviderToolResult | import("@yolk-sdk/agent/protocol").SubagentStarted | import("@yolk-sdk/agent/protocol").SubagentCompleted, AgentTransportError, never>;
|
|
57
84
|
declare function streamCloudflareAgentEvents(request: StreamCloudflareAgentEventsRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
58
85
|
declare function streamAgentEvents(request: StreamAgentEventsRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
59
86
|
declare function streamAgentRunEvents(request: StreamAgentRunEventsRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
87
|
+
declare function streamAgentRunHitlResponseEvents(request: StreamAgentRunHitlResponseEventsRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
60
88
|
declare function submitToolApprovalResponse(request: SubmitToolApprovalResponseRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
61
89
|
declare function submitQuestionResponse(request: SubmitQuestionResponseRequest): AsyncGenerator<AgentEvent, void, void>;
|
|
62
90
|
declare const cancelAgentRun: (request: CancelAgentRunRequest) => Promise<undefined>;
|
|
63
91
|
declare const collectAgentEventsEffect: (request: StreamAgentEventsRequest) => Effect.Effect<(import("@yolk-sdk/agent/protocol").AgentStart | import("@yolk-sdk/agent/protocol").AgentError | import("@yolk-sdk/agent/protocol").AgentEnd | import("@yolk-sdk/agent/protocol").AgentAwaitingInput | import("@yolk-sdk/agent/protocol").UsageUpdate | import("@yolk-sdk/agent/protocol").AgentRetry | import("@yolk-sdk/agent/protocol").CompactionStart | import("@yolk-sdk/agent/protocol").CompactionEnd | import("@yolk-sdk/agent/protocol").TurnStart | import("@yolk-sdk/agent/protocol").TurnEnd | import("@yolk-sdk/agent/protocol").LLMStreamStart | import("@yolk-sdk/agent/protocol").LLMTextDelta | import("@yolk-sdk/agent/protocol").LLMReasoningDelta | import("@yolk-sdk/agent/protocol").ToolInputStart | import("@yolk-sdk/agent/protocol").ToolInputDelta | import("@yolk-sdk/agent/protocol").ToolInputEnd | import("@yolk-sdk/agent/protocol").LLMStreamEnd | import("@yolk-sdk/agent/protocol").AssistantMessageEvent | import("@yolk-sdk/agent/protocol").ToolApprovalRequested | import("@yolk-sdk/agent/protocol").ToolApprovalGranted | import("@yolk-sdk/agent/protocol").ToolApprovalDenied | import("@yolk-sdk/agent/protocol").QuestionRequested | import("@yolk-sdk/agent/protocol").QuestionAnswered | import("@yolk-sdk/agent/protocol").QuestionCancelled | import("@yolk-sdk/agent/protocol").ToolExecutionStarted | import("@yolk-sdk/agent/protocol").ToolExecutionCompleted | import("@yolk-sdk/agent/protocol").ToolExecutionError | import("@yolk-sdk/agent/protocol").ProviderToolResult | import("@yolk-sdk/agent/protocol").SubagentStarted | import("@yolk-sdk/agent/protocol").SubagentCompleted)[], AgentTransportError, never>;
|
|
64
92
|
declare const collectAgentEvents: (request: StreamAgentEventsRequest) => Promise<(import("@yolk-sdk/agent/protocol").AgentStart | import("@yolk-sdk/agent/protocol").AgentError | import("@yolk-sdk/agent/protocol").AgentEnd | import("@yolk-sdk/agent/protocol").AgentAwaitingInput | import("@yolk-sdk/agent/protocol").UsageUpdate | import("@yolk-sdk/agent/protocol").AgentRetry | import("@yolk-sdk/agent/protocol").CompactionStart | import("@yolk-sdk/agent/protocol").CompactionEnd | import("@yolk-sdk/agent/protocol").TurnStart | import("@yolk-sdk/agent/protocol").TurnEnd | import("@yolk-sdk/agent/protocol").LLMStreamStart | import("@yolk-sdk/agent/protocol").LLMTextDelta | import("@yolk-sdk/agent/protocol").LLMReasoningDelta | import("@yolk-sdk/agent/protocol").ToolInputStart | import("@yolk-sdk/agent/protocol").ToolInputDelta | import("@yolk-sdk/agent/protocol").ToolInputEnd | import("@yolk-sdk/agent/protocol").LLMStreamEnd | import("@yolk-sdk/agent/protocol").AssistantMessageEvent | import("@yolk-sdk/agent/protocol").ToolApprovalRequested | import("@yolk-sdk/agent/protocol").ToolApprovalGranted | import("@yolk-sdk/agent/protocol").ToolApprovalDenied | import("@yolk-sdk/agent/protocol").QuestionRequested | import("@yolk-sdk/agent/protocol").QuestionAnswered | import("@yolk-sdk/agent/protocol").QuestionCancelled | import("@yolk-sdk/agent/protocol").ToolExecutionStarted | import("@yolk-sdk/agent/protocol").ToolExecutionCompleted | import("@yolk-sdk/agent/protocol").ToolExecutionError | import("@yolk-sdk/agent/protocol").ProviderToolResult | import("@yolk-sdk/agent/protocol").SubagentStarted | import("@yolk-sdk/agent/protocol").SubagentCompleted)[]>;
|
|
65
93
|
//#endregion
|
|
66
|
-
export { AgentHttpResponseInfo, AgentTransportError, CancelAgentRunRequest, StreamAgentEventsRequest, StreamAgentRunEventsRequest, StreamCloudflareAgentEventsRequest, SubmitQuestionResponseRequest, SubmitToolApprovalResponseRequest, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, streamAgentEventStream, streamAgentEvents, streamAgentRunEventStream, streamAgentRunEvents, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitQuestionResponse, submitToolApprovalResponse };
|
|
94
|
+
export { AgentHttpResponseInfo, AgentRunContinuationOptions, AgentTransportError, CancelAgentRunRequest, StreamAgentEventHandler, StreamAgentEventsRequest, StreamAgentEventsUntilTerminalRequest, StreamAgentRunEventsRequest, StreamAgentRunEventsUntilTerminalRequest, StreamAgentRunHitlResponseEventsRequest, StreamAgentRunHitlResponseEventsUntilTerminalRequest, StreamCloudflareAgentEventsRequest, SubmitQuestionResponseRequest, SubmitToolApprovalResponseRequest, agentRunEndpointWithStartIndex, agentRunIdFromHeaders, agentRunStreamStartIndexFromHeaders, agentRunStreamTailIndexFromHeaders, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, streamAgentEventStream, streamAgentEvents, streamAgentEventsUntilTerminal, streamAgentRunEventStream, streamAgentRunEvents, streamAgentRunEventsUntilTerminal, streamAgentRunHitlResponseEventStream, streamAgentRunHitlResponseEvents, streamAgentRunHitlResponseEventsUntilTerminal, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitQuestionResponse, submitToolApprovalResponse };
|
|
67
95
|
//# sourceMappingURL=transport.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.mts","names":[],"sources":["../../src/client/transport.ts"],"mappings":";;;;;;;cA0BiD,wBAAA;;;;cAEpC,mBAAA,SAA4B,wBAMxC;AAAA,KAEW,wBAAA;EAAA,SACD,QAAA;EAAA,SACA,SAAA;EAAA,SACA,QAAA,EAAU,eAAA;EAAA,SACV,aAAA,GAAgB,aAAA,CAAc,YAAA;EAAA,SAC9B,KAAA;EAAA,SACA,eAAA,GAAkB,oBAAA;EAAA,SAClB,MAAA,GAAS,WAAA;EAAA,SACT,eAAA,GAAkB,KAAA,CAAM,KAAA,CAAM,UAAA,CAAW,UAAA;EAAA,SACzC,UAAA,IAAc,QAAA,EAAU,qBAAA;AAAA;AAAA,KAGvB,2BAAA;EAAA,SACD,QAAA;EAAA,SACA,MAAA,GAAS,WAAA;EAAA,SACT,eAAA,GAAkB,KAAA,CAAM,KAAA,CAAM,UAAA,CAAW,UAAA;EAAA,SACzC,UAAA,IAAc,QAAA,EAAU,qBAAA;AAAA;AAAA,KAGvB,qBAAA;EAAA,SACD,QAAA;EAAA,SACA,eAAA,GAAkB,KAAA,CAAM,KAAK,CAAC,UAAA,CAAW,UAAA;AAAA;AAAA,KAGxC,iCAAA,GAAoC,wBAAA;EAAA,SACrC,QAAA,EAAU,oBAAoB;AAAA;AAAA,KAG7B,6BAAA,GAAgC,wBAAA;EAAA,SACjC,QAAA,EAAU,gBAAgB;AAAA;AAAA,KAGzB,qBAAA;EAAA,SACD,MAAA;EAAA,SACA,OAAA,EAAS,QAAQ,CAAC,MAAA;AAAA;AAAA,KAGjB,kCAAA;EAAA,SACD,YAAA;EAAA,SACA,QAAA,EAAU,eAAA;EAAA,SACV,aAAA,GAAgB,aAAA,CAAc,YAAA;EAAA,SAC9B,KAAA;EAAA,SACA,eAAA,GAAkB,oBAAA;EAAA,SAClB,MAAA,GAAS,WAAA;AAAA;AAAA,
|
|
1
|
+
{"version":3,"file":"transport.d.mts","names":[],"sources":["../../src/client/transport.ts"],"mappings":"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"}
|
|
@@ -8,6 +8,94 @@ var AgentTransportError = class extends Schema.TaggedErrorClass()("AgentTranspor
|
|
|
8
8
|
cause: Schema.Unknown
|
|
9
9
|
}) {};
|
|
10
10
|
const defaultEndpoint = "/api/agent";
|
|
11
|
+
const defaultRunContinuationLimit = 120;
|
|
12
|
+
const relativeEndpointBase = "http://yolk.local";
|
|
13
|
+
const headerValue = (headers, name) => {
|
|
14
|
+
const direct = headers[name];
|
|
15
|
+
if (direct !== void 0) return direct;
|
|
16
|
+
const normalizedName = name.toLowerCase();
|
|
17
|
+
for (const [key, value] of Object.entries(headers)) if (key.toLowerCase() === normalizedName) return value;
|
|
18
|
+
};
|
|
19
|
+
const nonEmptyHeaderValue = (headers, name) => {
|
|
20
|
+
const value = headerValue(headers, name)?.trim();
|
|
21
|
+
return value === void 0 || value.length === 0 ? void 0 : value;
|
|
22
|
+
};
|
|
23
|
+
const safeIntegerPattern = /^-?(0|[1-9]\d*)$/;
|
|
24
|
+
const parseSafeInteger = (raw) => {
|
|
25
|
+
const value = raw.trim();
|
|
26
|
+
if (!safeIntegerPattern.test(value)) return;
|
|
27
|
+
const parsed = Number.parseInt(value, 10);
|
|
28
|
+
return Number.isSafeInteger(parsed) ? parsed : void 0;
|
|
29
|
+
};
|
|
30
|
+
const agentRunIdFromHeaders = (headers) => nonEmptyHeaderValue(headers, "x-workflow-run-id");
|
|
31
|
+
const agentRunStreamTailIndexFromHeaders = (headers) => {
|
|
32
|
+
const raw = nonEmptyHeaderValue(headers, "x-workflow-stream-tail-index");
|
|
33
|
+
if (raw === void 0) return void 0;
|
|
34
|
+
const parsed = parseSafeInteger(raw);
|
|
35
|
+
return parsed !== void 0 && parsed >= -1 ? parsed : void 0;
|
|
36
|
+
};
|
|
37
|
+
const agentRunStreamStartIndexFromHeaders = (headers) => {
|
|
38
|
+
const tailIndex = agentRunStreamTailIndexFromHeaders(headers);
|
|
39
|
+
return tailIndex === void 0 ? void 0 : tailIndex + 1;
|
|
40
|
+
};
|
|
41
|
+
const agentRunEndpointWithStartIndex = (endpoint, startIndex) => {
|
|
42
|
+
if (startIndex === void 0) return endpoint;
|
|
43
|
+
validateAgentRunStartIndex(startIndex);
|
|
44
|
+
const parsed = parseEndpointOrThrow(endpoint);
|
|
45
|
+
parsed.url.searchParams.set("startIndex", String(startIndex));
|
|
46
|
+
return serializeEndpoint(parsed);
|
|
47
|
+
};
|
|
48
|
+
const absoluteUrlPattern = /^[A-Za-z][A-Za-z\d+.-]*:/;
|
|
49
|
+
const parseEndpoint = (endpoint) => {
|
|
50
|
+
try {
|
|
51
|
+
return {
|
|
52
|
+
url: new URL(endpoint, relativeEndpointBase),
|
|
53
|
+
absolute: absoluteUrlPattern.test(endpoint),
|
|
54
|
+
leadingSlash: endpoint.startsWith("/")
|
|
55
|
+
};
|
|
56
|
+
} catch {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const parseEndpointOrThrow = (endpoint) => {
|
|
61
|
+
const parsed = parseEndpoint(endpoint);
|
|
62
|
+
if (parsed !== void 0) return parsed;
|
|
63
|
+
throw new AgentTransportError({
|
|
64
|
+
message: "Invalid agent run endpoint",
|
|
65
|
+
cause: endpoint
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
const serializeEndpoint = (endpoint) => {
|
|
69
|
+
if (endpoint.absolute) return endpoint.url.toString();
|
|
70
|
+
const serialized = `${endpoint.url.pathname}${endpoint.url.search}${endpoint.url.hash}`;
|
|
71
|
+
return endpoint.leadingSlash ? serialized : serialized.slice(1);
|
|
72
|
+
};
|
|
73
|
+
const appendEncodedPathSegment = (endpoint, segment) => {
|
|
74
|
+
const parsed = parseEndpointOrThrow(endpoint);
|
|
75
|
+
const basePath = parsed.url.pathname.endsWith("/") ? parsed.url.pathname.slice(0, -1) : parsed.url.pathname;
|
|
76
|
+
parsed.url.pathname = `${basePath}/${encodeURIComponent(segment)}`;
|
|
77
|
+
return serializeEndpoint(parsed);
|
|
78
|
+
};
|
|
79
|
+
const defaultAgentRunEndpoint = (endpoint, runId) => appendEncodedPathSegment(endpoint ?? defaultEndpoint, runId);
|
|
80
|
+
const agentRunContinuationLimit = (limit) => {
|
|
81
|
+
if (limit === void 0) return defaultRunContinuationLimit;
|
|
82
|
+
if (!Number.isSafeInteger(limit) || limit < 0) throw new AgentTransportError({
|
|
83
|
+
message: "Invalid agent run continuation limit",
|
|
84
|
+
cause: limit
|
|
85
|
+
});
|
|
86
|
+
return limit;
|
|
87
|
+
};
|
|
88
|
+
const validateAgentRunContinuationLimit = (limit) => {
|
|
89
|
+
agentRunContinuationLimit(limit);
|
|
90
|
+
};
|
|
91
|
+
const validateAgentRunStartIndex = (startIndex) => {
|
|
92
|
+
if (startIndex === void 0 || Number.isSafeInteger(startIndex) && startIndex >= 0) return;
|
|
93
|
+
throw new AgentTransportError({
|
|
94
|
+
message: "Invalid agent run stream start index",
|
|
95
|
+
cause: startIndex
|
|
96
|
+
});
|
|
97
|
+
};
|
|
98
|
+
const nextAgentRunStartIndex = (startIndex, count) => (startIndex ?? 0) + count;
|
|
11
99
|
const unknownToMessage = (error) => error instanceof Error ? error.message : String(error);
|
|
12
100
|
const toTransportError = (message, cause) => new AgentTransportError({
|
|
13
101
|
message,
|
|
@@ -83,6 +171,10 @@ const makeHttpRequest = (request) => encodeJsonString({
|
|
|
83
171
|
accept: "application/x-ndjson",
|
|
84
172
|
"content-type": "application/json"
|
|
85
173
|
}), HttpClientRequest.bodyText(body, "application/json"))));
|
|
174
|
+
const makeHttpRunHitlResponseRequest = (request) => encodeJsonString({ hitlResponses: request.hitlResponses }, "Could not serialize agent run HITL response").pipe(Effect.map((body) => HttpClientRequest.post(request.endpoint).pipe(HttpClientRequest.setHeaders({
|
|
175
|
+
accept: "application/x-ndjson",
|
|
176
|
+
"content-type": "application/json"
|
|
177
|
+
}), HttpClientRequest.bodyText(body, "application/json"))));
|
|
86
178
|
const requestAgentResponse = (request) => Effect.gen(function* () {
|
|
87
179
|
const client = yield* HttpClient.HttpClient;
|
|
88
180
|
const httpRequest = yield* makeHttpRequest(request);
|
|
@@ -101,7 +193,8 @@ const requestAgentResponse = (request) => Effect.gen(function* () {
|
|
|
101
193
|
}));
|
|
102
194
|
});
|
|
103
195
|
const requestAgentRunResponse = (request) => Effect.gen(function* () {
|
|
104
|
-
|
|
196
|
+
validateAgentRunStartIndex(request.startIndex);
|
|
197
|
+
const response = yield* (yield* HttpClient.HttpClient).execute(HttpClientRequest.get(agentRunEndpointWithStartIndex(request.endpoint, request.startIndex)).pipe(HttpClientRequest.setHeaders({ accept: "application/x-ndjson" }))).pipe(Effect.mapError(toHttpClientTransportError("Agent run request failed")));
|
|
105
198
|
if (response.status >= 200 && response.status < 300) {
|
|
106
199
|
yield* Effect.sync(() => request.onResponse?.({
|
|
107
200
|
status: response.status,
|
|
@@ -115,6 +208,23 @@ const requestAgentRunResponse = (request) => Effect.gen(function* () {
|
|
|
115
208
|
cause: response.status
|
|
116
209
|
}));
|
|
117
210
|
});
|
|
211
|
+
const requestAgentRunHitlResponse = (request) => Effect.gen(function* () {
|
|
212
|
+
const client = yield* HttpClient.HttpClient;
|
|
213
|
+
const httpRequest = yield* makeHttpRunHitlResponseRequest(request);
|
|
214
|
+
const response = yield* client.execute(httpRequest).pipe(Effect.mapError(toHttpClientTransportError("Agent run HITL request failed")));
|
|
215
|
+
if (response.status >= 200 && response.status < 300) {
|
|
216
|
+
yield* Effect.sync(() => request.onResponse?.({
|
|
217
|
+
status: response.status,
|
|
218
|
+
headers: response.headers
|
|
219
|
+
}));
|
|
220
|
+
return response;
|
|
221
|
+
}
|
|
222
|
+
const message = yield* responseErrorMessage(response);
|
|
223
|
+
return yield* Effect.fail(new AgentTransportError({
|
|
224
|
+
message: `Agent run HITL request failed (${response.status}): ${message}`,
|
|
225
|
+
cause: response.status
|
|
226
|
+
}));
|
|
227
|
+
});
|
|
118
228
|
const cancelAgentRunEffect = (request) => Effect.gen(function* () {
|
|
119
229
|
const response = yield* (yield* HttpClient.HttpClient).execute(HttpClientRequest.delete(request.endpoint)).pipe(Effect.mapError(toHttpClientTransportError("Agent run cancel failed")));
|
|
120
230
|
if (response.status >= 200 && response.status < 300) return;
|
|
@@ -188,6 +298,7 @@ const abortSignalEffect = (signal) => Effect.callback((resume) => {
|
|
|
188
298
|
const applyAbortSignal = (stream, signal) => signal === void 0 ? stream : stream.pipe(Stream.interruptWhen(abortSignalEffect(signal)));
|
|
189
299
|
const streamAgentEventStream = (request) => applyAbortSignal(Stream.fromEffect(requestAgentResponse(request)).pipe(Stream.flatMap(responseToEventStream)), request.signal).pipe(Stream.provide(request.httpClientLayer ?? FetchHttpClient.layer));
|
|
190
300
|
const streamAgentRunEventStream = (request) => applyAbortSignal(Stream.fromEffect(requestAgentRunResponse(request)).pipe(Stream.flatMap(responseToEventStream)), request.signal).pipe(Stream.provide(request.httpClientLayer ?? FetchHttpClient.layer));
|
|
301
|
+
const streamAgentRunHitlResponseEventStream = (request) => applyAbortSignal(Stream.fromEffect(requestAgentRunHitlResponse(request)).pipe(Stream.flatMap(responseToEventStream)), request.signal).pipe(Stream.provide(request.httpClientLayer ?? FetchHttpClient.layer));
|
|
191
302
|
const streamToolApprovalResponseEventStream = (request) => streamAgentEventStream({
|
|
192
303
|
...request,
|
|
193
304
|
hitlResponses: [request.response]
|
|
@@ -196,6 +307,145 @@ const streamQuestionResponseEventStream = (request) => streamAgentEventStream({
|
|
|
196
307
|
...request,
|
|
197
308
|
hitlResponses: [request.response]
|
|
198
309
|
});
|
|
310
|
+
const missingAgentRunContinuationEndpointError = () => new AgentTransportError({
|
|
311
|
+
message: "Agent run continuation failed: missing x-workflow-run-id",
|
|
312
|
+
cause: "missing_run_id"
|
|
313
|
+
});
|
|
314
|
+
const exhaustedAgentRunContinuationLimitError = (limit) => new AgentTransportError({
|
|
315
|
+
message: "Agent run continuation limit reached before a terminal event",
|
|
316
|
+
cause: { limit }
|
|
317
|
+
});
|
|
318
|
+
const noProgressAgentRunContinuationError = (endpoint, startIndex) => new AgentTransportError({
|
|
319
|
+
message: "Agent run continuation made no progress before a terminal event",
|
|
320
|
+
cause: {
|
|
321
|
+
endpoint,
|
|
322
|
+
startIndex
|
|
323
|
+
}
|
|
324
|
+
});
|
|
325
|
+
const missingAgentRunTailIndexError = () => new AgentTransportError({
|
|
326
|
+
message: "Agent run HITL response missing x-workflow-stream-tail-index",
|
|
327
|
+
cause: "missing_tail_index"
|
|
328
|
+
});
|
|
329
|
+
const streamAgentEventChunk = async function* (input) {
|
|
330
|
+
let count = 0;
|
|
331
|
+
let terminal = false;
|
|
332
|
+
for await (const event of input.events) {
|
|
333
|
+
count += 1;
|
|
334
|
+
terminal = terminal || isTerminalAgentEvent(event);
|
|
335
|
+
input.onEvent?.(event, input.countOffset + count);
|
|
336
|
+
yield event;
|
|
337
|
+
}
|
|
338
|
+
return {
|
|
339
|
+
count,
|
|
340
|
+
terminal
|
|
341
|
+
};
|
|
342
|
+
};
|
|
343
|
+
const streamAgentRunContinuations = async function* (input) {
|
|
344
|
+
let totalCount = input.countOffset;
|
|
345
|
+
let terminal = input.terminal;
|
|
346
|
+
let startIndex = input.startIndex;
|
|
347
|
+
const limit = agentRunContinuationLimit(input.continuationLimit);
|
|
348
|
+
if (terminal) return;
|
|
349
|
+
if (input.endpoint === void 0) throw missingAgentRunContinuationEndpointError();
|
|
350
|
+
for (let continuation = 0; continuation < limit; continuation += 1) {
|
|
351
|
+
const endpoint = input.endpoint;
|
|
352
|
+
const chunk = yield* streamAgentEventChunk({
|
|
353
|
+
events: streamAgentRunEvents({
|
|
354
|
+
endpoint,
|
|
355
|
+
startIndex,
|
|
356
|
+
signal: input.signal,
|
|
357
|
+
httpClientLayer: input.httpClientLayer,
|
|
358
|
+
onResponse: input.onResponse
|
|
359
|
+
}),
|
|
360
|
+
countOffset: totalCount,
|
|
361
|
+
onEvent: input.onEvent
|
|
362
|
+
});
|
|
363
|
+
if (chunk.count === 0 && !chunk.terminal) throw noProgressAgentRunContinuationError(endpoint, startIndex);
|
|
364
|
+
terminal = chunk.terminal;
|
|
365
|
+
startIndex = nextAgentRunStartIndex(startIndex, chunk.count);
|
|
366
|
+
totalCount += chunk.count;
|
|
367
|
+
if (terminal) return;
|
|
368
|
+
}
|
|
369
|
+
throw exhaustedAgentRunContinuationLimitError(limit);
|
|
370
|
+
};
|
|
371
|
+
async function* streamAgentEventsUntilTerminal(request) {
|
|
372
|
+
validateAgentRunContinuationLimit(request.continuationLimit);
|
|
373
|
+
let runEndpoint;
|
|
374
|
+
let startIndex;
|
|
375
|
+
const firstChunk = yield* streamAgentEventChunk({
|
|
376
|
+
events: streamAgentEvents({
|
|
377
|
+
...request,
|
|
378
|
+
onResponse: (response) => {
|
|
379
|
+
startIndex = agentRunStreamStartIndexFromHeaders(response.headers);
|
|
380
|
+
const runId = agentRunIdFromHeaders(response.headers);
|
|
381
|
+
if (runId !== void 0) {
|
|
382
|
+
runEndpoint = request.runEndpoint?.(runId) ?? defaultAgentRunEndpoint(request.endpoint, runId);
|
|
383
|
+
request.onRunId?.(runId);
|
|
384
|
+
}
|
|
385
|
+
request.onResponse?.(response);
|
|
386
|
+
}
|
|
387
|
+
}),
|
|
388
|
+
countOffset: 0,
|
|
389
|
+
onEvent: request.onEvent
|
|
390
|
+
});
|
|
391
|
+
yield* streamAgentRunContinuations({
|
|
392
|
+
endpoint: runEndpoint,
|
|
393
|
+
startIndex: nextAgentRunStartIndex(startIndex, firstChunk.count),
|
|
394
|
+
countOffset: firstChunk.count,
|
|
395
|
+
terminal: firstChunk.terminal,
|
|
396
|
+
continuationLimit: request.continuationLimit,
|
|
397
|
+
signal: request.signal,
|
|
398
|
+
httpClientLayer: request.httpClientLayer,
|
|
399
|
+
onResponse: request.onResponse,
|
|
400
|
+
onEvent: request.onEvent
|
|
401
|
+
});
|
|
402
|
+
}
|
|
403
|
+
async function* streamAgentRunEventsUntilTerminal(request) {
|
|
404
|
+
validateAgentRunContinuationLimit(request.continuationLimit);
|
|
405
|
+
const firstChunk = yield* streamAgentEventChunk({
|
|
406
|
+
events: streamAgentRunEvents(request),
|
|
407
|
+
countOffset: 0,
|
|
408
|
+
onEvent: request.onEvent
|
|
409
|
+
});
|
|
410
|
+
yield* streamAgentRunContinuations({
|
|
411
|
+
endpoint: request.endpoint,
|
|
412
|
+
startIndex: nextAgentRunStartIndex(request.startIndex, firstChunk.count),
|
|
413
|
+
countOffset: firstChunk.count,
|
|
414
|
+
terminal: firstChunk.terminal,
|
|
415
|
+
continuationLimit: request.continuationLimit,
|
|
416
|
+
signal: request.signal,
|
|
417
|
+
httpClientLayer: request.httpClientLayer,
|
|
418
|
+
onResponse: request.onResponse,
|
|
419
|
+
onEvent: request.onEvent
|
|
420
|
+
});
|
|
421
|
+
}
|
|
422
|
+
async function* streamAgentRunHitlResponseEventsUntilTerminal(request) {
|
|
423
|
+
validateAgentRunContinuationLimit(request.continuationLimit);
|
|
424
|
+
let startIndex;
|
|
425
|
+
const firstChunk = yield* streamAgentEventChunk({
|
|
426
|
+
events: streamAgentRunHitlResponseEvents({
|
|
427
|
+
...request,
|
|
428
|
+
onResponse: (response) => {
|
|
429
|
+
startIndex = agentRunStreamStartIndexFromHeaders(response.headers);
|
|
430
|
+
request.onResponse?.(response);
|
|
431
|
+
}
|
|
432
|
+
}),
|
|
433
|
+
countOffset: 0,
|
|
434
|
+
onEvent: request.onEvent
|
|
435
|
+
});
|
|
436
|
+
if (!firstChunk.terminal && startIndex === void 0) throw missingAgentRunTailIndexError();
|
|
437
|
+
yield* streamAgentRunContinuations({
|
|
438
|
+
endpoint: request.endpoint,
|
|
439
|
+
startIndex: nextAgentRunStartIndex(startIndex, firstChunk.count),
|
|
440
|
+
countOffset: firstChunk.count,
|
|
441
|
+
terminal: firstChunk.terminal,
|
|
442
|
+
continuationLimit: request.continuationLimit,
|
|
443
|
+
signal: request.signal,
|
|
444
|
+
httpClientLayer: request.httpClientLayer,
|
|
445
|
+
onResponse: request.onResponse,
|
|
446
|
+
onEvent: request.onEvent
|
|
447
|
+
});
|
|
448
|
+
}
|
|
199
449
|
const isAgentEvent = (message) => message._tag !== "SessionSnapshot";
|
|
200
450
|
const streamCloudflareAgentEventStream = (request) => applyAbortSignal(Stream.callback((queue) => Effect.gen(function* () {
|
|
201
451
|
const socket = new WebSocket(request.webSocketUrl);
|
|
@@ -251,6 +501,9 @@ async function* streamAgentEvents(request) {
|
|
|
251
501
|
async function* streamAgentRunEvents(request) {
|
|
252
502
|
for await (const event of Stream.toAsyncIterable(streamAgentRunEventStream(request))) yield event;
|
|
253
503
|
}
|
|
504
|
+
async function* streamAgentRunHitlResponseEvents(request) {
|
|
505
|
+
for await (const event of Stream.toAsyncIterable(streamAgentRunHitlResponseEventStream(request))) yield event;
|
|
506
|
+
}
|
|
254
507
|
async function* submitToolApprovalResponse(request) {
|
|
255
508
|
for await (const event of Stream.toAsyncIterable(streamToolApprovalResponseEventStream(request))) yield event;
|
|
256
509
|
}
|
|
@@ -261,6 +514,6 @@ const cancelAgentRun = (request) => Effect.runPromise(cancelAgentRunEffect(reque
|
|
|
261
514
|
const collectAgentEventsEffect = (request) => streamAgentEventStream(request).pipe(Stream.runCollect);
|
|
262
515
|
const collectAgentEvents = async (request) => Array.from(await Effect.runPromise(collectAgentEventsEffect(request)));
|
|
263
516
|
//#endregion
|
|
264
|
-
export { AgentTransportError, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, streamAgentEventStream, streamAgentEvents, streamAgentRunEventStream, streamAgentRunEvents, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitQuestionResponse, submitToolApprovalResponse };
|
|
517
|
+
export { AgentTransportError, agentRunEndpointWithStartIndex, agentRunIdFromHeaders, agentRunStreamStartIndexFromHeaders, agentRunStreamTailIndexFromHeaders, cancelAgentRun, collectAgentEvents, collectAgentEventsEffect, streamAgentEventStream, streamAgentEvents, streamAgentEventsUntilTerminal, streamAgentRunEventStream, streamAgentRunEvents, streamAgentRunEventsUntilTerminal, streamAgentRunHitlResponseEventStream, streamAgentRunHitlResponseEvents, streamAgentRunHitlResponseEventsUntilTerminal, streamCloudflareAgentEventStream, streamCloudflareAgentEvents, streamQuestionResponseEventStream, streamToolApprovalResponseEventStream, submitQuestionResponse, submitToolApprovalResponse };
|
|
265
518
|
|
|
266
519
|
//# sourceMappingURL=transport.mjs.map
|