@namzu/sdk 57.0.0 → 58.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 (278) hide show
  1. package/CHANGELOG.md +62 -0
  2. package/dist/agents/QueryAgent.d.ts.map +1 -1
  3. package/dist/agents/QueryAgent.js +3 -0
  4. package/dist/agents/QueryAgent.js.map +1 -1
  5. package/dist/agents/file-definitions.d.ts +35 -4
  6. package/dist/agents/file-definitions.d.ts.map +1 -1
  7. package/dist/agents/file-definitions.js +98 -8
  8. package/dist/agents/file-definitions.js.map +1 -1
  9. package/dist/authorization/protected-paths.d.ts +9 -0
  10. package/dist/authorization/protected-paths.d.ts.map +1 -1
  11. package/dist/authorization/protected-paths.js +29 -3
  12. package/dist/authorization/protected-paths.js.map +1 -1
  13. package/dist/compaction/index.d.ts +1 -0
  14. package/dist/compaction/index.d.ts.map +1 -1
  15. package/dist/compaction/index.js.map +1 -1
  16. package/dist/compaction/manual.d.ts +7 -0
  17. package/dist/compaction/manual.d.ts.map +1 -1
  18. package/dist/compaction/manual.js +31 -12
  19. package/dist/compaction/manual.js.map +1 -1
  20. package/dist/compaction/model-summary.d.ts +101 -0
  21. package/dist/compaction/model-summary.d.ts.map +1 -0
  22. package/dist/compaction/model-summary.js +333 -0
  23. package/dist/compaction/model-summary.js.map +1 -0
  24. package/dist/compaction/verifier.d.ts +6 -1
  25. package/dist/compaction/verifier.d.ts.map +1 -1
  26. package/dist/compaction/verifier.js +3 -3
  27. package/dist/compaction/verifier.js.map +1 -1
  28. package/dist/config/runtime.d.ts +62 -0
  29. package/dist/config/runtime.d.ts.map +1 -1
  30. package/dist/config/runtime.js +16 -0
  31. package/dist/config/runtime.js.map +1 -1
  32. package/dist/connector/mcp/client.d.ts +8 -0
  33. package/dist/connector/mcp/client.d.ts.map +1 -1
  34. package/dist/connector/mcp/client.js +75 -2
  35. package/dist/connector/mcp/client.js.map +1 -1
  36. package/dist/constants/mcp/index.d.ts +2 -0
  37. package/dist/constants/mcp/index.d.ts.map +1 -1
  38. package/dist/constants/mcp/index.js +2 -0
  39. package/dist/constants/mcp/index.js.map +1 -1
  40. package/dist/constants/plugin/index.d.ts +2 -0
  41. package/dist/constants/plugin/index.d.ts.map +1 -1
  42. package/dist/constants/plugin/index.js +2 -0
  43. package/dist/constants/plugin/index.js.map +1 -1
  44. package/dist/manager/agent/lifecycle.d.ts +1 -1
  45. package/dist/manager/agent/lifecycle.d.ts.map +1 -1
  46. package/dist/manager/agent/lifecycle.js +25 -4
  47. package/dist/manager/agent/lifecycle.js.map +1 -1
  48. package/dist/manager/session/turn-recorder.d.ts.map +1 -1
  49. package/dist/manager/session/turn-recorder.js +2 -1
  50. package/dist/manager/session/turn-recorder.js.map +1 -1
  51. package/dist/persona/assembler.d.ts.map +1 -1
  52. package/dist/persona/assembler.js +2 -2
  53. package/dist/persona/assembler.js.map +1 -1
  54. package/dist/plugin/index.d.ts +1 -1
  55. package/dist/plugin/index.d.ts.map +1 -1
  56. package/dist/plugin/lifecycle.d.ts +8 -1
  57. package/dist/plugin/lifecycle.d.ts.map +1 -1
  58. package/dist/plugin/lifecycle.js +9 -2
  59. package/dist/plugin/lifecycle.js.map +1 -1
  60. package/dist/plugin/shell-hook-http.d.ts +39 -0
  61. package/dist/plugin/shell-hook-http.d.ts.map +1 -0
  62. package/dist/plugin/shell-hook-http.js +163 -0
  63. package/dist/plugin/shell-hook-http.js.map +1 -0
  64. package/dist/plugin/shell-hook.d.ts +93 -11
  65. package/dist/plugin/shell-hook.d.ts.map +1 -1
  66. package/dist/plugin/shell-hook.js +223 -39
  67. package/dist/plugin/shell-hook.js.map +1 -1
  68. package/dist/prompt/coding-agent-doctrine.d.ts +1 -1
  69. package/dist/prompt/coding-agent-doctrine.d.ts.map +1 -1
  70. package/dist/prompt/coding-agent-doctrine.js +2 -1
  71. package/dist/prompt/coding-agent-doctrine.js.map +1 -1
  72. package/dist/public-runtime.d.ts +3 -2
  73. package/dist/public-runtime.d.ts.map +1 -1
  74. package/dist/public-runtime.js +2 -2
  75. package/dist/public-runtime.js.map +1 -1
  76. package/dist/public-tools.d.ts +1 -0
  77. package/dist/public-tools.d.ts.map +1 -1
  78. package/dist/public-tools.js +2 -0
  79. package/dist/public-tools.js.map +1 -1
  80. package/dist/public-types.d.ts +1 -1
  81. package/dist/public-types.d.ts.map +1 -1
  82. package/dist/runtime/query/executor.d.ts +4 -0
  83. package/dist/runtime/query/executor.d.ts.map +1 -1
  84. package/dist/runtime/query/executor.js +47 -9
  85. package/dist/runtime/query/executor.js.map +1 -1
  86. package/dist/runtime/query/index.d.ts +8 -0
  87. package/dist/runtime/query/index.d.ts.map +1 -1
  88. package/dist/runtime/query/index.js +29 -1
  89. package/dist/runtime/query/index.js.map +1 -1
  90. package/dist/runtime/query/iteration/index.d.ts.map +1 -1
  91. package/dist/runtime/query/iteration/index.js +6 -2
  92. package/dist/runtime/query/iteration/index.js.map +1 -1
  93. package/dist/runtime/query/iteration/phases/compaction-breaker.d.ts +18 -8
  94. package/dist/runtime/query/iteration/phases/compaction-breaker.d.ts.map +1 -1
  95. package/dist/runtime/query/iteration/phases/compaction-breaker.js +33 -9
  96. package/dist/runtime/query/iteration/phases/compaction-breaker.js.map +1 -1
  97. package/dist/runtime/query/iteration/phases/compaction.d.ts.map +1 -1
  98. package/dist/runtime/query/iteration/phases/compaction.js +52 -5
  99. package/dist/runtime/query/iteration/phases/compaction.js.map +1 -1
  100. package/dist/runtime/query/iteration/phases/context.d.ts +5 -0
  101. package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
  102. package/dist/runtime/query/iteration/phases/context.js.map +1 -1
  103. package/dist/runtime/query/iteration/phases/tool-review.d.ts.map +1 -1
  104. package/dist/runtime/query/iteration/phases/tool-review.js +70 -3
  105. package/dist/runtime/query/iteration/phases/tool-review.js.map +1 -1
  106. package/dist/runtime/query/path-escalation.d.ts +2 -0
  107. package/dist/runtime/query/path-escalation.d.ts.map +1 -1
  108. package/dist/runtime/query/path-escalation.js +7 -4
  109. package/dist/runtime/query/path-escalation.js.map +1 -1
  110. package/dist/runtime/query/plugin-hooks.js +2 -2
  111. package/dist/runtime/query/plugin-hooks.js.map +1 -1
  112. package/dist/runtime/query/prepare-turn.d.ts +2 -0
  113. package/dist/runtime/query/prepare-turn.d.ts.map +1 -1
  114. package/dist/runtime/query/prepare-turn.js +25 -0
  115. package/dist/runtime/query/prepare-turn.js.map +1 -1
  116. package/dist/runtime/query/review-policy.d.ts +3 -2
  117. package/dist/runtime/query/review-policy.d.ts.map +1 -1
  118. package/dist/runtime/query/review-policy.js +32 -13
  119. package/dist/runtime/query/review-policy.js.map +1 -1
  120. package/dist/scheduler/local.js +1 -1
  121. package/dist/scheduler/local.js.map +1 -1
  122. package/dist/session/retention/archive.js +1 -1
  123. package/dist/session/retention/archive.js.map +1 -1
  124. package/dist/session/workspace/driver.d.ts +6 -0
  125. package/dist/session/workspace/driver.d.ts.map +1 -1
  126. package/dist/session/workspace/git-worktree.d.ts.map +1 -1
  127. package/dist/session/workspace/git-worktree.js +28 -0
  128. package/dist/session/workspace/git-worktree.js.map +1 -1
  129. package/dist/skills/index.d.ts +1 -1
  130. package/dist/skills/index.d.ts.map +1 -1
  131. package/dist/skills/index.js +1 -1
  132. package/dist/skills/index.js.map +1 -1
  133. package/dist/skills/loader.d.ts +7 -0
  134. package/dist/skills/loader.d.ts.map +1 -1
  135. package/dist/skills/loader.js +53 -0
  136. package/dist/skills/loader.js.map +1 -1
  137. package/dist/skills/registry.d.ts +1 -1
  138. package/dist/skills/registry.d.ts.map +1 -1
  139. package/dist/skills/registry.js +2 -1
  140. package/dist/skills/registry.js.map +1 -1
  141. package/dist/tools/builtins/bash-cwd.d.ts +52 -0
  142. package/dist/tools/builtins/bash-cwd.d.ts.map +1 -0
  143. package/dist/tools/builtins/bash-cwd.js +127 -0
  144. package/dist/tools/builtins/bash-cwd.js.map +1 -0
  145. package/dist/tools/builtins/bash.d.ts.map +1 -1
  146. package/dist/tools/builtins/bash.js +41 -6
  147. package/dist/tools/builtins/bash.js.map +1 -1
  148. package/dist/tools/builtins/bounded-file-read.d.ts +10 -0
  149. package/dist/tools/builtins/bounded-file-read.d.ts.map +1 -0
  150. package/dist/tools/builtins/bounded-file-read.js +67 -0
  151. package/dist/tools/builtins/bounded-file-read.js.map +1 -0
  152. package/dist/tools/builtins/grep.d.ts +6 -1
  153. package/dist/tools/builtins/grep.d.ts.map +1 -1
  154. package/dist/tools/builtins/grep.js +187 -24
  155. package/dist/tools/builtins/grep.js.map +1 -1
  156. package/dist/tools/builtins/read-file.d.ts +1 -0
  157. package/dist/tools/builtins/read-file.d.ts.map +1 -1
  158. package/dist/tools/builtins/read-file.js +113 -28
  159. package/dist/tools/builtins/read-file.js.map +1 -1
  160. package/dist/tools/builtins/read-media.d.ts +68 -0
  161. package/dist/tools/builtins/read-media.d.ts.map +1 -0
  162. package/dist/tools/builtins/read-media.js +397 -0
  163. package/dist/tools/builtins/read-media.js.map +1 -0
  164. package/dist/tools/builtins/search-tools.js +1 -1
  165. package/dist/tools/builtins/search-tools.js.map +1 -1
  166. package/dist/tools/builtins/skill.d.ts +4 -2
  167. package/dist/tools/builtins/skill.d.ts.map +1 -1
  168. package/dist/tools/builtins/skill.js +61 -2
  169. package/dist/tools/builtins/skill.js.map +1 -1
  170. package/dist/tools/builtins/sleep-guard.d.ts +15 -0
  171. package/dist/tools/builtins/sleep-guard.d.ts.map +1 -0
  172. package/dist/tools/builtins/sleep-guard.js +33 -0
  173. package/dist/tools/builtins/sleep-guard.js.map +1 -0
  174. package/dist/tools/builtins/view-image.d.ts +23 -1
  175. package/dist/tools/builtins/view-image.d.ts.map +1 -1
  176. package/dist/tools/builtins/view-image.js +66 -58
  177. package/dist/tools/builtins/view-image.js.map +1 -1
  178. package/dist/tools/file-read-tracker.d.ts.map +1 -1
  179. package/dist/tools/file-read-tracker.js +31 -0
  180. package/dist/tools/file-read-tracker.js.map +1 -1
  181. package/dist/toolsets/manager.js +3 -3
  182. package/dist/toolsets/manager.js.map +1 -1
  183. package/dist/types/agent/base.d.ts +8 -0
  184. package/dist/types/agent/base.d.ts.map +1 -1
  185. package/dist/types/agent/query.d.ts +2 -0
  186. package/dist/types/agent/query.d.ts.map +1 -1
  187. package/dist/types/agent/scheduler.d.ts +8 -0
  188. package/dist/types/agent/scheduler.d.ts.map +1 -1
  189. package/dist/types/agent/task.d.ts +6 -2
  190. package/dist/types/agent/task.d.ts.map +1 -1
  191. package/dist/types/agent/task.js.map +1 -1
  192. package/dist/types/connector/mcp.d.ts +46 -0
  193. package/dist/types/connector/mcp.d.ts.map +1 -1
  194. package/dist/types/hitl/index.d.ts +1 -1
  195. package/dist/types/plugin/index.d.ts +74 -7
  196. package/dist/types/plugin/index.d.ts.map +1 -1
  197. package/dist/types/plugin/index.js +12 -1
  198. package/dist/types/plugin/index.js.map +1 -1
  199. package/dist/types/session/sub-session.d.ts +6 -2
  200. package/dist/types/session/sub-session.d.ts.map +1 -1
  201. package/dist/types/skills/index.d.ts +36 -0
  202. package/dist/types/skills/index.d.ts.map +1 -1
  203. package/dist/types/skills/index.js +9 -0
  204. package/dist/types/skills/index.js.map +1 -1
  205. package/dist/types/tool/index.d.ts +37 -0
  206. package/dist/types/tool/index.d.ts.map +1 -1
  207. package/dist/types/tool/index.js.map +1 -1
  208. package/dist/types/workspace/ref.d.ts +2 -0
  209. package/dist/types/workspace/ref.d.ts.map +1 -1
  210. package/dist/utils/frontmatter.d.ts +12 -0
  211. package/dist/utils/frontmatter.d.ts.map +1 -1
  212. package/dist/utils/frontmatter.js +6 -0
  213. package/dist/utils/frontmatter.js.map +1 -1
  214. package/package.json +1 -1
  215. package/src/agents/QueryAgent.ts +3 -0
  216. package/src/agents/file-definitions.ts +126 -6
  217. package/src/authorization/protected-paths.ts +30 -2
  218. package/src/compaction/index.ts +1 -0
  219. package/src/compaction/manual.ts +68 -30
  220. package/src/compaction/model-summary.ts +412 -0
  221. package/src/compaction/verifier.ts +3 -3
  222. package/src/config/runtime.ts +16 -0
  223. package/src/connector/mcp/client.ts +87 -1
  224. package/src/constants/mcp/index.ts +3 -0
  225. package/src/constants/plugin/index.ts +2 -0
  226. package/src/manager/agent/lifecycle.ts +24 -5
  227. package/src/manager/session/turn-recorder.ts +2 -1
  228. package/src/persona/assembler.ts +2 -2
  229. package/src/plugin/index.ts +5 -0
  230. package/src/plugin/lifecycle.ts +16 -2
  231. package/src/plugin/shell-hook-http.ts +181 -0
  232. package/src/plugin/shell-hook.ts +386 -89
  233. package/src/prompt/coding-agent-doctrine.ts +2 -1
  234. package/src/public-runtime.ts +6 -0
  235. package/src/public-tools.ts +2 -0
  236. package/src/public-types.ts +5 -0
  237. package/src/runtime/query/executor.ts +54 -10
  238. package/src/runtime/query/index.ts +44 -0
  239. package/src/runtime/query/iteration/index.ts +11 -3
  240. package/src/runtime/query/iteration/phases/compaction-breaker.ts +38 -9
  241. package/src/runtime/query/iteration/phases/compaction.ts +67 -5
  242. package/src/runtime/query/iteration/phases/context.ts +6 -0
  243. package/src/runtime/query/iteration/phases/tool-review.ts +74 -3
  244. package/src/runtime/query/path-escalation.ts +11 -5
  245. package/src/runtime/query/plugin-hooks.ts +2 -2
  246. package/src/runtime/query/prepare-turn.ts +33 -0
  247. package/src/runtime/query/review-policy.ts +45 -16
  248. package/src/scheduler/local.ts +1 -1
  249. package/src/session/retention/archive.ts +1 -1
  250. package/src/session/workspace/driver.ts +6 -0
  251. package/src/session/workspace/git-worktree.ts +31 -0
  252. package/src/skills/index.ts +6 -1
  253. package/src/skills/loader.ts +54 -0
  254. package/src/skills/registry.ts +7 -6
  255. package/src/tools/builtins/bash-cwd.ts +156 -0
  256. package/src/tools/builtins/bash.ts +79 -34
  257. package/src/tools/builtins/bounded-file-read.ts +80 -0
  258. package/src/tools/builtins/grep.ts +198 -28
  259. package/src/tools/builtins/read-file.ts +151 -30
  260. package/src/tools/builtins/read-media.ts +483 -0
  261. package/src/tools/builtins/search-tools.ts +1 -1
  262. package/src/tools/builtins/skill.ts +91 -2
  263. package/src/tools/builtins/sleep-guard.ts +31 -0
  264. package/src/tools/builtins/view-image.ts +74 -62
  265. package/src/tools/file-read-tracker.ts +30 -0
  266. package/src/toolsets/manager.ts +3 -3
  267. package/src/types/agent/base.ts +9 -0
  268. package/src/types/agent/query.ts +2 -0
  269. package/src/types/agent/scheduler.ts +9 -0
  270. package/src/types/agent/task.ts +6 -2
  271. package/src/types/connector/mcp.ts +48 -0
  272. package/src/types/hitl/index.ts +1 -1
  273. package/src/types/plugin/index.ts +102 -16
  274. package/src/types/session/sub-session.ts +6 -2
  275. package/src/types/skills/index.ts +48 -0
  276. package/src/types/tool/index.ts +38 -0
  277. package/src/types/workspace/ref.ts +2 -0
  278. package/src/utils/frontmatter.ts +21 -0
