@intentface/latch-core 0.9.1 → 0.10.0
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/dist/agent.d.ts +17 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js.map +1 -1
- package/dist/extensions/compose.d.ts +117 -0
- package/dist/extensions/compose.d.ts.map +1 -0
- package/dist/extensions/compose.js +249 -0
- package/dist/extensions/compose.js.map +1 -0
- package/dist/extensions/extension.d.ts +322 -0
- package/dist/extensions/extension.d.ts.map +1 -0
- package/dist/extensions/extension.js +171 -0
- package/dist/extensions/extension.js.map +1 -0
- package/dist/extensions/index.d.ts +11 -0
- package/dist/extensions/index.d.ts.map +1 -0
- package/dist/extensions/index.js +11 -0
- package/dist/extensions/index.js.map +1 -0
- package/dist/extensions/tools.d.ts +60 -0
- package/dist/extensions/tools.d.ts.map +1 -0
- package/dist/extensions/tools.js +229 -0
- package/dist/extensions/tools.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/runtime.d.ts +10 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +388 -43
- package/dist/runtime.js.map +1 -1
- package/dist/storage.d.ts +19 -0
- package/dist/storage.d.ts.map +1 -1
- package/dist/telemetry.d.ts +6 -0
- package/dist/telemetry.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/extensions.d.ts +0 -333
- package/dist/extensions.d.ts.map +0 -1
- package/dist/extensions.js +0 -569
- package/dist/extensions.js.map +0 -1
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
/** Prototype-safe lookup: a tool named `__proto__` must not resolve to Object.prototype. */
|
|
2
|
+
const getOwn = (o, k) => Object.prototype.hasOwnProperty.call(o, k) ? o[k] : undefined;
|
|
3
|
+
/**
|
|
4
|
+
* Wrap every executable tool so `tool_call` can veto and `tool_result` can
|
|
5
|
+
* rewrite what gets stored. With no listener on either moment the toolset is
|
|
6
|
+
* returned untouched — the identity of every tool object is preserved.
|
|
7
|
+
*
|
|
8
|
+
* The AI SDK's `executeTool` sniffs synchronously for `Symbol.asyncIterator`,
|
|
9
|
+
* so a wrapper that returns a promise turns a streaming tool into a
|
|
10
|
+
* non-streaming one: no progress chunks, and a generator object as the output.
|
|
11
|
+
* Two paths follow from that, chosen once per run:
|
|
12
|
+
*
|
|
13
|
+
* no `tool_call` listener call `execute` synchronously, pass the iterable
|
|
14
|
+
* through, hold one value back so the FINAL yield
|
|
15
|
+
* is the hooked one. Streaming preserved.
|
|
16
|
+
* a `tool_call` listener the veto is async and must resolve before
|
|
17
|
+
* `execute` runs, so the result is a promise and
|
|
18
|
+
* progress chunks are collapsed. A gated tool
|
|
19
|
+
* cannot also stream; that is the trade.
|
|
20
|
+
*/
|
|
21
|
+
export function wrapTools(tools, hooks, run) {
|
|
22
|
+
const gating = hooks.has("tool_call");
|
|
23
|
+
const hooked = gating || hooks.has("tool_result");
|
|
24
|
+
if (!hooked)
|
|
25
|
+
return tools;
|
|
26
|
+
const out = {};
|
|
27
|
+
for (const [toolName, t] of Object.entries(tools)) {
|
|
28
|
+
const execute = t.execute;
|
|
29
|
+
if (typeof execute !== "function") {
|
|
30
|
+
out[toolName] = t;
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Run `tool_result` over an outcome and return what the SDK should see.
|
|
35
|
+
* An `isError` override flips the outcome: a failure a handler marks
|
|
36
|
+
* `isError: false` is returned as a result, a result it marks `isError:
|
|
37
|
+
* true` is thrown so the SDK records a tool error — the model then sees
|
|
38
|
+
* whatever `output` the handler left, as it would any thrown value.
|
|
39
|
+
*/
|
|
40
|
+
const settle = async (input, toolCallId, output, isError) => {
|
|
41
|
+
const e = await hooks.toolResult({ toolName, toolCallId, input, output, isError, source: "server" }, run);
|
|
42
|
+
const finalOutput = e && e.output !== undefined ? e.output : output;
|
|
43
|
+
const finalIsError = e?.isError ?? isError;
|
|
44
|
+
if (finalIsError)
|
|
45
|
+
throw finalOutput;
|
|
46
|
+
return finalOutput;
|
|
47
|
+
};
|
|
48
|
+
const attempt = (fn) => fn();
|
|
49
|
+
out[toolName] = {
|
|
50
|
+
...t,
|
|
51
|
+
execute(input, o) {
|
|
52
|
+
if (gating) {
|
|
53
|
+
return (async () => {
|
|
54
|
+
const blocked = await hooks.toolCall({ toolName, toolCallId: o.toolCallId, input }, run);
|
|
55
|
+
if (blocked && "block" in blocked && blocked.block) {
|
|
56
|
+
const denial = {
|
|
57
|
+
blocked: true,
|
|
58
|
+
reason: blocked.reason ?? `The ${toolName} call was not allowed.`,
|
|
59
|
+
};
|
|
60
|
+
return settle(input, o.toolCallId, denial, false);
|
|
61
|
+
}
|
|
62
|
+
try {
|
|
63
|
+
const r = execute.call(t, input, o);
|
|
64
|
+
if (r != null && typeof r[Symbol.asyncIterator] === "function") {
|
|
65
|
+
let held;
|
|
66
|
+
for await (const v of r)
|
|
67
|
+
held = { v };
|
|
68
|
+
return await settle(input, o.toolCallId, held?.v, false);
|
|
69
|
+
}
|
|
70
|
+
return await settle(input, o.toolCallId, await r, false);
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
// A rejected execute is a tool result too — the failed kind. Let
|
|
74
|
+
// the hook see it; it may rescue it or rewrite the error.
|
|
75
|
+
return settle(input, o.toolCallId, error, true);
|
|
76
|
+
}
|
|
77
|
+
})();
|
|
78
|
+
}
|
|
79
|
+
// Streaming-safe path: no await before `execute`, no await before the sniff.
|
|
80
|
+
let result;
|
|
81
|
+
try {
|
|
82
|
+
result = execute.call(t, input, o);
|
|
83
|
+
}
|
|
84
|
+
catch (error) {
|
|
85
|
+
return settle(input, o.toolCallId, error, true);
|
|
86
|
+
}
|
|
87
|
+
if (result != null && typeof result[Symbol.asyncIterator] === "function") {
|
|
88
|
+
return (async function* () {
|
|
89
|
+
let held;
|
|
90
|
+
try {
|
|
91
|
+
for await (const v of result) {
|
|
92
|
+
if (held)
|
|
93
|
+
yield held.v;
|
|
94
|
+
held = { v };
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
catch (error) {
|
|
98
|
+
yield await settle(input, o.toolCallId, error, true);
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
if (held)
|
|
102
|
+
yield await settle(input, o.toolCallId, held.v, false);
|
|
103
|
+
})();
|
|
104
|
+
}
|
|
105
|
+
return attempt(() => Promise.resolve(result)).then((v) => settle(input, o.toolCallId, v, false), (error) => settle(input, o.toolCallId, error, true));
|
|
106
|
+
},
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
return out;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Fire `tool_result` for outputs a CLIENT produced.
|
|
113
|
+
*
|
|
114
|
+
* A client tool has no server `execute`, so the wrapper above never sees it:
|
|
115
|
+
* its output arrives in a later request, already in the transcript. Without
|
|
116
|
+
* this, an extension that inspects or redacts tool results silently covers
|
|
117
|
+
* server tools only, while the type promises both.
|
|
118
|
+
*
|
|
119
|
+
* Only parts after the last `step-start` are considered — the same slice the
|
|
120
|
+
* SDK's own auto-resubmit uses — so outputs an earlier run already handled are
|
|
121
|
+
* not fired again.
|
|
122
|
+
*/
|
|
123
|
+
export async function fireClientToolResults(messages, tools, hooks, run) {
|
|
124
|
+
const i = messages.length - 1;
|
|
125
|
+
const last = messages[i];
|
|
126
|
+
if (!last || last.role !== "assistant")
|
|
127
|
+
return messages;
|
|
128
|
+
const parts = last.parts;
|
|
129
|
+
let from = 0;
|
|
130
|
+
for (let k = parts.length - 1; k >= 0; k--)
|
|
131
|
+
if (parts[k].type === "step-start") {
|
|
132
|
+
from = k;
|
|
133
|
+
break;
|
|
134
|
+
}
|
|
135
|
+
const next = [...parts];
|
|
136
|
+
let changed = false;
|
|
137
|
+
for (let k = from; k < parts.length; k++) {
|
|
138
|
+
const p = parts[k];
|
|
139
|
+
const isTool = p.type.startsWith("tool-") || p.type === "dynamic-tool";
|
|
140
|
+
if (!isTool || !p.toolCallId)
|
|
141
|
+
continue;
|
|
142
|
+
if (p.state !== "output-available" && p.state !== "output-error")
|
|
143
|
+
continue;
|
|
144
|
+
const name = p.type === "dynamic-tool" ? (p.toolName ?? "") : p.type.slice("tool-".length);
|
|
145
|
+
const t = getOwn(tools, name);
|
|
146
|
+
if (typeof t?.execute === "function")
|
|
147
|
+
continue; // a server tool; already hooked
|
|
148
|
+
const e = await hooks.toolResult({
|
|
149
|
+
toolName: name,
|
|
150
|
+
toolCallId: p.toolCallId,
|
|
151
|
+
input: p.input,
|
|
152
|
+
output: p.output,
|
|
153
|
+
isError: p.state === "output-error",
|
|
154
|
+
source: "client",
|
|
155
|
+
}, run);
|
|
156
|
+
if (e && e.output !== undefined) {
|
|
157
|
+
next[k] = { ...p, output: e.output };
|
|
158
|
+
changed = true;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return changed ? [...messages.slice(0, i), { ...last, parts: next }] : messages;
|
|
162
|
+
}
|
|
163
|
+
/** Append parts onto the run's assistant message (or start one). */
|
|
164
|
+
export function appendParts(messages, parts) {
|
|
165
|
+
if (!parts.length)
|
|
166
|
+
return messages;
|
|
167
|
+
const i = messages.length - 1;
|
|
168
|
+
const last = messages[i];
|
|
169
|
+
if (!last || last.role !== "assistant")
|
|
170
|
+
return [...messages, { id: crypto.randomUUID(), role: "assistant", parts }];
|
|
171
|
+
return [...messages.slice(0, i), { ...last, parts: [...last.parts, ...parts] }];
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Fold `step_end` parts into an assistant message the SDK assembled without
|
|
175
|
+
* them: each step's appended parts go before the NEXT `step-start`, the last
|
|
176
|
+
* step's at the end — exactly where an append at that step boundary would have
|
|
177
|
+
* landed. `priorSteps` skips step-start parts the message already carried
|
|
178
|
+
* before this run (a continuation reuses the assistant message).
|
|
179
|
+
*/
|
|
180
|
+
export function insertStepParts(message, appendedByStep, priorSteps = 0) {
|
|
181
|
+
if (!appendedByStep.size)
|
|
182
|
+
return message;
|
|
183
|
+
const out = [];
|
|
184
|
+
let seen = 0;
|
|
185
|
+
let step = -1;
|
|
186
|
+
for (const p of message.parts) {
|
|
187
|
+
if (p.type === "step-start") {
|
|
188
|
+
seen++;
|
|
189
|
+
if (seen > priorSteps) {
|
|
190
|
+
if (step >= 0)
|
|
191
|
+
out.push(...(appendedByStep.get(step) ?? []));
|
|
192
|
+
step++;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
out.push(p);
|
|
196
|
+
}
|
|
197
|
+
if (step >= 0)
|
|
198
|
+
out.push(...(appendedByStep.get(step) ?? []));
|
|
199
|
+
return { ...message, parts: out };
|
|
200
|
+
}
|
|
201
|
+
/** The text of the newest user message, if any. */
|
|
202
|
+
export const lastUserTextOf = (messages) => {
|
|
203
|
+
for (let i = messages.length - 1; i >= 0; i--) {
|
|
204
|
+
const m = messages[i];
|
|
205
|
+
if (m.role !== "user")
|
|
206
|
+
continue;
|
|
207
|
+
const t = m.parts.find((p) => p.type === "text");
|
|
208
|
+
return t?.text;
|
|
209
|
+
}
|
|
210
|
+
return undefined;
|
|
211
|
+
};
|
|
212
|
+
/** Rewrite the first text part of the newest user message (an `input` transform). */
|
|
213
|
+
export const replaceLastUserText = (messages, text) => {
|
|
214
|
+
for (let i = messages.length - 1; i >= 0; i--) {
|
|
215
|
+
const m = messages[i];
|
|
216
|
+
if (m.role !== "user")
|
|
217
|
+
continue;
|
|
218
|
+
let done = false;
|
|
219
|
+
const parts = m.parts.map((p) => {
|
|
220
|
+
if (done || p.type !== "text")
|
|
221
|
+
return p;
|
|
222
|
+
done = true;
|
|
223
|
+
return { ...p, text };
|
|
224
|
+
});
|
|
225
|
+
return [...messages.slice(0, i), { ...m, parts }, ...messages.slice(i + 1)];
|
|
226
|
+
}
|
|
227
|
+
return messages;
|
|
228
|
+
};
|
|
229
|
+
//# sourceMappingURL=tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/extensions/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,uBAAuB,CAAC"}
|
package/dist/runtime.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ import { type PromptCachingPlan } from "./prompt-caching.js";
|
|
|
9
9
|
import type { TurnTrigger, LatchTelemetry } from "./telemetry.js";
|
|
10
10
|
import { type LatchLimits } from "./limits.js";
|
|
11
11
|
import type { ChatRecord, RunRecord, RunStatus, ScheduleRecord, StorageAdapter } from "./storage.js";
|
|
12
|
+
import { type Extension } from "./extensions/index.js";
|
|
12
13
|
/**
|
|
13
14
|
* The Runtime — composition root + operations facade.
|
|
14
15
|
*
|
|
@@ -230,6 +231,15 @@ export interface RuntimeConfig<P, RuntimeContext = unknown> {
|
|
|
230
231
|
* finish. Optional — without it, nothing is limited.
|
|
231
232
|
*/
|
|
232
233
|
limits?: LatchLimits<P>;
|
|
234
|
+
/**
|
|
235
|
+
* Extensions attached to EVERY turn this runtime runs, before the agent's
|
|
236
|
+
* own (`AgentConfig.extensions`). An extension attaches handlers to the
|
|
237
|
+
* moments of a turn and returns effects — see `extensions/extension.ts`.
|
|
238
|
+
* Optional — with none attached every moment is a no-op and a turn is
|
|
239
|
+
* byte-identical to a runtime without the seam. Order matters for
|
|
240
|
+
* `step_end`: list an extension that persists before ones that observe.
|
|
241
|
+
*/
|
|
242
|
+
extensions?: Extension[];
|
|
233
243
|
}
|
|
234
244
|
export interface HandleChatInput<P> {
|
|
235
245
|
/** Which registered agent to run. */
|
package/dist/runtime.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,2BAA2B,
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|