@yolk-sdk/agent 0.1.0-canary.87 → 0.1.0-canary.89
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 +7 -2
- package/dist/react/chat-actions.d.mts +35 -35
- package/dist/react/chat-actions.d.mts.map +1 -1
- package/dist/react/chat-items.d.mts +18 -18
- package/dist/react/chat-items.d.mts.map +1 -1
- package/dist/react/chat-messages.d.mts +48 -48
- package/dist/react/chat-messages.d.mts.map +1 -1
- package/dist/skillset/merge.d.mts +1 -1
- package/dist/skillset/name.d.mts +2 -2
- package/dist/skillset/name.d.mts.map +1 -1
- package/dist/tools/subagent.d.mts +3 -1
- package/dist/tools/subagent.d.mts.map +1 -1
- package/dist/tools/subagent.mjs +5 -3
- package/dist/tools/subagent.mjs.map +1 -1
- package/package.json +1 -1
- package/src/tools/subagent.ts +5 -3
package/README.md
CHANGED
|
@@ -760,8 +760,13 @@ The optional parent identity lets a later conversation run address the original
|
|
|
760
760
|
acceptance independent of how quickly the child finishes.
|
|
761
761
|
It emits normal tool completion but **not** `SubagentCompleted`, and carries no usage. Keep the
|
|
762
762
|
logical `subagent:<toolCallId>` identity separate from the physical Workflow id. Never append a
|
|
763
|
-
second tool result for the original launch
|
|
764
|
-
do not masquerade as fresh child usage.
|
|
763
|
+
second tool result for the original launch. Hosts may deliver findings automatically or expose
|
|
764
|
+
host-owned status/wait tools whose observations do not masquerade as fresh child usage. The SDK
|
|
765
|
+
registers none of those observation tools and promises no automatic delivery. Its default background
|
|
766
|
+
parameter and acceptance text therefore defer to host instructions instead of naming unavailable
|
|
767
|
+
tools. Hosts should describe their actual completion policy in model-visible instructions and retain
|
|
768
|
+
lookup identities in accepted-result text if they customize it; structured metadata alone may not
|
|
769
|
+
survive provider lowering. Host-owned storage must remain readable after parent end.
|
|
765
770
|
|
|
766
771
|
A lost control response or exhausted observation budget is not a terminal child failure. Hosts
|
|
767
772
|
can return a `ToolResult` with `structuredContent.type: 'subagent_observation'` and a matching
|
|
@@ -11,10 +11,6 @@ import { Data } from "effect";
|
|
|
11
11
|
//#region src/react/chat-actions.d.ts
|
|
12
12
|
type AgentChatAction = AgentChatAction$1;
|
|
13
13
|
declare const AgentChatAction: {
|
|
14
|
-
readonly Error: Data.TaggedEnum.ConstructorFrom<{
|
|
15
|
-
readonly _tag: "Error";
|
|
16
|
-
readonly message: string;
|
|
17
|
-
}, "_tag">;
|
|
18
14
|
readonly HydrateMessage: Data.TaggedEnum.ConstructorFrom<{
|
|
19
15
|
readonly _tag: "HydrateMessage";
|
|
20
16
|
readonly message: AgentMessage;
|
|
@@ -48,10 +44,14 @@ declare const AgentChatAction: {
|
|
|
48
44
|
readonly _tag: "Event";
|
|
49
45
|
readonly event: AgentEvent;
|
|
50
46
|
} & ApplyAgentEventToChatMessagesOptions, "_tag">;
|
|
47
|
+
readonly Error: Data.TaggedEnum.ConstructorFrom<{
|
|
48
|
+
readonly _tag: "Error";
|
|
49
|
+
readonly message: string;
|
|
50
|
+
}, "_tag">;
|
|
51
51
|
readonly Abort: Data.TaggedEnum.ConstructorFrom<{
|
|
52
52
|
readonly _tag: "Abort";
|
|
53
53
|
}, "_tag">;
|
|
54
|
-
readonly $is: <Tag extends "
|
|
54
|
+
readonly $is: <Tag extends "HydrateMessage" | "Submit" | "AppendMessage" | "SubmitHitlResponse" | "DeleteTurn" | "RegenerateFrom" | "EditUserMessage" | "Event" | "Error" | "Abort">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
55
55
|
readonly _tag: "HydrateMessage";
|
|
56
56
|
readonly message: AgentMessage;
|
|
57
57
|
}, {
|
|
@@ -104,10 +104,6 @@ declare const AgentChatAction: {
|
|
|
104
104
|
}>;
|
|
105
105
|
readonly $match: {
|
|
106
106
|
<Cases extends {
|
|
107
|
-
readonly Error: (args: {
|
|
108
|
-
readonly _tag: "Error";
|
|
109
|
-
readonly message: string;
|
|
110
|
-
}) => any;
|
|
111
107
|
readonly HydrateMessage: (args: {
|
|
112
108
|
readonly _tag: "HydrateMessage";
|
|
113
109
|
readonly message: AgentMessage;
|
|
@@ -141,15 +137,15 @@ declare const AgentChatAction: {
|
|
|
141
137
|
readonly _tag: "Event";
|
|
142
138
|
readonly event: AgentEvent;
|
|
143
139
|
} & ApplyAgentEventToChatMessagesOptions) => any;
|
|
144
|
-
readonly Abort: (args: {
|
|
145
|
-
readonly _tag: "Abort";
|
|
146
|
-
}) => any;
|
|
147
|
-
}>(cases: Cases): (value: AgentChatAction$1) => import("effect/Unify").Unify<ReturnType<Cases["Error" | "HydrateMessage" | "Submit" | "AppendMessage" | "SubmitHitlResponse" | "DeleteTurn" | "RegenerateFrom" | "EditUserMessage" | "Event" | "Abort"]>>;
|
|
148
|
-
<Cases extends {
|
|
149
140
|
readonly Error: (args: {
|
|
150
141
|
readonly _tag: "Error";
|
|
151
142
|
readonly message: string;
|
|
152
143
|
}) => any;
|
|
144
|
+
readonly Abort: (args: {
|
|
145
|
+
readonly _tag: "Abort";
|
|
146
|
+
}) => any;
|
|
147
|
+
}>(cases: Cases): (value: AgentChatAction$1) => import("effect/Unify").Unify<ReturnType<Cases["HydrateMessage" | "Submit" | "AppendMessage" | "SubmitHitlResponse" | "DeleteTurn" | "RegenerateFrom" | "EditUserMessage" | "Event" | "Error" | "Abort"]>>;
|
|
148
|
+
<Cases extends {
|
|
153
149
|
readonly HydrateMessage: (args: {
|
|
154
150
|
readonly _tag: "HydrateMessage";
|
|
155
151
|
readonly message: AgentMessage;
|
|
@@ -183,24 +179,28 @@ declare const AgentChatAction: {
|
|
|
183
179
|
readonly _tag: "Event";
|
|
184
180
|
readonly event: AgentEvent;
|
|
185
181
|
} & ApplyAgentEventToChatMessagesOptions) => any;
|
|
182
|
+
readonly Error: (args: {
|
|
183
|
+
readonly _tag: "Error";
|
|
184
|
+
readonly message: string;
|
|
185
|
+
}) => any;
|
|
186
186
|
readonly Abort: (args: {
|
|
187
187
|
readonly _tag: "Abort";
|
|
188
188
|
}) => any;
|
|
189
|
-
}>(value: AgentChatAction$1, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["
|
|
189
|
+
}>(value: AgentChatAction$1, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["HydrateMessage" | "Submit" | "AppendMessage" | "SubmitHitlResponse" | "DeleteTurn" | "RegenerateFrom" | "EditUserMessage" | "Event" | "Error" | "Abort"]>>;
|
|
190
190
|
};
|
|
191
191
|
};
|
|
192
192
|
type AgentChatSubmitResult = AgentChatSubmitResult$1;
|
|
193
193
|
declare const AgentChatSubmitResult: {
|
|
194
|
-
readonly Ignored: Data.TaggedEnum.ConstructorFrom<{
|
|
195
|
-
readonly _tag: "Ignored";
|
|
196
|
-
}, "_tag">;
|
|
197
194
|
readonly Submitted: Data.TaggedEnum.ConstructorFrom<{
|
|
198
195
|
readonly _tag: "Submitted";
|
|
199
196
|
readonly content: Content;
|
|
200
197
|
readonly message: UserMessage;
|
|
201
198
|
readonly messages: AgentTranscript;
|
|
202
199
|
}, "_tag">;
|
|
203
|
-
readonly
|
|
200
|
+
readonly Ignored: Data.TaggedEnum.ConstructorFrom<{
|
|
201
|
+
readonly _tag: "Ignored";
|
|
202
|
+
}, "_tag">;
|
|
203
|
+
readonly $is: <Tag extends "Submitted" | "Ignored">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
204
204
|
readonly _tag: "Submitted";
|
|
205
205
|
readonly content: Content;
|
|
206
206
|
readonly message: UserMessage;
|
|
@@ -214,27 +214,27 @@ declare const AgentChatSubmitResult: {
|
|
|
214
214
|
}>;
|
|
215
215
|
readonly $match: {
|
|
216
216
|
<Cases extends {
|
|
217
|
-
readonly Ignored: (args: {
|
|
218
|
-
readonly _tag: "Ignored";
|
|
219
|
-
}) => any;
|
|
220
217
|
readonly Submitted: (args: {
|
|
221
218
|
readonly _tag: "Submitted";
|
|
222
219
|
readonly content: Content;
|
|
223
220
|
readonly message: UserMessage;
|
|
224
221
|
readonly messages: AgentTranscript;
|
|
225
222
|
}) => any;
|
|
226
|
-
}>(cases: Cases): (value: AgentChatSubmitResult$1) => import("effect/Unify").Unify<ReturnType<Cases["Ignored" | "Submitted"]>>;
|
|
227
|
-
<Cases extends {
|
|
228
223
|
readonly Ignored: (args: {
|
|
229
224
|
readonly _tag: "Ignored";
|
|
230
225
|
}) => any;
|
|
226
|
+
}>(cases: Cases): (value: AgentChatSubmitResult$1) => import("effect/Unify").Unify<ReturnType<Cases["Submitted" | "Ignored"]>>;
|
|
227
|
+
<Cases extends {
|
|
231
228
|
readonly Submitted: (args: {
|
|
232
229
|
readonly _tag: "Submitted";
|
|
233
230
|
readonly content: Content;
|
|
234
231
|
readonly message: UserMessage;
|
|
235
232
|
readonly messages: AgentTranscript;
|
|
236
233
|
}) => any;
|
|
237
|
-
|
|
234
|
+
readonly Ignored: (args: {
|
|
235
|
+
readonly _tag: "Ignored";
|
|
236
|
+
}) => any;
|
|
237
|
+
}>(value: AgentChatSubmitResult$1, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Submitted" | "Ignored"]>>;
|
|
238
238
|
};
|
|
239
239
|
};
|
|
240
240
|
type AgentChatDeleteTurnResult = AgentChatDeleteTurnResult$1;
|
|
@@ -371,15 +371,15 @@ declare const AgentChatEditUserMessageResult: {
|
|
|
371
371
|
};
|
|
372
372
|
type AgentChatHitlResponseResult = AgentChatHitlResponseResult$1;
|
|
373
373
|
declare const AgentChatHitlResponseResult: {
|
|
374
|
-
readonly Ignored: Data.TaggedEnum.ConstructorFrom<{
|
|
375
|
-
readonly _tag: "Ignored";
|
|
376
|
-
}, "_tag">;
|
|
377
374
|
readonly Submitted: Data.TaggedEnum.ConstructorFrom<{
|
|
378
375
|
readonly _tag: "Submitted";
|
|
379
376
|
readonly response: HitlResponse;
|
|
380
377
|
readonly messages: AgentTranscript;
|
|
381
378
|
}, "_tag">;
|
|
382
|
-
readonly
|
|
379
|
+
readonly Ignored: Data.TaggedEnum.ConstructorFrom<{
|
|
380
|
+
readonly _tag: "Ignored";
|
|
381
|
+
}, "_tag">;
|
|
382
|
+
readonly $is: <Tag extends "Submitted" | "Ignored">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
383
383
|
readonly _tag: "Submitted";
|
|
384
384
|
readonly response: HitlResponse;
|
|
385
385
|
readonly messages: AgentTranscript;
|
|
@@ -392,25 +392,25 @@ declare const AgentChatHitlResponseResult: {
|
|
|
392
392
|
}>;
|
|
393
393
|
readonly $match: {
|
|
394
394
|
<Cases extends {
|
|
395
|
-
readonly Ignored: (args: {
|
|
396
|
-
readonly _tag: "Ignored";
|
|
397
|
-
}) => any;
|
|
398
395
|
readonly Submitted: (args: {
|
|
399
396
|
readonly _tag: "Submitted";
|
|
400
397
|
readonly response: HitlResponse;
|
|
401
398
|
readonly messages: AgentTranscript;
|
|
402
399
|
}) => any;
|
|
403
|
-
}>(cases: Cases): (value: AgentChatHitlResponseResult$1) => import("effect/Unify").Unify<ReturnType<Cases["Ignored" | "Submitted"]>>;
|
|
404
|
-
<Cases extends {
|
|
405
400
|
readonly Ignored: (args: {
|
|
406
401
|
readonly _tag: "Ignored";
|
|
407
402
|
}) => any;
|
|
403
|
+
}>(cases: Cases): (value: AgentChatHitlResponseResult$1) => import("effect/Unify").Unify<ReturnType<Cases["Submitted" | "Ignored"]>>;
|
|
404
|
+
<Cases extends {
|
|
408
405
|
readonly Submitted: (args: {
|
|
409
406
|
readonly _tag: "Submitted";
|
|
410
407
|
readonly response: HitlResponse;
|
|
411
408
|
readonly messages: AgentTranscript;
|
|
412
409
|
}) => any;
|
|
413
|
-
|
|
410
|
+
readonly Ignored: (args: {
|
|
411
|
+
readonly _tag: "Ignored";
|
|
412
|
+
}) => any;
|
|
413
|
+
}>(value: AgentChatHitlResponseResult$1, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Submitted" | "Ignored"]>>;
|
|
414
414
|
};
|
|
415
415
|
};
|
|
416
416
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-actions.d.mts","names":[],"sources":["../../src/react/chat-actions.ts"],"mappings":";;;;;;;;;;;KAUY,eAAA,GAAkB,iBAAmB;AAAA,cAEpC,eAAA;EAAA
|
|
1
|
+
{"version":3,"file":"chat-actions.d.mts","names":[],"sources":["../../src/react/chat-actions.ts"],"mappings":";;;;;;;;;;;KAUY,eAAA,GAAkB,iBAAmB;AAAA,cAEpC,eAAA;EAAA;;sBAAoD,YAAA;EAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAErD,qBAAA,GAAwB,uBAAyB;AAAA,cAEhD,qBAAA;EAAA;;sBAAgE,OAAA;IAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAEjE,yBAAA,GAA4B,2BAA6B;AAAA,cAExD,yBAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAED,yBAAA,GAA4B,2BAA6B;AAAA,cAExD,yBAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAED,8BAAA,GAAiC,gCAAkC;AAAA,cAElE,8BAAA;EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAED,2BAAA,GAA8B,6BAA+B;AAAA,cAE5D,2BAAA;EAAA;;uBAA4E,YAAA;IAAA"}
|
|
@@ -509,11 +509,6 @@ type AgentChatItem = {
|
|
|
509
509
|
readonly message: string;
|
|
510
510
|
};
|
|
511
511
|
declare const AgentChatItem: {
|
|
512
|
-
readonly Error: Data.TaggedEnum.ConstructorFrom<{
|
|
513
|
-
readonly _tag: "Error";
|
|
514
|
-
readonly id: string;
|
|
515
|
-
readonly message: string;
|
|
516
|
-
}, "_tag">;
|
|
517
512
|
readonly Reasoning: Data.TaggedEnum.ConstructorFrom<{
|
|
518
513
|
readonly _tag: "Reasoning";
|
|
519
514
|
readonly id: string;
|
|
@@ -541,6 +536,11 @@ declare const AgentChatItem: {
|
|
|
541
536
|
readonly messageId: string;
|
|
542
537
|
readonly content: Content;
|
|
543
538
|
}, "_tag">;
|
|
539
|
+
readonly Error: Data.TaggedEnum.ConstructorFrom<{
|
|
540
|
+
readonly _tag: "Error";
|
|
541
|
+
readonly id: string;
|
|
542
|
+
readonly message: string;
|
|
543
|
+
}, "_tag">;
|
|
544
544
|
readonly ToolRun: Data.TaggedEnum.ConstructorFrom<{
|
|
545
545
|
readonly _tag: "ToolRun";
|
|
546
546
|
readonly id: string;
|
|
@@ -568,7 +568,7 @@ declare const AgentChatItem: {
|
|
|
568
568
|
readonly id: string;
|
|
569
569
|
readonly label: string;
|
|
570
570
|
}, "_tag">;
|
|
571
|
-
readonly $is: <Tag extends "
|
|
571
|
+
readonly $is: <Tag extends "Reasoning" | "ToolResult" | "UserMessage" | "AssistantMessage" | "Error" | "ToolRun" | "UserDraft" | "AssistantDraft" | "Retry" | "AssistantStatus">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
572
572
|
readonly _tag: "UserMessage";
|
|
573
573
|
readonly id: string;
|
|
574
574
|
readonly messageId: string;
|
|
@@ -640,11 +640,6 @@ declare const AgentChatItem: {
|
|
|
640
640
|
}>;
|
|
641
641
|
readonly $match: {
|
|
642
642
|
<Cases extends {
|
|
643
|
-
readonly Error: (args: {
|
|
644
|
-
readonly _tag: "Error";
|
|
645
|
-
readonly id: string;
|
|
646
|
-
readonly message: string;
|
|
647
|
-
}) => any;
|
|
648
643
|
readonly Reasoning: (args: {
|
|
649
644
|
readonly _tag: "Reasoning";
|
|
650
645
|
readonly id: string;
|
|
@@ -672,6 +667,11 @@ declare const AgentChatItem: {
|
|
|
672
667
|
readonly messageId: string;
|
|
673
668
|
readonly content: Content;
|
|
674
669
|
}) => any;
|
|
670
|
+
readonly Error: (args: {
|
|
671
|
+
readonly _tag: "Error";
|
|
672
|
+
readonly id: string;
|
|
673
|
+
readonly message: string;
|
|
674
|
+
}) => any;
|
|
675
675
|
readonly ToolRun: (args: {
|
|
676
676
|
readonly _tag: "ToolRun";
|
|
677
677
|
readonly id: string;
|
|
@@ -699,13 +699,8 @@ declare const AgentChatItem: {
|
|
|
699
699
|
readonly id: string;
|
|
700
700
|
readonly label: string;
|
|
701
701
|
}) => any;
|
|
702
|
-
}>(cases: Cases): (value: AgentChatItem) => import("effect/Unify").Unify<ReturnType<Cases["
|
|
702
|
+
}>(cases: Cases): (value: AgentChatItem) => import("effect/Unify").Unify<ReturnType<Cases["Reasoning" | "ToolResult" | "UserMessage" | "AssistantMessage" | "Error" | "ToolRun" | "UserDraft" | "AssistantDraft" | "Retry" | "AssistantStatus"]>>;
|
|
703
703
|
<Cases extends {
|
|
704
|
-
readonly Error: (args: {
|
|
705
|
-
readonly _tag: "Error";
|
|
706
|
-
readonly id: string;
|
|
707
|
-
readonly message: string;
|
|
708
|
-
}) => any;
|
|
709
704
|
readonly Reasoning: (args: {
|
|
710
705
|
readonly _tag: "Reasoning";
|
|
711
706
|
readonly id: string;
|
|
@@ -733,6 +728,11 @@ declare const AgentChatItem: {
|
|
|
733
728
|
readonly messageId: string;
|
|
734
729
|
readonly content: Content;
|
|
735
730
|
}) => any;
|
|
731
|
+
readonly Error: (args: {
|
|
732
|
+
readonly _tag: "Error";
|
|
733
|
+
readonly id: string;
|
|
734
|
+
readonly message: string;
|
|
735
|
+
}) => any;
|
|
736
736
|
readonly ToolRun: (args: {
|
|
737
737
|
readonly _tag: "ToolRun";
|
|
738
738
|
readonly id: string;
|
|
@@ -760,7 +760,7 @@ declare const AgentChatItem: {
|
|
|
760
760
|
readonly id: string;
|
|
761
761
|
readonly label: string;
|
|
762
762
|
}) => any;
|
|
763
|
-
}>(value: AgentChatItem, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["
|
|
763
|
+
}>(value: AgentChatItem, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Reasoning" | "ToolResult" | "UserMessage" | "AssistantMessage" | "Error" | "ToolRun" | "UserDraft" | "AssistantDraft" | "Retry" | "AssistantStatus"]>>;
|
|
764
764
|
};
|
|
765
765
|
};
|
|
766
766
|
type BuildAgentChatItemsInput = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-items.d.mts","names":[],"sources":["../../src/react/chat-items.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"chat-items.d.mts","names":[],"sources":["../../src/react/chat-items.ts"],"mappings":"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"}
|
|
@@ -464,11 +464,6 @@ type AgentChatPart = {
|
|
|
464
464
|
readonly message: string;
|
|
465
465
|
};
|
|
466
466
|
declare const AgentChatPart: {
|
|
467
|
-
readonly Error: Data.TaggedEnum.ConstructorFrom<{
|
|
468
|
-
readonly _tag: "Error";
|
|
469
|
-
readonly id: string;
|
|
470
|
-
readonly message: string;
|
|
471
|
-
}, "_tag">;
|
|
472
467
|
readonly ToolCall: Data.TaggedEnum.ConstructorFrom<{
|
|
473
468
|
readonly _tag: "ToolCall";
|
|
474
469
|
readonly id: string;
|
|
@@ -497,7 +492,12 @@ declare const AgentChatPart: {
|
|
|
497
492
|
readonly acceptance?: ToolResult["acceptance"];
|
|
498
493
|
readonly structuredContent?: unknown;
|
|
499
494
|
}, "_tag">;
|
|
500
|
-
readonly
|
|
495
|
+
readonly Error: Data.TaggedEnum.ConstructorFrom<{
|
|
496
|
+
readonly _tag: "Error";
|
|
497
|
+
readonly id: string;
|
|
498
|
+
readonly message: string;
|
|
499
|
+
}, "_tag">;
|
|
500
|
+
readonly $is: <Tag extends "ToolCall" | "Text" | "Reasoning" | "ToolResult" | "Error">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
501
501
|
readonly _tag: "Text";
|
|
502
502
|
readonly id: string;
|
|
503
503
|
readonly content: Content;
|
|
@@ -538,11 +538,6 @@ declare const AgentChatPart: {
|
|
|
538
538
|
}>;
|
|
539
539
|
readonly $match: {
|
|
540
540
|
<Cases extends {
|
|
541
|
-
readonly Error: (args: {
|
|
542
|
-
readonly _tag: "Error";
|
|
543
|
-
readonly id: string;
|
|
544
|
-
readonly message: string;
|
|
545
|
-
}) => any;
|
|
546
541
|
readonly ToolCall: (args: {
|
|
547
542
|
readonly _tag: "ToolCall";
|
|
548
543
|
readonly id: string;
|
|
@@ -571,13 +566,13 @@ declare const AgentChatPart: {
|
|
|
571
566
|
readonly acceptance?: ToolResult["acceptance"];
|
|
572
567
|
readonly structuredContent?: unknown;
|
|
573
568
|
}) => any;
|
|
574
|
-
}>(cases: Cases): (value: AgentChatPart) => import("effect/Unify").Unify<ReturnType<Cases["Error" | "ToolCall" | "Text" | "Reasoning" | "ToolResult"]>>;
|
|
575
|
-
<Cases extends {
|
|
576
569
|
readonly Error: (args: {
|
|
577
570
|
readonly _tag: "Error";
|
|
578
571
|
readonly id: string;
|
|
579
572
|
readonly message: string;
|
|
580
573
|
}) => any;
|
|
574
|
+
}>(cases: Cases): (value: AgentChatPart) => import("effect/Unify").Unify<ReturnType<Cases["ToolCall" | "Text" | "Reasoning" | "ToolResult" | "Error"]>>;
|
|
575
|
+
<Cases extends {
|
|
581
576
|
readonly ToolCall: (args: {
|
|
582
577
|
readonly _tag: "ToolCall";
|
|
583
578
|
readonly id: string;
|
|
@@ -606,7 +601,12 @@ declare const AgentChatPart: {
|
|
|
606
601
|
readonly acceptance?: ToolResult["acceptance"];
|
|
607
602
|
readonly structuredContent?: unknown;
|
|
608
603
|
}) => any;
|
|
609
|
-
|
|
604
|
+
readonly Error: (args: {
|
|
605
|
+
readonly _tag: "Error";
|
|
606
|
+
readonly id: string;
|
|
607
|
+
readonly message: string;
|
|
608
|
+
}) => any;
|
|
609
|
+
}>(value: AgentChatPart, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["ToolCall" | "Text" | "Reasoning" | "ToolResult" | "Error"]>>;
|
|
610
610
|
};
|
|
611
611
|
};
|
|
612
612
|
type AgentChatMessage = {
|
|
@@ -628,16 +628,16 @@ type DeleteChatTurnResult = {
|
|
|
628
628
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
629
629
|
};
|
|
630
630
|
declare const DeleteChatTurnResult: {
|
|
631
|
-
readonly NotFound: Data.TaggedEnum.ConstructorFrom<{
|
|
632
|
-
readonly _tag: "NotFound";
|
|
633
|
-
}, "_tag">;
|
|
634
631
|
readonly Deleted: Data.TaggedEnum.ConstructorFrom<{
|
|
635
632
|
readonly _tag: "Deleted";
|
|
636
633
|
readonly turnStartMessageId: string;
|
|
637
634
|
readonly deletedMessageIds: ReadonlyArray<string>;
|
|
638
635
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
639
636
|
}, "_tag">;
|
|
640
|
-
readonly
|
|
637
|
+
readonly NotFound: Data.TaggedEnum.ConstructorFrom<{
|
|
638
|
+
readonly _tag: "NotFound";
|
|
639
|
+
}, "_tag">;
|
|
640
|
+
readonly $is: <Tag extends "Deleted" | "NotFound">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
641
641
|
readonly _tag: "NotFound";
|
|
642
642
|
}, {
|
|
643
643
|
readonly _tag: Tag;
|
|
@@ -651,27 +651,27 @@ declare const DeleteChatTurnResult: {
|
|
|
651
651
|
}>;
|
|
652
652
|
readonly $match: {
|
|
653
653
|
<Cases extends {
|
|
654
|
-
readonly NotFound: (args: {
|
|
655
|
-
readonly _tag: "NotFound";
|
|
656
|
-
}) => any;
|
|
657
654
|
readonly Deleted: (args: {
|
|
658
655
|
readonly _tag: "Deleted";
|
|
659
656
|
readonly turnStartMessageId: string;
|
|
660
657
|
readonly deletedMessageIds: ReadonlyArray<string>;
|
|
661
658
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
662
659
|
}) => any;
|
|
663
|
-
}>(cases: Cases): (value: DeleteChatTurnResult) => import("effect/Unify").Unify<ReturnType<Cases["NotFound" | "Deleted"]>>;
|
|
664
|
-
<Cases extends {
|
|
665
660
|
readonly NotFound: (args: {
|
|
666
661
|
readonly _tag: "NotFound";
|
|
667
662
|
}) => any;
|
|
663
|
+
}>(cases: Cases): (value: DeleteChatTurnResult) => import("effect/Unify").Unify<ReturnType<Cases["Deleted" | "NotFound"]>>;
|
|
664
|
+
<Cases extends {
|
|
668
665
|
readonly Deleted: (args: {
|
|
669
666
|
readonly _tag: "Deleted";
|
|
670
667
|
readonly turnStartMessageId: string;
|
|
671
668
|
readonly deletedMessageIds: ReadonlyArray<string>;
|
|
672
669
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
673
670
|
}) => any;
|
|
674
|
-
|
|
671
|
+
readonly NotFound: (args: {
|
|
672
|
+
readonly _tag: "NotFound";
|
|
673
|
+
}) => any;
|
|
674
|
+
}>(value: DeleteChatTurnResult, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Deleted" | "NotFound"]>>;
|
|
675
675
|
};
|
|
676
676
|
};
|
|
677
677
|
type EditChatUserMessageResult = {
|
|
@@ -684,18 +684,18 @@ type EditChatUserMessageResult = {
|
|
|
684
684
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
685
685
|
};
|
|
686
686
|
declare const EditChatUserMessageResult: {
|
|
687
|
+
readonly Edited: Data.TaggedEnum.ConstructorFrom<{
|
|
688
|
+
readonly _tag: "Edited";
|
|
689
|
+
readonly messageId: string;
|
|
690
|
+
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
691
|
+
}, "_tag">;
|
|
687
692
|
readonly NotFound: Data.TaggedEnum.ConstructorFrom<{
|
|
688
693
|
readonly _tag: "NotFound";
|
|
689
694
|
}, "_tag">;
|
|
690
695
|
readonly NotUserMessage: Data.TaggedEnum.ConstructorFrom<{
|
|
691
696
|
readonly _tag: "NotUserMessage";
|
|
692
697
|
}, "_tag">;
|
|
693
|
-
readonly Edited:
|
|
694
|
-
readonly _tag: "Edited";
|
|
695
|
-
readonly messageId: string;
|
|
696
|
-
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
697
|
-
}, "_tag">;
|
|
698
|
-
readonly $is: <Tag extends "NotFound" | "NotUserMessage" | "Edited">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
698
|
+
readonly $is: <Tag extends "Edited" | "NotFound" | "NotUserMessage">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
699
699
|
readonly _tag: "NotFound";
|
|
700
700
|
}, {
|
|
701
701
|
readonly _tag: Tag;
|
|
@@ -712,31 +712,31 @@ declare const EditChatUserMessageResult: {
|
|
|
712
712
|
}>;
|
|
713
713
|
readonly $match: {
|
|
714
714
|
<Cases extends {
|
|
715
|
+
readonly Edited: (args: {
|
|
716
|
+
readonly _tag: "Edited";
|
|
717
|
+
readonly messageId: string;
|
|
718
|
+
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
719
|
+
}) => any;
|
|
715
720
|
readonly NotFound: (args: {
|
|
716
721
|
readonly _tag: "NotFound";
|
|
717
722
|
}) => any;
|
|
718
723
|
readonly NotUserMessage: (args: {
|
|
719
724
|
readonly _tag: "NotUserMessage";
|
|
720
725
|
}) => any;
|
|
726
|
+
}>(cases: Cases): (value: EditChatUserMessageResult) => import("effect/Unify").Unify<ReturnType<Cases["Edited" | "NotFound" | "NotUserMessage"]>>;
|
|
727
|
+
<Cases extends {
|
|
721
728
|
readonly Edited: (args: {
|
|
722
729
|
readonly _tag: "Edited";
|
|
723
730
|
readonly messageId: string;
|
|
724
731
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
725
732
|
}) => any;
|
|
726
|
-
}>(cases: Cases): (value: EditChatUserMessageResult) => import("effect/Unify").Unify<ReturnType<Cases["NotFound" | "NotUserMessage" | "Edited"]>>;
|
|
727
|
-
<Cases extends {
|
|
728
733
|
readonly NotFound: (args: {
|
|
729
734
|
readonly _tag: "NotFound";
|
|
730
735
|
}) => any;
|
|
731
736
|
readonly NotUserMessage: (args: {
|
|
732
737
|
readonly _tag: "NotUserMessage";
|
|
733
738
|
}) => any;
|
|
734
|
-
|
|
735
|
-
readonly _tag: "Edited";
|
|
736
|
-
readonly messageId: string;
|
|
737
|
-
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
738
|
-
}) => any;
|
|
739
|
-
}>(value: EditChatUserMessageResult, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["NotFound" | "NotUserMessage" | "Edited"]>>;
|
|
739
|
+
}>(value: EditChatUserMessageResult, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Edited" | "NotFound" | "NotUserMessage"]>>;
|
|
740
740
|
};
|
|
741
741
|
};
|
|
742
742
|
type RegenerateChatMessagesResult = {
|
|
@@ -746,14 +746,14 @@ type RegenerateChatMessagesResult = {
|
|
|
746
746
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
747
747
|
};
|
|
748
748
|
declare const RegenerateChatMessagesResult: {
|
|
749
|
-
readonly NotFound: Data.TaggedEnum.ConstructorFrom<{
|
|
750
|
-
readonly _tag: "NotFound";
|
|
751
|
-
}, "_tag">;
|
|
752
749
|
readonly Regenerated: Data.TaggedEnum.ConstructorFrom<{
|
|
753
750
|
readonly _tag: "Regenerated";
|
|
754
751
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
755
752
|
}, "_tag">;
|
|
756
|
-
readonly
|
|
753
|
+
readonly NotFound: Data.TaggedEnum.ConstructorFrom<{
|
|
754
|
+
readonly _tag: "NotFound";
|
|
755
|
+
}, "_tag">;
|
|
756
|
+
readonly $is: <Tag extends "Regenerated" | "NotFound">(tag: Tag) => (u: unknown) => u is Extract<{
|
|
757
757
|
readonly _tag: "NotFound";
|
|
758
758
|
}, {
|
|
759
759
|
readonly _tag: Tag;
|
|
@@ -765,23 +765,23 @@ declare const RegenerateChatMessagesResult: {
|
|
|
765
765
|
}>;
|
|
766
766
|
readonly $match: {
|
|
767
767
|
<Cases extends {
|
|
768
|
-
readonly NotFound: (args: {
|
|
769
|
-
readonly _tag: "NotFound";
|
|
770
|
-
}) => any;
|
|
771
768
|
readonly Regenerated: (args: {
|
|
772
769
|
readonly _tag: "Regenerated";
|
|
773
770
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
774
771
|
}) => any;
|
|
775
|
-
}>(cases: Cases): (value: RegenerateChatMessagesResult) => import("effect/Unify").Unify<ReturnType<Cases["NotFound" | "Regenerated"]>>;
|
|
776
|
-
<Cases extends {
|
|
777
772
|
readonly NotFound: (args: {
|
|
778
773
|
readonly _tag: "NotFound";
|
|
779
774
|
}) => any;
|
|
775
|
+
}>(cases: Cases): (value: RegenerateChatMessagesResult) => import("effect/Unify").Unify<ReturnType<Cases["Regenerated" | "NotFound"]>>;
|
|
776
|
+
<Cases extends {
|
|
780
777
|
readonly Regenerated: (args: {
|
|
781
778
|
readonly _tag: "Regenerated";
|
|
782
779
|
readonly messages: ReadonlyArray<AgentChatMessage>;
|
|
783
780
|
}) => any;
|
|
784
|
-
|
|
781
|
+
readonly NotFound: (args: {
|
|
782
|
+
readonly _tag: "NotFound";
|
|
783
|
+
}) => any;
|
|
784
|
+
}>(value: RegenerateChatMessagesResult, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Regenerated" | "NotFound"]>>;
|
|
785
785
|
};
|
|
786
786
|
};
|
|
787
787
|
type ApplyAgentEventToChatMessagesOptions = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-messages.d.mts","names":[],"sources":["../../src/react/chat-messages.ts"],"mappings":";;;;;KAqCY,aAAA;AAAA,KAEA,aAAA;EAAA,SACG,IAAA;AAAA;EAAA,SACA,IAAA;EAAA,SAAiC,KAAA;AAAA;EAAA,SACjC,IAAA;EAAA,SAAoC,OAAA,GAAU,mBAAA;AAAA;EAAA,SAC9C,IAAA;EAAA,SAAyB,MAAA;AAAA;EAAA,SACzB,IAAA;EAAA,SAAoC,OAAA,EAAS,eAAA;AAAA;EAAA,SAE7C,IAAA;EAAA,SACA,QAAA,EAAU,gBAAA;EAAA,SACV,OAAA,GAAU,eAAA;AAAA;EAAA,SAGV,IAAA;EAAA,SACA,QAAA,EAAU,gBAAA;EAAA,SACV,OAAA,GAAU,eAAA;AAAA;EAAA,SAEV,IAAA;EAAA,SAAiC,OAAA,EAAS,YAAA;AAAA;EAAA,SAE1C,IAAA;EAAA,SACA,QAAA,EAAU,aAAA;EAAA,SACV,OAAA,GAAU,YAAA;AAAA;EAAA,SAGV,IAAA;EAAA,SACA,QAAA,EAAU,aAAA;EAAA,SACV,OAAA,GAAU,YAAA;AAAA;EAAA,SAEV,IAAA;EAAA,SAAuC,OAAA,EAAS,kBAAA;AAAA;EAAA,SAEhD,IAAA;EAAA,SACA,QAAA,EAAU,mBAAA;EAAA,SACV,OAAA,GAAU,kBAAA;AAAA;EAAA,SAGV,IAAA;EAAA,SACA,QAAA,EAAU,mBAAA;EAAA,SACV,OAAA,GAAU,kBAAA;AAAA;EAAA,SAEV,IAAA;EAAA,SAA0B,WAAA;AAAA;EAAA,SAE1B,IAAA;EAAA,SACA,MAAA,EAAQ,UAAA;EAAA,SACR,WAAA;EAAA,SACA,SAAA;AAAA;EAAA,SAGA,IAAA;EAAA,SACA,MAAA,EAAQ,UAAA;EAAA,SACR,cAAA,GAAiB,eAAA;EAAA,SACjB,WAAA;EAAA,SACA,SAAA;AAAA;EAAA,SAGA,IAAA;EAAA,SACA,OAAA;EAAA,SACA,WAAA;EAAA,SACA,SAAA;AAAA;EAAA,SAEA,IAAA;EAAA,SAAoC,MAAA,EAAQ,UAAA;AAAA;AAAA,cAE9C,aAAA;EAAA;;;;;;uBAzDgD,mBAAA;EAAA;EAAA;;;;;;sBAED,eAAA;EAAA;EAAA;;uBAGnC,gBAAA;IAAA,mBACA,eAAA;EAAA;EAAA;;uBAIA,gBAAA;IAAA,mBACA,eAAA;EAAA;EAAA;;sBAEgC,YAAA;EAAA;EAAA;;uBAGhC,aAAA;IAAA,mBACA,YAAA;EAAA;EAAA;;uBAIA,aAAA;IAAA,mBACA,YAAA;EAAA;EAAA;;sBAEsC,kBAAA;EAAA;EAAA;;uBAGtC,mBAAA;IAAA,mBACA,kBAAA;EAAA;EAAA;;uBAIA,mBAAA;IAAA,mBACA,kBAAA;EAAA;EAAA;;qBAKF,UAAA;IAAA;;;;;qBAMA,UAAA;IAAA,0BACS,eAAA;IAAA;;;;;;;;;;;qBAU2B,UAAA;EAAA;EAAA;;;;;;;;;;;;;;;;;;uBAvDE,mBAAA;EAAA;IAAA;;;;;;;;sBAED,eAAA;EAAA;IAAA;;;uBAGnC,gBAAA;IAAA,mBACA,eAAA;EAAA;IAAA;;;uBAIA,gBAAA;IAAA,mBACA,eAAA;EAAA;IAAA;;;sBAEgC,YAAA;EAAA;IAAA;;;uBAGhC,aAAA;IAAA,mBACA,YAAA;EAAA;IAAA;;;uBAIA,aAAA;IAAA,mBACA,YAAA;EAAA;IAAA;;;sBAEsC,kBAAA;EAAA;IAAA;;;uBAGtC,mBAAA;IAAA,mBACA,kBAAA;EAAA;IAAA;;;uBAIA,mBAAA;IAAA,mBACA,kBAAA;EAAA;IAAA;;;;;;;;qBAKF,UAAA;IAAA;;;;;;qBAMA,UAAA;IAAA,0BACS,eAAA;IAAA;;;;;;;;;;;;;qBAU2B,UAAA;EAAA;IAAA;;;;;;;;;;2BAvDE,mBAAA;MAAA;MAAA;;;;;;0BAED,eAAA;MAAA;MAAA;;2BAGnC,gBAAA;QAAA,mBACA,eAAA;MAAA;MAAA;;2BAIA,gBAAA;QAAA,mBACA,eAAA;MAAA;MAAA;;0BAEgC,YAAA;MAAA;MAAA;;2BAGhC,aAAA;QAAA,mBACA,YAAA;MAAA;MAAA;;2BAIA,aAAA;QAAA,mBACA,YAAA;MAAA;MAAA;;0BAEsC,kBAAA;MAAA;MAAA;;2BAGtC,mBAAA;QAAA,mBACA,kBAAA;MAAA;MAAA;;2BAIA,mBAAA;QAAA,mBACA,kBAAA;MAAA;MAAA;;yBAKF,UAAA;QAAA;;;;;yBAMA,UAAA;QAAA,0BACS,eAAA;QAAA;;;;;;;;;;;yBAU2B,UAAA;MAAA;MAAA;;;;;;;;;;;;;;;2BAvDE,mBAAA;MAAA;MAAA;;;;;;0BAED,eAAA;MAAA;MAAA;;2BAGnC,gBAAA;QAAA,mBACA,eAAA;MAAA;MAAA;;2BAIA,gBAAA;QAAA,mBACA,eAAA;MAAA;MAAA;;0BAEgC,YAAA;MAAA;MAAA;;2BAGhC,aAAA;QAAA,mBACA,YAAA;MAAA;MAAA;;2BAIA,aAAA;QAAA,mBACA,YAAA;MAAA;MAAA;;0BAEsC,kBAAA;MAAA;MAAA;;2BAGtC,mBAAA;QAAA,mBACA,kBAAA;MAAA;MAAA;;2BAIA,mBAAA;QAAA,mBACA,kBAAA;MAAA;MAAA;;yBAKF,UAAA;QAAA;;;;;yBAMA,UAAA;QAAA,0BACS,eAAA;QAAA;;;;;;;;;;;yBAU2B,UAAA;MAAA;MAAA;;;;;;;;;;KAI/C,aAAA;EAAA,SAEG,IAAA;EAAA,SACA,EAAA;EAAA,SACA,OAAA,EAAS,OAAA;EAAA,SACT,KAAA,EAAO,aAAA;AAAA;EAAA,SAGP,IAAA;EAAA,SACA,EAAA;EAAA,SACA,IAAA;EAAA,SACA,KAAA,EAAO,aAAA;AAAA;EAAA,SAGP,IAAA;EAAA,SACA,EAAA;EAAA,SACA,IAAA,EAAM,QAAA;EAAA,SACN,KAAA,EAAO,aAAA;AAAA;EAAA,SAGP,IAAA;EAAA,SACA,EAAA;EAAA,SACA,UAAA;EAAA,SACA,IAAA;EAAA,SACA,OAAA,EAAS,OAAA;EAAA,SACT,OAAA;EAAA,SACA,UAAA,GAAa,UAAA;EAAA,SACb,iBAAA;AAAA;EAAA,SAEA,IAAA;EAAA,SAAwB,EAAA;EAAA,SAAqB,OAAA;AAAA;AAAA,cAE/C,aAAA;EAAA
|
|
1
|
+
{"version":3,"file":"chat-messages.d.mts","names":[],"sources":["../../src/react/chat-messages.ts"],"mappings":"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"}
|
|
@@ -17,8 +17,8 @@ declare const mergeSkillsets: (sources: ReadonlyArray<SkillsetSource>) => Effect
|
|
|
17
17
|
skills: {
|
|
18
18
|
readonly name: string;
|
|
19
19
|
readonly description: string;
|
|
20
|
-
readonly location: string;
|
|
21
20
|
readonly content: string;
|
|
21
|
+
readonly location: string;
|
|
22
22
|
readonly source?: string | undefined;
|
|
23
23
|
}[];
|
|
24
24
|
commands: {
|
package/dist/skillset/name.d.mts
CHANGED
|
@@ -3,8 +3,8 @@ import { Effect } from "effect";
|
|
|
3
3
|
|
|
4
4
|
//#region src/skillset/name.d.ts
|
|
5
5
|
declare const isValidSkillsetName: (name: string) => boolean;
|
|
6
|
-
declare const validateSkillsetName: (name: string) => Effect.Effect<
|
|
7
|
-
declare const validateDirectoryName: (expected: string, actual: string) => Effect.Effect<
|
|
6
|
+
declare const validateSkillsetName: (name: string) => Effect.Effect<never, SkillsetError, never> | Effect.Effect<string, never, never>;
|
|
7
|
+
declare const validateDirectoryName: (expected: string, actual: string) => Effect.Effect<never, SkillsetError, never> | Effect.Effect<string, never, never>;
|
|
8
8
|
//#endregion
|
|
9
9
|
export { isValidSkillsetName, validateDirectoryName, validateSkillsetName };
|
|
10
10
|
//# sourceMappingURL=name.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"name.d.mts","names":[],"sources":["../../src/skillset/name.ts"],"mappings":";;;;cAOa,mBAAA,GAAuB,IAAY;AAAA,cAGnC,oBAAA,GAAwB,IAAA,aAAY,MAAA,CAAA,MAAA,
|
|
1
|
+
{"version":3,"file":"name.d.mts","names":[],"sources":["../../src/skillset/name.ts"],"mappings":";;;;cAOa,mBAAA,GAAuB,IAAY;AAAA,cAGnC,oBAAA,GAAwB,IAAA,aAAY,MAAA,CAAA,MAAA,QAAA,aAAA,WAAA,MAAA,CAAA,MAAA;AAAA,cAUpC,qBAAA,GAAyB,QAAA,UAAkB,MAAA,aAAc,MAAA,CAAA,MAAA,QAAA,aAAA,WAAA,MAAA,CAAA,MAAA"}
|
|
@@ -85,7 +85,9 @@ declare const subagentUsageFromToolResult: (result: ToolResult) => AgentUsage |
|
|
|
85
85
|
declare const subagentResultFromEvents: (events: ReadonlyArray<AgentEvent>) => SubagentRunResult;
|
|
86
86
|
declare const subagentResultText: (events: ReadonlyArray<AgentEvent>) => string;
|
|
87
87
|
declare const makeSubagentToolResult: (input: SubagentToolResultInput) => ToolResult;
|
|
88
|
-
/** Acceptance is a tool completion, never a child completion or usage delta.
|
|
88
|
+
/** Acceptance is a tool completion, never a child completion or usage delta.
|
|
89
|
+
* Hosts own completion delivery and any observation tools; registration supplies neither.
|
|
90
|
+
*/
|
|
89
91
|
declare const makeSubagentAcceptedToolResult: (input: {
|
|
90
92
|
readonly callId: string;
|
|
91
93
|
readonly workflowRunId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent.d.mts","names":[],"sources":["../../src/tools/subagent.ts"],"mappings":";;;;;;;KA+CY,kBAAA;EAAA,SACD,WAAA;EAAA,SACA,MAAA;EAAA,SACA,aAAA;EAAA,SACA,KAAA;EAAA,SACA,gBAAA,GAAmB,oBAAoB;EAAA,SACvC,UAAA;AAAA;AAAA,KAGC,kBAAA;EAAA,SACD,IAAA;EAAA,SACA,WAAW;AAAA;AAAA,KAGV,uBAAA;EAAA,SACD,EAAA;EAAA,SACA,WAAW;AAAA;AAAA,KAGV,iCAAA;EAAA,SACD,KAAA,EAAO,oBAAoB;EAAA,SAC3B,WAAA;AAAA;AAAA,KAGC,+BAAA;kFAED,UAAA;EAAA,SACA,MAAA,GAAS,aAAA,CAAc,uBAAA;EAAA,SACvB,gBAAA,GAAmB,aAAA,CAAc,iCAAA;AAAA;AAAA,KAGhC,eAAA;EAAA,SACD,QAAQ;AAAA;AAAA,KAGP,sBAAA;EAAA,SACD,IAAA,EAAM,QAAA;EAAA,SACN,OAAA,EAAS,OAAA;EAAA,SACT,MAAA,EAAQ,kBAAA;AAAA;AAAA,KAGP,mBAAA,YAA+B,+BAAA;EAAA,SAChC,SAAA,EAAW,aAAA,CAAc,kBAAA;EAAA,SACzB,SAAA,IAAa,OAAA,EAAS,OAAA,KAAY,MAAA,CAAO,MAAA,UAAgB,iBAAA;EAAA,SACzD,OAAA,GAAU,KAAA,EAAO,sBAAA,CAAuB,OAAA,MAAa,MAAA,CAAO,MAAA,CAAO,UAAA,EAAY,SAAA;AAAA;AAAA,KAG9E,gBAAA;EAAA,SACD,IAAA,EAAM,cAAA;EAAA,SACN,OAAA;EAAA,SACA,SAAA;EAAA,SACA,QAAA,GAAW,iBAAiB;AAAA;AAAA,KAG3B,iBAAA;AAAA,KAEA,iBAAA;EAAA,SACD,MAAA,EAAQ,iBAAA;EAAA,SACR,IAAA;EAAA,SACA,KAAA,GAAQ,UAAA;EAAA,SACR,KAAA;EAAA,SACA,QAAA,GAAW,aAAA,CAAc,WAAA;EAAA,SACzB,KAAA,GAAQ,gBAAA;AAAA;AAAA,KAGP,uBAAA;EAAA,SACD,MAAA;EAAA,SACA,MAAA;EAAA,SACA,YAAA;EAAA,SACA,WAAA;EAAA,SACA,aAAA;EAAA,SACA,WAAA;EAAA,SACA,SAAA;EAAA,SACA,KAAA;EAAA,SACA,eAAA,GAAkB,oBAAA;EAAA,SAClB,KAAA,GAAQ,UAAA;EAAA,SACR,KAAA;EAAA,SACA,MAAA,GAAS,iBAAA;EAAA,SACT,QAAA,GAAW,aAAA,CAAc,WAAA;EAAA,SACzB,KAAA,GAAQ,gBAAA;EAAA,SACR,OAAA;AAAA;AAAA,cAgRE,4BAAA,YACX,OAAA,EAAS,mBAAA,CAAoB,OAAA,MAC5B,gBAAA,CAAiB,OAAA;AAAA,cAwBP,mBAAA,GACX,SAAA,EAAW,aAAA,CAAc,kBAAA,GACzB,iBAAA,GAAmB,+BAAA,wCAAoC,OAAA;AAAA,cAQ5C,sBAAA,YACX,OAAA,EAAS,mBAAA,CAAoB,OAAA,MAC5B,UAAA,CAAW,OAAA;AAAA,cAKD,kCAAA,mBAAsD,eAAA,EACjE,OAAA,EAAS,mBAAA,CAAoB,OAAA,MAC5B,UAAA,CAAW,OAAA;AAAA,cAWD,oBAAA,GAAwB,MAAc;AAAA,cAGtC,iBAAA,GAAiB,gBAAA;AAAA,cAkJjB,2BAAA,GAA+B,MAAA,EAAQ,UAAA,KAAa,UAAU;AAAA,cA8B9D,wBAAA,GAA4B,MAAA,EAAQ,aAAA,CAAc,UAAA,MAAc,iBAAA;AAAA,cA2EhE,kBAAA,GAAsB,MAAA,EAAQ,aAAa,CAAC,UAAA;AAAA,cAyC5C,sBAAA,GAA0B,KAAA,EAAO,uBAAA,KAAuB,UAUpE
|
|
1
|
+
{"version":3,"file":"subagent.d.mts","names":[],"sources":["../../src/tools/subagent.ts"],"mappings":"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"}
|
package/dist/tools/subagent.mjs
CHANGED
|
@@ -25,7 +25,7 @@ const optionalRuntimeSelection = (input) => Schema$1.optionalKey(Schema$1.Enum(e
|
|
|
25
25
|
const configuredSubagentToolParams = (options) => {
|
|
26
26
|
const fields = {
|
|
27
27
|
...SubagentToolBaseFields,
|
|
28
|
-
background: Schema$1.optionalKey(Schema$1.Boolean.pipe(Schema$1.annotate({ description: "Return an accepted handle immediately
|
|
28
|
+
background: Schema$1.optionalKey(Schema$1.Boolean.pipe(Schema$1.annotate({ description: "Return an accepted handle immediately, not the completed result. Completion delivery and observation follow the host instructions." })))
|
|
29
29
|
};
|
|
30
30
|
const model = options.models === void 0 || options.models.length === 0 ? void 0 : optionalRuntimeSelection({
|
|
31
31
|
values: options.models.map((item) => item.id),
|
|
@@ -312,10 +312,12 @@ const subagentAcceptedStructuredContent = (input) => {
|
|
|
312
312
|
if (input.parentRunId !== void 0) structuredContent.parent_run_id = input.parentRunId;
|
|
313
313
|
return structuredContent;
|
|
314
314
|
};
|
|
315
|
-
/** Acceptance is a tool completion, never a child completion or usage delta.
|
|
315
|
+
/** Acceptance is a tool completion, never a child completion or usage delta.
|
|
316
|
+
* Hosts own completion delivery and any observation tools; registration supplies neither.
|
|
317
|
+
*/
|
|
316
318
|
const makeSubagentAcceptedToolResult = (input) => ToolResult.make({
|
|
317
319
|
toolCallId: input.callId,
|
|
318
|
-
content: `Subagent accepted
|
|
320
|
+
content: `Subagent accepted, not completed. Reference: tool_call_id=${input.callId}${input.parentRunId === void 0 ? "" : ` and parent_run_id=${input.parentRunId}`}. Completion delivery and observation follow the host instructions.`,
|
|
319
321
|
structuredContent: subagentAcceptedStructuredContent(input)
|
|
320
322
|
});
|
|
321
323
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagent.mjs","names":["Schema"],"sources":["../../src/tools/subagent.ts"],"sourcesContent":["import { Effect, Predicate } from 'effect'\nimport * as Schema from 'effect/Schema'\nimport { ToolError } from '@yolk-sdk/agent/loop'\nimport {\n addAgentUsage,\n assistantContent,\n AgentUsage,\n contentText,\n isTerminalAgentEvent,\n makeSubagentRunId,\n ToolResult,\n type AgentErrorCode,\n type AgentEvent,\n type AgentMessage,\n type AgentReasoningEffort,\n type HitlRequest,\n type ProviderErrorInfo,\n type ToolCall,\n zeroAgentUsage\n} from '@yolk-sdk/agent/protocol'\nimport { subagentToolName } from '../protocol/tool.ts'\nimport {\n makeTool,\n modelVisibleToolError,\n type ModelVisibleToolError,\n type ToolModule,\n type ToolRegistration,\n type ToolRegistryError\n} from './registry.ts'\n\nexport { subagentToolName }\n\nconst SubagentToolBaseFields = {\n description: Schema.String.pipe(\n Schema.annotate({ description: 'A short 3-5 word description of the task.' })\n ),\n prompt: Schema.String.pipe(\n Schema.annotate({\n description:\n 'The complete task instructions for the subagent, including all context it needs.'\n })\n ),\n subagent_type: Schema.String.pipe(\n Schema.annotate({ description: 'The specialized subagent type to use for this task.' })\n )\n}\n\nexport type SubagentToolParams = {\n readonly description: string\n readonly prompt: string\n readonly subagent_type: string\n readonly model?: string\n readonly reasoning_effort?: AgentReasoningEffort\n readonly background?: boolean\n}\n\nexport type SubagentDefinition = {\n readonly name: string\n readonly description: string\n}\n\nexport type SubagentModelDefinition = {\n readonly id: string\n readonly description: string\n}\n\nexport type SubagentReasoningEffortDefinition = {\n readonly value: AgentReasoningEffort\n readonly description: string\n}\n\nexport type SubagentRuntimeSelectionOptions = {\n /** Opt-in only: inline hosts do not advertise background execution. */\n readonly background?: boolean\n readonly models?: ReadonlyArray<SubagentModelDefinition>\n readonly reasoningEfforts?: ReadonlyArray<SubagentReasoningEffortDefinition>\n}\n\nexport type SubagentContext = {\n readonly subagent?: boolean\n}\n\nexport type SubagentExecutionInput<Context> = {\n readonly call: ToolCall\n readonly context: Context\n readonly params: SubagentToolParams\n}\n\nexport type SubagentToolOptions<Context> = SubagentRuntimeSelectionOptions & {\n readonly subagents: ReadonlyArray<SubagentDefinition>\n readonly isEnabled?: (context: Context) => Effect.Effect<boolean, ToolRegistryError>\n readonly execute: (input: SubagentExecutionInput<Context>) => Effect.Effect<ToolResult, ToolError>\n}\n\nexport type SubagentRunError = {\n readonly code: AgentErrorCode\n readonly message: string\n readonly retryable: boolean\n readonly provider?: ProviderErrorInfo\n}\n\nexport type SubagentRunStatus = 'completed' | 'awaiting_input' | 'error'\n\nexport type SubagentRunResult = {\n readonly status: SubagentRunStatus\n readonly text: string\n readonly usage?: AgentUsage\n readonly turns?: number\n readonly requests?: ReadonlyArray<HitlRequest>\n readonly error?: SubagentRunError\n}\n\nexport type SubagentToolResultInput = {\n readonly callId: string\n readonly output: string\n readonly subagentType: string\n readonly description: string\n readonly subagentRunId: string\n readonly startedAtMs: number\n readonly endedAtMs: number\n readonly model: string\n readonly reasoningEffort?: AgentReasoningEffort\n readonly usage?: AgentUsage\n readonly turns?: number\n readonly status?: SubagentRunStatus\n readonly requests?: ReadonlyArray<HitlRequest>\n readonly error?: SubagentRunError\n readonly isError?: boolean\n}\n\ntype SubagentToolParamsFields = {\n readonly description: string\n readonly prompt: string\n readonly subagent_type: string\n model?: string\n reasoning_effort?: AgentReasoningEffort\n background?: boolean\n}\n\ntype SubagentProviderMetadataFields = {\n readonly provider: string\n readonly kind: ProviderErrorInfo['kind']\n status?: number\n provider_code?: string\n retry_after_ms?: number\n}\n\ntype SubagentUsageInputMetadataFields = {\n readonly total: number\n uncached?: number\n cache_read?: number\n cache_write?: number\n}\n\ntype SubagentUsageOutputMetadataFields = {\n readonly total: number\n text?: number\n reasoning?: number\n}\n\ntype SubagentUsageMetadataFields = {\n readonly input: SubagentUsageInputMetadataFields\n readonly output: SubagentUsageOutputMetadataFields\n}\n\ntype SubagentErrorMetadataFields = {\n readonly code: AgentErrorCode\n readonly message: string\n readonly retryable: boolean\n provider?: SubagentProviderMetadataFields\n}\n\ntype SubagentRunErrorFields = {\n readonly code: AgentErrorCode\n readonly message: string\n readonly retryable: boolean\n provider?: ProviderErrorInfo\n}\n\ntype SubagentRunResultFields = {\n readonly status: SubagentRunStatus\n readonly text: string\n usage?: AgentUsage\n turns?: number\n requests?: ReadonlyArray<HitlRequest>\n error?: SubagentRunErrorFields\n}\n\ntype SubagentToolResultStructuredContentFields = {\n readonly subagent_run_id: string\n readonly subagent_type: string\n readonly description: string\n readonly started_at_ms: number\n readonly ended_at_ms: number\n readonly duration_ms: number\n readonly status: SubagentRunStatus\n readonly model: string\n reasoning_effort?: AgentReasoningEffort\n usage?: SubagentUsageMetadataFields\n turns?: number\n hitl_requests?: ReadonlyArray<HitlRequest>\n error?: SubagentErrorMetadataFields\n}\n\ntype SubagentAcceptedStructuredContentFields = {\n readonly type: 'subagent_accepted'\n readonly status: 'accepted'\n readonly subagent_run_id: string\n readonly workflow_run_id: string\n parent_run_id?: string\n}\n\ntype SubagentAgentInputUsageFields = {\n readonly total: number\n uncached?: number\n cacheRead?: number\n cacheWrite?: number\n}\n\ntype SubagentAgentOutputUsageFields = {\n readonly total: number\n text?: number\n reasoning?: number\n}\n\nconst subagentToolError = (message: string, cause: ToolError['cause']) =>\n new ToolError({\n tool: subagentToolName,\n message,\n cause\n })\n\nconst subagentModelVisibleError = (message: string) =>\n modelVisibleToolError({\n tool: subagentToolName,\n message,\n reason: 'validation'\n })\n\nconst enumRecord = <Value extends string>(\n values: ReadonlyArray<Value>\n): Readonly<Record<string, Value>> => Object.fromEntries(values.map(value => [value, value]))\n\nconst optionalRuntimeSelection = <Value extends string>(input: {\n readonly values: ReadonlyArray<Value>\n readonly description: string\n}) =>\n Schema.optionalKey(\n Schema.Enum(enumRecord(input.values)).pipe(Schema.annotate({ description: input.description }))\n )\n\nconst configuredSubagentToolParams = (options: SubagentRuntimeSelectionOptions) => {\n const fields = {\n ...SubagentToolBaseFields,\n background: Schema.optionalKey(\n Schema.Boolean.pipe(\n Schema.annotate({\n description:\n 'Return an accepted handle immediately; use subagent_status or subagent_wait to read the result.'\n })\n )\n )\n }\n\n const model =\n options.models === undefined || options.models.length === 0\n ? undefined\n : optionalRuntimeSelection({\n values: options.models.map(item => item.id),\n description: 'Model for this subagent. Omit to inherit the host runtime model.'\n })\n\n const reasoningEffort =\n options.reasoningEfforts === undefined || options.reasoningEfforts.length === 0\n ? undefined\n : optionalRuntimeSelection({\n values: options.reasoningEfforts.map(item => item.value),\n description:\n 'Reasoning effort for this subagent. Omit to inherit the host runtime effort.'\n })\n\n if (model !== undefined && reasoningEffort !== undefined) {\n return options.background === true\n ? Schema.Struct({ ...fields, model, reasoning_effort: reasoningEffort })\n : Schema.Struct({ ...SubagentToolBaseFields, model, reasoning_effort: reasoningEffort })\n }\n\n if (model !== undefined) {\n return options.background === true\n ? Schema.Struct({ ...fields, model })\n : Schema.Struct({ ...SubagentToolBaseFields, model })\n }\n\n if (reasoningEffort !== undefined) {\n return options.background === true\n ? Schema.Struct({ ...fields, reasoning_effort: reasoningEffort })\n : Schema.Struct({ ...SubagentToolBaseFields, reasoning_effort: reasoningEffort })\n }\n\n return options.background === true ? Schema.Struct(fields) : Schema.Struct(SubagentToolBaseFields)\n}\n\nconst trimmedSubagentParams = (params: SubagentToolParams): SubagentToolParams => {\n const trimmed: SubagentToolParamsFields = {\n description: params.description.trim(),\n prompt: params.prompt.trim(),\n subagent_type: params.subagent_type.trim()\n }\n\n if (params.background !== undefined) {\n trimmed.background = params.background\n }\n\n if (params.model !== undefined) {\n trimmed.model = params.model\n }\n\n if (params.reasoning_effort !== undefined) {\n trimmed.reasoning_effort = params.reasoning_effort\n }\n\n return trimmed\n}\n\nconst validateSubagentParams = (\n params: SubagentToolParams\n): Effect.Effect<SubagentToolParams, ModelVisibleToolError> => {\n const trimmed = trimmedSubagentParams(params)\n\n if (trimmed.description.length === 0) {\n return Effect.fail(subagentModelVisibleError('description must not be empty'))\n }\n\n if (trimmed.prompt.length === 0) {\n return Effect.fail(subagentModelVisibleError('prompt must not be empty'))\n }\n\n if (trimmed.subagent_type.length === 0) {\n return Effect.fail(subagentModelVisibleError('subagent_type must not be empty'))\n }\n\n return Effect.succeed(trimmed)\n}\n\nconst findSubagent = (subagents: ReadonlyArray<SubagentDefinition>, name: string) =>\n subagents.find(subagent => subagent.name === name)\n\nconst requireKnownSubagent = (\n subagents: ReadonlyArray<SubagentDefinition>,\n name: string\n): Effect.Effect<SubagentDefinition, ModelVisibleToolError> => {\n const subagent = findSubagent(subagents, name)\n\n return subagent === undefined\n ? Effect.fail(subagentModelVisibleError(`Unknown subagent type: ${name}`))\n : Effect.succeed(subagent)\n}\n\nconst subagentDescription = (subagent: SubagentDefinition) =>\n `- ${subagent.name}: ${subagent.description}`\n\nconst modelDescription = (model: SubagentModelDefinition) => `- ${model.id}: ${model.description}`\n\nconst reasoningEffortDescription = (effort: SubagentReasoningEffortDefinition) =>\n `- ${effort.value}: ${effort.description}`\n\nconst subagentToolDescription = (\n options: SubagentRuntimeSelectionOptions & {\n readonly subagents: ReadonlyArray<SubagentDefinition>\n }\n) =>\n [\n 'Launch a new agent to handle complex, multistep tasks autonomously.',\n 'Use this when delegating focused work to a specialized subagent would save context or allow parallel exploration.',\n 'To run subagents in parallel, call this subagent tool multiple times in the same assistant response.',\n 'Yolk runs same-turn subagent calls concurrently automatically.',\n 'A fresh subagent only sees the prompt you provide, so include all required context.',\n 'Subagents can use their normal tools but cannot launch further subagents in v1.',\n options.subagents.length === 0\n ? 'No subagent types are currently available.'\n : `Available subagent types:\\n${options.subagents.map(subagentDescription).join('\\n')}`,\n options.models === undefined || options.models.length === 0\n ? undefined\n : [\n 'Available subagent models:',\n options.models.map(modelDescription).join('\\n'),\n 'Omit model to inherit the host runtime model.'\n ].join('\\n'),\n options.reasoningEfforts === undefined || options.reasoningEfforts.length === 0\n ? undefined\n : [\n 'Available subagent reasoning efforts:',\n options.reasoningEfforts.map(reasoningEffortDescription).join('\\n'),\n 'Omit reasoning_effort to inherit the host runtime effort.'\n ].join('\\n')\n ]\n .filter(section => section !== undefined)\n .join('\\n\\n')\n\nexport const makeSubagentToolRegistration = <Context>(\n options: SubagentToolOptions<Context>\n): ToolRegistration<Context> =>\n makeTool({\n name: subagentToolName,\n description: subagentToolDescription(options),\n parameters: configuredSubagentToolParams(options),\n access: 'read',\n isEnabled: options.isEnabled,\n invalidParamsMessage: error =>\n `Invalid subagent arguments: ${error instanceof Error ? error.message : String(error)}`,\n execute: ({ call, context, params }) =>\n Effect.gen(function* () {\n if (call.name !== subagentToolName) {\n return yield* Effect.fail(\n subagentToolError(`Tool is not configured: ${call.name}`, 'not_found')\n )\n }\n\n const normalizedParams = yield* validateSubagentParams(params)\n yield* requireKnownSubagent(options.subagents, normalizedParams.subagent_type)\n\n return yield* options.execute({ call, context, params: normalizedParams })\n })\n })\n\nexport const makeSubagentToolDef = (\n subagents: ReadonlyArray<SubagentDefinition>,\n runtimeSelections: SubagentRuntimeSelectionOptions = {}\n) =>\n makeSubagentToolRegistration({\n subagents,\n ...runtimeSelections,\n execute: ({ call }) => Effect.succeed(ToolResult.make({ toolCallId: call.id, content: '' }))\n }).def\n\nexport const makeSubagentToolModule = <Context>(\n options: SubagentToolOptions<Context>\n): ToolModule<Context> => ({\n id: subagentToolName,\n tools: [makeSubagentToolRegistration(options)]\n})\n\nexport const makeNonRecursiveSubagentToolModule = <Context extends SubagentContext>(\n options: SubagentToolOptions<Context>\n): ToolModule<Context> =>\n makeSubagentToolModule({\n ...options,\n isEnabled: context =>\n context.subagent === true\n ? Effect.succeed(false)\n : options.isEnabled === undefined\n ? Effect.succeed(true)\n : options.isEnabled(context)\n })\n\nexport const formatSubagentResult = (output: string) =>\n ['<subagent_result>', output, '</subagent_result>'].join('\\n')\n\nexport const subagentToolRunId = makeSubagentRunId\n\nconst latestAssistantText = (messages: ReadonlyArray<AgentMessage>) => {\n const assistant = [...messages]\n .reverse()\n .find(message => Predicate.isTagged(message, 'Assistant'))\n\n return assistant === undefined ? '' : contentText(assistantContent(assistant))\n}\n\nconst subagentProviderMetadata = (provider: ProviderErrorInfo): SubagentProviderMetadataFields => {\n const metadata: SubagentProviderMetadataFields = {\n provider: provider.provider,\n kind: provider.kind\n }\n\n if (provider.status !== undefined) {\n metadata.status = provider.status\n }\n\n if (provider.providerCode !== undefined) {\n metadata.provider_code = provider.providerCode\n }\n\n if (provider.retryAfterMs !== undefined) {\n metadata.retry_after_ms = provider.retryAfterMs\n }\n\n return metadata\n}\n\nconst subagentUsageInputMetadata = (usage: AgentUsage): SubagentUsageInputMetadataFields => {\n const input: SubagentUsageInputMetadataFields = {\n total: usage.input.total\n }\n\n if (usage.input.uncached !== undefined) {\n input.uncached = usage.input.uncached\n }\n\n if (usage.input.cacheRead !== undefined) {\n input.cache_read = usage.input.cacheRead\n }\n\n if (usage.input.cacheWrite !== undefined) {\n input.cache_write = usage.input.cacheWrite\n }\n\n return input\n}\n\nconst subagentUsageOutputMetadata = (usage: AgentUsage): SubagentUsageOutputMetadataFields => {\n const output: SubagentUsageOutputMetadataFields = {\n total: usage.output.total\n }\n\n if (usage.output.text !== undefined) {\n output.text = usage.output.text\n }\n\n if (usage.output.reasoning !== undefined) {\n output.reasoning = usage.output.reasoning\n }\n\n return output\n}\n\nconst subagentUsageMetadata = (usage: AgentUsage): SubagentUsageMetadataFields => ({\n input: subagentUsageInputMetadata(usage),\n output: subagentUsageOutputMetadata(usage)\n})\n\nconst subagentErrorMetadata = (error: SubagentRunError): SubagentErrorMetadataFields => {\n const metadata: SubagentErrorMetadataFields = {\n code: error.code,\n message: error.message,\n retryable: error.retryable\n }\n\n if (error.provider !== undefined) {\n metadata.provider = subagentProviderMetadata(error.provider)\n }\n\n return metadata\n}\n\nconst SubagentUsageMetadata = Schema.Struct({\n input: Schema.Struct({\n total: Schema.Number,\n uncached: Schema.optional(Schema.Number),\n cache_read: Schema.optional(Schema.Number),\n cache_write: Schema.optional(Schema.Number)\n }),\n output: Schema.Struct({\n total: Schema.Number,\n text: Schema.optional(Schema.Number),\n reasoning: Schema.optional(Schema.Number)\n })\n})\n\nconst SubagentStructuredUsage = Schema.Struct({\n subagent_run_id: Schema.String,\n subagent_type: Schema.String,\n usage: SubagentUsageMetadata\n})\n\nconst subagentAgentInputUsageFromMetadata = (\n usage: SubagentUsageMetadataFields\n): SubagentAgentInputUsageFields => {\n const input: SubagentAgentInputUsageFields = {\n total: usage.input.total\n }\n\n if (usage.input.uncached !== undefined) {\n input.uncached = usage.input.uncached\n }\n\n if (usage.input.cache_read !== undefined) {\n input.cacheRead = usage.input.cache_read\n }\n\n if (usage.input.cache_write !== undefined) {\n input.cacheWrite = usage.input.cache_write\n }\n\n return input\n}\n\nconst subagentAgentOutputUsageFromMetadata = (\n usage: SubagentUsageMetadataFields\n): SubagentAgentOutputUsageFields => {\n const output: SubagentAgentOutputUsageFields = {\n total: usage.output.total\n }\n\n if (usage.output.text !== undefined) {\n output.text = usage.output.text\n }\n\n if (usage.output.reasoning !== undefined) {\n output.reasoning = usage.output.reasoning\n }\n\n return output\n}\n\nexport const subagentUsageFromToolResult = (result: ToolResult): AgentUsage | undefined => {\n if (\n !Schema.is(SubagentStructuredUsage)(result.structuredContent) ||\n result.structuredContent.subagent_run_id !== subagentToolRunId(result.toolCallId)\n ) {\n return undefined\n }\n\n const usage = result.structuredContent.usage\n\n return AgentUsage.make({\n input: subagentAgentInputUsageFromMetadata(usage),\n output: subagentAgentOutputUsageFromMetadata(usage)\n })\n}\n\nconst subagentRunErrorFromAgentError = (error: SubagentRunError): SubagentRunErrorFields => {\n const result: SubagentRunErrorFields = {\n code: error.code,\n message: error.message,\n retryable: error.retryable\n }\n\n if (error.provider !== undefined) {\n result.provider = error.provider\n }\n\n return result\n}\n\nexport const subagentResultFromEvents = (events: ReadonlyArray<AgentEvent>): SubagentRunResult => {\n const terminal = [...events].reverse().find(isTerminalAgentEvent)\n const usageUpdates = events.filter(event => Predicate.isTagged(event, 'UsageUpdate'))\n\n const usage = usageUpdates.reduce(\n (total, event) => addAgentUsage(total, event.usage),\n zeroAgentUsage\n )\n\n const turns = events.reduce(\n (latest, event) =>\n Predicate.isTagged(event, 'TurnStart') ? Math.max(latest, event.turn) : latest,\n 0\n )\n\n if (terminal === undefined) {\n const message = 'Subagent stream ended without a terminal event.'\n\n const result: SubagentRunResultFields = {\n status: 'error',\n text: `Subagent failed: ${message}`\n }\n\n if (usageUpdates.length !== 0) {\n result.usage = usage\n }\n\n if (turns !== 0) {\n result.turns = turns\n }\n\n result.error = {\n code: 'invalid_response',\n message,\n retryable: false\n }\n\n return result\n }\n\n if (Predicate.isTagged(terminal, 'AgentError')) {\n const result: SubagentRunResultFields = {\n status: 'error',\n text: `Subagent failed: ${terminal.message}`\n }\n\n if (usageUpdates.length !== 0) {\n result.usage = usage\n }\n\n if (turns !== 0) {\n result.turns = turns\n }\n\n result.error = subagentRunErrorFromAgentError(terminal)\n\n return result\n }\n\n const text = latestAssistantText(terminal.messages).trim()\n\n const result: SubagentRunResultFields = {\n status: Predicate.isTagged(terminal, 'AgentAwaitingInput') ? 'awaiting_input' : 'completed',\n text: text.length === 0 ? 'Subagent completed without a final text response.' : text,\n usage: terminal.usage,\n turns: terminal.turns\n }\n\n if (Predicate.isTagged(terminal, 'AgentAwaitingInput')) {\n result.requests = terminal.requests\n }\n\n return result\n}\n\nexport const subagentResultText = (events: ReadonlyArray<AgentEvent>) =>\n subagentResultFromEvents(events).text\n\nconst subagentToolResultStructuredContent = (\n input: SubagentToolResultInput,\n status: SubagentRunStatus\n): SubagentToolResultStructuredContentFields => {\n const structuredContent: SubagentToolResultStructuredContentFields = {\n subagent_run_id: input.subagentRunId,\n subagent_type: input.subagentType,\n description: input.description,\n started_at_ms: input.startedAtMs,\n ended_at_ms: input.endedAtMs,\n duration_ms: Math.max(0, input.endedAtMs - input.startedAtMs),\n status,\n model: input.model\n }\n\n if (input.reasoningEffort !== undefined) {\n structuredContent.reasoning_effort = input.reasoningEffort\n }\n\n if (input.usage !== undefined) {\n structuredContent.usage = subagentUsageMetadata(input.usage)\n }\n\n if (input.turns !== undefined) {\n structuredContent.turns = input.turns\n }\n\n if (input.requests !== undefined) {\n structuredContent.hitl_requests = input.requests\n }\n\n if (input.error !== undefined) {\n structuredContent.error = subagentErrorMetadata(input.error)\n }\n\n return structuredContent\n}\n\nexport const makeSubagentToolResult = (input: SubagentToolResultInput) => {\n const isError = input.isError === true || input.error !== undefined || input.status === 'error'\n const status = isError ? 'error' : (input.status ?? 'completed')\n\n return ToolResult.make({\n toolCallId: input.callId,\n content: formatSubagentResult(input.output),\n isError: isError ? true : undefined,\n structuredContent: subagentToolResultStructuredContent(input, status)\n })\n}\n\nconst subagentAcceptedStructuredContent = (input: {\n readonly callId: string\n readonly workflowRunId: string\n readonly parentRunId?: string\n}): SubagentAcceptedStructuredContentFields => {\n const structuredContent: SubagentAcceptedStructuredContentFields = {\n type: 'subagent_accepted',\n status: 'accepted',\n subagent_run_id: makeSubagentRunId(input.callId),\n workflow_run_id: input.workflowRunId\n }\n\n if (input.parentRunId !== undefined) {\n structuredContent.parent_run_id = input.parentRunId\n }\n\n return structuredContent\n}\n\n/** Acceptance is a tool completion, never a child completion or usage delta. */\nexport const makeSubagentAcceptedToolResult = (input: {\n readonly callId: string\n readonly workflowRunId: string\n readonly parentRunId?: string\n}) =>\n ToolResult.make({\n toolCallId: input.callId,\n content: `Subagent accepted. Use subagent_status or subagent_wait with tool_call_id=${input.callId}${input.parentRunId === undefined ? '' : ` and parent_run_id=${input.parentRunId}`}.`,\n structuredContent: subagentAcceptedStructuredContent(input)\n })\n"],"mappings":";;;;;;;AAgCA,MAAM,yBAAyB;CAC7B,aAAaA,SAAO,OAAO,KACzBA,SAAO,SAAS,EAAE,aAAa,4CAA4C,CAAC,CAC9E;CACA,QAAQA,SAAO,OAAO,KACpBA,SAAO,SAAS,EACd,aACE,mFACJ,CAAC,CACH;CACA,eAAeA,SAAO,OAAO,KAC3BA,SAAO,SAAS,EAAE,aAAa,sDAAsD,CAAC,CACxF;AACF;AAoLA,MAAM,qBAAqB,SAAiB,UAC1C,IAAI,UAAU;CACZ,MAAM;CACN;CACA;AACF,CAAC;AAEH,MAAM,6BAA6B,YACjC,sBAAsB;CACpB,MAAM;CACN;CACA,QAAQ;AACV,CAAC;AAEH,MAAM,cACJ,WACoC,OAAO,YAAY,OAAO,KAAI,UAAS,CAAC,OAAO,KAAK,CAAC,CAAC;AAE5F,MAAM,4BAAkD,UAItDA,SAAO,YACLA,SAAO,KAAK,WAAW,MAAM,MAAM,CAAC,EAAE,KAAKA,SAAO,SAAS,EAAE,aAAa,MAAM,YAAY,CAAC,CAAC,CAChG;AAEF,MAAM,gCAAgC,YAA6C;CACjF,MAAM,SAAS;EACb,GAAG;EACH,YAAYA,SAAO,YACjBA,SAAO,QAAQ,KACbA,SAAO,SAAS,EACd,aACE,kGACJ,CAAC,CACH,CACF;CACF;CAEA,MAAM,QACJ,QAAQ,WAAW,KAAA,KAAa,QAAQ,OAAO,WAAW,IACtD,KAAA,IACA,yBAAyB;EACvB,QAAQ,QAAQ,OAAO,KAAI,SAAQ,KAAK,EAAE;EAC1C,aAAa;CACf,CAAC;CAEP,MAAM,kBACJ,QAAQ,qBAAqB,KAAA,KAAa,QAAQ,iBAAiB,WAAW,IAC1E,KAAA,IACA,yBAAyB;EACvB,QAAQ,QAAQ,iBAAiB,KAAI,SAAQ,KAAK,KAAK;EACvD,aACE;CACJ,CAAC;CAEP,IAAI,UAAU,KAAA,KAAa,oBAAoB,KAAA,GAC7C,OAAO,QAAQ,eAAe,OAC1BA,SAAO,OAAO;EAAE,GAAG;EAAQ;EAAO,kBAAkB;CAAgB,CAAC,IACrEA,SAAO,OAAO;EAAE,GAAG;EAAwB;EAAO,kBAAkB;CAAgB,CAAC;CAG3F,IAAI,UAAU,KAAA,GACZ,OAAO,QAAQ,eAAe,OAC1BA,SAAO,OAAO;EAAE,GAAG;EAAQ;CAAM,CAAC,IAClCA,SAAO,OAAO;EAAE,GAAG;EAAwB;CAAM,CAAC;CAGxD,IAAI,oBAAoB,KAAA,GACtB,OAAO,QAAQ,eAAe,OAC1BA,SAAO,OAAO;EAAE,GAAG;EAAQ,kBAAkB;CAAgB,CAAC,IAC9DA,SAAO,OAAO;EAAE,GAAG;EAAwB,kBAAkB;CAAgB,CAAC;CAGpF,OAAO,QAAQ,eAAe,OAAOA,SAAO,OAAO,MAAM,IAAIA,SAAO,OAAO,sBAAsB;AACnG;AAEA,MAAM,yBAAyB,WAAmD;CAChF,MAAM,UAAoC;EACxC,aAAa,OAAO,YAAY,KAAK;EACrC,QAAQ,OAAO,OAAO,KAAK;EAC3B,eAAe,OAAO,cAAc,KAAK;CAC3C;CAEA,IAAI,OAAO,eAAe,KAAA,GACxB,QAAQ,aAAa,OAAO;CAG9B,IAAI,OAAO,UAAU,KAAA,GACnB,QAAQ,QAAQ,OAAO;CAGzB,IAAI,OAAO,qBAAqB,KAAA,GAC9B,QAAQ,mBAAmB,OAAO;CAGpC,OAAO;AACT;AAEA,MAAM,0BACJ,WAC6D;CAC7D,MAAM,UAAU,sBAAsB,MAAM;CAE5C,IAAI,QAAQ,YAAY,WAAW,GACjC,OAAO,OAAO,KAAK,0BAA0B,+BAA+B,CAAC;CAG/E,IAAI,QAAQ,OAAO,WAAW,GAC5B,OAAO,OAAO,KAAK,0BAA0B,0BAA0B,CAAC;CAG1E,IAAI,QAAQ,cAAc,WAAW,GACnC,OAAO,OAAO,KAAK,0BAA0B,iCAAiC,CAAC;CAGjF,OAAO,OAAO,QAAQ,OAAO;AAC/B;AAEA,MAAM,gBAAgB,WAA8C,SAClE,UAAU,MAAK,aAAY,SAAS,SAAS,IAAI;AAEnD,MAAM,wBACJ,WACA,SAC6D;CAC7D,MAAM,WAAW,aAAa,WAAW,IAAI;CAE7C,OAAO,aAAa,KAAA,IAChB,OAAO,KAAK,0BAA0B,0BAA0B,MAAM,CAAC,IACvE,OAAO,QAAQ,QAAQ;AAC7B;AAEA,MAAM,uBAAuB,aAC3B,KAAK,SAAS,KAAK,IAAI,SAAS;AAElC,MAAM,oBAAoB,UAAmC,KAAK,MAAM,GAAG,IAAI,MAAM;AAErF,MAAM,8BAA8B,WAClC,KAAK,OAAO,MAAM,IAAI,OAAO;AAE/B,MAAM,2BACJ,YAIA;CACE;CACA;CACA;CACA;CACA;CACA;CACA,QAAQ,UAAU,WAAW,IACzB,+CACA,8BAA8B,QAAQ,UAAU,IAAI,mBAAmB,EAAE,KAAK,IAAI;CACtF,QAAQ,WAAW,KAAA,KAAa,QAAQ,OAAO,WAAW,IACtD,KAAA,IACA;EACE;EACA,QAAQ,OAAO,IAAI,gBAAgB,EAAE,KAAK,IAAI;EAC9C;CACF,EAAE,KAAK,IAAI;CACf,QAAQ,qBAAqB,KAAA,KAAa,QAAQ,iBAAiB,WAAW,IAC1E,KAAA,IACA;EACE;EACA,QAAQ,iBAAiB,IAAI,0BAA0B,EAAE,KAAK,IAAI;EAClE;CACF,EAAE,KAAK,IAAI;AACjB,EACG,QAAO,YAAW,YAAY,KAAA,CAAS,EACvC,KAAK,MAAM;AAEhB,MAAa,gCACX,YAEA,SAAS;CACP,MAAM;CACN,aAAa,wBAAwB,OAAO;CAC5C,YAAY,6BAA6B,OAAO;CAChD,QAAQ;CACR,WAAW,QAAQ;CACnB,uBAAsB,UACpB,+BAA+B,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;CACtF,UAAU,EAAE,MAAM,SAAS,aACzB,OAAO,IAAI,aAAa;EACtB,IAAI,KAAK,SAAA,YACP,OAAO,OAAO,OAAO,KACnB,kBAAkB,2BAA2B,KAAK,QAAQ,WAAW,CACvE;EAGF,MAAM,mBAAmB,OAAO,uBAAuB,MAAM;EAC7D,OAAO,qBAAqB,QAAQ,WAAW,iBAAiB,aAAa;EAE7E,OAAO,OAAO,QAAQ,QAAQ;GAAE;GAAM;GAAS,QAAQ;EAAiB,CAAC;CAC3E,CAAC;AACL,CAAC;AAEH,MAAa,uBACX,WACA,oBAAqD,CAAC,MAEtD,6BAA6B;CAC3B;CACA,GAAG;CACH,UAAU,EAAE,WAAW,OAAO,QAAQ,WAAW,KAAK;EAAE,YAAY,KAAK;EAAI,SAAS;CAAG,CAAC,CAAC;AAC7F,CAAC,EAAE;AAEL,MAAa,0BACX,aACyB;CACzB,IAAI;CACJ,OAAO,CAAC,6BAA6B,OAAO,CAAC;AAC/C;AAEA,MAAa,sCACX,YAEA,uBAAuB;CACrB,GAAG;CACH,YAAW,YACT,QAAQ,aAAa,OACjB,OAAO,QAAQ,KAAK,IACpB,QAAQ,cAAc,KAAA,IACpB,OAAO,QAAQ,IAAI,IACnB,QAAQ,UAAU,OAAO;AACnC,CAAC;AAEH,MAAa,wBAAwB,WACnC;CAAC;CAAqB;CAAQ;AAAoB,EAAE,KAAK,IAAI;AAE/D,MAAa,oBAAoB;AAEjC,MAAM,uBAAuB,aAA0C;CACrE,MAAM,YAAY,CAAC,GAAG,QAAQ,EAC3B,QAAQ,EACR,MAAK,YAAW,UAAU,SAAS,SAAS,WAAW,CAAC;CAE3D,OAAO,cAAc,KAAA,IAAY,KAAK,YAAY,iBAAiB,SAAS,CAAC;AAC/E;AAEA,MAAM,4BAA4B,aAAgE;CAChG,MAAM,WAA2C;EAC/C,UAAU,SAAS;EACnB,MAAM,SAAS;CACjB;CAEA,IAAI,SAAS,WAAW,KAAA,GACtB,SAAS,SAAS,SAAS;CAG7B,IAAI,SAAS,iBAAiB,KAAA,GAC5B,SAAS,gBAAgB,SAAS;CAGpC,IAAI,SAAS,iBAAiB,KAAA,GAC5B,SAAS,iBAAiB,SAAS;CAGrC,OAAO;AACT;AAEA,MAAM,8BAA8B,UAAwD;CAC1F,MAAM,QAA0C,EAC9C,OAAO,MAAM,MAAM,MACrB;CAEA,IAAI,MAAM,MAAM,aAAa,KAAA,GAC3B,MAAM,WAAW,MAAM,MAAM;CAG/B,IAAI,MAAM,MAAM,cAAc,KAAA,GAC5B,MAAM,aAAa,MAAM,MAAM;CAGjC,IAAI,MAAM,MAAM,eAAe,KAAA,GAC7B,MAAM,cAAc,MAAM,MAAM;CAGlC,OAAO;AACT;AAEA,MAAM,+BAA+B,UAAyD;CAC5F,MAAM,SAA4C,EAChD,OAAO,MAAM,OAAO,MACtB;CAEA,IAAI,MAAM,OAAO,SAAS,KAAA,GACxB,OAAO,OAAO,MAAM,OAAO;CAG7B,IAAI,MAAM,OAAO,cAAc,KAAA,GAC7B,OAAO,YAAY,MAAM,OAAO;CAGlC,OAAO;AACT;AAEA,MAAM,yBAAyB,WAAoD;CACjF,OAAO,2BAA2B,KAAK;CACvC,QAAQ,4BAA4B,KAAK;AAC3C;AAEA,MAAM,yBAAyB,UAAyD;CACtF,MAAM,WAAwC;EAC5C,MAAM,MAAM;EACZ,SAAS,MAAM;EACf,WAAW,MAAM;CACnB;CAEA,IAAI,MAAM,aAAa,KAAA,GACrB,SAAS,WAAW,yBAAyB,MAAM,QAAQ;CAG7D,OAAO;AACT;AAEA,MAAM,wBAAwBA,SAAO,OAAO;CAC1C,OAAOA,SAAO,OAAO;EACnB,OAAOA,SAAO;EACd,UAAUA,SAAO,SAASA,SAAO,MAAM;EACvC,YAAYA,SAAO,SAASA,SAAO,MAAM;EACzC,aAAaA,SAAO,SAASA,SAAO,MAAM;CAC5C,CAAC;CACD,QAAQA,SAAO,OAAO;EACpB,OAAOA,SAAO;EACd,MAAMA,SAAO,SAASA,SAAO,MAAM;EACnC,WAAWA,SAAO,SAASA,SAAO,MAAM;CAC1C,CAAC;AACH,CAAC;AAED,MAAM,0BAA0BA,SAAO,OAAO;CAC5C,iBAAiBA,SAAO;CACxB,eAAeA,SAAO;CACtB,OAAO;AACT,CAAC;AAED,MAAM,uCACJ,UACkC;CAClC,MAAM,QAAuC,EAC3C,OAAO,MAAM,MAAM,MACrB;CAEA,IAAI,MAAM,MAAM,aAAa,KAAA,GAC3B,MAAM,WAAW,MAAM,MAAM;CAG/B,IAAI,MAAM,MAAM,eAAe,KAAA,GAC7B,MAAM,YAAY,MAAM,MAAM;CAGhC,IAAI,MAAM,MAAM,gBAAgB,KAAA,GAC9B,MAAM,aAAa,MAAM,MAAM;CAGjC,OAAO;AACT;AAEA,MAAM,wCACJ,UACmC;CACnC,MAAM,SAAyC,EAC7C,OAAO,MAAM,OAAO,MACtB;CAEA,IAAI,MAAM,OAAO,SAAS,KAAA,GACxB,OAAO,OAAO,MAAM,OAAO;CAG7B,IAAI,MAAM,OAAO,cAAc,KAAA,GAC7B,OAAO,YAAY,MAAM,OAAO;CAGlC,OAAO;AACT;AAEA,MAAa,+BAA+B,WAA+C;CACzF,IACE,CAACA,SAAO,GAAG,uBAAuB,EAAE,OAAO,iBAAiB,KAC5D,OAAO,kBAAkB,oBAAoB,kBAAkB,OAAO,UAAU,GAEhF;CAGF,MAAM,QAAQ,OAAO,kBAAkB;CAEvC,OAAO,WAAW,KAAK;EACrB,OAAO,oCAAoC,KAAK;EAChD,QAAQ,qCAAqC,KAAK;CACpD,CAAC;AACH;AAEA,MAAM,kCAAkC,UAAoD;CAC1F,MAAM,SAAiC;EACrC,MAAM,MAAM;EACZ,SAAS,MAAM;EACf,WAAW,MAAM;CACnB;CAEA,IAAI,MAAM,aAAa,KAAA,GACrB,OAAO,WAAW,MAAM;CAG1B,OAAO;AACT;AAEA,MAAa,4BAA4B,WAAyD;CAChG,MAAM,WAAW,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,KAAK,oBAAoB;CAChE,MAAM,eAAe,OAAO,QAAO,UAAS,UAAU,SAAS,OAAO,aAAa,CAAC;CAEpF,MAAM,QAAQ,aAAa,QACxB,OAAO,UAAU,cAAc,OAAO,MAAM,KAAK,GAClD,cACF;CAEA,MAAM,QAAQ,OAAO,QAClB,QAAQ,UACP,UAAU,SAAS,OAAO,WAAW,IAAI,KAAK,IAAI,QAAQ,MAAM,IAAI,IAAI,QAC1E,CACF;CAEA,IAAI,aAAa,KAAA,GAAW;EAC1B,MAAM,UAAU;EAEhB,MAAM,SAAkC;GACtC,QAAQ;GACR,MAAM,oBAAoB;EAC5B;EAEA,IAAI,aAAa,WAAW,GAC1B,OAAO,QAAQ;EAGjB,IAAI,UAAU,GACZ,OAAO,QAAQ;EAGjB,OAAO,QAAQ;GACb,MAAM;GACN;GACA,WAAW;EACb;EAEA,OAAO;CACT;CAEA,IAAI,UAAU,SAAS,UAAU,YAAY,GAAG;EAC9C,MAAM,SAAkC;GACtC,QAAQ;GACR,MAAM,oBAAoB,SAAS;EACrC;EAEA,IAAI,aAAa,WAAW,GAC1B,OAAO,QAAQ;EAGjB,IAAI,UAAU,GACZ,OAAO,QAAQ;EAGjB,OAAO,QAAQ,+BAA+B,QAAQ;EAEtD,OAAO;CACT;CAEA,MAAM,OAAO,oBAAoB,SAAS,QAAQ,EAAE,KAAK;CAEzD,MAAM,SAAkC;EACtC,QAAQ,UAAU,SAAS,UAAU,oBAAoB,IAAI,mBAAmB;EAChF,MAAM,KAAK,WAAW,IAAI,sDAAsD;EAChF,OAAO,SAAS;EAChB,OAAO,SAAS;CAClB;CAEA,IAAI,UAAU,SAAS,UAAU,oBAAoB,GACnD,OAAO,WAAW,SAAS;CAG7B,OAAO;AACT;AAEA,MAAa,sBAAsB,WACjC,yBAAyB,MAAM,EAAE;AAEnC,MAAM,uCACJ,OACA,WAC8C;CAC9C,MAAM,oBAA+D;EACnE,iBAAiB,MAAM;EACvB,eAAe,MAAM;EACrB,aAAa,MAAM;EACnB,eAAe,MAAM;EACrB,aAAa,MAAM;EACnB,aAAa,KAAK,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW;EAC5D;EACA,OAAO,MAAM;CACf;CAEA,IAAI,MAAM,oBAAoB,KAAA,GAC5B,kBAAkB,mBAAmB,MAAM;CAG7C,IAAI,MAAM,UAAU,KAAA,GAClB,kBAAkB,QAAQ,sBAAsB,MAAM,KAAK;CAG7D,IAAI,MAAM,UAAU,KAAA,GAClB,kBAAkB,QAAQ,MAAM;CAGlC,IAAI,MAAM,aAAa,KAAA,GACrB,kBAAkB,gBAAgB,MAAM;CAG1C,IAAI,MAAM,UAAU,KAAA,GAClB,kBAAkB,QAAQ,sBAAsB,MAAM,KAAK;CAG7D,OAAO;AACT;AAEA,MAAa,0BAA0B,UAAmC;CACxE,MAAM,UAAU,MAAM,YAAY,QAAQ,MAAM,UAAU,KAAA,KAAa,MAAM,WAAW;CACxF,MAAM,SAAS,UAAU,UAAW,MAAM,UAAU;CAEpD,OAAO,WAAW,KAAK;EACrB,YAAY,MAAM;EAClB,SAAS,qBAAqB,MAAM,MAAM;EAC1C,SAAS,UAAU,OAAO,KAAA;EAC1B,mBAAmB,oCAAoC,OAAO,MAAM;CACtE,CAAC;AACH;AAEA,MAAM,qCAAqC,UAII;CAC7C,MAAM,oBAA6D;EACjE,MAAM;EACN,QAAQ;EACR,iBAAiB,kBAAkB,MAAM,MAAM;EAC/C,iBAAiB,MAAM;CACzB;CAEA,IAAI,MAAM,gBAAgB,KAAA,GACxB,kBAAkB,gBAAgB,MAAM;CAG1C,OAAO;AACT;;AAGA,MAAa,kCAAkC,UAK7C,WAAW,KAAK;CACd,YAAY,MAAM;CAClB,SAAS,6EAA6E,MAAM,SAAS,MAAM,gBAAgB,KAAA,IAAY,KAAK,sBAAsB,MAAM,cAAc;CACtL,mBAAmB,kCAAkC,KAAK;AAC5D,CAAC"}
|
|
1
|
+
{"version":3,"file":"subagent.mjs","names":["Schema"],"sources":["../../src/tools/subagent.ts"],"sourcesContent":["import { Effect, Predicate } from 'effect'\nimport * as Schema from 'effect/Schema'\nimport { ToolError } from '@yolk-sdk/agent/loop'\nimport {\n addAgentUsage,\n assistantContent,\n AgentUsage,\n contentText,\n isTerminalAgentEvent,\n makeSubagentRunId,\n ToolResult,\n type AgentErrorCode,\n type AgentEvent,\n type AgentMessage,\n type AgentReasoningEffort,\n type HitlRequest,\n type ProviderErrorInfo,\n type ToolCall,\n zeroAgentUsage\n} from '@yolk-sdk/agent/protocol'\nimport { subagentToolName } from '../protocol/tool.ts'\nimport {\n makeTool,\n modelVisibleToolError,\n type ModelVisibleToolError,\n type ToolModule,\n type ToolRegistration,\n type ToolRegistryError\n} from './registry.ts'\n\nexport { subagentToolName }\n\nconst SubagentToolBaseFields = {\n description: Schema.String.pipe(\n Schema.annotate({ description: 'A short 3-5 word description of the task.' })\n ),\n prompt: Schema.String.pipe(\n Schema.annotate({\n description:\n 'The complete task instructions for the subagent, including all context it needs.'\n })\n ),\n subagent_type: Schema.String.pipe(\n Schema.annotate({ description: 'The specialized subagent type to use for this task.' })\n )\n}\n\nexport type SubagentToolParams = {\n readonly description: string\n readonly prompt: string\n readonly subagent_type: string\n readonly model?: string\n readonly reasoning_effort?: AgentReasoningEffort\n readonly background?: boolean\n}\n\nexport type SubagentDefinition = {\n readonly name: string\n readonly description: string\n}\n\nexport type SubagentModelDefinition = {\n readonly id: string\n readonly description: string\n}\n\nexport type SubagentReasoningEffortDefinition = {\n readonly value: AgentReasoningEffort\n readonly description: string\n}\n\nexport type SubagentRuntimeSelectionOptions = {\n /** Opt-in only: inline hosts do not advertise background execution. */\n readonly background?: boolean\n readonly models?: ReadonlyArray<SubagentModelDefinition>\n readonly reasoningEfforts?: ReadonlyArray<SubagentReasoningEffortDefinition>\n}\n\nexport type SubagentContext = {\n readonly subagent?: boolean\n}\n\nexport type SubagentExecutionInput<Context> = {\n readonly call: ToolCall\n readonly context: Context\n readonly params: SubagentToolParams\n}\n\nexport type SubagentToolOptions<Context> = SubagentRuntimeSelectionOptions & {\n readonly subagents: ReadonlyArray<SubagentDefinition>\n readonly isEnabled?: (context: Context) => Effect.Effect<boolean, ToolRegistryError>\n readonly execute: (input: SubagentExecutionInput<Context>) => Effect.Effect<ToolResult, ToolError>\n}\n\nexport type SubagentRunError = {\n readonly code: AgentErrorCode\n readonly message: string\n readonly retryable: boolean\n readonly provider?: ProviderErrorInfo\n}\n\nexport type SubagentRunStatus = 'completed' | 'awaiting_input' | 'error'\n\nexport type SubagentRunResult = {\n readonly status: SubagentRunStatus\n readonly text: string\n readonly usage?: AgentUsage\n readonly turns?: number\n readonly requests?: ReadonlyArray<HitlRequest>\n readonly error?: SubagentRunError\n}\n\nexport type SubagentToolResultInput = {\n readonly callId: string\n readonly output: string\n readonly subagentType: string\n readonly description: string\n readonly subagentRunId: string\n readonly startedAtMs: number\n readonly endedAtMs: number\n readonly model: string\n readonly reasoningEffort?: AgentReasoningEffort\n readonly usage?: AgentUsage\n readonly turns?: number\n readonly status?: SubagentRunStatus\n readonly requests?: ReadonlyArray<HitlRequest>\n readonly error?: SubagentRunError\n readonly isError?: boolean\n}\n\ntype SubagentToolParamsFields = {\n readonly description: string\n readonly prompt: string\n readonly subagent_type: string\n model?: string\n reasoning_effort?: AgentReasoningEffort\n background?: boolean\n}\n\ntype SubagentProviderMetadataFields = {\n readonly provider: string\n readonly kind: ProviderErrorInfo['kind']\n status?: number\n provider_code?: string\n retry_after_ms?: number\n}\n\ntype SubagentUsageInputMetadataFields = {\n readonly total: number\n uncached?: number\n cache_read?: number\n cache_write?: number\n}\n\ntype SubagentUsageOutputMetadataFields = {\n readonly total: number\n text?: number\n reasoning?: number\n}\n\ntype SubagentUsageMetadataFields = {\n readonly input: SubagentUsageInputMetadataFields\n readonly output: SubagentUsageOutputMetadataFields\n}\n\ntype SubagentErrorMetadataFields = {\n readonly code: AgentErrorCode\n readonly message: string\n readonly retryable: boolean\n provider?: SubagentProviderMetadataFields\n}\n\ntype SubagentRunErrorFields = {\n readonly code: AgentErrorCode\n readonly message: string\n readonly retryable: boolean\n provider?: ProviderErrorInfo\n}\n\ntype SubagentRunResultFields = {\n readonly status: SubagentRunStatus\n readonly text: string\n usage?: AgentUsage\n turns?: number\n requests?: ReadonlyArray<HitlRequest>\n error?: SubagentRunErrorFields\n}\n\ntype SubagentToolResultStructuredContentFields = {\n readonly subagent_run_id: string\n readonly subagent_type: string\n readonly description: string\n readonly started_at_ms: number\n readonly ended_at_ms: number\n readonly duration_ms: number\n readonly status: SubagentRunStatus\n readonly model: string\n reasoning_effort?: AgentReasoningEffort\n usage?: SubagentUsageMetadataFields\n turns?: number\n hitl_requests?: ReadonlyArray<HitlRequest>\n error?: SubagentErrorMetadataFields\n}\n\ntype SubagentAcceptedStructuredContentFields = {\n readonly type: 'subagent_accepted'\n readonly status: 'accepted'\n readonly subagent_run_id: string\n readonly workflow_run_id: string\n parent_run_id?: string\n}\n\ntype SubagentAgentInputUsageFields = {\n readonly total: number\n uncached?: number\n cacheRead?: number\n cacheWrite?: number\n}\n\ntype SubagentAgentOutputUsageFields = {\n readonly total: number\n text?: number\n reasoning?: number\n}\n\nconst subagentToolError = (message: string, cause: ToolError['cause']) =>\n new ToolError({\n tool: subagentToolName,\n message,\n cause\n })\n\nconst subagentModelVisibleError = (message: string) =>\n modelVisibleToolError({\n tool: subagentToolName,\n message,\n reason: 'validation'\n })\n\nconst enumRecord = <Value extends string>(\n values: ReadonlyArray<Value>\n): Readonly<Record<string, Value>> => Object.fromEntries(values.map(value => [value, value]))\n\nconst optionalRuntimeSelection = <Value extends string>(input: {\n readonly values: ReadonlyArray<Value>\n readonly description: string\n}) =>\n Schema.optionalKey(\n Schema.Enum(enumRecord(input.values)).pipe(Schema.annotate({ description: input.description }))\n )\n\nconst configuredSubagentToolParams = (options: SubagentRuntimeSelectionOptions) => {\n const fields = {\n ...SubagentToolBaseFields,\n background: Schema.optionalKey(\n Schema.Boolean.pipe(\n Schema.annotate({\n description:\n 'Return an accepted handle immediately, not the completed result. Completion delivery and observation follow the host instructions.'\n })\n )\n )\n }\n\n const model =\n options.models === undefined || options.models.length === 0\n ? undefined\n : optionalRuntimeSelection({\n values: options.models.map(item => item.id),\n description: 'Model for this subagent. Omit to inherit the host runtime model.'\n })\n\n const reasoningEffort =\n options.reasoningEfforts === undefined || options.reasoningEfforts.length === 0\n ? undefined\n : optionalRuntimeSelection({\n values: options.reasoningEfforts.map(item => item.value),\n description:\n 'Reasoning effort for this subagent. Omit to inherit the host runtime effort.'\n })\n\n if (model !== undefined && reasoningEffort !== undefined) {\n return options.background === true\n ? Schema.Struct({ ...fields, model, reasoning_effort: reasoningEffort })\n : Schema.Struct({ ...SubagentToolBaseFields, model, reasoning_effort: reasoningEffort })\n }\n\n if (model !== undefined) {\n return options.background === true\n ? Schema.Struct({ ...fields, model })\n : Schema.Struct({ ...SubagentToolBaseFields, model })\n }\n\n if (reasoningEffort !== undefined) {\n return options.background === true\n ? Schema.Struct({ ...fields, reasoning_effort: reasoningEffort })\n : Schema.Struct({ ...SubagentToolBaseFields, reasoning_effort: reasoningEffort })\n }\n\n return options.background === true ? Schema.Struct(fields) : Schema.Struct(SubagentToolBaseFields)\n}\n\nconst trimmedSubagentParams = (params: SubagentToolParams): SubagentToolParams => {\n const trimmed: SubagentToolParamsFields = {\n description: params.description.trim(),\n prompt: params.prompt.trim(),\n subagent_type: params.subagent_type.trim()\n }\n\n if (params.background !== undefined) {\n trimmed.background = params.background\n }\n\n if (params.model !== undefined) {\n trimmed.model = params.model\n }\n\n if (params.reasoning_effort !== undefined) {\n trimmed.reasoning_effort = params.reasoning_effort\n }\n\n return trimmed\n}\n\nconst validateSubagentParams = (\n params: SubagentToolParams\n): Effect.Effect<SubagentToolParams, ModelVisibleToolError> => {\n const trimmed = trimmedSubagentParams(params)\n\n if (trimmed.description.length === 0) {\n return Effect.fail(subagentModelVisibleError('description must not be empty'))\n }\n\n if (trimmed.prompt.length === 0) {\n return Effect.fail(subagentModelVisibleError('prompt must not be empty'))\n }\n\n if (trimmed.subagent_type.length === 0) {\n return Effect.fail(subagentModelVisibleError('subagent_type must not be empty'))\n }\n\n return Effect.succeed(trimmed)\n}\n\nconst findSubagent = (subagents: ReadonlyArray<SubagentDefinition>, name: string) =>\n subagents.find(subagent => subagent.name === name)\n\nconst requireKnownSubagent = (\n subagents: ReadonlyArray<SubagentDefinition>,\n name: string\n): Effect.Effect<SubagentDefinition, ModelVisibleToolError> => {\n const subagent = findSubagent(subagents, name)\n\n return subagent === undefined\n ? Effect.fail(subagentModelVisibleError(`Unknown subagent type: ${name}`))\n : Effect.succeed(subagent)\n}\n\nconst subagentDescription = (subagent: SubagentDefinition) =>\n `- ${subagent.name}: ${subagent.description}`\n\nconst modelDescription = (model: SubagentModelDefinition) => `- ${model.id}: ${model.description}`\n\nconst reasoningEffortDescription = (effort: SubagentReasoningEffortDefinition) =>\n `- ${effort.value}: ${effort.description}`\n\nconst subagentToolDescription = (\n options: SubagentRuntimeSelectionOptions & {\n readonly subagents: ReadonlyArray<SubagentDefinition>\n }\n) =>\n [\n 'Launch a new agent to handle complex, multistep tasks autonomously.',\n 'Use this when delegating focused work to a specialized subagent would save context or allow parallel exploration.',\n 'To run subagents in parallel, call this subagent tool multiple times in the same assistant response.',\n 'Yolk runs same-turn subagent calls concurrently automatically.',\n 'A fresh subagent only sees the prompt you provide, so include all required context.',\n 'Subagents can use their normal tools but cannot launch further subagents in v1.',\n options.subagents.length === 0\n ? 'No subagent types are currently available.'\n : `Available subagent types:\\n${options.subagents.map(subagentDescription).join('\\n')}`,\n options.models === undefined || options.models.length === 0\n ? undefined\n : [\n 'Available subagent models:',\n options.models.map(modelDescription).join('\\n'),\n 'Omit model to inherit the host runtime model.'\n ].join('\\n'),\n options.reasoningEfforts === undefined || options.reasoningEfforts.length === 0\n ? undefined\n : [\n 'Available subagent reasoning efforts:',\n options.reasoningEfforts.map(reasoningEffortDescription).join('\\n'),\n 'Omit reasoning_effort to inherit the host runtime effort.'\n ].join('\\n')\n ]\n .filter(section => section !== undefined)\n .join('\\n\\n')\n\nexport const makeSubagentToolRegistration = <Context>(\n options: SubagentToolOptions<Context>\n): ToolRegistration<Context> =>\n makeTool({\n name: subagentToolName,\n description: subagentToolDescription(options),\n parameters: configuredSubagentToolParams(options),\n access: 'read',\n isEnabled: options.isEnabled,\n invalidParamsMessage: error =>\n `Invalid subagent arguments: ${error instanceof Error ? error.message : String(error)}`,\n execute: ({ call, context, params }) =>\n Effect.gen(function* () {\n if (call.name !== subagentToolName) {\n return yield* Effect.fail(\n subagentToolError(`Tool is not configured: ${call.name}`, 'not_found')\n )\n }\n\n const normalizedParams = yield* validateSubagentParams(params)\n yield* requireKnownSubagent(options.subagents, normalizedParams.subagent_type)\n\n return yield* options.execute({ call, context, params: normalizedParams })\n })\n })\n\nexport const makeSubagentToolDef = (\n subagents: ReadonlyArray<SubagentDefinition>,\n runtimeSelections: SubagentRuntimeSelectionOptions = {}\n) =>\n makeSubagentToolRegistration({\n subagents,\n ...runtimeSelections,\n execute: ({ call }) => Effect.succeed(ToolResult.make({ toolCallId: call.id, content: '' }))\n }).def\n\nexport const makeSubagentToolModule = <Context>(\n options: SubagentToolOptions<Context>\n): ToolModule<Context> => ({\n id: subagentToolName,\n tools: [makeSubagentToolRegistration(options)]\n})\n\nexport const makeNonRecursiveSubagentToolModule = <Context extends SubagentContext>(\n options: SubagentToolOptions<Context>\n): ToolModule<Context> =>\n makeSubagentToolModule({\n ...options,\n isEnabled: context =>\n context.subagent === true\n ? Effect.succeed(false)\n : options.isEnabled === undefined\n ? Effect.succeed(true)\n : options.isEnabled(context)\n })\n\nexport const formatSubagentResult = (output: string) =>\n ['<subagent_result>', output, '</subagent_result>'].join('\\n')\n\nexport const subagentToolRunId = makeSubagentRunId\n\nconst latestAssistantText = (messages: ReadonlyArray<AgentMessage>) => {\n const assistant = [...messages]\n .reverse()\n .find(message => Predicate.isTagged(message, 'Assistant'))\n\n return assistant === undefined ? '' : contentText(assistantContent(assistant))\n}\n\nconst subagentProviderMetadata = (provider: ProviderErrorInfo): SubagentProviderMetadataFields => {\n const metadata: SubagentProviderMetadataFields = {\n provider: provider.provider,\n kind: provider.kind\n }\n\n if (provider.status !== undefined) {\n metadata.status = provider.status\n }\n\n if (provider.providerCode !== undefined) {\n metadata.provider_code = provider.providerCode\n }\n\n if (provider.retryAfterMs !== undefined) {\n metadata.retry_after_ms = provider.retryAfterMs\n }\n\n return metadata\n}\n\nconst subagentUsageInputMetadata = (usage: AgentUsage): SubagentUsageInputMetadataFields => {\n const input: SubagentUsageInputMetadataFields = {\n total: usage.input.total\n }\n\n if (usage.input.uncached !== undefined) {\n input.uncached = usage.input.uncached\n }\n\n if (usage.input.cacheRead !== undefined) {\n input.cache_read = usage.input.cacheRead\n }\n\n if (usage.input.cacheWrite !== undefined) {\n input.cache_write = usage.input.cacheWrite\n }\n\n return input\n}\n\nconst subagentUsageOutputMetadata = (usage: AgentUsage): SubagentUsageOutputMetadataFields => {\n const output: SubagentUsageOutputMetadataFields = {\n total: usage.output.total\n }\n\n if (usage.output.text !== undefined) {\n output.text = usage.output.text\n }\n\n if (usage.output.reasoning !== undefined) {\n output.reasoning = usage.output.reasoning\n }\n\n return output\n}\n\nconst subagentUsageMetadata = (usage: AgentUsage): SubagentUsageMetadataFields => ({\n input: subagentUsageInputMetadata(usage),\n output: subagentUsageOutputMetadata(usage)\n})\n\nconst subagentErrorMetadata = (error: SubagentRunError): SubagentErrorMetadataFields => {\n const metadata: SubagentErrorMetadataFields = {\n code: error.code,\n message: error.message,\n retryable: error.retryable\n }\n\n if (error.provider !== undefined) {\n metadata.provider = subagentProviderMetadata(error.provider)\n }\n\n return metadata\n}\n\nconst SubagentUsageMetadata = Schema.Struct({\n input: Schema.Struct({\n total: Schema.Number,\n uncached: Schema.optional(Schema.Number),\n cache_read: Schema.optional(Schema.Number),\n cache_write: Schema.optional(Schema.Number)\n }),\n output: Schema.Struct({\n total: Schema.Number,\n text: Schema.optional(Schema.Number),\n reasoning: Schema.optional(Schema.Number)\n })\n})\n\nconst SubagentStructuredUsage = Schema.Struct({\n subagent_run_id: Schema.String,\n subagent_type: Schema.String,\n usage: SubagentUsageMetadata\n})\n\nconst subagentAgentInputUsageFromMetadata = (\n usage: SubagentUsageMetadataFields\n): SubagentAgentInputUsageFields => {\n const input: SubagentAgentInputUsageFields = {\n total: usage.input.total\n }\n\n if (usage.input.uncached !== undefined) {\n input.uncached = usage.input.uncached\n }\n\n if (usage.input.cache_read !== undefined) {\n input.cacheRead = usage.input.cache_read\n }\n\n if (usage.input.cache_write !== undefined) {\n input.cacheWrite = usage.input.cache_write\n }\n\n return input\n}\n\nconst subagentAgentOutputUsageFromMetadata = (\n usage: SubagentUsageMetadataFields\n): SubagentAgentOutputUsageFields => {\n const output: SubagentAgentOutputUsageFields = {\n total: usage.output.total\n }\n\n if (usage.output.text !== undefined) {\n output.text = usage.output.text\n }\n\n if (usage.output.reasoning !== undefined) {\n output.reasoning = usage.output.reasoning\n }\n\n return output\n}\n\nexport const subagentUsageFromToolResult = (result: ToolResult): AgentUsage | undefined => {\n if (\n !Schema.is(SubagentStructuredUsage)(result.structuredContent) ||\n result.structuredContent.subagent_run_id !== subagentToolRunId(result.toolCallId)\n ) {\n return undefined\n }\n\n const usage = result.structuredContent.usage\n\n return AgentUsage.make({\n input: subagentAgentInputUsageFromMetadata(usage),\n output: subagentAgentOutputUsageFromMetadata(usage)\n })\n}\n\nconst subagentRunErrorFromAgentError = (error: SubagentRunError): SubagentRunErrorFields => {\n const result: SubagentRunErrorFields = {\n code: error.code,\n message: error.message,\n retryable: error.retryable\n }\n\n if (error.provider !== undefined) {\n result.provider = error.provider\n }\n\n return result\n}\n\nexport const subagentResultFromEvents = (events: ReadonlyArray<AgentEvent>): SubagentRunResult => {\n const terminal = [...events].reverse().find(isTerminalAgentEvent)\n const usageUpdates = events.filter(event => Predicate.isTagged(event, 'UsageUpdate'))\n\n const usage = usageUpdates.reduce(\n (total, event) => addAgentUsage(total, event.usage),\n zeroAgentUsage\n )\n\n const turns = events.reduce(\n (latest, event) =>\n Predicate.isTagged(event, 'TurnStart') ? Math.max(latest, event.turn) : latest,\n 0\n )\n\n if (terminal === undefined) {\n const message = 'Subagent stream ended without a terminal event.'\n\n const result: SubagentRunResultFields = {\n status: 'error',\n text: `Subagent failed: ${message}`\n }\n\n if (usageUpdates.length !== 0) {\n result.usage = usage\n }\n\n if (turns !== 0) {\n result.turns = turns\n }\n\n result.error = {\n code: 'invalid_response',\n message,\n retryable: false\n }\n\n return result\n }\n\n if (Predicate.isTagged(terminal, 'AgentError')) {\n const result: SubagentRunResultFields = {\n status: 'error',\n text: `Subagent failed: ${terminal.message}`\n }\n\n if (usageUpdates.length !== 0) {\n result.usage = usage\n }\n\n if (turns !== 0) {\n result.turns = turns\n }\n\n result.error = subagentRunErrorFromAgentError(terminal)\n\n return result\n }\n\n const text = latestAssistantText(terminal.messages).trim()\n\n const result: SubagentRunResultFields = {\n status: Predicate.isTagged(terminal, 'AgentAwaitingInput') ? 'awaiting_input' : 'completed',\n text: text.length === 0 ? 'Subagent completed without a final text response.' : text,\n usage: terminal.usage,\n turns: terminal.turns\n }\n\n if (Predicate.isTagged(terminal, 'AgentAwaitingInput')) {\n result.requests = terminal.requests\n }\n\n return result\n}\n\nexport const subagentResultText = (events: ReadonlyArray<AgentEvent>) =>\n subagentResultFromEvents(events).text\n\nconst subagentToolResultStructuredContent = (\n input: SubagentToolResultInput,\n status: SubagentRunStatus\n): SubagentToolResultStructuredContentFields => {\n const structuredContent: SubagentToolResultStructuredContentFields = {\n subagent_run_id: input.subagentRunId,\n subagent_type: input.subagentType,\n description: input.description,\n started_at_ms: input.startedAtMs,\n ended_at_ms: input.endedAtMs,\n duration_ms: Math.max(0, input.endedAtMs - input.startedAtMs),\n status,\n model: input.model\n }\n\n if (input.reasoningEffort !== undefined) {\n structuredContent.reasoning_effort = input.reasoningEffort\n }\n\n if (input.usage !== undefined) {\n structuredContent.usage = subagentUsageMetadata(input.usage)\n }\n\n if (input.turns !== undefined) {\n structuredContent.turns = input.turns\n }\n\n if (input.requests !== undefined) {\n structuredContent.hitl_requests = input.requests\n }\n\n if (input.error !== undefined) {\n structuredContent.error = subagentErrorMetadata(input.error)\n }\n\n return structuredContent\n}\n\nexport const makeSubagentToolResult = (input: SubagentToolResultInput) => {\n const isError = input.isError === true || input.error !== undefined || input.status === 'error'\n const status = isError ? 'error' : (input.status ?? 'completed')\n\n return ToolResult.make({\n toolCallId: input.callId,\n content: formatSubagentResult(input.output),\n isError: isError ? true : undefined,\n structuredContent: subagentToolResultStructuredContent(input, status)\n })\n}\n\nconst subagentAcceptedStructuredContent = (input: {\n readonly callId: string\n readonly workflowRunId: string\n readonly parentRunId?: string\n}): SubagentAcceptedStructuredContentFields => {\n const structuredContent: SubagentAcceptedStructuredContentFields = {\n type: 'subagent_accepted',\n status: 'accepted',\n subagent_run_id: makeSubagentRunId(input.callId),\n workflow_run_id: input.workflowRunId\n }\n\n if (input.parentRunId !== undefined) {\n structuredContent.parent_run_id = input.parentRunId\n }\n\n return structuredContent\n}\n\n/** Acceptance is a tool completion, never a child completion or usage delta.\n * Hosts own completion delivery and any observation tools; registration supplies neither.\n */\nexport const makeSubagentAcceptedToolResult = (input: {\n readonly callId: string\n readonly workflowRunId: string\n readonly parentRunId?: string\n}) =>\n ToolResult.make({\n toolCallId: input.callId,\n content: `Subagent accepted, not completed. Reference: tool_call_id=${input.callId}${input.parentRunId === undefined ? '' : ` and parent_run_id=${input.parentRunId}`}. Completion delivery and observation follow the host instructions.`,\n structuredContent: subagentAcceptedStructuredContent(input)\n })\n"],"mappings":";;;;;;;AAgCA,MAAM,yBAAyB;CAC7B,aAAaA,SAAO,OAAO,KACzBA,SAAO,SAAS,EAAE,aAAa,4CAA4C,CAAC,CAC9E;CACA,QAAQA,SAAO,OAAO,KACpBA,SAAO,SAAS,EACd,aACE,mFACJ,CAAC,CACH;CACA,eAAeA,SAAO,OAAO,KAC3BA,SAAO,SAAS,EAAE,aAAa,sDAAsD,CAAC,CACxF;AACF;AAoLA,MAAM,qBAAqB,SAAiB,UAC1C,IAAI,UAAU;CACZ,MAAM;CACN;CACA;AACF,CAAC;AAEH,MAAM,6BAA6B,YACjC,sBAAsB;CACpB,MAAM;CACN;CACA,QAAQ;AACV,CAAC;AAEH,MAAM,cACJ,WACoC,OAAO,YAAY,OAAO,KAAI,UAAS,CAAC,OAAO,KAAK,CAAC,CAAC;AAE5F,MAAM,4BAAkD,UAItDA,SAAO,YACLA,SAAO,KAAK,WAAW,MAAM,MAAM,CAAC,EAAE,KAAKA,SAAO,SAAS,EAAE,aAAa,MAAM,YAAY,CAAC,CAAC,CAChG;AAEF,MAAM,gCAAgC,YAA6C;CACjF,MAAM,SAAS;EACb,GAAG;EACH,YAAYA,SAAO,YACjBA,SAAO,QAAQ,KACbA,SAAO,SAAS,EACd,aACE,qIACJ,CAAC,CACH,CACF;CACF;CAEA,MAAM,QACJ,QAAQ,WAAW,KAAA,KAAa,QAAQ,OAAO,WAAW,IACtD,KAAA,IACA,yBAAyB;EACvB,QAAQ,QAAQ,OAAO,KAAI,SAAQ,KAAK,EAAE;EAC1C,aAAa;CACf,CAAC;CAEP,MAAM,kBACJ,QAAQ,qBAAqB,KAAA,KAAa,QAAQ,iBAAiB,WAAW,IAC1E,KAAA,IACA,yBAAyB;EACvB,QAAQ,QAAQ,iBAAiB,KAAI,SAAQ,KAAK,KAAK;EACvD,aACE;CACJ,CAAC;CAEP,IAAI,UAAU,KAAA,KAAa,oBAAoB,KAAA,GAC7C,OAAO,QAAQ,eAAe,OAC1BA,SAAO,OAAO;EAAE,GAAG;EAAQ;EAAO,kBAAkB;CAAgB,CAAC,IACrEA,SAAO,OAAO;EAAE,GAAG;EAAwB;EAAO,kBAAkB;CAAgB,CAAC;CAG3F,IAAI,UAAU,KAAA,GACZ,OAAO,QAAQ,eAAe,OAC1BA,SAAO,OAAO;EAAE,GAAG;EAAQ;CAAM,CAAC,IAClCA,SAAO,OAAO;EAAE,GAAG;EAAwB;CAAM,CAAC;CAGxD,IAAI,oBAAoB,KAAA,GACtB,OAAO,QAAQ,eAAe,OAC1BA,SAAO,OAAO;EAAE,GAAG;EAAQ,kBAAkB;CAAgB,CAAC,IAC9DA,SAAO,OAAO;EAAE,GAAG;EAAwB,kBAAkB;CAAgB,CAAC;CAGpF,OAAO,QAAQ,eAAe,OAAOA,SAAO,OAAO,MAAM,IAAIA,SAAO,OAAO,sBAAsB;AACnG;AAEA,MAAM,yBAAyB,WAAmD;CAChF,MAAM,UAAoC;EACxC,aAAa,OAAO,YAAY,KAAK;EACrC,QAAQ,OAAO,OAAO,KAAK;EAC3B,eAAe,OAAO,cAAc,KAAK;CAC3C;CAEA,IAAI,OAAO,eAAe,KAAA,GACxB,QAAQ,aAAa,OAAO;CAG9B,IAAI,OAAO,UAAU,KAAA,GACnB,QAAQ,QAAQ,OAAO;CAGzB,IAAI,OAAO,qBAAqB,KAAA,GAC9B,QAAQ,mBAAmB,OAAO;CAGpC,OAAO;AACT;AAEA,MAAM,0BACJ,WAC6D;CAC7D,MAAM,UAAU,sBAAsB,MAAM;CAE5C,IAAI,QAAQ,YAAY,WAAW,GACjC,OAAO,OAAO,KAAK,0BAA0B,+BAA+B,CAAC;CAG/E,IAAI,QAAQ,OAAO,WAAW,GAC5B,OAAO,OAAO,KAAK,0BAA0B,0BAA0B,CAAC;CAG1E,IAAI,QAAQ,cAAc,WAAW,GACnC,OAAO,OAAO,KAAK,0BAA0B,iCAAiC,CAAC;CAGjF,OAAO,OAAO,QAAQ,OAAO;AAC/B;AAEA,MAAM,gBAAgB,WAA8C,SAClE,UAAU,MAAK,aAAY,SAAS,SAAS,IAAI;AAEnD,MAAM,wBACJ,WACA,SAC6D;CAC7D,MAAM,WAAW,aAAa,WAAW,IAAI;CAE7C,OAAO,aAAa,KAAA,IAChB,OAAO,KAAK,0BAA0B,0BAA0B,MAAM,CAAC,IACvE,OAAO,QAAQ,QAAQ;AAC7B;AAEA,MAAM,uBAAuB,aAC3B,KAAK,SAAS,KAAK,IAAI,SAAS;AAElC,MAAM,oBAAoB,UAAmC,KAAK,MAAM,GAAG,IAAI,MAAM;AAErF,MAAM,8BAA8B,WAClC,KAAK,OAAO,MAAM,IAAI,OAAO;AAE/B,MAAM,2BACJ,YAIA;CACE;CACA;CACA;CACA;CACA;CACA;CACA,QAAQ,UAAU,WAAW,IACzB,+CACA,8BAA8B,QAAQ,UAAU,IAAI,mBAAmB,EAAE,KAAK,IAAI;CACtF,QAAQ,WAAW,KAAA,KAAa,QAAQ,OAAO,WAAW,IACtD,KAAA,IACA;EACE;EACA,QAAQ,OAAO,IAAI,gBAAgB,EAAE,KAAK,IAAI;EAC9C;CACF,EAAE,KAAK,IAAI;CACf,QAAQ,qBAAqB,KAAA,KAAa,QAAQ,iBAAiB,WAAW,IAC1E,KAAA,IACA;EACE;EACA,QAAQ,iBAAiB,IAAI,0BAA0B,EAAE,KAAK,IAAI;EAClE;CACF,EAAE,KAAK,IAAI;AACjB,EACG,QAAO,YAAW,YAAY,KAAA,CAAS,EACvC,KAAK,MAAM;AAEhB,MAAa,gCACX,YAEA,SAAS;CACP,MAAM;CACN,aAAa,wBAAwB,OAAO;CAC5C,YAAY,6BAA6B,OAAO;CAChD,QAAQ;CACR,WAAW,QAAQ;CACnB,uBAAsB,UACpB,+BAA+B,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;CACtF,UAAU,EAAE,MAAM,SAAS,aACzB,OAAO,IAAI,aAAa;EACtB,IAAI,KAAK,SAAA,YACP,OAAO,OAAO,OAAO,KACnB,kBAAkB,2BAA2B,KAAK,QAAQ,WAAW,CACvE;EAGF,MAAM,mBAAmB,OAAO,uBAAuB,MAAM;EAC7D,OAAO,qBAAqB,QAAQ,WAAW,iBAAiB,aAAa;EAE7E,OAAO,OAAO,QAAQ,QAAQ;GAAE;GAAM;GAAS,QAAQ;EAAiB,CAAC;CAC3E,CAAC;AACL,CAAC;AAEH,MAAa,uBACX,WACA,oBAAqD,CAAC,MAEtD,6BAA6B;CAC3B;CACA,GAAG;CACH,UAAU,EAAE,WAAW,OAAO,QAAQ,WAAW,KAAK;EAAE,YAAY,KAAK;EAAI,SAAS;CAAG,CAAC,CAAC;AAC7F,CAAC,EAAE;AAEL,MAAa,0BACX,aACyB;CACzB,IAAI;CACJ,OAAO,CAAC,6BAA6B,OAAO,CAAC;AAC/C;AAEA,MAAa,sCACX,YAEA,uBAAuB;CACrB,GAAG;CACH,YAAW,YACT,QAAQ,aAAa,OACjB,OAAO,QAAQ,KAAK,IACpB,QAAQ,cAAc,KAAA,IACpB,OAAO,QAAQ,IAAI,IACnB,QAAQ,UAAU,OAAO;AACnC,CAAC;AAEH,MAAa,wBAAwB,WACnC;CAAC;CAAqB;CAAQ;AAAoB,EAAE,KAAK,IAAI;AAE/D,MAAa,oBAAoB;AAEjC,MAAM,uBAAuB,aAA0C;CACrE,MAAM,YAAY,CAAC,GAAG,QAAQ,EAC3B,QAAQ,EACR,MAAK,YAAW,UAAU,SAAS,SAAS,WAAW,CAAC;CAE3D,OAAO,cAAc,KAAA,IAAY,KAAK,YAAY,iBAAiB,SAAS,CAAC;AAC/E;AAEA,MAAM,4BAA4B,aAAgE;CAChG,MAAM,WAA2C;EAC/C,UAAU,SAAS;EACnB,MAAM,SAAS;CACjB;CAEA,IAAI,SAAS,WAAW,KAAA,GACtB,SAAS,SAAS,SAAS;CAG7B,IAAI,SAAS,iBAAiB,KAAA,GAC5B,SAAS,gBAAgB,SAAS;CAGpC,IAAI,SAAS,iBAAiB,KAAA,GAC5B,SAAS,iBAAiB,SAAS;CAGrC,OAAO;AACT;AAEA,MAAM,8BAA8B,UAAwD;CAC1F,MAAM,QAA0C,EAC9C,OAAO,MAAM,MAAM,MACrB;CAEA,IAAI,MAAM,MAAM,aAAa,KAAA,GAC3B,MAAM,WAAW,MAAM,MAAM;CAG/B,IAAI,MAAM,MAAM,cAAc,KAAA,GAC5B,MAAM,aAAa,MAAM,MAAM;CAGjC,IAAI,MAAM,MAAM,eAAe,KAAA,GAC7B,MAAM,cAAc,MAAM,MAAM;CAGlC,OAAO;AACT;AAEA,MAAM,+BAA+B,UAAyD;CAC5F,MAAM,SAA4C,EAChD,OAAO,MAAM,OAAO,MACtB;CAEA,IAAI,MAAM,OAAO,SAAS,KAAA,GACxB,OAAO,OAAO,MAAM,OAAO;CAG7B,IAAI,MAAM,OAAO,cAAc,KAAA,GAC7B,OAAO,YAAY,MAAM,OAAO;CAGlC,OAAO;AACT;AAEA,MAAM,yBAAyB,WAAoD;CACjF,OAAO,2BAA2B,KAAK;CACvC,QAAQ,4BAA4B,KAAK;AAC3C;AAEA,MAAM,yBAAyB,UAAyD;CACtF,MAAM,WAAwC;EAC5C,MAAM,MAAM;EACZ,SAAS,MAAM;EACf,WAAW,MAAM;CACnB;CAEA,IAAI,MAAM,aAAa,KAAA,GACrB,SAAS,WAAW,yBAAyB,MAAM,QAAQ;CAG7D,OAAO;AACT;AAEA,MAAM,wBAAwBA,SAAO,OAAO;CAC1C,OAAOA,SAAO,OAAO;EACnB,OAAOA,SAAO;EACd,UAAUA,SAAO,SAASA,SAAO,MAAM;EACvC,YAAYA,SAAO,SAASA,SAAO,MAAM;EACzC,aAAaA,SAAO,SAASA,SAAO,MAAM;CAC5C,CAAC;CACD,QAAQA,SAAO,OAAO;EACpB,OAAOA,SAAO;EACd,MAAMA,SAAO,SAASA,SAAO,MAAM;EACnC,WAAWA,SAAO,SAASA,SAAO,MAAM;CAC1C,CAAC;AACH,CAAC;AAED,MAAM,0BAA0BA,SAAO,OAAO;CAC5C,iBAAiBA,SAAO;CACxB,eAAeA,SAAO;CACtB,OAAO;AACT,CAAC;AAED,MAAM,uCACJ,UACkC;CAClC,MAAM,QAAuC,EAC3C,OAAO,MAAM,MAAM,MACrB;CAEA,IAAI,MAAM,MAAM,aAAa,KAAA,GAC3B,MAAM,WAAW,MAAM,MAAM;CAG/B,IAAI,MAAM,MAAM,eAAe,KAAA,GAC7B,MAAM,YAAY,MAAM,MAAM;CAGhC,IAAI,MAAM,MAAM,gBAAgB,KAAA,GAC9B,MAAM,aAAa,MAAM,MAAM;CAGjC,OAAO;AACT;AAEA,MAAM,wCACJ,UACmC;CACnC,MAAM,SAAyC,EAC7C,OAAO,MAAM,OAAO,MACtB;CAEA,IAAI,MAAM,OAAO,SAAS,KAAA,GACxB,OAAO,OAAO,MAAM,OAAO;CAG7B,IAAI,MAAM,OAAO,cAAc,KAAA,GAC7B,OAAO,YAAY,MAAM,OAAO;CAGlC,OAAO;AACT;AAEA,MAAa,+BAA+B,WAA+C;CACzF,IACE,CAACA,SAAO,GAAG,uBAAuB,EAAE,OAAO,iBAAiB,KAC5D,OAAO,kBAAkB,oBAAoB,kBAAkB,OAAO,UAAU,GAEhF;CAGF,MAAM,QAAQ,OAAO,kBAAkB;CAEvC,OAAO,WAAW,KAAK;EACrB,OAAO,oCAAoC,KAAK;EAChD,QAAQ,qCAAqC,KAAK;CACpD,CAAC;AACH;AAEA,MAAM,kCAAkC,UAAoD;CAC1F,MAAM,SAAiC;EACrC,MAAM,MAAM;EACZ,SAAS,MAAM;EACf,WAAW,MAAM;CACnB;CAEA,IAAI,MAAM,aAAa,KAAA,GACrB,OAAO,WAAW,MAAM;CAG1B,OAAO;AACT;AAEA,MAAa,4BAA4B,WAAyD;CAChG,MAAM,WAAW,CAAC,GAAG,MAAM,EAAE,QAAQ,EAAE,KAAK,oBAAoB;CAChE,MAAM,eAAe,OAAO,QAAO,UAAS,UAAU,SAAS,OAAO,aAAa,CAAC;CAEpF,MAAM,QAAQ,aAAa,QACxB,OAAO,UAAU,cAAc,OAAO,MAAM,KAAK,GAClD,cACF;CAEA,MAAM,QAAQ,OAAO,QAClB,QAAQ,UACP,UAAU,SAAS,OAAO,WAAW,IAAI,KAAK,IAAI,QAAQ,MAAM,IAAI,IAAI,QAC1E,CACF;CAEA,IAAI,aAAa,KAAA,GAAW;EAC1B,MAAM,UAAU;EAEhB,MAAM,SAAkC;GACtC,QAAQ;GACR,MAAM,oBAAoB;EAC5B;EAEA,IAAI,aAAa,WAAW,GAC1B,OAAO,QAAQ;EAGjB,IAAI,UAAU,GACZ,OAAO,QAAQ;EAGjB,OAAO,QAAQ;GACb,MAAM;GACN;GACA,WAAW;EACb;EAEA,OAAO;CACT;CAEA,IAAI,UAAU,SAAS,UAAU,YAAY,GAAG;EAC9C,MAAM,SAAkC;GACtC,QAAQ;GACR,MAAM,oBAAoB,SAAS;EACrC;EAEA,IAAI,aAAa,WAAW,GAC1B,OAAO,QAAQ;EAGjB,IAAI,UAAU,GACZ,OAAO,QAAQ;EAGjB,OAAO,QAAQ,+BAA+B,QAAQ;EAEtD,OAAO;CACT;CAEA,MAAM,OAAO,oBAAoB,SAAS,QAAQ,EAAE,KAAK;CAEzD,MAAM,SAAkC;EACtC,QAAQ,UAAU,SAAS,UAAU,oBAAoB,IAAI,mBAAmB;EAChF,MAAM,KAAK,WAAW,IAAI,sDAAsD;EAChF,OAAO,SAAS;EAChB,OAAO,SAAS;CAClB;CAEA,IAAI,UAAU,SAAS,UAAU,oBAAoB,GACnD,OAAO,WAAW,SAAS;CAG7B,OAAO;AACT;AAEA,MAAa,sBAAsB,WACjC,yBAAyB,MAAM,EAAE;AAEnC,MAAM,uCACJ,OACA,WAC8C;CAC9C,MAAM,oBAA+D;EACnE,iBAAiB,MAAM;EACvB,eAAe,MAAM;EACrB,aAAa,MAAM;EACnB,eAAe,MAAM;EACrB,aAAa,MAAM;EACnB,aAAa,KAAK,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW;EAC5D;EACA,OAAO,MAAM;CACf;CAEA,IAAI,MAAM,oBAAoB,KAAA,GAC5B,kBAAkB,mBAAmB,MAAM;CAG7C,IAAI,MAAM,UAAU,KAAA,GAClB,kBAAkB,QAAQ,sBAAsB,MAAM,KAAK;CAG7D,IAAI,MAAM,UAAU,KAAA,GAClB,kBAAkB,QAAQ,MAAM;CAGlC,IAAI,MAAM,aAAa,KAAA,GACrB,kBAAkB,gBAAgB,MAAM;CAG1C,IAAI,MAAM,UAAU,KAAA,GAClB,kBAAkB,QAAQ,sBAAsB,MAAM,KAAK;CAG7D,OAAO;AACT;AAEA,MAAa,0BAA0B,UAAmC;CACxE,MAAM,UAAU,MAAM,YAAY,QAAQ,MAAM,UAAU,KAAA,KAAa,MAAM,WAAW;CACxF,MAAM,SAAS,UAAU,UAAW,MAAM,UAAU;CAEpD,OAAO,WAAW,KAAK;EACrB,YAAY,MAAM;EAClB,SAAS,qBAAqB,MAAM,MAAM;EAC1C,SAAS,UAAU,OAAO,KAAA;EAC1B,mBAAmB,oCAAoC,OAAO,MAAM;CACtE,CAAC;AACH;AAEA,MAAM,qCAAqC,UAII;CAC7C,MAAM,oBAA6D;EACjE,MAAM;EACN,QAAQ;EACR,iBAAiB,kBAAkB,MAAM,MAAM;EAC/C,iBAAiB,MAAM;CACzB;CAEA,IAAI,MAAM,gBAAgB,KAAA,GACxB,kBAAkB,gBAAgB,MAAM;CAG1C,OAAO;AACT;;;;AAKA,MAAa,kCAAkC,UAK7C,WAAW,KAAK;CACd,YAAY,MAAM;CAClB,SAAS,6DAA6D,MAAM,SAAS,MAAM,gBAAgB,KAAA,IAAY,KAAK,sBAAsB,MAAM,cAAc;CACtK,mBAAmB,kCAAkC,KAAK;AAC5D,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yolk-sdk/agent",
|
|
3
|
-
"version": "0.1.0-canary.
|
|
3
|
+
"version": "0.1.0-canary.89",
|
|
4
4
|
"description": "Agent protocol, loop, runtime, Effect-native client, compaction, tools, React, providers, OAuth, skillset, and voice primitives.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
package/src/tools/subagent.ts
CHANGED
|
@@ -256,7 +256,7 @@ const configuredSubagentToolParams = (options: SubagentRuntimeSelectionOptions)
|
|
|
256
256
|
Schema.Boolean.pipe(
|
|
257
257
|
Schema.annotate({
|
|
258
258
|
description:
|
|
259
|
-
'Return an accepted handle immediately
|
|
259
|
+
'Return an accepted handle immediately, not the completed result. Completion delivery and observation follow the host instructions.'
|
|
260
260
|
})
|
|
261
261
|
)
|
|
262
262
|
)
|
|
@@ -779,7 +779,9 @@ const subagentAcceptedStructuredContent = (input: {
|
|
|
779
779
|
return structuredContent
|
|
780
780
|
}
|
|
781
781
|
|
|
782
|
-
/** Acceptance is a tool completion, never a child completion or usage delta.
|
|
782
|
+
/** Acceptance is a tool completion, never a child completion or usage delta.
|
|
783
|
+
* Hosts own completion delivery and any observation tools; registration supplies neither.
|
|
784
|
+
*/
|
|
783
785
|
export const makeSubagentAcceptedToolResult = (input: {
|
|
784
786
|
readonly callId: string
|
|
785
787
|
readonly workflowRunId: string
|
|
@@ -787,6 +789,6 @@ export const makeSubagentAcceptedToolResult = (input: {
|
|
|
787
789
|
}) =>
|
|
788
790
|
ToolResult.make({
|
|
789
791
|
toolCallId: input.callId,
|
|
790
|
-
content: `Subagent accepted
|
|
792
|
+
content: `Subagent accepted, not completed. Reference: tool_call_id=${input.callId}${input.parentRunId === undefined ? '' : ` and parent_run_id=${input.parentRunId}`}. Completion delivery and observation follow the host instructions.`,
|
|
791
793
|
structuredContent: subagentAcceptedStructuredContent(input)
|
|
792
794
|
})
|