@namzu/sdk 45.1.0 → 46.0.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.
Files changed (118) hide show
  1. package/CHANGELOG.md +111 -0
  2. package/dist/authorization/gate.d.ts +5 -2
  3. package/dist/authorization/gate.d.ts.map +1 -1
  4. package/dist/authorization/gate.js +25 -4
  5. package/dist/authorization/gate.js.map +1 -1
  6. package/dist/authorization/rules.d.ts.map +1 -1
  7. package/dist/authorization/rules.js +19 -0
  8. package/dist/authorization/rules.js.map +1 -1
  9. package/dist/authorization/shell-lexer.d.ts +24 -0
  10. package/dist/authorization/shell-lexer.d.ts.map +1 -1
  11. package/dist/authorization/shell-lexer.js +69 -51
  12. package/dist/authorization/shell-lexer.js.map +1 -1
  13. package/dist/pricing/catalogue.generated.d.ts.map +1 -1
  14. package/dist/pricing/catalogue.generated.js +28 -4
  15. package/dist/pricing/catalogue.generated.js.map +1 -1
  16. package/dist/public-runtime.d.ts +3 -3
  17. package/dist/public-runtime.d.ts.map +1 -1
  18. package/dist/public-runtime.js +4 -2
  19. package/dist/public-runtime.js.map +1 -1
  20. package/dist/public-tools.d.ts +3 -2
  21. package/dist/public-tools.d.ts.map +1 -1
  22. package/dist/public-tools.js +5 -2
  23. package/dist/public-tools.js.map +1 -1
  24. package/dist/public-types.d.ts +3 -3
  25. package/dist/public-types.d.ts.map +1 -1
  26. package/dist/registry/tool/callable.d.ts +22 -0
  27. package/dist/registry/tool/callable.d.ts.map +1 -0
  28. package/dist/registry/tool/callable.js +29 -0
  29. package/dist/registry/tool/callable.js.map +1 -0
  30. package/dist/registry/tool/execute.d.ts.map +1 -1
  31. package/dist/registry/tool/execute.js +8 -1
  32. package/dist/registry/tool/execute.js.map +1 -1
  33. package/dist/runtime/query/executor/tool-call-admission.d.ts +37 -11
  34. package/dist/runtime/query/executor/tool-call-admission.d.ts.map +1 -1
  35. package/dist/runtime/query/executor/tool-call-admission.js +38 -12
  36. package/dist/runtime/query/executor/tool-call-admission.js.map +1 -1
  37. package/dist/runtime/query/executor.d.ts +4 -2
  38. package/dist/runtime/query/executor.d.ts.map +1 -1
  39. package/dist/runtime/query/executor.js +18 -5
  40. package/dist/runtime/query/executor.js.map +1 -1
  41. package/dist/runtime/query/review-policy.d.ts +43 -0
  42. package/dist/runtime/query/review-policy.d.ts.map +1 -1
  43. package/dist/runtime/query/review-policy.js +59 -16
  44. package/dist/runtime/query/review-policy.js.map +1 -1
  45. package/dist/skills/registry.d.ts +6 -0
  46. package/dist/skills/registry.d.ts.map +1 -1
  47. package/dist/skills/registry.js +1 -0
  48. package/dist/skills/registry.js.map +1 -1
  49. package/dist/tools/builtins/computer-use-coordinates.d.ts +65 -0
  50. package/dist/tools/builtins/computer-use-coordinates.d.ts.map +1 -0
  51. package/dist/tools/builtins/computer-use-coordinates.js +123 -0
  52. package/dist/tools/builtins/computer-use-coordinates.js.map +1 -0
  53. package/dist/tools/builtins/computer-use-image.d.ts +77 -0
  54. package/dist/tools/builtins/computer-use-image.d.ts.map +1 -0
  55. package/dist/tools/builtins/computer-use-image.js +223 -0
  56. package/dist/tools/builtins/computer-use-image.js.map +1 -0
  57. package/dist/tools/builtins/computer-use.d.ts +519 -14
  58. package/dist/tools/builtins/computer-use.d.ts.map +1 -1
  59. package/dist/tools/builtins/computer-use.js +1188 -183
  60. package/dist/tools/builtins/computer-use.js.map +1 -1
  61. package/dist/tools/builtins/index.d.ts +2 -1
  62. package/dist/tools/builtins/index.d.ts.map +1 -1
  63. package/dist/tools/builtins/index.js +1 -1
  64. package/dist/tools/builtins/index.js.map +1 -1
  65. package/dist/tools/builtins/skill.d.ts +74 -0
  66. package/dist/tools/builtins/skill.d.ts.map +1 -1
  67. package/dist/tools/builtins/skill.js +214 -174
  68. package/dist/tools/builtins/skill.js.map +1 -1
  69. package/dist/tools/defineTool.d.ts +2 -0
  70. package/dist/tools/defineTool.d.ts.map +1 -1
  71. package/dist/tools/defineTool.js +7 -0
  72. package/dist/tools/defineTool.js.map +1 -1
  73. package/dist/tools/schedules/present.d.ts.map +1 -1
  74. package/dist/tools/schedules/present.js +2 -0
  75. package/dist/tools/schedules/present.js.map +1 -1
  76. package/dist/tools/schedules/schedule-tool.d.ts +6 -5
  77. package/dist/tools/schedules/schedule-tool.d.ts.map +1 -1
  78. package/dist/tools/schedules/schedule-tool.js +121 -30
  79. package/dist/tools/schedules/schedule-tool.js.map +1 -1
  80. package/dist/tools/schedules/types.d.ts +69 -1
  81. package/dist/tools/schedules/types.d.ts.map +1 -1
  82. package/dist/types/authorization/index.d.ts +21 -0
  83. package/dist/types/authorization/index.d.ts.map +1 -1
  84. package/dist/types/authorization/index.js +5 -0
  85. package/dist/types/authorization/index.js.map +1 -1
  86. package/dist/types/computer-use/index.d.ts +176 -0
  87. package/dist/types/computer-use/index.d.ts.map +1 -1
  88. package/dist/types/computer-use/index.js.map +1 -1
  89. package/dist/types/tool/index.d.ts +19 -0
  90. package/dist/types/tool/index.d.ts.map +1 -1
  91. package/dist/types/tool/index.js.map +1 -1
  92. package/package.json +3 -1
  93. package/src/authorization/gate.ts +25 -4
  94. package/src/authorization/rules.ts +18 -0
  95. package/src/authorization/shell-lexer.ts +73 -45
  96. package/src/pricing/catalogue.generated.ts +28 -4
  97. package/src/pricing/rates.source.json +27 -6
  98. package/src/public-runtime.ts +16 -2
  99. package/src/public-tools.ts +19 -1
  100. package/src/public-types.ts +5 -0
  101. package/src/registry/tool/callable.ts +37 -0
  102. package/src/registry/tool/execute.ts +8 -1
  103. package/src/runtime/query/executor/tool-call-admission.ts +60 -16
  104. package/src/runtime/query/executor.ts +19 -4
  105. package/src/runtime/query/review-policy.ts +103 -15
  106. package/src/skills/registry.ts +8 -0
  107. package/src/tools/builtins/computer-use-coordinates.ts +144 -0
  108. package/src/tools/builtins/computer-use-image.ts +278 -0
  109. package/src/tools/builtins/computer-use.ts +1485 -191
  110. package/src/tools/builtins/index.ts +7 -1
  111. package/src/tools/builtins/skill.ts +304 -174
  112. package/src/tools/defineTool.ts +10 -0
  113. package/src/tools/schedules/present.ts +2 -0
  114. package/src/tools/schedules/schedule-tool.ts +139 -33
  115. package/src/tools/schedules/types.ts +69 -1
  116. package/src/types/authorization/index.ts +21 -0
  117. package/src/types/computer-use/index.ts +202 -0
  118. package/src/types/tool/index.ts +19 -0
