@vibes.diy/api-svc 14.3.85 → 14.3.87
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/create-handler.js +2 -0
- package/create-handler.js.map +1 -1
- package/index.d.ts +3 -1
- package/index.js +3 -1
- package/index.js.map +1 -1
- package/intern/agent-account-tools.d.ts +1 -0
- package/intern/agent-account-tools.js +1 -0
- package/intern/agent-account-tools.js.map +1 -1
- package/intern/agent-assembly.js +5 -1
- package/intern/agent-assembly.js.map +1 -1
- package/intern/agent-belt.d.ts +1 -3
- package/intern/agent-belt.js +25 -21
- package/intern/agent-belt.js.map +1 -1
- package/intern/agent-build-tools.d.ts +7 -0
- package/intern/agent-build-tools.js +6 -2
- package/intern/agent-build-tools.js.map +1 -1
- package/intern/agent-closing-options.d.ts +26 -0
- package/intern/agent-closing-options.js +130 -0
- package/intern/agent-closing-options.js.map +1 -0
- package/intern/agent-dispatcher.d.ts +1 -0
- package/intern/agent-dispatcher.js +17 -3
- package/intern/agent-dispatcher.js.map +1 -1
- package/intern/agent-session-instruction.d.ts +3 -2
- package/intern/agent-session-instruction.js +9 -7
- package/intern/agent-session-instruction.js.map +1 -1
- package/intern/agent-turn.d.ts +1 -0
- package/intern/agent-turn.js +1 -0
- package/intern/agent-turn.js.map +1 -1
- package/intern/alt-first-build.d.ts +48 -0
- package/intern/alt-first-build.js +179 -0
- package/intern/alt-first-build.js.map +1 -0
- package/intern/alt-landing.d.ts +13 -0
- package/intern/alt-landing.js +55 -0
- package/intern/alt-landing.js.map +1 -0
- package/intern/first-brief.d.ts +1 -1
- package/intern/first-brief.js +1 -1
- package/intern/first-brief.js.map +1 -1
- package/intern/first-build-classifier.d.ts +4 -4
- package/intern/first-build-classifier.js +15 -17
- package/intern/first-build-classifier.js.map +1 -1
- package/intern/first-build-race.d.ts +71 -0
- package/intern/first-build-race.js +257 -0
- package/intern/first-build-race.js.map +1 -0
- package/intern/instruction-variant.d.ts +23 -2
- package/intern/instruction-variant.js +159 -2
- package/intern/instruction-variant.js.map +1 -1
- package/intern/keeps-to-themselves.d.ts +1 -0
- package/intern/keeps-to-themselves.js +10 -0
- package/intern/keeps-to-themselves.js.map +1 -0
- package/intern/llm-tool-loop.d.ts +5 -1
- package/intern/llm-tool-loop.js +48 -15
- package/intern/llm-tool-loop.js.map +1 -1
- package/intern/mercury-capability-triggers.d.ts +1 -0
- package/intern/mercury-capability-triggers.js +95 -0
- package/intern/mercury-capability-triggers.js.map +1 -0
- package/intern/mercury-first-build-seam.d.ts +40 -5
- package/intern/mercury-first-build-seam.js +201 -14
- package/intern/mercury-first-build-seam.js.map +1 -1
- package/intern/mercury-first-build.d.ts +591 -21
- package/intern/mercury-first-build.js +2998 -287
- package/intern/mercury-first-build.js.map +1 -1
- package/intern/mercury-resilience.d.ts +70 -0
- package/intern/mercury-resilience.js +122 -0
- package/intern/mercury-resilience.js.map +1 -0
- package/intern/mint-decision.d.ts +1 -0
- package/intern/mint-decision.js +3 -0
- package/intern/mint-decision.js.map +1 -1
- package/intern/option-line-hold.d.ts +5 -0
- package/intern/option-line-hold.js +39 -0
- package/intern/option-line-hold.js.map +1 -0
- package/intern/pouf-room-catalog.d.ts +2 -0
- package/intern/pouf-room-catalog.js +11 -0
- package/intern/pouf-room-catalog.js.map +1 -0
- package/intern/retire-offer-options.d.ts +3 -0
- package/intern/retire-offer-options.js +91 -0
- package/intern/retire-offer-options.js.map +1 -0
- package/intern/seed-chat-section.d.ts +13 -0
- package/intern/seed-chat-section.js +62 -0
- package/intern/seed-chat-section.js.map +1 -1
- package/intern/server-first-build.js +1 -0
- package/intern/server-first-build.js.map +1 -1
- package/intern/vibe-font-catalog.d.ts +2 -0
- package/intern/vibe-font-catalog.js +8 -0
- package/intern/vibe-font-catalog.js.map +1 -0
- package/package.json +14 -14
- package/public/agent-turn-action.d.ts +1 -0
- package/public/agent-turn-action.js +256 -62
- package/public/agent-turn-action.js.map +1 -1
- package/public/agent-turn-assembly.js +5 -2
- package/public/agent-turn-assembly.js.map +1 -1
- package/public/prompt-chat-section.js +7 -5
- package/public/prompt-chat-section.js.map +1 -1
- package/public/prompt-turn-terminal.js +3 -1
- package/public/prompt-turn-terminal.js.map +1 -1
- package/public/report-activity.js +18 -2
- package/public/report-activity.js.map +1 -1
- package/public/vibe-traffic-source.js +1 -1
- package/public/vibe-traffic-source.js.map +1 -1
- package/types.d.ts +1 -0
- package/types.js.map +1 -1
- package/usage-report/new-user-alert-util.d.ts +6 -0
- package/usage-report/new-user-alert-util.js +30 -1
- package/usage-report/new-user-alert-util.js.map +1 -1
- package/intern/agent-options-tool.d.ts +0 -27
- package/intern/agent-options-tool.js +0 -213
- package/intern/agent-options-tool.js.map +0 -1
|
@@ -16,6 +16,20 @@ export const INSTRUCTION_VARIANTS = [
|
|
|
16
16
|
"no-first-brief",
|
|
17
17
|
"chopped-screwed",
|
|
18
18
|
"mercury-recut-first-build",
|
|
19
|
+
"mercury-chopped-first-build",
|
|
20
|
+
"mercury-chopped-j-first-build",
|
|
21
|
+
"mercury-chopped-js-first-build",
|
|
22
|
+
"mercury-whole-first-build",
|
|
23
|
+
"mercury-whole-duo-first-build",
|
|
24
|
+
"mercury-onecall-first-build",
|
|
25
|
+
"mercury-onecall-whole-first-build",
|
|
26
|
+
"mercury-onecall-duo-first-build",
|
|
27
|
+
"mercury-opus-planner-first-build",
|
|
28
|
+
"mercury-prose-first-build",
|
|
29
|
+
"mercury-thinkaloud-first-build",
|
|
30
|
+
"mercury-cards-first-build",
|
|
31
|
+
"mercury-cards-fim-first-build",
|
|
32
|
+
"mercury-haiku-cards-first-build",
|
|
19
33
|
];
|
|
20
34
|
const FIRST_TURN_ONLY_VARIANTS = [
|
|
21
35
|
"pre-staged-reply",
|
|
@@ -28,6 +42,20 @@ const FIRST_TURN_ONLY_VARIANTS = [
|
|
|
28
42
|
"no-first-brief",
|
|
29
43
|
"chopped-screwed",
|
|
30
44
|
"mercury-recut-first-build",
|
|
45
|
+
"mercury-chopped-first-build",
|
|
46
|
+
"mercury-chopped-j-first-build",
|
|
47
|
+
"mercury-chopped-js-first-build",
|
|
48
|
+
"mercury-whole-first-build",
|
|
49
|
+
"mercury-whole-duo-first-build",
|
|
50
|
+
"mercury-onecall-first-build",
|
|
51
|
+
"mercury-onecall-whole-first-build",
|
|
52
|
+
"mercury-onecall-duo-first-build",
|
|
53
|
+
"mercury-opus-planner-first-build",
|
|
54
|
+
"mercury-prose-first-build",
|
|
55
|
+
"mercury-thinkaloud-first-build",
|
|
56
|
+
"mercury-cards-first-build",
|
|
57
|
+
"mercury-cards-fim-first-build",
|
|
58
|
+
"mercury-haiku-cards-first-build",
|
|
31
59
|
];
|
|
32
60
|
export function variantForTurn(variant, turn) {
|
|
33
61
|
if (variant !== undefined && FIRST_TURN_ONLY_VARIANTS.includes(variant) && turn.firstTurn === false)
|
|
@@ -93,7 +121,7 @@ When the [build result] arrives, the description is already on the person's scre
|
|
|
93
121
|
second part starts from what is new. When the result differs from the description — a field that
|
|
94
122
|
came out missing, an access rule that came out another way — say so in one sentence; when it
|
|
95
123
|
matches, go straight to the options. Then offer two or three concrete next features for this app
|
|
96
|
-
as options,
|
|
124
|
+
as options, written as your reply's last lines, each starting with ▸, so they arrive as chips the person
|
|
97
125
|
can tap rather than as prose: each one something this app could do next that the person did not
|
|
98
126
|
mention. The description stands as written: the second part carries no restatement of it and no line
|
|
99
127
|
confirming the app matches it.
|
|
@@ -165,7 +193,136 @@ The nouns come from the person's words and their world; a vivid phrase belongs t
|
|
|
165
193
|
stays out. Length grows by a sentence or two per part, never by a new feature.
|
|
166
194
|
</chopped-first-brief>`;
|
|
167
195
|
export function mercuryRecutArmed(variant, firstTurn) {
|
|
168
|
-
return variant
|
|
196
|
+
return isMercuryVariant(variant) && firstTurn;
|
|
197
|
+
}
|
|
198
|
+
export const MERCURY_VARIANTS = [
|
|
199
|
+
"mercury-recut-first-build",
|
|
200
|
+
"mercury-chopped-first-build",
|
|
201
|
+
"mercury-chopped-j-first-build",
|
|
202
|
+
"mercury-chopped-js-first-build",
|
|
203
|
+
"mercury-whole-first-build",
|
|
204
|
+
"mercury-whole-duo-first-build",
|
|
205
|
+
"mercury-onecall-first-build",
|
|
206
|
+
"mercury-onecall-whole-first-build",
|
|
207
|
+
"mercury-onecall-duo-first-build",
|
|
208
|
+
"mercury-opus-planner-first-build",
|
|
209
|
+
"mercury-prose-first-build",
|
|
210
|
+
"mercury-thinkaloud-first-build",
|
|
211
|
+
"mercury-cards-first-build",
|
|
212
|
+
"mercury-cards-fim-first-build",
|
|
213
|
+
"mercury-haiku-cards-first-build",
|
|
214
|
+
];
|
|
215
|
+
export function isMercuryVariant(variant) {
|
|
216
|
+
return variant !== undefined && MERCURY_VARIANTS.includes(variant);
|
|
217
|
+
}
|
|
218
|
+
export function mercuryStyleFor(variant) {
|
|
219
|
+
return variant === "mercury-chopped-first-build" ||
|
|
220
|
+
variant === "mercury-chopped-j-first-build" ||
|
|
221
|
+
variant === "mercury-chopped-js-first-build" ||
|
|
222
|
+
variant === "mercury-whole-first-build" ||
|
|
223
|
+
variant === "mercury-whole-duo-first-build" ||
|
|
224
|
+
variant === "mercury-onecall-first-build" ||
|
|
225
|
+
variant === "mercury-onecall-whole-first-build" ||
|
|
226
|
+
variant === "mercury-onecall-duo-first-build" ||
|
|
227
|
+
variant === "mercury-opus-planner-first-build"
|
|
228
|
+
? "chopped"
|
|
229
|
+
: "base";
|
|
230
|
+
}
|
|
231
|
+
export function mercuryJuiceFor(variant) {
|
|
232
|
+
return variant === "mercury-chopped-j-first-build" || variant === "mercury-chopped-js-first-build" ? "own-world" : "examples";
|
|
233
|
+
}
|
|
234
|
+
export function mercuryDepthFor(variant) {
|
|
235
|
+
return variant === "mercury-chopped-js-first-build" ||
|
|
236
|
+
variant === "mercury-whole-first-build" ||
|
|
237
|
+
variant === "mercury-whole-duo-first-build" ||
|
|
238
|
+
variant === "mercury-onecall-first-build" ||
|
|
239
|
+
variant === "mercury-onecall-whole-first-build" ||
|
|
240
|
+
variant === "mercury-onecall-duo-first-build" ||
|
|
241
|
+
variant === "mercury-opus-planner-first-build"
|
|
242
|
+
? "sub-feature"
|
|
243
|
+
: "none";
|
|
244
|
+
}
|
|
245
|
+
export function mercuryReplyFor(variant) {
|
|
246
|
+
return variant === "mercury-whole-first-build" ||
|
|
247
|
+
variant === "mercury-whole-duo-first-build" ||
|
|
248
|
+
variant === "mercury-onecall-whole-first-build" ||
|
|
249
|
+
variant === "mercury-onecall-duo-first-build" ||
|
|
250
|
+
variant === "mercury-opus-planner-first-build" ||
|
|
251
|
+
variant === "mercury-prose-first-build" ||
|
|
252
|
+
variant === "mercury-thinkaloud-first-build" ||
|
|
253
|
+
variant === "mercury-cards-first-build" ||
|
|
254
|
+
variant === "mercury-cards-fim-first-build" ||
|
|
255
|
+
variant === "mercury-haiku-cards-first-build"
|
|
256
|
+
? "whole"
|
|
257
|
+
: "split";
|
|
258
|
+
}
|
|
259
|
+
export function mercuryDuoFor(variant) {
|
|
260
|
+
return variant === "mercury-whole-duo-first-build" || variant === "mercury-onecall-duo-first-build";
|
|
261
|
+
}
|
|
262
|
+
export function mercuryDuoPoolFor(variant) {
|
|
263
|
+
if (variant === "mercury-whole-duo-first-build")
|
|
264
|
+
return 3;
|
|
265
|
+
if (variant === "mercury-onecall-duo-first-build")
|
|
266
|
+
return 4;
|
|
267
|
+
return undefined;
|
|
268
|
+
}
|
|
269
|
+
export function mercuryOneCallFor(variant) {
|
|
270
|
+
return (variant === "mercury-onecall-first-build" ||
|
|
271
|
+
variant === "mercury-onecall-whole-first-build" ||
|
|
272
|
+
variant === "mercury-onecall-duo-first-build" ||
|
|
273
|
+
variant === "mercury-opus-planner-first-build" ||
|
|
274
|
+
variant === "mercury-prose-first-build" ||
|
|
275
|
+
variant === "mercury-thinkaloud-first-build" ||
|
|
276
|
+
variant === "mercury-cards-first-build" ||
|
|
277
|
+
variant === "mercury-cards-fim-first-build" ||
|
|
278
|
+
variant === "mercury-haiku-cards-first-build");
|
|
279
|
+
}
|
|
280
|
+
export function mercuryRecordsRulesFor(variant) {
|
|
281
|
+
return (variant === "mercury-onecall-duo-first-build" ||
|
|
282
|
+
variant === "mercury-onecall-whole-first-build" ||
|
|
283
|
+
variant === "mercury-opus-planner-first-build");
|
|
284
|
+
}
|
|
285
|
+
export function mercuryPlannerFor(variant) {
|
|
286
|
+
if (variant === "mercury-opus-planner-first-build")
|
|
287
|
+
return "opus";
|
|
288
|
+
if (variant === "mercury-haiku-cards-first-build")
|
|
289
|
+
return "haiku";
|
|
290
|
+
return "mercury";
|
|
291
|
+
}
|
|
292
|
+
export function mercuryFormatFor(variant) {
|
|
293
|
+
if (variant === "mercury-prose-first-build")
|
|
294
|
+
return "prose";
|
|
295
|
+
if (variant === "mercury-thinkaloud-first-build")
|
|
296
|
+
return "thinkaloud";
|
|
297
|
+
if (variant === "mercury-cards-first-build" || variant === "mercury-haiku-cards-first-build")
|
|
298
|
+
return "cards";
|
|
299
|
+
if (variant === "mercury-cards-fim-first-build")
|
|
300
|
+
return "cards-fim";
|
|
301
|
+
return "skeleton";
|
|
302
|
+
}
|
|
303
|
+
export const MERCURY_FIRST_BUILD_ENV = "MERCURY_FIRST_BUILD";
|
|
304
|
+
export const MERCURY_DEFAULT_SWITCH_MODE = "cards-fim";
|
|
305
|
+
export function mercuryFirstBuildMode(flag) {
|
|
306
|
+
if (flag?.trim().toLowerCase() === "off")
|
|
307
|
+
return "off";
|
|
308
|
+
if (flag === "onecall-duo")
|
|
309
|
+
return "onecall-duo";
|
|
310
|
+
if (flag === "prose")
|
|
311
|
+
return "prose";
|
|
312
|
+
return MERCURY_DEFAULT_SWITCH_MODE;
|
|
313
|
+
}
|
|
314
|
+
const MERCURY_SWITCH_VARIANTS = {
|
|
315
|
+
"onecall-duo": "mercury-onecall-duo-first-build",
|
|
316
|
+
prose: "mercury-prose-first-build",
|
|
317
|
+
"cards-fim": "mercury-cards-fim-first-build",
|
|
318
|
+
};
|
|
319
|
+
export function mercuryVariantForTurn(o) {
|
|
320
|
+
if (isMercuryVariant(o.instructionVariant))
|
|
321
|
+
return o.instructionVariant;
|
|
322
|
+
const mode = mercuryFirstBuildMode(o.flag);
|
|
323
|
+
if (o.instructionVariant === undefined && mode !== "off")
|
|
324
|
+
return MERCURY_SWITCH_VARIANTS[mode];
|
|
325
|
+
return undefined;
|
|
169
326
|
}
|
|
170
327
|
const FAST_FIRST_TURN_LEVER_VARIANTS = [
|
|
171
328
|
"fast-first-turn",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instruction-variant.js","sourceRoot":"","sources":["../../jsr/intern/instruction-variant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"instruction-variant.js","sourceRoot":"","sources":["../../jsr/intern/instruction-variant.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function keepsToThemselves(words: string): boolean;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
const ONLY_ME_TOKEN = /(?<!\bnot )\b(?:only (?:i|me)|just (?:for )?(?:me|myself)|for myself|private to me|single[- ]user)\b|\bnobody else\b|\bno one else\b|\bkeep (?:it |this |them )?(?:to|for) myself\b/i;
|
|
2
|
+
const CO_AUDIENCE = /\b(?:me|i|myself) and\b|\b(?:everyone|anyone|anybody|others|other people|the public|public)\b|\bmy (?:friends?|team(?:mates)?|group|partner|followers|buddies|family|class|club|roommates?)\b|\b(?:share|invite|collaborat)/i;
|
|
3
|
+
const NEGATED_SHARE = /\b(?:do not|don't|never|without) shar(?:e|ing)\b|\bno sharing\b|\bnot (?:be )?shared\b|\b(?:nobody|no one) (?:but|except) me\b|\bkeep (?:it |this |them |everything )?private\b(?!\s+from\b)/i;
|
|
4
|
+
const OPEN_RULES_ASK = /\b(?:anyone|anybody|everyone|everybody) can edit\b|\bno access control\b/gi;
|
|
5
|
+
export function keepsToThemselves(words) {
|
|
6
|
+
if (NEGATED_SHARE.test(words))
|
|
7
|
+
return true;
|
|
8
|
+
return ONLY_ME_TOKEN.test(words) && CO_AUDIENCE.test(words.replace(OPEN_RULES_ASK, " ")) === false;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=keeps-to-themselves.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keeps-to-themselves.js","sourceRoot":"","sources":["../../jsr/intern/keeps-to-themselves.ts"],"names":[],"mappings":"AAoBA,MAAM,aAAa,GACjB,sLAAsL,CAAC;AAGzL,MAAM,WAAW,GACf,8NAA8N,CAAC;AAMjO,MAAM,aAAa,GACjB,+LAA+L,CAAC;AAKlM,MAAM,cAAc,GAAG,4EAA4E,CAAC;AAEpG,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC;AACrG,CAAC"}
|
|
@@ -43,7 +43,10 @@ export interface LlmToolExecutorInput {
|
|
|
43
43
|
readonly call: LlmToolCall;
|
|
44
44
|
readonly signal: AbortSignal;
|
|
45
45
|
readonly attachImage?: (image: LlmToolImage) => void;
|
|
46
|
-
|
|
46
|
+
}
|
|
47
|
+
export interface SettledOptionLines {
|
|
48
|
+
readonly release: string;
|
|
49
|
+
readonly closing?: string;
|
|
47
50
|
}
|
|
48
51
|
export interface LlmToolImage {
|
|
49
52
|
readonly dataUrl: string;
|
|
@@ -86,6 +89,7 @@ export interface LlmToolLoopArgs {
|
|
|
86
89
|
readonly rounds: number;
|
|
87
90
|
readonly calls: number;
|
|
88
91
|
}) => void;
|
|
92
|
+
readonly settleOptionLines?: (held: string) => Promise<Result<SettledOptionLines>>;
|
|
89
93
|
readonly onToolRound?: (round: {
|
|
90
94
|
readonly round: number;
|
|
91
95
|
readonly calls: readonly LlmToolCall[];
|
package/intern/llm-tool-loop.js
CHANGED
|
@@ -3,6 +3,7 @@ import { isSseEnd, isSseError, isSseLine, } from "@vibes.diy/call-ai-v2";
|
|
|
3
3
|
import { composeAgentRequest, isRequestFrameMessage, withMovingCacheBreakpoint } from "./agent-request-frame.js";
|
|
4
4
|
import { rolloverAgentTranscript } from "./agent-settled-history.js";
|
|
5
5
|
import { providerStreamErrorMessage } from "../public/provider-errors.js";
|
|
6
|
+
import { createOptionLineHold } from "./option-line-hold.js";
|
|
6
7
|
const DEFAULT_MAX_TOOL_ROUNDS = 3;
|
|
7
8
|
const DEFAULT_MAX_TOOL_CALLS = 3;
|
|
8
9
|
export const MAX_TOOL_RESULT_CHARS = 8_192;
|
|
@@ -240,7 +241,6 @@ async function executeWithDeadline(execute, call, budget, now, parentSignal, sid
|
|
|
240
241
|
call,
|
|
241
242
|
signal: abort.signal,
|
|
242
243
|
...(sides.attachImage === undefined ? {} : { attachImage: sides.attachImage }),
|
|
243
|
-
...(sides.closeTurnWith === undefined ? {} : { closeTurnWith: sides.closeTurnWith }),
|
|
244
244
|
}));
|
|
245
245
|
let timeoutId;
|
|
246
246
|
let removeParentListener;
|
|
@@ -273,7 +273,41 @@ async function executeWithDeadline(execute, call, budget, now, parentSignal, sid
|
|
|
273
273
|
return Result.Err(rExecution.Err());
|
|
274
274
|
return Result.Ok(rExecution.Ok());
|
|
275
275
|
}
|
|
276
|
-
|
|
276
|
+
function holdContent(event, hold) {
|
|
277
|
+
let changed = false;
|
|
278
|
+
const choices = event.chunk.choices.map((choice) => {
|
|
279
|
+
const content = choice.delta.content;
|
|
280
|
+
if (typeof content !== "string" || content.length === 0)
|
|
281
|
+
return choice;
|
|
282
|
+
const shown = hold.feed(content);
|
|
283
|
+
if (shown === content)
|
|
284
|
+
return choice;
|
|
285
|
+
changed = true;
|
|
286
|
+
return { ...choice, delta: { ...choice.delta, content: shown } };
|
|
287
|
+
});
|
|
288
|
+
return changed ? { ...event, chunk: { ...event.chunk, choices } } : event;
|
|
289
|
+
}
|
|
290
|
+
async function settleHeldLines(args, round, textState, streamId) {
|
|
291
|
+
if (round === undefined || args.settleOptionLines === undefined)
|
|
292
|
+
return Result.Ok();
|
|
293
|
+
const held = round.hold.take();
|
|
294
|
+
if (held === "")
|
|
295
|
+
return Result.Ok();
|
|
296
|
+
const rSettled = held.trim() === "" ? Result.Ok({ release: held }) : await args.settleOptionLines(held);
|
|
297
|
+
if (rSettled.isErr())
|
|
298
|
+
return Result.Err(rSettled.Err());
|
|
299
|
+
const settled = rSettled.Ok();
|
|
300
|
+
if (settled.closing !== undefined)
|
|
301
|
+
round.closing.text = settled.closing === "" ? undefined : settled.closing;
|
|
302
|
+
const release = settled.closing === undefined ? settled.release : settled.release.trimEnd();
|
|
303
|
+
if (release.length === 0)
|
|
304
|
+
return Result.Ok();
|
|
305
|
+
const rVisible = await args.onVisible(applyRoundSeparator(closingLine({ streamId, text: release }), textState));
|
|
306
|
+
if (rVisible.isErr())
|
|
307
|
+
return Result.Err(String(rVisible.Err()));
|
|
308
|
+
return Result.Ok();
|
|
309
|
+
}
|
|
310
|
+
async function consumeProviderStream(args, stream, request, now, textState, round) {
|
|
277
311
|
const reader = stream.getReader();
|
|
278
312
|
const partials = [];
|
|
279
313
|
let sawToolCall = false;
|
|
@@ -333,7 +367,8 @@ async function consumeProviderStream(args, stream, request, now, textState) {
|
|
|
333
367
|
if (choice.finish_reason === "tool_calls")
|
|
334
368
|
sawToolFinish = true;
|
|
335
369
|
}
|
|
336
|
-
const
|
|
370
|
+
const shaped = sawToolCall ? stripToolCallDeltas(event) : event;
|
|
371
|
+
const rVisible = await args.onVisible(applyRoundSeparator(round === undefined ? shaped : holdContent(shaped, round.hold), textState));
|
|
337
372
|
if (rVisible.isErr())
|
|
338
373
|
return Result.Err(String(rVisible.Err()));
|
|
339
374
|
for (const choice of event.chunk.choices) {
|
|
@@ -343,6 +378,9 @@ async function consumeProviderStream(args, stream, request, now, textState) {
|
|
|
343
378
|
continue;
|
|
344
379
|
}
|
|
345
380
|
if (isSseEnd(event, event.streamId)) {
|
|
381
|
+
const rSettled = await settleHeldLines(args, round, textState, event.streamId);
|
|
382
|
+
if (rSettled.isErr())
|
|
383
|
+
return Result.Err(rSettled.Err());
|
|
346
384
|
if (sawToolCall === false) {
|
|
347
385
|
if (args.session !== undefined) {
|
|
348
386
|
completedNormally = true;
|
|
@@ -373,24 +411,24 @@ async function consumeProviderStream(args, stream, request, now, textState) {
|
|
|
373
411
|
}
|
|
374
412
|
}
|
|
375
413
|
function closeTurnBeforeTerminal(onVisible, closingWords) {
|
|
376
|
-
let
|
|
414
|
+
let tail = "";
|
|
377
415
|
return async function visible(event) {
|
|
378
416
|
if (isSseLine(event, event.streamId)) {
|
|
379
417
|
for (const choice of event.chunk.choices) {
|
|
380
418
|
const content = choice.delta.content;
|
|
381
419
|
if (typeof content === "string" && content.length > 0)
|
|
382
|
-
|
|
420
|
+
tail = (tail + content).slice(-2);
|
|
383
421
|
}
|
|
384
422
|
return onVisible(event);
|
|
385
423
|
}
|
|
386
424
|
const text = closingWords.text;
|
|
387
425
|
if (isSseEnd(event, event.streamId) && text !== undefined) {
|
|
388
426
|
closingWords.text = undefined;
|
|
389
|
-
const lead =
|
|
427
|
+
const lead = tail === "" || tail === "\n\n" ? "" : tail.endsWith("\n") ? "\n" : "\n\n";
|
|
390
428
|
const closed = await onVisible(closingLine({ streamId: event.streamId, text: lead + text }));
|
|
391
429
|
if (closed.isErr())
|
|
392
430
|
return closed;
|
|
393
|
-
|
|
431
|
+
tail = (tail + text).slice(-2);
|
|
394
432
|
}
|
|
395
433
|
return onVisible(event);
|
|
396
434
|
};
|
|
@@ -414,6 +452,7 @@ function closingLine(p) {
|
|
|
414
452
|
export async function runLlmToolLoop(loopArgs) {
|
|
415
453
|
const closingWords = {};
|
|
416
454
|
const args = { ...loopArgs, onVisible: closeTurnBeforeTerminal(loopArgs.onVisible, closingWords) };
|
|
455
|
+
const round = args.settleOptionLines === undefined ? undefined : { hold: createOptionLineHold(), closing: closingWords };
|
|
417
456
|
const now = args.now ?? (() => Date.now());
|
|
418
457
|
const maxToolRounds = args.maxToolRounds ?? DEFAULT_MAX_TOOL_ROUNDS;
|
|
419
458
|
const maxToolCalls = args.maxToolCalls ?? DEFAULT_MAX_TOOL_CALLS;
|
|
@@ -436,13 +475,13 @@ export async function runLlmToolLoop(loopArgs) {
|
|
|
436
475
|
};
|
|
437
476
|
try {
|
|
438
477
|
if ((currentRequest.tools === undefined || currentRequest.tools.length === 0) && args.session === undefined) {
|
|
439
|
-
const rInitial = await consumeProviderStream({ ...args, abort: currentAbort }, currentStream, currentRequest, now, textState);
|
|
478
|
+
const rInitial = await consumeProviderStream({ ...args, abort: currentAbort }, currentStream, currentRequest, now, textState, round);
|
|
440
479
|
if (rInitial.isErr())
|
|
441
480
|
return Result.Err(String(rInitial.Err()));
|
|
442
481
|
return Result.Ok({ request: currentRequest, rounds, calls });
|
|
443
482
|
}
|
|
444
483
|
while (true) {
|
|
445
|
-
const rStream = await consumeProviderStream({ ...args, budget, abort: currentAbort }, currentStream, currentRequest, now, textState);
|
|
484
|
+
const rStream = await consumeProviderStream({ ...args, budget, abort: currentAbort }, currentStream, currentRequest, now, textState, round);
|
|
446
485
|
if (rStream.isErr()) {
|
|
447
486
|
const error = rStream.Err();
|
|
448
487
|
if (error instanceof LlmToolLoopAbandonedError &&
|
|
@@ -562,12 +601,8 @@ export async function runLlmToolLoop(loopArgs) {
|
|
|
562
601
|
if (announced?.isErr())
|
|
563
602
|
return Result.Err(announced.Err());
|
|
564
603
|
const attached = [];
|
|
565
|
-
let closing;
|
|
566
604
|
const rTool = await executeWithDeadline(args.execute, call, budget, now, currentAbort?.signal, {
|
|
567
605
|
attachImage: (image) => attached.push(image),
|
|
568
|
-
closeTurnWith: (text) => {
|
|
569
|
-
closing = text;
|
|
570
|
-
},
|
|
571
606
|
});
|
|
572
607
|
if (currentAbort?.signal.aborted)
|
|
573
608
|
return Result.Err("LLM tool loop aborted by parent request");
|
|
@@ -579,8 +614,6 @@ export async function runLlmToolLoop(loopArgs) {
|
|
|
579
614
|
if (rTool.isOk())
|
|
580
615
|
for (const image of attached)
|
|
581
616
|
images.push(toolImageMessage(call.name, image));
|
|
582
|
-
if (rTool.isOk() && closing !== undefined)
|
|
583
|
-
closingWords.text = closing;
|
|
584
617
|
calls++;
|
|
585
618
|
}
|
|
586
619
|
if (images.length > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-tool-loop.js","sourceRoot":"","sources":["../../jsr/intern/llm-tool-loop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"llm-tool-loop.js","sourceRoot":"","sources":["../../jsr/intern/llm-tool-loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const MERCURY_CAPABILITY_TRIGGERS = "A trigger is an example, not a password: set a capability when the request implies it in any words, and none when the app needs none of them. composer is set only together with ai.\n- ai (a language model reads, writes or judges words or photos) when the request says or implies:\n - a sentence typed in turns into the record's fields\n - a pasted list gets sorted into groups\n - answers a question about the saved records\n - suggests what to make or do next from what is saved\n - summarizes a long note into a few lines\n - writes a caption, a blurb or a short poem\n - a chat reply in a made-up persona's voice\n - looks at a photo and says what is in it\n - gives feedback on, rates or roasts what someone wrote\n - translates or rewrites text in another tone\n - comes up with names, prompts or ideas on request\n - pulls the facts out of a pasted message or email\n - makes up a story, a riddle or a fortune\n- composer (records come in as the person's own words or photos, read by ai) when the request says or implies:\n - add entries in my own words, however I like (also ai)\n - paste a group chat and each item becomes a record (also ai)\n - type a line like 'basil and two tomatoes, bed 3' to add plants (also ai)\n - snap a photo of a receipt or label to add it (also ai)\n - jot a quick note and it gets filed in the right place (also ai)\n- imageGen (the app makes pictures) when the request says or implies:\n - draws a picture of each item\n - makes an avatar from a selfie\n - restyles a photo as a cartoon or a painting\n - a cover image for each story, album or book\n - illustrates each creature or character card\n - designs a logo or a badge\n - shows what something would look like before it exists\n - a colouring page or sticker made to order\n - a product shot for each listing\n- backend (server work the page cannot do on its own) when the request says or implies:\n - reminds me tomorrow morning (also calendar)\n - emails the manager every Monday (also calendar)\n - a weekly digest or summary sent to the owner\n - notifies someone when a new entry arrives\n - pulls a live feed, prices or weather from a website\n - reads a web page or API the person names\n - sends each new record to Slack or a Google Sheet\n - receives a webhook from a payment or code service\n - checks something every hour and keeps the latest\n - deals secret hands no other player can peek at (also boardGame)\n - nags me when something goes overdue (also calendar)\n- calendar (the app keeps dates) when the request says or implies:\n - a due date or deadline on each item\n - keeps a streak of days in a row\n - a shift schedule for the week\n - book an open time slot\n - something that repeats every Tuesday\n - a month view of what happened when\n - subscribe to it from my phone's calendar (also backend)\n - a timeline of dated moments\n - totals for each pay period\n - counts down the days to an event\n - shows how long since I last did it\n- audio (sound or music) when the request says or implies:\n - plays a sound on each tap\n - a drum machine or a beat pad\n - a metronome that keeps time\n - a little synth that plays notes\n - background music or ambient sound\n - records the mic and plays it back with an echo\n - a chime when the timer ends\n- threeD (a 3D world or scene) when the request says or implies:\n - a 3D scene you can spin and zoom\n - fly or drive through a world\n - a physics simulator with things that fall and bounce\n - a 3D model of a room, object or building\n - particles, glow and shader effects\n - a first-person walk around a place\n- charts (graphs, maps and statistics views) when the request says or implies:\n - a graph of progress over time\n - a heatmap of activity\n - a pie or bar chart of where the money went\n - a stats page with averages and bests\n - a map with pins\n - a histogram or a scatter of the entries\n - compares two things side by side in a chart\n- boardGame (a turn-based board, tile or card game) when the request says or implies:\n - bingo cards dealt per player\n - a daily word guess with a share grid\n - a crossword, word search or sudoku\n - chess, checkers, go or mancala\n - solitaire or another card game\n - a trivia room people answer in turn\n - a dice scoresheet with house rules\n - players take turns on a shared board\n - minesweeper, 2048 or tic-tac-toe\n- sensitive (health, real people's money, kids, or private) when the request says or implies:\n - tracks a medication, a symptom or a diagnosis\n - about my kid or a child in my care\n - a budget, debts, salary or what people owe\n - the word private, or only me\n - a mood or therapy journal";
|