@@ -1 +1 @@
1
- {"version":3,"file":"read-file.js","sourceRoot":"","sources":["../../../src/tools/builtins/read-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read-file.js","sourceRoot":"","sources":["../../../src/tools/builtins/read-file.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * What `read` hands back for the files that are not plain text: the pages of a
3
+ * PDF as pictures and the cells of a notebook with what they printed. Each
4
+ * function returns text and pictures for the model, or a plain failure message.
5
+ */
6
+ /** Most pages one read may render. */
7
+ export declare const PDF_MAX_PAGES_PER_READ = 20;
8
+ /** A PDF with more pages than this is not read whole; the model names pages. */
9
+ export declare const PDF_WHOLE_READ_MAX_PAGES = 10;
10
+ /** The largest PDF read; larger files are refused before any tool runs. */
11
+ export declare const PDF_MAX_BYTES: number;
12
+ /** The largest notebook read in full. */
13
+ export declare const NOTEBOOK_MAX_BYTES: number;
14
+ /** Encoded images plus UTF-8 text, not decoded image bytes. */
15
+ export declare const MEDIA_MAX_OUTPUT_BYTES: number;
16
+ export declare const NOTEBOOK_MAX_OUTPUT_BYTES: number;
17
+ export interface MediaImage {
18
+ readonly mediaType: 'image/png' | 'image/jpeg' | 'image/webp';
19
+ /** Base64 of the image bytes. */
20
+ readonly data: string;
21
+ }
22
+ export type MediaPart = {
23
+ readonly type: 'text';
24
+ readonly text: string;
25
+ } | ({
26
+ readonly type: 'image';
27
+ } & MediaImage);
28
+ export type MediaRead = {
29
+ readonly ok: true;
30
+ readonly parts: readonly MediaPart[];
31
+ readonly facts: MediaFacts;
32
+ } | {
33
+ readonly ok: false;
34
+ readonly message: string;
35
+ };
36
+ export interface MediaFacts {
37
+ readonly pages?: number;
38
+ readonly totalPages?: number;
39
+ readonly cells?: number;
40
+ }
41
+ /** `"3"`, `"1-5"` and `"3-"`; anything else is not one range. */
42
+ export declare function parsePageRange(value: string): {
43
+ first: number;
44
+ last: number;
45
+ } | null;
46
+ export declare function checkPageRange(value: string): {
47
+ ok: true;
48
+ first: number;
49
+ last: number;
50
+ } | {
51
+ ok: false;
52
+ message: string;
53
+ };
54
+ /**
55
+ * Render pages of a PDF as pictures. With `pages` it is exactly that range
56
+ * (at most 20); without it the whole file when it has at most 10 pages, and a
57
+ * message naming the `pages` parameter when it has more.
58
+ */
59
+ export declare function readPdfPages(bytes: Buffer, pagesArgument: string | undefined, label: string, signal: AbortSignal): Promise<MediaRead>;
60
+ /**
61
+ * A notebook as text the model can work from: every cell as
62
+ * `<cell id="...">source</cell id="...">` (a non-code cell names its type, a
63
+ * code cell in a language other than Python names the language), each followed
64
+ * by what it printed. A cell whose output is over 10,000 characters keeps only a
65
+ * note on how to read it.
66
+ */
67
+ export declare function readNotebook(bytes: Buffer, label: string): MediaRead;
68
+ //# sourceMappingURL=read-media.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-media.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/read-media.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AAEH,sCAAsC;AACtC,eAAO,MAAM,sBAAsB,KAAK,CAAA;AACxC,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,KAAK,CAAA;AAC1C,2EAA2E;AAC3E,eAAO,MAAM,aAAa,QAAoB,CAAA;AAC9C,yCAAyC;AACzC,eAAO,MAAM,kBAAkB,QAAkB,CAAA;AAGjD,+DAA+D;AAC/D,eAAO,MAAM,sBAAsB,QAAmB,CAAA;AACtD,eAAO,MAAM,yBAAyB,QAAc,CAAA;AAMpD,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,SAAS,EAAE,WAAW,GAAG,YAAY,GAAG,YAAY,CAAA;IAC7D,iCAAiC;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,MAAM,SAAS,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChD,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,UAAU,CAAC,CAAA;AAE5C,MAAM,MAAM,SAAS,GAClB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,SAAS,EAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;CAAE,GACvF;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAA;AAEnD,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,iEAAiE;AACjE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAOpF;AAED,wBAAgB,cAAc,CAC7B,KAAK,EAAE,MAAM,GACX;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAmB5E;AA6ID;;;;GAIG;AACH,wBAAsB,YAAY,CACjC,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,WAAW,GACjB,OAAO,CAAC,SAAS,CAAC,CAmFpB;AAmFD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CA2EpE"}
@@ -0,0 +1,397 @@
1
+ import { spawn } from 'node:child_process';
2
+ import { mkdtemp, readdir, rm } from 'node:fs/promises';
3
+ import { tmpdir } from 'node:os';
4
+ import { join } from 'node:path';
5
+ import { readBoundedFile } from './bounded-file-read.js';
6
+ import { screenshotTargetSize } from './computer-use-image.js';
7
+ import { describeRaster } from './view-image.js';
8
+ /**
9
+ * What `read` hands back for the files that are not plain text: the pages of a
10
+ * PDF as pictures and the cells of a notebook with what they printed. Each
11
+ * function returns text and pictures for the model, or a plain failure message.
12
+ */
13
+ /** Most pages one read may render. */
14
+ export const PDF_MAX_PAGES_PER_READ = 20;
15
+ /** A PDF with more pages than this is not read whole; the model names pages. */
16
+ export const PDF_WHOLE_READ_MAX_PAGES = 10;
17
+ /** The largest PDF read; larger files are refused before any tool runs. */
18
+ export const PDF_MAX_BYTES = 100 * 1024 * 1024;
19
+ /** The largest notebook read in full. */
20
+ export const NOTEBOOK_MAX_BYTES = 8 * 1024 * 1024;
21
+ /** Printed output of one cell above this many characters is left out. */
22
+ const CELL_OUTPUT_MAX_CHARS = 10_000;
23
+ /** Encoded images plus UTF-8 text, not decoded image bytes. */
24
+ export const MEDIA_MAX_OUTPUT_BYTES = 24 * 1024 * 1024;
25
+ export const NOTEBOOK_MAX_OUTPUT_BYTES = 1024 * 1024;
26
+ const PAGE_MAX_BYTES = 16 * 1024 * 1024;
27
+ const PDF_TOOL_TIMEOUT_MS = 120_000;
28
+ const PDF_INFO_TIMEOUT_MS = 10_000;
29
+ const RENDER_DPI = '100';
30
+ /** `"3"`, `"1-5"` and `"3-"`; anything else is not one range. */
31
+ export function parsePageRange(value) {
32
+ const match = /^(\d{1,9})(?:\s*(-)\s*(\d{1,9})?)?$/.exec(value.trim());
33
+ if (!match)
34
+ return null;
35
+ const first = Number(match[1]);
36
+ const last = match[3] ? Number(match[3]) : match[2] ? Number.POSITIVE_INFINITY : first;
37
+ if (first < 1 || last < first)
38
+ return null;
39
+ return { first, last };
40
+ }
41
+ export function checkPageRange(value) {
42
+ const range = parsePageRange(value);
43
+ if (!range) {
44
+ return {
45
+ ok: false,
46
+ message: `Invalid pages parameter: "${value}". Give one page ("3") or one range ("1-5"), not a list. To read several pages or ranges, read each one separately. Pages are 1-indexed.`,
47
+ };
48
+ }
49
+ const count = range.last === Number.POSITIVE_INFINITY
50
+ ? PDF_MAX_PAGES_PER_READ + 1
51
+ : range.last - range.first + 1;
52
+ if (count > PDF_MAX_PAGES_PER_READ) {
53
+ return {
54
+ ok: false,
55
+ message: `Page range "${value}" exceeds maximum of ${PDF_MAX_PAGES_PER_READ} pages per request. Please use a smaller range.`,
56
+ };
57
+ }
58
+ return { ok: true, first: range.first, last: range.last };
59
+ }
60
+ function run(command, args, input, signal, timeoutMs) {
61
+ return new Promise((resolve) => {
62
+ const child = spawn(command, [...args], { stdio: ['pipe', 'pipe', 'pipe'], signal });
63
+ let stdout = '';
64
+ let stderr = '';
65
+ let missing = false;
66
+ let timedOut = false;
67
+ const timer = setTimeout(() => {
68
+ timedOut = true;
69
+ child.kill('SIGKILL');
70
+ }, timeoutMs);
71
+ child.stdout.on('data', (chunk) => {
72
+ if (stdout.length < 1_000_000)
73
+ stdout += chunk.subarray(0, 1_000_000 - stdout.length).toString('utf8');
74
+ });
75
+ child.stderr.on('data', (chunk) => {
76
+ if (stderr.length < 1_000_000)
77
+ stderr += chunk.subarray(0, 1_000_000 - stderr.length).toString('utf8');
78
+ });
79
+ child.on('error', (error) => {
80
+ missing = error.code === 'ENOENT';
81
+ clearTimeout(timer);
82
+ resolve({ code: null, stdout, stderr: stderr || error.message, missing, timedOut });
83
+ });
84
+ child.on('close', (code) => {
85
+ clearTimeout(timer);
86
+ resolve({ code, stdout, stderr, missing, timedOut });
87
+ });
88
+ // A tool that exits early closes its stdin; that is its answer, not ours.
89
+ child.stdin.on('error', () => { });
90
+ child.stdin.end(input);
91
+ });
92
+ }
93
+ const PDF_TOOLS_MISSING = 'Page rendering needs pdftoppm, which is not installed. Install poppler-utils (for example `brew install poppler` or `apt-get install poppler-utils`), or extract the text with another tool.';
94
+ /** The page count, or null when it cannot be read (no pdfinfo, damaged file). */
95
+ async function pdfPageCount(bytes, signal) {
96
+ const result = await run('pdfinfo', ['-'], bytes, signal, PDF_INFO_TIMEOUT_MS);
97
+ if (result.code !== 0)
98
+ return null;
99
+ const match = /^Pages:\s+(\d+)/m.exec(result.stdout);
100
+ return match ? Number(match[1]) : null;
101
+ }
102
+ function pdfFailure(stderr) {
103
+ if (/password/i.test(stderr))
104
+ return 'PDF is password-protected. Please provide an unprotected version.';
105
+ if (/damaged|corrupt|invalid|Couldn't (?:find trailer dictionary|read xref table)/i.test(stderr))
106
+ return 'PDF file is corrupted or invalid.';
107
+ const first = stderr.split(/\r?\n/).find((line) => line.trim() !== '');
108
+ return `Could not render PDF${first ? `: ${first.trim()}` : '.'}`;
109
+ }
110
+ async function renderPages(bytes, first, last, directory, signal) {
111
+ const args = ['-jpeg', '-r', RENDER_DPI, '-scale-to', '4096', '-f', String(first)];
112
+ if (last !== undefined && Number.isFinite(last))
113
+ args.push('-l', String(last));
114
+ args.push('-', join(directory, 'page'));
115
+ const result = await run('pdftoppm', args, bytes, signal, PDF_TOOL_TIMEOUT_MS);
116
+ if (result.missing)
117
+ return { ok: false, message: PDF_TOOLS_MISSING };
118
+ if (result.timedOut)
119
+ return { ok: false, message: 'Rendering the PDF took too long and was stopped.' };
120
+ if (result.code !== 0) {
121
+ const outside = /Wrong page range given.*last page \((\d+)\)/i.exec(result.stderr);
122
+ if (outside) {
123
+ const total = Number(outside[1]);
124
+ if (total === 0)
125
+ return {
126
+ ok: false,
127
+ message: 'PDF reports 0 pages (empty page tree). The PDF may be invalid.',
128
+ };
129
+ return {
130
+ ok: false,
131
+ pageCount: total,
132
+ message: `The pages requested are outside the document (the PDF has ${total} ${total === 1 ? 'page' : 'pages'}). Use a range within 1-${total}, at most ${PDF_MAX_PAGES_PER_READ} pages per request (for example pages: "1-${Math.min(total, PDF_MAX_PAGES_PER_READ)}").`,
133
+ };
134
+ }
135
+ return { ok: false, message: pdfFailure(result.stderr) };
136
+ }
137
+ const names = (await readdir(directory)).filter((name) => name.endsWith('.jpg')).sort();
138
+ if (names.length === 0)
139
+ return { ok: false, message: 'No pages were rendered. The PDF may be invalid.' };
140
+ return { ok: true, names };
141
+ }
142
+ /** Re-render one page at the size the image budget allows. */
143
+ async function renderPageFitted(bytes, page, width, height, directory, signal) {
144
+ const base = join(directory, `fit-${page}`);
145
+ const result = await run('pdftoppm', [
146
+ '-jpeg',
147
+ '-f',
148
+ String(page),
149
+ '-l',
150
+ String(page),
151
+ '-scale-to-x',
152
+ String(width),
153
+ '-scale-to-y',
154
+ String(height),
155
+ '-singlefile',
156
+ '-',
157
+ base,
158
+ ], bytes, signal, PDF_TOOL_TIMEOUT_MS);
159
+ if (result.code !== 0)
160
+ return null;
161
+ return readBoundedFile(`${base}.jpg`, PAGE_MAX_BYTES, signal).catch(() => null);
162
+ }
163
+ /**
164
+ * Render pages of a PDF as pictures. With `pages` it is exactly that range
165
+ * (at most 20); without it the whole file when it has at most 10 pages, and a
166
+ * message naming the `pages` parameter when it has more.
167
+ */
168
+ export async function readPdfPages(bytes, pagesArgument, label, signal) {
169
+ if (bytes.length > PDF_MAX_BYTES)
170
+ return { ok: false, message: 'PDF exceeds the 100 MiB input limit.' };
171
+ let first = 1;
172
+ let last;
173
+ let total = null;
174
+ if (pagesArgument !== undefined) {
175
+ const checked = checkPageRange(pagesArgument);
176
+ if (!checked.ok)
177
+ return { ok: false, message: checked.message };
178
+ first = checked.first;
179
+ last = checked.last;
180
+ total = await pdfPageCount(bytes, signal);
181
+ }
182
+ else {
183
+ total = await pdfPageCount(bytes, signal);
184
+ if (total !== null && total > PDF_WHOLE_READ_MAX_PAGES) {
185
+ return {
186
+ ok: false,
187
+ message: `This PDF has ${total} pages, which is too many to read at once. Use the pages parameter to read specific page ranges (e.g., pages: "1-5"). Maximum ${PDF_MAX_PAGES_PER_READ} pages per request.`,
188
+ };
189
+ }
190
+ last = total === null ? PDF_WHOLE_READ_MAX_PAGES : total;
191
+ }
192
+ const directory = await mkdtemp(join(tmpdir(), 'namzu-pdf-'));
193
+ try {
194
+ const rendered = await renderPages(bytes, first, last, directory, signal);
195
+ if (!rendered.ok)
196
+ return { ok: false, message: rendered.message };
197
+ const parts = [];
198
+ let encodedBytes = 0;
199
+ const firstName = rendered.names[0];
200
+ const firstShown = Number(/-(\d+)\.jpg$/.exec(firstName)?.[1] ?? first);
201
+ const header = `PDF pages extracted: ${rendered.names.length} ${rendered.names.length === 1 ? 'page' : 'pages'} from ${label} (${formatSize(bytes.length)})`;
202
+ const lastShown = firstShown + rendered.names.length - 1;
203
+ const more = total !== null && lastShown < total
204
+ ? `. This PDF has ${total} pages. These are pages ${firstShown}-${lastShown}. Use the pages parameter to read other pages (e.g., pages: "${lastShown + 1}-${Math.min(lastShown + rendered.names.length, total)}").`
205
+ : total === null
206
+ ? `. The page count could not be read; these are pages ${firstShown}-${lastShown}.`
207
+ : '';
208
+ if (Buffer.byteLength(header + more, 'utf8') > 64 * 1024)
209
+ return { ok: false, message: 'PDF label exceeds the output budget.' };
210
+ parts.push({ type: 'text', text: `${header}${more}` });
211
+ for (const [index, name] of rendered.names.entries()) {
212
+ const page = firstShown + index;
213
+ const unusable = `[Page ${page} could not be processed as an image.]`;
214
+ try {
215
+ let image = await readBoundedFile(join(directory, name), PAGE_MAX_BYTES, signal);
216
+ const raster = describeRaster(image);
217
+ const target = screenshotTargetSize(raster.width, raster.height);
218
+ if (target.width !== raster.width || target.height !== raster.height) {
219
+ const fitted = await renderPageFitted(bytes, page, target.width, target.height, directory, signal);
220
+ if (!fitted) {
221
+ parts.push({ type: 'text', text: unusable });
222
+ continue;
223
+ }
224
+ image = fitted;
225
+ }
226
+ const size = 4 * Math.ceil(image.length / 3);
227
+ if (encodedBytes + size > MEDIA_MAX_OUTPUT_BYTES - 128 * 1024)
228
+ return {
229
+ ok: false,
230
+ message: 'PDF pictures exceed the 24 MiB encoded output budget. Request fewer pages.',
231
+ };
232
+ encodedBytes += size;
233
+ parts.push({ type: 'image', mediaType: 'image/jpeg', data: image.toString('base64') });
234
+ }
235
+ catch {
236
+ parts.push({ type: 'text', text: unusable });
237
+ }
238
+ }
239
+ return {
240
+ ok: true,
241
+ parts,
242
+ facts: { pages: rendered.names.length, ...(total !== null ? { totalPages: total } : {}) },
243
+ };
244
+ }
245
+ finally {
246
+ await rm(directory, { recursive: true, force: true }).catch(() => { });
247
+ }
248
+ }
249
+ function formatSize(n) {
250
+ if (n >= 1024 * 1024)
251
+ return `${(n / (1024 * 1024)).toFixed(1)} MiB`;
252
+ if (n >= 1024)
253
+ return `${Math.round(n / 1024)} KiB`;
254
+ return `${n} B`;
255
+ }
256
+ const NOTEBOOK_INVALID = 'Notebook file is not a valid Jupyter notebook (top-level "cells" must be an array of cell objects, each with a string or string-array "source").';
257
+ function joined(value) {
258
+ if (typeof value === 'string')
259
+ return value;
260
+ if (Array.isArray(value) && value.every((line) => typeof line === 'string'))
261
+ return value.join('');
262
+ return null;
263
+ }
264
+ function isRecord(value) {
265
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
266
+ }
267
+ function outputParts(output) {
268
+ if (!isRecord(output))
269
+ return undefined;
270
+ switch (output.output_type) {
271
+ case 'stream':
272
+ return { text: joined(output.text) ?? '', image: undefined };
273
+ case 'execute_result':
274
+ case 'display_data': {
275
+ const data = isRecord(output.data) ? output.data : {};
276
+ const rawImage = data['image/png'] ?? data['image/jpeg'];
277
+ if (typeof rawImage === 'string' && rawImage.length > CELL_OUTPUT_MAX_CHARS)
278
+ return {
279
+ text: joined(data['text/plain']) ?? '',
280
+ image: undefined,
281
+ imageSize: rawImage.length,
282
+ };
283
+ return { text: joined(data['text/plain']) ?? '', image: notebookImage(data) };
284
+ }
285
+ case 'error': {
286
+ const trace = Array.isArray(output.traceback) ? output.traceback.join('\n') : '';
287
+ return {
288
+ text: `${String(output.ename ?? '')}: ${String(output.evalue ?? '')}\n${trace}`,
289
+ image: undefined,
290
+ };
291
+ }
292
+ default:
293
+ return undefined;
294
+ }
295
+ }
296
+ function notebookImage(data) {
297
+ for (const mediaType of ['image/png', 'image/jpeg']) {
298
+ const value = data[mediaType];
299
+ if (typeof value !== 'string')
300
+ continue;
301
+ const base64 = value.replace(/\s/g, '');
302
+ if (base64.length > NOTEBOOK_MAX_OUTPUT_BYTES || !/^[A-Za-z0-9+/]*={0,2}$/.test(base64))
303
+ return undefined;
304
+ try {
305
+ const decoded = Buffer.from(base64, 'base64');
306
+ if (decoded.toString('base64') !== base64)
307
+ return undefined;
308
+ describeRaster(decoded);
309
+ }
310
+ catch {
311
+ return undefined;
312
+ }
313
+ return { mediaType, data: base64 };
314
+ }
315
+ return undefined;
316
+ }
317
+ /**
318
+ * A notebook as text the model can work from: every cell as
319
+ * `<cell id="...">source</cell id="...">` (a non-code cell names its type, a
320
+ * code cell in a language other than Python names the language), each followed
321
+ * by what it printed. A cell whose output is over 10,000 characters keeps only a
322
+ * note on how to read it.
323
+ */
324
+ export function readNotebook(bytes, label) {
325
+ if (bytes.length > NOTEBOOK_MAX_BYTES) {
326
+ return {
327
+ ok: false,
328
+ message: `Notebook file (${formatSize(bytes.length)}) exceeds the maximum size this tool can read (${formatSize(NOTEBOOK_MAX_BYTES)}). Use a shell command with jq to read specific portions, for example: jq '.cells[:20]' ${label}`,
329
+ };
330
+ }
331
+ let parsed;
332
+ try {
333
+ parsed = JSON.parse(bytes.toString('utf-8'));
334
+ }
335
+ catch (error) {
336
+ return {
337
+ ok: false,
338
+ message: `Notebook file is not valid JSON (it may be truncated, corrupted, or still being written): ${error instanceof Error ? error.message : String(error)}`,
339
+ };
340
+ }
341
+ if (!isRecord(parsed) || !Array.isArray(parsed.cells))
342
+ return { ok: false, message: NOTEBOOK_INVALID };
343
+ const cells = parsed.cells;
344
+ if (!cells.every((cell) => isRecord(cell) && joined(cell.source) !== null)) {
345
+ return { ok: false, message: NOTEBOOK_INVALID };
346
+ }
347
+ const metadata = isRecord(parsed.metadata) ? parsed.metadata : {};
348
+ const info = isRecord(metadata.language_info) ? metadata.language_info : {};
349
+ const language = typeof info.name === 'string' ? info.name : 'python';
350
+ const parts = [];
351
+ let outputBytes = 0;
352
+ let exceeded = false;
353
+ const pushText = (text) => {
354
+ outputBytes += Buffer.byteLength(text, 'utf8') + (parts.length > 0 ? 1 : 0);
355
+ if (outputBytes > NOTEBOOK_MAX_OUTPUT_BYTES) {
356
+ exceeded = true;
357
+ return;
358
+ }
359
+ parts.push({ type: 'text', text });
360
+ };
361
+ for (const [index, raw] of cells.entries()) {
362
+ const id = typeof raw.id === 'string' ? raw.id : `cell-${index}`;
363
+ const type = typeof raw.cell_type === 'string' ? raw.cell_type : 'code';
364
+ const tags = (type !== 'code' ? `<cell_type>${type}</cell_type>` : '') +
365
+ (type === 'code' && language !== 'python' ? `<language>${language}</language>` : '');
366
+ pushText(`<cell id="${id}">${tags}${joined(raw.source)}</cell id="${id}">`);
367
+ if (exceeded)
368
+ break;
369
+ if (type !== 'code' || !Array.isArray(raw.outputs) || raw.outputs.length === 0)
370
+ continue;
371
+ const outputs = raw.outputs.map(outputParts).filter((o) => o !== undefined);
372
+ const size = outputs.reduce((sum, o) => sum + o.text.length + (o.imageSize ?? o.image?.data.length ?? 0), 0);
373
+ if (size > CELL_OUTPUT_MAX_CHARS) {
374
+ pushText(`Outputs are too large to include. Use a shell command with: jq '.cells[${index}].outputs' ${label}`);
375
+ continue;
376
+ }
377
+ for (const output of outputs) {
378
+ if (output.text)
379
+ pushText(`\n${output.text}`);
380
+ if (output.image) {
381
+ outputBytes += output.image.data.length;
382
+ if (outputBytes > NOTEBOOK_MAX_OUTPUT_BYTES) {
383
+ exceeded = true;
384
+ break;
385
+ }
386
+ parts.push({ type: 'image', ...output.image });
387
+ }
388
+ }
389
+ }
390
+ if (exceeded)
391
+ return {
392
+ ok: false,
393
+ message: 'Notebook exceeds the 1 MiB encoded output budget. Extract selected cells with jq and read the extracted file.',
394
+ };
395
+ return { ok: true, parts, facts: { cells: cells.length } };
396
+ }
397
+ //# sourceMappingURL=read-media.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-media.js","sourceRoot":"","sources":["../../../src/tools/builtins/read-media.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ const NEAR_MISS_LIMIT = 5;
16
16
  export const SearchToolsTool = defineTool({
17
17
  name: 'search_tools',
18
18
  description: 'Search and load available tools by name or capability. ' +
19
- 'Deferred tools listed in the system prompt must be loaded via this tool before use.',
19
+ 'Use this only when a needed deferred tool schema is absent from the current runtime tools parameter. If its schema is already visible, call the tool directly without searching again.',
20
20
  inputSchema,
21
21
  category: 'analysis',
22
22
  permissions: [],
@@ -1 +1 @@
1
- {"version":3,"file":"search-tools.js","sourceRoot":"","sources":["../../../src/tools/builtins/search-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;CAC3E,CAAC,CAAA;AAEF,yEAAyE;AACzE,sEAAsE;AACtE,wEAAwE;AACxE,2DAA2D;AAC3D,MAAM,gBAAgB,GAAG,CAAC,CAAA;AAE1B,wEAAwE;AACxE,yEAAyE;AACzE,2DAA2D;AAC3D,MAAM,eAAe,GAAG,CAAC,CAAA;AAEzB,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;IACzC,IAAI,EAAE,cAAc;IACpB,WAAW,EACV,yDAAyD;QACzD,qFAAqF;IACtF,WAAW;IACX,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,eAAe,EAAE,IAAI;IAErB,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO;QAC3B,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC3B,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,8CAA8C;aACrD,CAAA;QACF,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACzF,wEAAwE;QACxE,4DAA4D;QAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY;aACjC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;aAC3B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAEtD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,+BAA+B,KAAK,CAAC,KAAK,IAAI;aACtD,CAAA;QACF,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;QACnD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,eAAe,CAAC,CAAA;QAErF,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrF,MAAM,QAAQ,GAAG,CAAC,aAAa,SAAS,CAAC,MAAM,cAAc,YAAY,EAAE,CAAC,CAAA;QAE5E,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,UAAU;iBACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACV,MAAM,IAAI,GAAG,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;gBAC7C,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;YAChE,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAA;YACZ,QAAQ,CAAC,IAAI,CACZ,qHAAqH,KAAK,EAAE,CAC5H,CAAA;QACF,CAAC;QAED,OAAO;YACN,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAC7B,qEAAqE;YACrE,2DAA2D;YAC3D,mEAAmE;YACnE,4CAA4C;YAC5C,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACrC,IAAI,EAAE;gBACL,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBACvC,KAAK,EAAE,SAAS,CAAC,MAAM;gBACvB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aACzC;SACD,CAAA;IACF,CAAC;CACD,CAAC,CAAA"}
1
+ {"version":3,"file":"search-tools.js","sourceRoot":"","sources":["../../../src/tools/builtins/search-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;CAC3E,CAAC,CAAA;AAEF,yEAAyE;AACzE,sEAAsE;AACtE,wEAAwE;AACxE,2DAA2D;AAC3D,MAAM,gBAAgB,GAAG,CAAC,CAAA;AAE1B,wEAAwE;AACxE,yEAAyE;AACzE,2DAA2D;AAC3D,MAAM,eAAe,GAAG,CAAC,CAAA;AAEzB,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;IACzC,IAAI,EAAE,cAAc;IACpB,WAAW,EACV,yDAAyD;QACzD,wLAAwL;IACzL,WAAW;IACX,QAAQ,EAAE,UAAU;IACpB,WAAW,EAAE,EAAE;IACf,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,eAAe,EAAE,IAAI;IAErB,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO;QAC3B,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC3B,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,8CAA8C;aACrD,CAAA;QACF,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QACzF,wEAAwE;QACxE,4DAA4D;QAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY;aACjC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;aAC3B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAEtD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO;gBACN,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,+BAA+B,KAAK,CAAC,KAAK,IAAI;aACtD,CAAA;QACF,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAA;QACnD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,eAAe,CAAC,CAAA;QAErF,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrF,MAAM,QAAQ,GAAG,CAAC,aAAa,SAAS,CAAC,MAAM,cAAc,YAAY,EAAE,CAAC,CAAA;QAE5E,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,UAAU;iBACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBACV,MAAM,IAAI,GAAG,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAA;gBAC7C,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;YAChE,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAA;YACZ,QAAQ,CAAC,IAAI,CACZ,qHAAqH,KAAK,EAAE,CAC5H,CAAA;QACF,CAAC;QAED,OAAO;YACN,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;YAC7B,qEAAqE;YACrE,2DAA2D;YAC3D,mEAAmE;YACnE,4CAA4C;YAC5C,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACrC,IAAI,EAAE;gBACL,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBACvC,KAAK,EAAE,SAAS,CAAC,MAAM;gBACvB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aACzC;SACD,CAAA;IACF,CAAC;CACD,CAAC,CAAA"}
@@ -70,13 +70,15 @@ export declare const SKILL_TOOL_NAME = "skill";
70
70
  * Build the `skill` tool, with what the host knows about where its model's
71
71
  * tools run. {@link SkillTool} is this with no options.
72
72
  */
73
- export declare function createSkillTool(options?: SkillToolOptions): import("../../public-types.js").ToolDefinition<{
73
+ export declare function createSkillTool(options?: SkillToolOptions): import("../../types/tool/index.js").ToolDefinition<{
74
74
  cursor?: string | undefined;
75
75
  name?: string | undefined;
76
+ args?: string | undefined;
76
77
  }>;
77
78
  /** The `skill` tool with no host options: the listing carries the registry's `location`. */
78
- export declare const SkillTool: import("../../public-types.js").ToolDefinition<{
79
+ export declare const SkillTool: import("../../types/tool/index.js").ToolDefinition<{
79
80
  cursor?: string | undefined;
80
81
  name?: string | undefined;
82
+ args?: string | undefined;
81
83
  }>;
82
84
  //# sourceMappingURL=skill.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/skill.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAI3D,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAE5B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,2DAA2D;AAC3D,MAAM,WAAW,qBAAqB;IACrC,sFAAsF;IACtF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;CACtC;AAED,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACrC,yEAAyE;IACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACpC,KAAK,EAAE,qBAAqB,EAC5B,OAAO,EAAE,qBAAqB,KAC1B,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;AAErD,MAAM,WAAW,gBAAgB;IAChC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,sBAAsB,CAAA;CACvD;AAkOD,eAAO,MAAM,eAAe,UAAU,CAAA;AAEtC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB;;;GAsP7D;AAED,4FAA4F;AAC5F,eAAO,MAAM,SAAS;;;EAAoB,CAAA"}
1
+ {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../../src/tools/builtins/skill.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAK3D,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAE5B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,2DAA2D;AAC3D,MAAM,WAAW,qBAAqB;IACrC,sFAAsF;IACtF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;CACtC;AAED,6DAA6D;AAC7D,MAAM,WAAW,qBAAqB;IACrC,yEAAyE;IACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAC1B;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,sBAAsB,GAAG,CACpC,KAAK,EAAE,qBAAqB,EAC5B,OAAO,EAAE,qBAAqB,KAC1B,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;AAErD,MAAM,WAAW,gBAAgB;IAChC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,sBAAsB,CAAA;CACvD;AAyOD,eAAO,MAAM,eAAe,UAAU,CAAA;AAKtC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB;;;;GAyR7D;AAED,4FAA4F;AAC5F,eAAO,MAAM,SAAS;;;;EAAoB,CAAA"}