@@ -4,22 +4,6 @@ import { parseAllowedTools } from '../../authorization/skill-grant.js';
4
4
  import { isInvocableBy, skillInvocation } from '../../types/skills/index.js';
5
5
  import { defineTool } from '../defineTool.js';
6
6
  export { parseAllowedTools };
7
- /**
8
- * Load a skill's instructions, and apply what its `allowed-tools` grants.
9
- *
10
- * The manifest in the system prompt told the model that a SKILL.md exists
11
- * and to "read the SKILL.md at its <location> before writing code" — which
12
- * is a filesystem instruction, so a turn with no filesystem tools could see
13
- * every skill it had and open none of them. There was no skill-loading tool.
14
- *
15
- * `allowed-tools` is a PRE-APPROVAL, as the Agent Skills format defines it:
16
- * the listed tools skip the approval prompt for the rest of this turn, and
17
- * every other tool stays callable under the turn's ordinary review. It was
18
- * read here for a while as a restriction — the listed tools and nothing
19
- * else, from the next batch — which inverted what skill authors mean by it
20
- * and left a model that loaded `allowed-tools: Read Grep` without `bash`.
21
- * See `authorization/skill-grant.ts` for what a grant can and cannot do.
22
- */
23
7
  const inputSchema = z.object({
24
8
  name: z
25
9
  .string()
@@ -46,6 +30,7 @@ function snapshotDigest(snapshot) {
46
30
  ...(snapshot.skillDirectory === undefined
47
31
  ? {}
48
32
  : { skillDirectory: snapshot.skillDirectory }),
33
+ ...(snapshot.header === '' ? {} : { header: snapshot.header }),
49
34
  invocation: snapshot.invocation,
50
35
  }))
51
36
  .digest('base64url');
@@ -155,7 +140,9 @@ function continuationNotice(name, cursor) {
155
140
  }
156
141
  function pageSkillBody(input) {
157
142
  const { snapshot, digest, start, notice, maxChars } = input;
158
- const remaining = `${snapshot.body.slice(start)}${notice}`;
143
+ // The first page only: a continuation is read after it, in the same history.
144
+ const header = start === 0 ? snapshot.header : '';
145
+ const remaining = `${header}${snapshot.body.slice(start)}${notice}`;
159
146
  if (maxChars === undefined || maxChars <= 0 || remaining.length <= maxChars) {
160
147
  return { output: remaining };
161
148
  }
@@ -165,7 +152,7 @@ function pageSkillBody(input) {
165
152
  let end = boundaryAtOrBefore(snapshot.body, Math.min(snapshot.body.length - 1, start + maxChars));
166
153
  while (end > start) {
167
154
  const nextCursor = cursorFor(end, digest);
168
- const output = `${snapshot.body.slice(start, end)}${continuationNotice(snapshot.name, nextCursor)}${notice}`;
155
+ const output = `${header}${snapshot.body.slice(start, end)}${continuationNotice(snapshot.name, nextCursor)}${notice}`;
169
156
  if (output.length <= maxChars)
170
157
  return { output, nextCursor };
171
158
  end = boundaryAtOrBefore(snapshot.body, end - Math.max(1, output.length - maxChars));
@@ -173,192 +160,245 @@ function pageSkillBody(input) {
173
160
  return undefined;
174
161
  }
175
162
  export const SKILL_TOOL_NAME = 'skill';
176
- export const SkillTool = defineTool({
177
- name: SKILL_TOOL_NAME,
178
- description: 'Lists model-invocable skills when called without a name, or loads one skill by its exact listed name. Long lists and bodies return an opaque continuation cursor; keep calling in the same mode with that cursor until no continuation remains. The manifest carries only names and descriptions.',
179
- inputSchema,
180
- category: 'analysis',
181
- permissions: [],
182
- // Reads instructions and changes nothing on disk. What it does change is
183
- // the turn's approvals, through `grantSkillTools`, and only ever towards
184
- // fewer prompts for calls the operator's policy already leaves to review.
185
- readOnly: true,
186
- destructive: false,
187
- concurrencySafe: true,
188
- // The body is instructions for the model, often a hundred lines; the
189
- // person needs the row that says which skill was read, not the text.
190
- presentCall(input) {
191
- const name = typeof input?.name === 'string' ? input.name : undefined;
192
- return {
193
- kind: 'generic',
194
- presentation: 'activity',
195
- label: name === undefined
196
- ? input?.cursor === undefined
197
- ? 'List skills'
198
- : 'List more skills'
199
- : `Read skill ${name}${input.cursor === undefined ? '' : ' (continued)'}`,
200
- };
201
- },
202
- presentResult: (_input, result) => result.success ? { kind: 'generic', label: 'read', visibility: 'hidden' } : undefined,
203
- async execute(input, context) {
204
- if (!context.skills) {
163
+ /**
164
+ * Build the `skill` tool, with what the host knows about where its model's
165
+ * tools run. {@link SkillTool} is this with no options.
166
+ */
167
+ export function createSkillTool(options = {}) {
168
+ const resolveModelDirectory = options.resolveModelDirectory;
169
+ return defineTool({
170
+ name: SKILL_TOOL_NAME,
171
+ description: 'Lists model-invocable skills when called without a name, or loads one skill by its exact listed name. Long lists and bodies return an opaque continuation cursor; keep calling in the same mode with that cursor until no continuation remains. The manifest carries only names and descriptions.',
172
+ inputSchema,
173
+ category: 'analysis',
174
+ permissions: [],
175
+ // Reads instructions and changes nothing on disk. What it does change is
176
+ // the turn's approvals, through `grantSkillTools`, and only ever towards
177
+ // fewer prompts for calls the operator's policy already leaves to review.
178
+ readOnly: true,
179
+ destructive: false,
180
+ concurrencySafe: true,
181
+ // The body is instructions for the model, often a hundred lines; the
182
+ // person needs the row that says which skill was read, not the text.
183
+ presentCall(input) {
184
+ const name = typeof input?.name === 'string' ? input.name : undefined;
205
185
  return {
206
- success: false,
207
- output: '',
208
- error: 'This turn has no skills registry, so there is nothing to load. Proceed without the skill.',
186
+ kind: 'generic',
187
+ presentation: 'activity',
188
+ label: name === undefined
189
+ ? input?.cursor === undefined
190
+ ? 'List skills'
191
+ : 'List more skills'
192
+ : `Read skill ${name}${input.cursor === undefined ? '' : ' (continued)'}`,
209
193
  };
210
- }
211
- if (input.name === undefined) {
212
- if (!context.skills.catalog) {
194
+ },
195
+ presentResult: (_input, result) => result.success ? { kind: 'generic', label: 'read', visibility: 'hidden' } : undefined,
196
+ async execute(input, context) {
197
+ if (!context.skills) {
198
+ return {
199
+ success: false,
200
+ output: '',
201
+ error: 'This turn has no skills registry, so there is nothing to load. Proceed without the skill.',
202
+ };
203
+ }
204
+ if (input.name === undefined) {
205
+ if (!context.skills.catalog) {
206
+ return {
207
+ success: false,
208
+ output: '',
209
+ error: 'This skills registry cannot enumerate model-safe metadata. Use a skill name from the available-skills manifest.',
210
+ };
211
+ }
212
+ const directoryContext = directoryContextOf(context.sandbox);
213
+ const skills = await Promise.all((await context.skills.catalog())
214
+ .filter((entry) => entry.invocation === undefined ||
215
+ entry.invocation === 'model' ||
216
+ entry.invocation === 'both')
217
+ .map(async (entry) => {
218
+ // With a resolver the registry's `location` is left out, not
219
+ // shown beside the directory: it is the host's path, the one
220
+ // a sandboxed model cannot open.
221
+ let where;
222
+ if (resolveModelDirectory) {
223
+ const directory = nonEmpty(await resolveModelDirectory({ name: entry.registeredName, directory: entry.directory }, directoryContext));
224
+ where = directory === undefined ? {} : { directory };
225
+ }
226
+ else {
227
+ where = { location: entry.location };
228
+ }
229
+ return {
230
+ name: entry.registeredName,
231
+ description: entry.description,
232
+ ...where,
233
+ ...(entry.allowedTools === undefined ? {} : { allowedTools: entry.allowedTools }),
234
+ };
235
+ }));
236
+ const maxChars = activeOutputCap(context.maxToolOutputChars);
237
+ const digest = listDigest(skills, maxChars);
238
+ let start = 0;
239
+ let warningAlreadyShown = false;
240
+ if (input.cursor !== undefined) {
241
+ const parsed = parseListCursor(input.cursor);
242
+ if (!parsed || parsed.digest !== digest || parsed.offset >= skills.length) {
243
+ return {
244
+ success: false,
245
+ output: '',
246
+ error: 'The skill-list continuation cursor is stale or invalid. Call skill again without a cursor to read the current catalog.',
247
+ };
248
+ }
249
+ start = parsed.offset;
250
+ warningAlreadyShown = parsed.warned;
251
+ }
252
+ const page = pageSkillCatalog({
253
+ skills,
254
+ digest,
255
+ start,
256
+ warningAlreadyShown,
257
+ maxChars,
258
+ });
259
+ if (!page) {
260
+ return {
261
+ success: false,
262
+ output: '',
263
+ error: 'The model-visible tool-output budget is too small to list skill metadata safely. Increase maxToolOutputChars and retry.',
264
+ };
265
+ }
266
+ return {
267
+ success: true,
268
+ output: serializeListPage(page),
269
+ data: {
270
+ kind: 'list',
271
+ count: page.skills.length,
272
+ ...(page.nextCursor === null ? {} : { nextCursor: page.nextCursor }),
273
+ },
274
+ };
275
+ }
276
+ // The registry answers with a load RESULT, not a skill — the shape
277
+ // mirrors the implementation rather than an adapter, so there is
278
+ // nothing between them to drift.
279
+ const loaded = await context.skills.load(input.name);
280
+ if (!loaded) {
281
+ // Named, with what IS available. A bare "not found" sends the model
282
+ // guessing at spellings, and the manifest it is guessing from is
283
+ // right there in its own prompt.
284
+ const available = context.skills.names();
285
+ return {
286
+ success: false,
287
+ output: '',
288
+ error: `No skill named "${input.name}". Available: ${available.length > 0 ? available.join(', ') : '(none)'}`,
289
+ };
290
+ }
291
+ const skill = loaded.skill;
292
+ const invocation = skillInvocation(skill);
293
+ if (!isInvocableBy(skill, 'model')) {
294
+ // Reachable even though the manifest omits it: the model can name
295
+ // anything, and a check that only filtered the listing would be a
296
+ // menu restriction rather than a kitchen one — the exact defect
297
+ // `allowedTools` had before it was enforced at dispatch.
213
298
  return {
214
299
  success: false,
215
300
  output: '',
216
- error: 'This skills registry cannot enumerate model-safe metadata. Use a skill name from the available-skills manifest.',
301
+ error: `The skill "${input.name}" is ${skillInvocation(skill)}-invocable; it is not for you to run.`,
217
302
  };
218
303
  }
219
- const skills = (await context.skills.catalog())
220
- .filter((entry) => entry.invocation === undefined ||
221
- entry.invocation === 'model' ||
222
- entry.invocation === 'both')
223
- .map((entry) => ({
224
- name: entry.registeredName,
225
- description: entry.description,
226
- location: entry.location,
227
- ...(entry.allowedTools === undefined ? {} : { allowedTools: entry.allowedTools }),
228
- }));
229
- const maxChars = activeOutputCap(context.maxToolOutputChars);
230
- const digest = listDigest(skills, maxChars);
304
+ const allowed = parseAllowedTools(skill.metadata.allowedTools);
305
+ // Asked on every call, first page or continuation: the digest binds
306
+ // the answer, so a mount that changed between pages is a stale cursor
307
+ // rather than a second half written for a different directory.
308
+ const modelDirectory = resolveModelDirectory
309
+ ? nonEmpty(await resolveModelDirectory({ name: input.name, directory: skill.dirPath }, directoryContextOf(context.sandbox)))
310
+ : undefined;
311
+ const snapshot = {
312
+ name: input.name,
313
+ body: skill.body ?? '(this skill has no body)',
314
+ allowedTools: allowed,
315
+ // The model's path when the host gave one: `${CLAUDE_SKILL_DIR}` in a
316
+ // pattern is matched against a command line the model writes, and it
317
+ // writes the path it was told.
318
+ skillDirectory: resolveModelDirectory ? modelDirectory : skill.dirPath,
319
+ header: resolveModelDirectory ? directoryHeader(modelDirectory) : '',
320
+ invocation,
321
+ };
322
+ const digest = snapshotDigest(snapshot);
231
323
  let start = 0;
232
- let warningAlreadyShown = false;
233
324
  if (input.cursor !== undefined) {
234
- const parsed = parseListCursor(input.cursor);
235
- if (!parsed || parsed.digest !== digest || parsed.offset >= skills.length) {
325
+ const parsed = parseCursor(input.cursor);
326
+ if (!parsed ||
327
+ parsed.digest !== digest ||
328
+ parsed.offset >= snapshot.body.length ||
329
+ !isCodePointBoundary(snapshot.body, parsed.offset)) {
236
330
  return {
237
331
  success: false,
238
332
  output: '',
239
- error: 'The skill-list continuation cursor is stale or invalid. Call skill again without a cursor to read the current catalog.',
333
+ error: `The continuation cursor for "${input.name}" is stale or invalid. Call skill again without a cursor to read the current instructions.`,
240
334
  };
241
335
  }
242
336
  start = parsed.offset;
243
- warningAlreadyShown = parsed.warned;
244
337
  }
245
- const page = pageSkillCatalog({
246
- skills,
338
+ // Compiled before paging so the notice can say what the grant is, and
339
+ // committed only after paging succeeded: a load that fails here gave
340
+ // the model no instructions, so it must not have approved anything.
341
+ // Idempotent: a continuation call grants the same entries again, and
342
+ // the turn's set keeps one copy.
343
+ let grant;
344
+ if (allowed !== undefined && allowed.length > 0 && context.grantSkillTools) {
345
+ grant = context.grantSkillTools({
346
+ skill: skill.metadata.name,
347
+ allowedTools: allowed,
348
+ ...(snapshot.skillDirectory ? { skillDirectory: snapshot.skillDirectory } : {}),
349
+ });
350
+ }
351
+ const notice = grantNotice(allowed, grant, context.grantSkillTools !== undefined);
352
+ const page = pageSkillBody({
353
+ snapshot,
247
354
  digest,
248
355
  start,
249
- warningAlreadyShown,
250
- maxChars,
356
+ notice,
357
+ maxChars: context.maxToolOutputChars,
251
358
  });
252
359
  if (!page) {
253
360
  return {
254
361
  success: false,
255
362
  output: '',
256
- error: 'The model-visible tool-output budget is too small to list skill metadata safely. Increase maxToolOutputChars and retry.',
363
+ error: `The model-visible tool-output budget is too small to read "${input.name}" safely. Increase maxToolOutputChars and retry.`,
257
364
  };
258
365
  }
366
+ grant?.commit();
259
367
  return {
260
368
  success: true,
261
- output: serializeListPage(page),
369
+ output: page.output,
262
370
  data: {
263
- kind: 'list',
264
- count: page.skills.length,
265
- ...(page.nextCursor === null ? {} : { nextCursor: page.nextCursor }),
371
+ skill: skill.metadata.name,
372
+ ...(modelDirectory === undefined ? {} : { directory: modelDirectory }),
373
+ ...(allowed === undefined ? {} : { allowedTools: allowed }),
374
+ ...(grant ? { granted: grant.granted, ignored: grant.ignored } : {}),
375
+ ...(page.nextCursor === undefined ? {} : { nextCursor: page.nextCursor }),
266
376
  },
267
377
  };
268
- }
269
- // The registry answers with a load RESULT, not a skill — the shape
270
- // mirrors the implementation rather than an adapter, so there is
271
- // nothing between them to drift.
272
- const loaded = await context.skills.load(input.name);
273
- if (!loaded) {
274
- // Named, with what IS available. A bare "not found" sends the model
275
- // guessing at spellings, and the manifest it is guessing from is
276
- // right there in its own prompt.
277
- const available = context.skills.names();
278
- return {
279
- success: false,
280
- output: '',
281
- error: `No skill named "${input.name}". Available: ${available.length > 0 ? available.join(', ') : '(none)'}`,
282
- };
283
- }
284
- const skill = loaded.skill;
285
- const invocation = skillInvocation(skill);
286
- if (!isInvocableBy(skill, 'model')) {
287
- // Reachable even though the manifest omits it: the model can name
288
- // anything, and a check that only filtered the listing would be a
289
- // menu restriction rather than a kitchen one — the exact defect
290
- // `allowedTools` had before it was enforced at dispatch.
291
- return {
292
- success: false,
293
- output: '',
294
- error: `The skill "${input.name}" is ${skillInvocation(skill)}-invocable; it is not for you to run.`,
295
- };
296
- }
297
- const allowed = parseAllowedTools(skill.metadata.allowedTools);
298
- const snapshot = {
299
- name: input.name,
300
- body: skill.body ?? '(this skill has no body)',
301
- allowedTools: allowed,
302
- skillDirectory: skill.dirPath,
303
- invocation,
304
- };
305
- const digest = snapshotDigest(snapshot);
306
- let start = 0;
307
- if (input.cursor !== undefined) {
308
- const parsed = parseCursor(input.cursor);
309
- if (!parsed ||
310
- parsed.digest !== digest ||
311
- parsed.offset >= snapshot.body.length ||
312
- !isCodePointBoundary(snapshot.body, parsed.offset)) {
313
- return {
314
- success: false,
315
- output: '',
316
- error: `The continuation cursor for "${input.name}" is stale or invalid. Call skill again without a cursor to read the current instructions.`,
317
- };
318
- }
319
- start = parsed.offset;
320
- }
321
- // Compiled before paging so the notice can say what the grant is, and
322
- // committed only after paging succeeded: a load that fails here gave
323
- // the model no instructions, so it must not have approved anything.
324
- // Idempotent: a continuation call grants the same entries again, and
325
- // the turn's set keeps one copy.
326
- let grant;
327
- if (allowed !== undefined && allowed.length > 0 && context.grantSkillTools) {
328
- grant = context.grantSkillTools({
329
- skill: skill.metadata.name,
330
- allowedTools: allowed,
331
- ...(snapshot.skillDirectory ? { skillDirectory: snapshot.skillDirectory } : {}),
332
- });
333
- }
334
- const notice = grantNotice(allowed, grant, context.grantSkillTools !== undefined);
335
- const page = pageSkillBody({
336
- snapshot,
337
- digest,
338
- start,
339
- notice,
340
- maxChars: context.maxToolOutputChars,
341
- });
342
- if (!page) {
343
- return {
344
- success: false,
345
- output: '',
346
- error: `The model-visible tool-output budget is too small to read "${input.name}" safely. Increase maxToolOutputChars and retry.`,
347
- };
348
- }
349
- grant?.commit();
350
- return {
351
- success: true,
352
- output: page.output,
353
- data: {
354
- skill: skill.metadata.name,
355
- ...(allowed === undefined ? {} : { allowedTools: allowed }),
356
- ...(grant ? { granted: grant.granted, ignored: grant.ignored } : {}),
357
- ...(page.nextCursor === undefined ? {} : { nextCursor: page.nextCursor }),
358
- },
359
- };
360
- },
361
- });
378
+ },
379
+ });
380
+ }
381
+ /** The `skill` tool with no host options: the listing carries the registry's `location`. */
382
+ export const SkillTool = createSkillTool();
383
+ function directoryContextOf(sandbox) {
384
+ return sandbox ? { sandbox } : {};
385
+ }
386
+ /** An empty string names no directory; treated as the resolver saying none. */
387
+ function nonEmpty(directory) {
388
+ return directory === undefined || directory === '' ? undefined : directory;
389
+ }
390
+ /**
391
+ * The line a load opens with once a host has said where the skill's files are.
392
+ *
393
+ * The unreachable case is said out loud rather than left blank. A model given
394
+ * no directory for a skill that says "run scripts/render.sh" goes looking for
395
+ * it, and on a sandboxed turn that search can only fail.
396
+ */
397
+ function directoryHeader(directory) {
398
+ return directory === undefined
399
+ ? "[This skill's directory is not reachable from your tools in this session, so a file these instructions name by a relative path (scripts/, references/, assets/) cannot be opened here. Do not search the filesystem for it; if the task needs one, say so.]\n\n"
400
+ : `[Skill directory: ${directory}. Relative paths in these instructions, such as scripts/, references/ or assets/, are inside it.]\n\n`;
401
+ }
362
402
  /**
363
403
  * What the model is told about `allowed-tools`.
364
404
  *
@@ -1 +1 @@
1
- {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../../src/tools/builtins/skill.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../../src/tools/builtins/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAEtE,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,OAAO,EAAE,iBAAiB,EAAE,CAAA;AA0E5B,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,IAAI,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACR,gHAAgH,CAChH;IACF,MAAM,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0EAA0E,CAAC;CACtF,CAAC,CAAA;AAIF,MAAM,cAAc,GAAG,0CAA0C,CAAA;AACjE,MAAM,mBAAmB,GAAG,0DAA0D,CAAA;AACtF,MAAM,mBAAmB,GAAG,EAAE,CAAA;AAC9B,MAAM,yBAAyB,GAC9B,wFAAwF,CAAA;AAkCzF,SAAS,cAAc,CAAC,QAAuB;IAC9C,OAAO,UAAU,CAAC,QAAQ,CAAC;SACzB,MAAM,CACN,IAAI,CAAC,SAAS,CAAC;QACd,OAAO,EAAE,CAAC;QACV,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,YAAY,EAAE,QAAQ,CAAC,YAAY,IAAI,IAAI;QAC3C,GAAG,CAAC,QAAQ,CAAC,cAAc,KAAK,SAAS;YACxC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,cAAc,EAAE,CAAC;QAC/C,GAAG,CAAC,QAAQ,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC9D,UAAU,EAAE,QAAQ,CAAC,UAAU;KAC/B,CAAC,CACF;SACA,MAAM,CAAC,WAAW,CAAC,CAAA;AACtB,CAAC;AAED,SAAS,SAAS,CAAC,MAAc,EAAE,MAAc;IAChD,OAAO,MAAM,MAAM,IAAI,MAAM,EAAE,CAAA;AAChC,CAAC;AAED,SAAS,WAAW,CAAC,MAAc;IAClC,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACzC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAA;IACnD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;AAC1C,CAAC;AAED,SAAS,aAAa,CAAC,MAAc,EAAE,MAAe,EAAE,MAAc;IACrE,OAAO,WAAW,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAA;AACvD,CAAC;AAED,SAAS,eAAe,CACvB,MAAc;IAEd,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC9C,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC;QAAE,OAAO,SAAS,CAAA;IACnD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAA;AACpE,CAAC;AAED,SAAS,eAAe,CAAC,QAA4B;IACpD,OAAO,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;AACrE,CAAC;AAED,SAAS,UAAU,CAAC,MAA8B,EAAE,QAA4B;IAC/E,OAAO,UAAU,CAAC,QAAQ,CAAC;SACzB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;SACxF,MAAM,CAAC,WAAW,CAAC,CAAA;AACtB,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAmB;IAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,IAAmB,EAAE,QAA4B;IACxE,OAAO,QAAQ,KAAK,SAAS,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAA;AAC5E,CAAC;AAED,SAAS,gBAAgB,CAAC,KAMzB;IACA,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IACtE,MAAM,QAAQ,GAAiD,EAAE,CAAA;IACjE,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,gBAAgB,GAAG,KAAK,CAAA;IAE5B,yEAAyE;IACzE,yEAAyE;IACzE,2DAA2D;IAC3D,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAChE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QAC3B,IAAI,CAAC,KAAK;YAAE,SAAQ;QACpB,MAAM,UAAU,GAAG,gBAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACnF,IAAI,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC7E,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;YAC/B,gBAAgB,GAAG,IAAI,CAAA;QACxB,CAAC;aAAM,CAAC;YACP,OAAO,GAAG,IAAI,CAAA;QACf,CAAC;IACF,CAAC;IACD,QAAQ,CAAC,OAAO,EAAE,CAAA;IAElB,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAClF,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC1D,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;QACzC,MAAM,IAAI,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5B,MAAM,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAA;QACvC,MAAM,IAAI,GAAkB;YAC3B,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;YAC5C,QAAQ,EAAE,OAAO;YACjB,UAAU,EACT,OAAO,IAAI,IAAI;gBACd,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,mBAAmB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,CAAC;gBAClF,CAAC,CAAC,IAAI;SACR,CAAA;QACD,IAAI,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAA;QAC/C,KAAK,IAAI,CAAC,CAAA;IACX,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,GAAkB;YAC3B,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,OAAO;YACjB,UAAU,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI;SAC3E,CAAA;QACD,IAAI,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAA;IAChD,CAAC;IAED,MAAM,KAAK,GAAkB,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAA;IAC3E,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;AACpF,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,KAAa;IACvD,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IACpC,OAAO,CAAC,CAAC,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,CAAC,CAAA;AACrF,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY,EAAE,KAAa;IACtD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;IACzD,OAAO,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAA;AAClE,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY,EAAE,MAAc;IACvD,OAAO,oEAAoE,IAAI,iBAAiB,MAAM,mBAAmB,CAAA;AAC1H,CAAC;AAED,SAAS,aAAa,CAAC,KAMtB;IACA,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;IAC3D,6EAA6E;IAC7E,MAAM,MAAM,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;IACjD,MAAM,SAAS,GAAG,GAAG,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE,CAAA;IACnE,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,IAAI,CAAC,IAAI,SAAS,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC7E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;IAC7B,CAAC;IAED,uEAAuE;IACvE,yEAAyE;IACzE,4EAA4E;IAC5E,IAAI,GAAG,GAAG,kBAAkB,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAA;IACjG,OAAO,GAAG,GAAG,KAAK,EAAE,CAAC;QACpB,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACzC,MAAM,MAAM,GAAG,GAAG,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,kBAAkB,CAC9E,QAAQ,CAAC,IAAI,EACb,UAAU,CACV,GAAG,MAAM,EAAE,CAAA;QACZ,IAAI,MAAM,CAAC,MAAM,IAAI,QAAQ;YAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;QAC5D,GAAG,GAAG,kBAAkB,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAA;IACrF,CAAC;IAED,OAAO,SAAS,CAAA;AACjB,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAA;AAEtC;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,UAA4B,EAAE;IAC7D,MAAM,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAA;IAC3D,OAAO,UAAU,CAAC;QACjB,IAAI,EAAE,eAAe;QACrB,WAAW,EACV,mSAAmS;QACpS,WAAW;QACX,QAAQ,EAAE,UAAU;QACpB,WAAW,EAAE,EAAE;QACf,yEAAyE;QACzE,yEAAyE;QACzE,0EAA0E;QAC1E,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,IAAI;QAErB,qEAAqE;QACrE,qEAAqE;QACrE,WAAW,CAAC,KAAiB;YAC5B,MAAM,IAAI,GAAG,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;YACrE,OAAO;gBACN,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,UAAU;gBACxB,KAAK,EACJ,IAAI,KAAK,SAAS;oBACjB,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS;wBAC5B,CAAC,CAAC,aAAa;wBACf,CAAC,CAAC,kBAAkB;oBACrB,CAAC,CAAC,cAAc,IAAI,GAAG,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE;aAC3E,CAAA;QACF,CAAC;QACD,aAAa,EAAE,CAAC,MAAkB,EAAE,MAAM,EAAE,EAAE,CAC7C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;QAEtF,KAAK,CAAC,OAAO,CAAC,KAAiB,EAAE,OAAO;YACvC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACrB,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EACJ,2FAA2F;iBAC5F,CAAA;YACF,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBAC7B,OAAO;wBACN,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,EAAE;wBACV,KAAK,EACJ,iHAAiH;qBAClH,CAAA;gBACF,CAAC;gBACD,MAAM,gBAAgB,GAAG,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;gBAC5D,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;qBAC9B,MAAM,CACN,CAAC,KAAK,EAAE,EAAE,CACT,KAAK,CAAC,UAAU,KAAK,SAAS;oBAC9B,KAAK,CAAC,UAAU,KAAK,OAAO;oBAC5B,KAAK,CAAC,UAAU,KAAK,MAAM,CAC5B;qBACA,GAAG,CAAC,KAAK,EAAE,KAAK,EAAwB,EAAE;oBAC1C,6DAA6D;oBAC7D,6DAA6D;oBAC7D,iCAAiC;oBACjC,IAAI,KAAkD,CAAA;oBACtD,IAAI,qBAAqB,EAAE,CAAC;wBAC3B,MAAM,SAAS,GAAG,QAAQ,CACzB,MAAM,qBAAqB,CAC1B,EAAE,IAAI,EAAE,KAAK,CAAC,cAAc,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EAC1D,gBAAgB,CAChB,CACD,CAAA;wBACD,KAAK,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAA;oBACrD,CAAC;yBAAM,CAAC;wBACP,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAA;oBACrC,CAAC;oBACD,OAAO;wBACN,IAAI,EAAE,KAAK,CAAC,cAAc;wBAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;wBAC9B,GAAG,KAAK;wBACR,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;qBACjF,CAAA;gBACF,CAAC,CAAC,CACH,CAAA;gBACD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;gBAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;gBAC3C,IAAI,KAAK,GAAG,CAAC,CAAA;gBACb,IAAI,mBAAmB,GAAG,KAAK,CAAA;gBAC/B,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAChC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;oBAC5C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;wBAC3E,OAAO;4BACN,OAAO,EAAE,KAAK;4BACd,MAAM,EAAE,EAAE;4BACV,KAAK,EACJ,wHAAwH;yBACzH,CAAA;oBACF,CAAC;oBACD,KAAK,GAAG,MAAM,CAAC,MAAM,CAAA;oBACrB,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAA;gBACpC,CAAC;gBAED,MAAM,IAAI,GAAG,gBAAgB,CAAC;oBAC7B,MAAM;oBACN,MAAM;oBACN,KAAK;oBACL,mBAAmB;oBACnB,QAAQ;iBACR,CAAC,CAAA;gBACF,IAAI,CAAC,IAAI,EAAE,CAAC;oBACX,OAAO;wBACN,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,EAAE;wBACV,KAAK,EACJ,yHAAyH;qBAC1H,CAAA;gBACF,CAAC;gBAED,OAAO;oBACN,OAAO,EAAE,IAAI;oBACb,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE;wBACL,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM;wBACzB,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;qBACpE;iBACD,CAAA;YACF,CAAC;YAED,mEAAmE;YACnE,iEAAiE;YACjE,iCAAiC;YACjC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACpD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACb,oEAAoE;gBACpE,iEAAiE;gBACjE,iCAAiC;gBACjC,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;gBACxC,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,mBAAmB,KAAK,CAAC,IAAI,iBAAiB,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;iBAC7G,CAAA;YACF,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;YAC1B,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,CAAA;YACzC,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC;gBACpC,kEAAkE;gBAClE,kEAAkE;gBAClE,gEAAgE;gBAChE,yDAAyD;gBACzD,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,cAAc,KAAK,CAAC,IAAI,QAAQ,eAAe,CAAC,KAAK,CAAC,uCAAuC;iBACpG,CAAA;YACF,CAAC;YAED,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;YAC9D,oEAAoE;YACpE,sEAAsE;YACtE,+DAA+D;YAC/D,MAAM,cAAc,GAAG,qBAAqB;gBAC3C,CAAC,CAAC,QAAQ,CACR,MAAM,qBAAqB,CAC1B,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,OAAO,EAAE,EAC9C,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CACnC,CACD;gBACF,CAAC,CAAC,SAAS,CAAA;YACZ,MAAM,QAAQ,GAAkB;gBAC/B,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,0BAA0B;gBAC9C,YAAY,EAAE,OAAO;gBACrB,sEAAsE;gBACtE,qEAAqE;gBACrE,+BAA+B;gBAC/B,cAAc,EAAE,qBAAqB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO;gBACtE,MAAM,EAAE,qBAAqB,CAAC,CAAC,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE;gBACpE,UAAU;aACV,CAAA;YACD,MAAM,MAAM,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;YACvC,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBACxC,IACC,CAAC,MAAM;oBACP,MAAM,CAAC,MAAM,KAAK,MAAM;oBACxB,MAAM,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM;oBACrC,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EACjD,CAAC;oBACF,OAAO;wBACN,OAAO,EAAE,KAAK;wBACd,MAAM,EAAE,EAAE;wBACV,KAAK,EAAE,gCAAgC,KAAK,CAAC,IAAI,4FAA4F;qBAC7I,CAAA;gBACF,CAAC;gBACD,KAAK,GAAG,MAAM,CAAC,MAAM,CAAA;YACtB,CAAC;YAED,sEAAsE;YACtE,qEAAqE;YACrE,oEAAoE;YACpE,qEAAqE;YACrE,iCAAiC;YACjC,IAAI,KAA0E,CAAA;YAC9E,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;gBAC5E,KAAK,GAAG,OAAO,CAAC,eAAe,CAAC;oBAC/B,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;oBAC1B,YAAY,EAAE,OAAO;oBACrB,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC/E,CAAC,CAAA;YACH,CAAC;YACD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAA;YACjF,MAAM,IAAI,GAAG,aAAa,CAAC;gBAC1B,QAAQ;gBACR,MAAM;gBACN,KAAK;gBACL,MAAM;gBACN,QAAQ,EAAE,OAAO,CAAC,kBAAkB;aACpC,CAAC,CAAA;YACF,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,OAAO;oBACN,OAAO,EAAE,KAAK;oBACd,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,8DAA8D,KAAK,CAAC,IAAI,kDAAkD;iBACjI,CAAA;YACF,CAAC;YACD,KAAK,EAAE,MAAM,EAAE,CAAA;YAEf,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE;oBACL,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,IAAI;oBAC1B,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;oBACtE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;oBAC3D,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpE,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;iBACzE;aACD,CAAA;QACF,CAAC;KACD,CAAC,CAAA;AACH,CAAC;AAED,4FAA4F;AAC5F,MAAM,CAAC,MAAM,SAAS,GAAG,eAAe,EAAE,CAAA;AAE1C,SAAS,kBAAkB,CAAC,OAA4B;IACvD,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AAClC,CAAC;AAED,+EAA+E;AAC/E,SAAS,QAAQ,CAAC,SAA6B;IAC9C,OAAO,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;AAC3E,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,SAA6B;IACrD,OAAO,SAAS,KAAK,SAAS;QAC7B,CAAC,CAAC,iQAAiQ;QACnQ,CAAC,CAAC,qBAAqB,SAAS,uGAAuG,CAAA;AACzI,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,WAAW,CACnB,OAAsC,EACtC,KAKY,EACZ,QAAiB;IAEjB,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IAC5D,MAAM,SAAS,GACd,iHAAiH,CAAA;IAClH,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC;QACzB,OAAO,wCAAwC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,mFAAmF,SAAS,GAAG,CAAA;IACjK,CAAC;IACD,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,CAAC,IAAI,CACT,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QACvB,CAAC,CAAC,2CAA2C,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,0FAA0F;QAC/J,CAAC,CAAC,iDAAiD,CACpD,CAAA;IACD,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,gCAAgC,KAAK,MAAM,MAAM,GAAG,CAAC,CAAA;IACjE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACrB,OAAO,QAAQ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;AAClC,CAAC"}
@@ -14,6 +14,8 @@ export interface DefineToolOptions<S extends z.ZodType> {
14
14
  readOnly: boolean | ((input: z.infer<S>) => boolean);
15
15
  destructive: boolean | ((input: z.infer<S>) => boolean);
16
16
  concurrencySafe: boolean;
17
+ /** Whether this exact call sends the screen to the provider; see {@link ToolDefinition.capturesScreen}. */
18
+ capturesScreen?: boolean | ((input: z.infer<S>) => boolean);
17
19
  /** Batch ordering boundary; see {@link ToolDefinition.executionBarrier}. */
18
20
  executionBarrier?: boolean;
19
21
  tier?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"defineTool.d.ts","sourceRoot":"","sources":["../../src/tools/defineTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAC5B,OAAO,KAAK,EACX,WAAW,EACX,cAAc,EACd,cAAc,EACd,UAAU,EACV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAGrE,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO;IACrD,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,CAAC,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;IACpC,WAAW,EAAE,cAAc,EAAE,CAAA;IAC7B,oFAAoF;IACpF,QAAQ,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAA;IACpD,WAAW,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAA;IACvD,eAAe,EAAE,OAAO,CAAA;IACxB,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;IACzD,aAAa,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAA;IAC7D,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gFAAgF;IAChF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,oFAAoF;IACpF,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yFAAyF;IACzF,cAAc,CAAC,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAA;IACjD,uFAAuF;IACvF,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kGAAkG;IAClG,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CACrE;AAaD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,GAAG,OAAO,CAExF;AAQD,wBAAgB,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAC7C,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC3B,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAkD5B"}
1
+ {"version":3,"file":"defineTool.d.ts","sourceRoot":"","sources":["../../src/tools/defineTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAC5B,OAAO,KAAK,EACX,WAAW,EACX,cAAc,EACd,cAAc,EACd,UAAU,EACV,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAGrE,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO;IACrD,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,CAAC,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1C,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,EAAE,cAAc,CAAC,UAAU,CAAC,CAAA;IACpC,WAAW,EAAE,cAAc,EAAE,CAAA;IAC7B,oFAAoF;IACpF,QAAQ,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAA;IACpD,WAAW,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAA;IACvD,eAAe,EAAE,OAAO,CAAA;IACxB,2GAA2G;IAC3G,cAAc,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAA;IAC3D,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAA;IACzD,aAAa,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAA;IAC7D,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gFAAgF;IAChF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACtC,oFAAoF;IACpF,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;;;OAQG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yFAAyF;IACzF,cAAc,CAAC,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAA;IACjD,uFAAuF;IACvF,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kGAAkG;IAClG,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CACrE;AAaD;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,GAAG,OAAO,CAExF;AAQD,wBAAgB,UAAU,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,EAC7C,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC3B,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CA0D5B"}
@@ -58,6 +58,13 @@ export function defineTool(options) {
58
58
  ? options.destructive
59
59
  : constantDestructive(options.destructive),
60
60
  isConcurrencySafe: () => options.concurrencySafe,
61
+ ...(options.capturesScreen !== undefined
62
+ ? {
63
+ capturesScreen: typeof options.capturesScreen === 'function'
64
+ ? options.capturesScreen
65
+ : () => options.capturesScreen,
66
+ }
67
+ : {}),
61
68
  async execute(input, context) {
62
69
  try {
63
70
  return await options.execute(input, context);
@@ -1 +1 @@
1
- {"version":3,"file":"defineTool.js","sourceRoot":"","sources":["../../src/tools/defineTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defineTool.js","sourceRoot":"","sources":["../../src/tools/defineTool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"present.d.ts","sourceRoot":"","sources":["../../../src/tools/schedules/present.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAoBpF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CACtB,GAAG,YAAY,CAkBf;AAQD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,cAAc,CAWxF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CACzB,GAAG,YAAY,CAWf;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,cAAc,CAGrF"}
1
+ {"version":3,"file":"present.d.ts","sourceRoot":"","sources":["../../../src/tools/schedules/present.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAA;AAoBpF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CACtB,GAAG,YAAY,CAoBf;AAQD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,cAAc,CAWxF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CACzB,GAAG,YAAY,CAWf;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,cAAc,CAGrF"}
@@ -21,6 +21,8 @@ export function presentScheduleCall(input) {
21
21
  }
22
22
  case 'list':
23
23
  return activity('List scheduled jobs');
24
+ case 'update':
25
+ return activity(`Change scheduled job · ${oneLine(input.job)}`);
24
26
  case 'pause':
25
27
  return activity(`Pause scheduled job · ${oneLine(input.job)}`);
26
28
  case 'resume':
@@ -1 +1 @@
1
- {"version":3,"file":"present.js","sourceRoot":"","sources":["../../../src/tools/schedules/present.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"present.js","sourceRoot":"","sources":["../../../src/tools/schedules/present.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,13 @@ import type { ToolDefinition } from '../../types/tool/index.js';
2
2
  import type { ScheduleToolHost } from './types.js';
3
3
  export declare const SCHEDULE_TOOL_NAME = "schedule";
4
4
  /**
5
- * The `schedule` tool: create, list, pause, resume and delete the operator's
6
- * scheduled jobs from a conversation.
5
+ * The `schedule` tool: create, list, update, pause, resume and delete the
6
+ * operator's scheduled jobs from a conversation.
7
7
  *
8
- * Creation, resuming and deleting are confirmed by a person through the host
9
- * (`ScheduleToolHost.confirm`), on a screen the host draws from its own
10
- * computation. The model cannot propose that uncovered calls run without
8
+ * Creation, updating, resuming and deleting are confirmed by a person
9
+ * through the host (`ScheduleToolHost.confirm`, `confirmUpdate`), on a
10
+ * screen the host draws from its own computation. An update changes the
11
+ * job in place, so it keeps its id and its history. The model cannot propose that uncovered calls run without
11
12
  * asking, nor web access beside a host shell. Register it only where a person
12
13
  * is present to confirm: never in a headless run, a scheduled run or a
13
14
  * sub-agent.