@markusylisiurunen/tau 0.3.80 → 0.3.82

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 (225) hide show
  1. package/dist/code_mode/command.js +4 -16
  2. package/dist/code_mode/command.js.map +1 -1
  3. package/dist/code_mode/images.js +5 -6
  4. package/dist/code_mode/images.js.map +1 -1
  5. package/dist/code_mode/index.d.ts +1 -3
  6. package/dist/code_mode/index.js +1 -2
  7. package/dist/code_mode/index.js.map +1 -1
  8. package/dist/code_mode/runtime.d.ts +8 -4
  9. package/dist/code_mode/runtime.js +52 -63
  10. package/dist/code_mode/runtime.js.map +1 -1
  11. package/dist/core/code_mode/bash.js +269 -0
  12. package/dist/core/code_mode/bash.js.map +1 -0
  13. package/dist/core/code_mode/capability.js +2 -0
  14. package/dist/core/code_mode/capability.js.map +1 -0
  15. package/dist/core/code_mode/history.js +62 -0
  16. package/dist/core/code_mode/history.js.map +1 -0
  17. package/dist/core/code_mode/mcp.js +121 -0
  18. package/dist/core/code_mode/mcp.js.map +1 -0
  19. package/dist/core/code_mode/models.js +256 -0
  20. package/dist/core/code_mode/models.js.map +1 -0
  21. package/dist/core/{tools → code_mode}/nook.js +13 -77
  22. package/dist/core/code_mode/nook.js.map +1 -0
  23. package/dist/core/code_mode/sdk.js +97 -0
  24. package/dist/core/code_mode/sdk.js.map +1 -0
  25. package/dist/core/{tools → code_mode}/web.js +31 -90
  26. package/dist/core/code_mode/web.js.map +1 -0
  27. package/dist/core/commands/registry.js +0 -22
  28. package/dist/core/commands/registry.js.map +1 -1
  29. package/dist/core/config/content_loader.js +3 -1
  30. package/dist/core/config/content_loader.js.map +1 -1
  31. package/dist/core/debug.js +1 -1
  32. package/dist/core/debug.js.map +1 -1
  33. package/dist/core/index.js +1 -1
  34. package/dist/core/index.js.map +1 -1
  35. package/dist/core/models/openrouter.js +171 -0
  36. package/dist/core/models/openrouter.js.map +1 -0
  37. package/dist/core/{tool → models}/openrouter_decisions.js +6 -7
  38. package/dist/core/models/openrouter_decisions.js.map +1 -0
  39. package/dist/core/models/openrouter_media.js +128 -0
  40. package/dist/core/models/openrouter_media.js.map +1 -0
  41. package/dist/core/personas.js +2 -1
  42. package/dist/core/personas.js.map +1 -1
  43. package/dist/core/runtime/chat_runtime.js +2 -13
  44. package/dist/core/runtime/chat_runtime.js.map +1 -1
  45. package/dist/core/session/compaction.js +5 -3
  46. package/dist/core/session/compaction.js.map +1 -1
  47. package/dist/core/static/code_mode/history/documentation.md +95 -167
  48. package/dist/core/static/code_mode/mcp/documentation.md +144 -67
  49. package/dist/core/static/code_mode/nook/documentation.md +108 -169
  50. package/dist/core/static/code_mode/sandbox_runner.mjs +37 -20
  51. package/dist/core/static/code_mode/web/documentation.md +115 -213
  52. package/dist/core/static/tau_docs/client-tools.md +4 -4
  53. package/dist/core/static/tau_docs/history.md +2 -2
  54. package/dist/core/static/tau_docs/index.md +1 -1
  55. package/dist/core/static/tau_docs/node-sdk.md +6 -7
  56. package/dist/core/static/tau_docs/nook.md +2 -2
  57. package/dist/core/static/tau_docs/personas.md +2 -2
  58. package/dist/core/static/tau_docs/remote-sessions.md +2 -2
  59. package/dist/core/static/tau_docs/security.md +4 -4
  60. package/dist/core/static/tau_docs/session-protocol-methods.md +1 -46
  61. package/dist/core/static/tau_docs/session-protocol.md +11 -11
  62. package/dist/core/static/tau_docs/sessions.md +6 -25
  63. package/dist/core/static/tau_docs/subagents.md +3 -2
  64. package/dist/core/static/tau_docs/telegram.md +1 -1
  65. package/dist/core/static/tau_docs/tools.md +40 -48
  66. package/dist/core/static/tau_docs/troubleshooting.md +2 -2
  67. package/dist/core/static/tau_docs/tui.md +8 -7
  68. package/dist/core/subagents/registry.js +2 -1
  69. package/dist/core/subagents/registry.js.map +1 -1
  70. package/dist/core/subagents/types.js +2 -1
  71. package/dist/core/subagents/types.js.map +1 -1
  72. package/dist/core/telegram/adapter.js +1 -6
  73. package/dist/core/telegram/adapter.js.map +1 -1
  74. package/dist/core/tool/image_generate.js +2 -1
  75. package/dist/core/tool/image_generate.js.map +1 -1
  76. package/dist/core/tool/media.js +1 -49
  77. package/dist/core/tool/media.js.map +1 -1
  78. package/dist/core/tool/openrouter.js +24 -156
  79. package/dist/core/tool/openrouter.js.map +1 -1
  80. package/dist/core/tool/openrouter_input.js +77 -0
  81. package/dist/core/tool/openrouter_input.js.map +1 -0
  82. package/dist/core/tool/speech_generate.js +2 -1
  83. package/dist/core/tool/speech_generate.js.map +1 -1
  84. package/dist/core/tools/bash.js +2 -1
  85. package/dist/core/tools/bash.js.map +1 -1
  86. package/dist/core/tools/bash_jobs.js +34 -5
  87. package/dist/core/tools/bash_jobs.js.map +1 -1
  88. package/dist/core/tools/catalog.js +18 -44
  89. package/dist/core/tools/catalog.js.map +1 -1
  90. package/dist/core/tools/code.js +100 -0
  91. package/dist/core/tools/code.js.map +1 -0
  92. package/dist/core/tools/code_mode.js +9 -30
  93. package/dist/core/tools/code_mode.js.map +1 -1
  94. package/dist/core/tools/code_mode_worker.js +2 -2
  95. package/dist/core/tools/presentation.js +2 -1
  96. package/dist/core/tools/presentation.js.map +1 -1
  97. package/dist/core/tools/tool_names.js +5 -7
  98. package/dist/core/tools/tool_names.js.map +1 -1
  99. package/dist/core/utils/gemini_transcription.js +81 -37
  100. package/dist/core/utils/gemini_transcription.js.map +1 -1
  101. package/dist/core/utils/media_validation.js +50 -0
  102. package/dist/core/utils/media_validation.js.map +1 -0
  103. package/dist/core/utils/user_metadata.js +0 -14
  104. package/dist/core/utils/user_metadata.js.map +1 -1
  105. package/dist/core/version.js +2 -2
  106. package/dist/diff_tool/app/dist/assets/{angular-html-BbLgbIhq.js → angular-html-D20byCHL.js} +1 -1
  107. package/dist/diff_tool/app/dist/assets/{angular-ts-DXk17TRM.js → angular-ts-CvVQslm2.js} +1 -1
  108. package/dist/diff_tool/app/dist/assets/{apl-BsvksCXR.js → apl-DNIxlYWe.js} +1 -1
  109. package/dist/diff_tool/app/dist/assets/{astro-DH775E4V.js → astro-DDOw4EUG.js} +1 -1
  110. package/dist/diff_tool/app/dist/assets/{blade-Ck99Rm59.js → blade-DlhB-SLW.js} +1 -1
  111. package/dist/diff_tool/app/dist/assets/{c-DJpHqu5J.js → c-C1f4vhDm.js} +1 -1
  112. package/dist/diff_tool/app/dist/assets/{chapel-Owff0Csy.js → chapel-Ctt8xOX1.js} +1 -1
  113. package/dist/diff_tool/app/dist/assets/{cobol-Cv2gZuhO.js → cobol-BXw71PAA.js} +1 -1
  114. package/dist/diff_tool/app/dist/assets/{coffee-Bji0YCf_.js → coffee-CRh_5Nmr.js} +1 -1
  115. package/dist/diff_tool/app/dist/assets/{cpp-DTjA_yFF.js → cpp-IlI-zWOZ.js} +1 -1
  116. package/dist/diff_tool/app/dist/assets/{crystal-Dd00NOeb.js → crystal-CXeL28i7.js} +1 -1
  117. package/dist/diff_tool/app/dist/assets/{css-D44TN1V6.js → css-BfST9hFI.js} +1 -1
  118. package/dist/diff_tool/app/dist/assets/{edge-CVmGSi2m.js → edge--Q22k_ty.js} +1 -1
  119. package/dist/diff_tool/app/dist/assets/{elixir-B8Mq7no2.js → elixir-CIfC_rQx.js} +1 -1
  120. package/dist/diff_tool/app/dist/assets/{elm-CXS0I3Z2.js → elm-OkZ29XRO.js} +1 -1
  121. package/dist/diff_tool/app/dist/assets/{erb-B9oDKaUo.js → erb-B8ZXgEqv.js} +1 -1
  122. package/dist/diff_tool/app/dist/assets/{git-rebase-DT-YFebH.js → git-rebase-CxkO_WGd.js} +1 -1
  123. package/dist/diff_tool/app/dist/assets/{glimmer-js-s0DXlNjq.js → glimmer-js-BVadyIrr.js} +1 -1
  124. package/dist/diff_tool/app/dist/assets/{glimmer-ts-QgEB5S2z.js → glimmer-ts-D5J3Qb7n.js} +1 -1
  125. package/dist/diff_tool/app/dist/assets/{glsl-NA0icwbY.js → glsl-B6iy73-Y.js} +1 -1
  126. package/dist/diff_tool/app/dist/assets/{graphql-0_dOlfV0.js → graphql-Dc3rUXf5.js} +1 -1
  127. package/dist/diff_tool/app/dist/assets/{hack-D-mr7l1l.js → hack-q8Utf8Jp.js} +1 -1
  128. package/dist/diff_tool/app/dist/assets/{haml-B0-oQmz7.js → haml-mjMIlj_2.js} +1 -1
  129. package/dist/diff_tool/app/dist/assets/{handlebars-Yq9bXpWN.js → handlebars-CA-BL8Ks.js} +1 -1
  130. package/dist/diff_tool/app/dist/assets/{html-B8bMmdRK.js → html-BmPxhYCX.js} +1 -1
  131. package/dist/diff_tool/app/dist/assets/{html-derivative-BpxSlQb_.js → html-derivative-CvknIjuB.js} +1 -1
  132. package/dist/diff_tool/app/dist/assets/{http-hS_53mxt.js → http-DNxLDRIi.js} +1 -1
  133. package/dist/diff_tool/app/dist/assets/{hurl-B2ST1kwl.js → hurl-kbd3Eq2V.js} +1 -1
  134. package/dist/diff_tool/app/dist/assets/index-D8ZI_2RC.js +340 -0
  135. package/dist/diff_tool/app/dist/assets/{java-D4mj0lZJ.js → java-BuZshgf1.js} +1 -1
  136. package/dist/diff_tool/app/dist/assets/{javascript-wC7rrKiV.js → javascript-DfL2oeFU.js} +1 -1
  137. package/dist/diff_tool/app/dist/assets/{jinja-DbQ3o87F.js → jinja-Bu0KQihU.js} +1 -1
  138. package/dist/diff_tool/app/dist/assets/{jison-CrE9FdvP.js → jison-Bqn7Mf3Q.js} +1 -1
  139. package/dist/diff_tool/app/dist/assets/{json-xjicDyWN.js → json-BuX5LKaB.js} +1 -1
  140. package/dist/diff_tool/app/dist/assets/{jsx-m28lXojQ.js → jsx-DdVJ-ZBp.js} +1 -1
  141. package/dist/diff_tool/app/dist/assets/{julia-19xkOmop.js → julia-CQeijOoQ.js} +1 -1
  142. package/dist/diff_tool/app/dist/assets/{just-Cf7OorTr.js → just-vzAktFGR.js} +1 -1
  143. package/dist/diff_tool/app/dist/assets/{latex-DDb7GQOy.js → latex-Dm60cg0k.js} +1 -1
  144. package/dist/diff_tool/app/dist/assets/{liquid-DHOuQ0rf.js → liquid-vxKzm2P8.js} +1 -1
  145. package/dist/diff_tool/app/dist/assets/{lua-BGyIvonw.js → lua-DIoqi4dd.js} +1 -1
  146. package/dist/diff_tool/app/dist/assets/{marko-DB5OqI1C.js → marko-BTHgFKby.js} +1 -1
  147. package/dist/diff_tool/app/dist/assets/{mdc-DTyNMupO.js → mdc-CEfz8gZ9.js} +1 -1
  148. package/dist/diff_tool/app/dist/assets/{nginx-DfF0fMYD.js → nginx-DNlFDEfJ.js} +1 -1
  149. package/dist/diff_tool/app/dist/assets/{nim-BbwsXuZD.js → nim-DnvT_0lZ.js} +1 -1
  150. package/dist/diff_tool/app/dist/assets/{org-BkOBBl1f.js → org-BbD-ElVf.js} +1 -1
  151. package/dist/diff_tool/app/dist/assets/{perl-BTXTOl4K.js → perl-DTsbnAmK.js} +1 -1
  152. package/dist/diff_tool/app/dist/assets/{php-DIMVQWiA.js → php-CwEsJe-W.js} +1 -1
  153. package/dist/diff_tool/app/dist/assets/{pug-B_nrb4dJ.js → pug-BOttMVH-.js} +1 -1
  154. package/dist/diff_tool/app/dist/assets/{qml-1PXi8G8Z.js → qml-C8KkSItN.js} +1 -1
  155. package/dist/diff_tool/app/dist/assets/{r-CJrAkc2Z.js → r-K4ksJj_R.js} +1 -1
  156. package/dist/diff_tool/app/dist/assets/{razor-DgPUftNd.js → razor-yuWRrrG6.js} +1 -1
  157. package/dist/diff_tool/app/dist/assets/{regexp-C2hS8XvL.js → regexp-CV-jhnUz.js} +1 -1
  158. package/dist/diff_tool/app/dist/assets/{rst-CDouhKnc.js → rst-CLA3Attc.js} +1 -1
  159. package/dist/diff_tool/app/dist/assets/{ruby-CAjKW1uO.js → ruby-DiHR2-DX.js} +1 -1
  160. package/dist/diff_tool/app/dist/assets/{sas-qAHkHLc1.js → sas-DxIjbYJ5.js} +1 -1
  161. package/dist/diff_tool/app/dist/assets/{scss-Bfx2Ydid.js → scss-CShwEaV4.js} +1 -1
  162. package/dist/diff_tool/app/dist/assets/{shellscript-Bu76R8y2.js → shellscript-CeezOnrF.js} +1 -1
  163. package/dist/diff_tool/app/dist/assets/{shellsession-BU8BL0oL.js → shellsession-CjSS2r7j.js} +1 -1
  164. package/dist/diff_tool/app/dist/assets/{soy-FRl8ozP-.js → soy-CI_v23nJ.js} +1 -1
  165. package/dist/diff_tool/app/dist/assets/{sql-BacQgsEs.js → sql-D9GaB00A.js} +1 -1
  166. package/dist/diff_tool/app/dist/assets/{stata-B9kkG-ET.js → stata-hK92TPE_.js} +1 -1
  167. package/dist/diff_tool/app/dist/assets/{surrealql-qvETr7iY.js → surrealql-UO8LtPJG.js} +1 -1
  168. package/dist/diff_tool/app/dist/assets/{svelte-B0z1MgHc.js → svelte-kIlaw_oh.js} +1 -1
  169. package/dist/diff_tool/app/dist/assets/{templ-DTnPshKb.js → templ-DFRz1JP6.js} +1 -1
  170. package/dist/diff_tool/app/dist/assets/{tex-Cosab9_H.js → tex-CfxIXk_z.js} +1 -1
  171. package/dist/diff_tool/app/dist/assets/{ts-tags-DNYvLFUH.js → ts-tags-BtUHl0ff.js} +1 -1
  172. package/dist/diff_tool/app/dist/assets/{tsx-Dstq6j1a.js → tsx-Cd4SAe2C.js} +1 -1
  173. package/dist/diff_tool/app/dist/assets/{twig-BzqZdwaX.js → twig-CWk4q5Y3.js} +1 -1
  174. package/dist/diff_tool/app/dist/assets/{typescript-YOQ_oE25.js → typescript-BqxGJiP0.js} +1 -1
  175. package/dist/diff_tool/app/dist/assets/{typst-DTffwfpc.js → typst-D9nAun2p.js} +1 -1
  176. package/dist/diff_tool/app/dist/assets/{vue-D4OMj_C5.js → vue-D6HYhg6_.js} +1 -1
  177. package/dist/diff_tool/app/dist/assets/{vue-html-kT4WrHGK.js → vue-html-1VRlaENS.js} +1 -1
  178. package/dist/diff_tool/app/dist/assets/{vue-vine-CxeapeMO.js → vue-vine-BaH0We9y.js} +1 -1
  179. package/dist/diff_tool/app/dist/assets/{xml-DWVpuurg.js → xml-C4RWnUuj.js} +1 -1
  180. package/dist/diff_tool/app/dist/assets/{xsl-C0ciup5a.js → xsl-D1iD38ga.js} +1 -1
  181. package/dist/diff_tool/app/dist/assets/{yaml-98Fvyfpc.js → yaml-yAb4W0G-.js} +1 -1
  182. package/dist/diff_tool/app/dist/index.html +1 -1
  183. package/dist/host/local_session_host.js +24 -318
  184. package/dist/host/local_session_host.js.map +1 -1
  185. package/dist/host/session_host.js.map +1 -1
  186. package/dist/host/session_protocol_handler.js +0 -98
  187. package/dist/host/session_protocol_handler.js.map +1 -1
  188. package/dist/nook/README.md +1 -1
  189. package/dist/protocol/index.d.ts +1 -1
  190. package/dist/protocol/index.js.map +1 -1
  191. package/dist/protocol/session_protocol.d.ts +3 -28
  192. package/dist/protocol/session_protocol.js +1 -56
  193. package/dist/protocol/session_protocol.js.map +1 -1
  194. package/dist/sdk/code_mode.js +11 -17
  195. package/dist/sdk/code_mode.js.map +1 -1
  196. package/dist/sdk/index.d.ts +2 -2
  197. package/dist/sdk/index.js +1 -1
  198. package/dist/sdk/index.js.map +1 -1
  199. package/dist/sdk/session.js +0 -20
  200. package/dist/sdk/session.js.map +1 -1
  201. package/dist/sdk/types.d.ts +1 -7
  202. package/dist/store/session_snapshot_migrations.js +72 -1
  203. package/dist/store/session_snapshot_migrations.js.map +1 -1
  204. package/dist/tui/session_chat_controller.js +95 -82
  205. package/dist/tui/session_chat_controller.js.map +1 -1
  206. package/dist/tui/ui/footer.js +2 -5
  207. package/dist/tui/ui/footer.js.map +1 -1
  208. package/package.json +7 -7
  209. package/dist/code_mode/files.d.ts +0 -47
  210. package/dist/code_mode/files.js +0 -296
  211. package/dist/code_mode/files.js.map +0 -1
  212. package/dist/core/session/goal.js +0 -54
  213. package/dist/core/session/goal.js.map +0 -1
  214. package/dist/core/tool/openrouter_decisions.js.map +0 -1
  215. package/dist/core/tool/openrouter_media.js +0 -180
  216. package/dist/core/tool/openrouter_media.js.map +0 -1
  217. package/dist/core/tools/goal.js +0 -167
  218. package/dist/core/tools/goal.js.map +0 -1
  219. package/dist/core/tools/history.js +0 -118
  220. package/dist/core/tools/history.js.map +0 -1
  221. package/dist/core/tools/mcp.js +0 -167
  222. package/dist/core/tools/mcp.js.map +0 -1
  223. package/dist/core/tools/nook.js.map +0 -1
  224. package/dist/core/tools/web.js.map +0 -1
  225. package/dist/diff_tool/app/dist/assets/index-CBT_sNIz.js +0 -340
@@ -1,167 +0,0 @@
1
- import { Type } from "typebox";
2
- import { z } from "zod";
3
- import { buildBlockedGoalInstruction, buildGoalPolicy, formatGoalState } from "../session/goal.js";
4
- import { parseToolArgs } from "../utils/zod.js";
5
- import { buildToolRunPresentation, } from "./presentation.js";
6
- import { createTextToolOutcome, executeTool, } from "./registry.js";
7
- import { TOOL_NAME_CREATE_GOAL, TOOL_NAME_GET_GOAL, TOOL_NAME_UPDATE_GOAL } from "./tool_names.js";
8
- const GET_GOAL_TOOL = {
9
- name: TOOL_NAME_GET_GOAL,
10
- description: "Return the current persisted session goal, or null when no goal exists.",
11
- parameters: Type.Object({}, { additionalProperties: false }),
12
- };
13
- const CREATE_GOAL_TOOL = {
14
- name: TOOL_NAME_CREATE_GOAL,
15
- description: "Create an active persisted session goal. Use this only when the user explicitly asks to create, start, or set a goal, or when system or developer instructions explicitly require one. Never infer a goal from an ordinary task, even when the task is large or multi-step. Continue working on the new goal in the current turn.",
16
- parameters: Type.Object({
17
- objective: Type.String({ minLength: 1 }),
18
- }, { additionalProperties: false }),
19
- };
20
- const UPDATE_GOAL_TOOL = {
21
- name: TOOL_NAME_UPDATE_GOAL,
22
- description: "Update the current persisted goal. Replace objective only when user steering, discovered requirements, or a clearer formulation materially changes the target, never to make completion easier. Set status to complete only after every requirement is achieved and verified; this clears the goal. Set status to blocked only when meaningful progress requires user input or an external state change. An objective update may be combined with blocked, but not complete.",
23
- parameters: Type.Object({
24
- objective: Type.Optional(Type.String({ minLength: 1 })),
25
- status: Type.Optional(Type.Union([Type.Literal("complete"), Type.Literal("blocked")])),
26
- }, { additionalProperties: false, minProperties: 1 }),
27
- };
28
- const emptyArgsSchema = z.object({}).strict();
29
- const createArgsSchema = z
30
- .object({ objective: z.string().trim().min(1, "must not be empty.") })
31
- .strict();
32
- const GOAL_FAILURE_ACTIONS = {
33
- [TOOL_NAME_GET_GOAL]: "read session goal",
34
- [TOOL_NAME_CREATE_GOAL]: "create session goal",
35
- [TOOL_NAME_UPDATE_GOAL]: "update session goal",
36
- };
37
- const GOAL_ACTION_LABELS = {
38
- [TOOL_NAME_GET_GOAL]: {
39
- preparing: "preparing check",
40
- queued: "queued check",
41
- running: "checking",
42
- succeeded: "checked",
43
- failed: "failed to check",
44
- blocked: "check blocked",
45
- cancelled: "check cancelled",
46
- },
47
- [TOOL_NAME_CREATE_GOAL]: {
48
- preparing: "preparing creation",
49
- queued: "queued creation",
50
- running: "creating",
51
- succeeded: "created",
52
- failed: "failed to create",
53
- blocked: "creation blocked",
54
- cancelled: "creation cancelled",
55
- },
56
- [TOOL_NAME_UPDATE_GOAL]: {
57
- preparing: "preparing update",
58
- queued: "queued update",
59
- running: "updating",
60
- succeeded: "updated",
61
- failed: "failed to update",
62
- blocked: "update blocked",
63
- cancelled: "update cancelled",
64
- },
65
- };
66
- const updateArgsSchema = z
67
- .object({
68
- objective: z.string().trim().min(1, "must not be empty.").optional(),
69
- status: z.enum(["complete", "blocked"]).optional(),
70
- })
71
- .strict()
72
- .refine((args) => args.objective !== undefined || args.status !== undefined, {
73
- message: "objective or status is required.",
74
- })
75
- .refine((args) => !(args.objective !== undefined && args.status === "complete"), {
76
- message: "objective cannot be combined with complete.",
77
- });
78
- export function createGoalToolDefinitions(manager) {
79
- return [
80
- createGoalTool(GET_GOAL_TOOL, emptyArgsSchema, () => formatGoalState(manager.getGoal())),
81
- createGoalTool(CREATE_GOAL_TOOL, createArgsSchema, async ({ objective }) => {
82
- const goal = await manager.createGoal(objective);
83
- return {
84
- text: `Session goal created.\n\n${buildGoalPolicy(goal)}`,
85
- presentation: {
86
- details: [{ text: goal.objective }],
87
- },
88
- };
89
- }),
90
- createGoalTool(UPDATE_GOAL_TOOL, updateArgsSchema, async (update) => {
91
- const goal = await manager.updateGoal(update);
92
- if (goal === null) {
93
- return "The session goal is complete and has been cleared.";
94
- }
95
- const instruction = goal.status === "active" ? buildGoalPolicy(goal) : buildBlockedGoalInstruction(goal);
96
- return {
97
- text: `Session goal updated.\n\n${instruction}`,
98
- presentation: {
99
- details: [{ text: goal.objective }],
100
- },
101
- };
102
- }),
103
- ];
104
- }
105
- function createGoalTool(schema, argsSchema, execute) {
106
- const actionOverrides = GOAL_ACTION_LABELS[schema.name];
107
- const failureAction = GOAL_FAILURE_ACTIONS[schema.name];
108
- if (!actionOverrides || !failureAction) {
109
- throw new Error(`missing goal presentation configuration for '${schema.name}'`);
110
- }
111
- return {
112
- schema,
113
- describe: () => ({
114
- presentation: buildToolRunPresentation({
115
- toolName: schema.name,
116
- subject: "goal",
117
- actionOverrides,
118
- }),
119
- }),
120
- async execute(toolCall, context) {
121
- const finish = (text, outcome, successPresentation) => {
122
- return {
123
- ...createTextToolOutcome(text, outcome),
124
- uiEvent: {
125
- type: "tool_call_finished",
126
- toolCallId: toolCall.id,
127
- toolName: schema.name,
128
- presentation: buildToolRunPresentation({
129
- toolName: schema.name,
130
- subject: "goal",
131
- details: successPresentation?.details ?? [{ text }],
132
- ...(successPresentation ? { detailTruncation: false } : {}),
133
- actionOverrides,
134
- }),
135
- status: outcome === "succeeded" ? "success" : "error",
136
- },
137
- };
138
- };
139
- return executeTool(context, async () => {
140
- const parsed = parseToolArgs(argsSchema, toolCall.arguments);
141
- if (!parsed.ok) {
142
- return finish(`Invalid arguments: ${parsed.error}`, "blocked");
143
- }
144
- try {
145
- const result = await execute(parsed.data);
146
- return typeof result === "string"
147
- ? finish(result, "succeeded")
148
- : finish(result.text, "succeeded", result.presentation);
149
- }
150
- catch (error) {
151
- const errorMessage = error instanceof Error ? error.message : String(error);
152
- return finish(`Could not ${failureAction}: ${errorMessage}`, "failed");
153
- }
154
- }, {
155
- type: "tool_call_started",
156
- toolCallId: toolCall.id,
157
- toolName: schema.name,
158
- presentation: buildToolRunPresentation({
159
- toolName: schema.name,
160
- subject: "goal",
161
- actionOverrides,
162
- }),
163
- });
164
- },
165
- };
166
- }
167
- //# sourceMappingURL=goal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"goal.js","sourceRoot":"","sources":["../../../src/core/tools/goal.ts"],"names":[],"mappings":"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"}
@@ -1,118 +0,0 @@
1
- import { readFileSync } from "node:fs";
2
- import { Type } from "typebox";
3
- import { z } from "zod";
4
- import { formatZodError } from "../utils/zod.js";
5
- import { buildCodeModeToolDescription, createCodeModeToolDefinition, executeInternalCodeMode, } from "./code_mode.js";
6
- import { TOOL_NAME_HISTORY } from "./tool_names.js";
7
- const HISTORY_CODE_MODE_TIMEOUT_MS = 60_000;
8
- const HISTORY_DESCRIPTION = buildCodeModeToolDescription({
9
- sdkGlobal: "history",
10
- introduction: [
11
- "Run a one-shot JavaScript program to search and read durable transcripts from the configured history collection.",
12
- "Use this tool only when the user or other active instructions directly ask you to reference, search, or read historical transcripts; do not invoke it merely because prior sessions might be relevant.",
13
- "For a known historical session without a clear lookup key, a bounded chronological overview is one way to identify entries worth inspecting in detail.",
14
- "When a remote session descriptor includes webUrl, return it when the user asks for a conversation link.",
15
- "The tool is read-only and has global visibility across repositories and execution environments.",
16
- ],
17
- });
18
- export const HISTORY_TOOL = {
19
- name: TOOL_NAME_HISTORY,
20
- description: HISTORY_DESCRIPTION,
21
- parameters: Type.Object({
22
- code: Type.String({
23
- description: "JavaScript source to execute. Use console output for text and await image(block) to return images.",
24
- }),
25
- }, { additionalProperties: false }),
26
- };
27
- const historyArgsSchema = z
28
- .object({ code: z.string().trim().min(1, "must not be empty.") })
29
- .strict();
30
- const attributeFilterSchema = z.union([
31
- z.string().max(1_024),
32
- z.object({ contains: z.string().min(1).max(1_024) }).strict(),
33
- ]);
34
- const attributeFiltersSchema = z
35
- .record(z.string().min(1).max(64), attributeFilterSchema)
36
- .refine((attributes) => Object.keys(attributes).length <= 32);
37
- const searchInputSchema = z
38
- .object({
39
- query: z.string().trim().min(1).max(1_000).optional(),
40
- attributes: attributeFiltersSchema.optional(),
41
- limit: z.number().int().min(1).max(75).default(10),
42
- cursor: z.string().min(1).max(2_048).optional(),
43
- })
44
- .strict();
45
- const readInputSchema = z
46
- .object({
47
- sessionId: z.string().trim().min(1).max(256),
48
- limit: z.number().int().min(1).max(100).default(50),
49
- cursor: z.string().min(1).max(2_048).optional(),
50
- })
51
- .strict();
52
- const documentation = readFileSync(new URL("../static/code_mode/history/documentation.md", import.meta.url), "utf8");
53
- function parseHistoryArguments(raw) {
54
- const rawCode = typeof raw === "object" && raw !== null && typeof raw.code === "string"
55
- ? raw.code
56
- : "";
57
- const subject = rawCode
58
- .split(/\r?\n/)
59
- .map((line) => line.trim())
60
- .find(Boolean) ?? "(invalid code)";
61
- const parsed = historyArgsSchema.safeParse(raw);
62
- if (!parsed.success) {
63
- return {
64
- ok: false,
65
- error: formatZodError(parsed.error),
66
- code: rawCode,
67
- subject,
68
- };
69
- }
70
- return {
71
- ok: true,
72
- args: parsed.data,
73
- code: parsed.data.code,
74
- subject,
75
- };
76
- }
77
- async function handleHistoryRequest(method, args, history, signal) {
78
- if (args.length !== 1) {
79
- throw new Error(`history.${method} expects one options object`);
80
- }
81
- if (method === "search") {
82
- const parsed = searchInputSchema.safeParse(args[0] ?? {});
83
- if (!parsed.success) {
84
- throw new Error(`Invalid history.search options: ${formatZodError(parsed.error)}`);
85
- }
86
- return await history.search(parsed.data, signal);
87
- }
88
- if (method === "read") {
89
- const parsed = readInputSchema.safeParse(args[0]);
90
- if (!parsed.success) {
91
- throw new Error(`Invalid history.read options: ${formatZodError(parsed.error)}`);
92
- }
93
- return await history.read(parsed.data, signal);
94
- }
95
- throw new Error(`unsupported history method '${method}'`);
96
- }
97
- export function createHistoryToolDefinition(backend, history) {
98
- const implementation = {
99
- schema: HISTORY_TOOL,
100
- timeoutMs: HISTORY_CODE_MODE_TIMEOUT_MS,
101
- parseArguments: parseHistoryArguments,
102
- execute: async ({ code, agentId, signal, backend: executionBackend }) => executeInternalCodeMode({
103
- name: TOOL_NAME_HISTORY,
104
- documentation,
105
- api: {
106
- search: (args, context) => handleHistoryRequest("search", args, history, context.signal),
107
- read: (args, context) => handleHistoryRequest("read", args, history, context.signal),
108
- },
109
- code,
110
- agentId,
111
- backend: executionBackend,
112
- signal,
113
- timeoutMs: HISTORY_CODE_MODE_TIMEOUT_MS,
114
- }),
115
- };
116
- return createCodeModeToolDefinition(backend, implementation);
117
- }
118
- //# sourceMappingURL=history.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../src/core/tools/history.ts"],"names":[],"mappings":"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"}
@@ -1,167 +0,0 @@
1
- import { readFileSync } from "node:fs";
2
- import { Type } from "typebox";
3
- import { z } from "zod";
4
- import { searchMcpTools } from "../mcp/search.js";
5
- import { formatZodError } from "../utils/zod.js";
6
- import { buildCodeModeToolDescription, createCodeModeToolDefinition, executeInternalCodeMode, } from "./code_mode.js";
7
- import { TOOL_NAME_MCP } from "./tool_names.js";
8
- export const MCP_TOOL = {
9
- name: TOOL_NAME_MCP,
10
- description: buildCodeModeToolDescription({
11
- sdkGlobal: "mcp",
12
- introduction: [
13
- "Run a one-shot JavaScript program to discover and call tools and read resources offered by configured MCP servers.",
14
- "Use this for connected services relevant to the user's task.",
15
- "Read a tool's description and input schema before calling it; do not guess names or arguments.",
16
- "Tool calls can have side effects and are not undone if the program fails or is interrupted.",
17
- ],
18
- }),
19
- parameters: Type.Object({
20
- code: Type.String({
21
- description: "JavaScript source to execute. Use console output for text and await image(block) to return images.",
22
- }),
23
- }, { additionalProperties: false }),
24
- };
25
- const argsSchema = z.object({ code: z.string().trim().min(1) }).strict();
26
- const nameSchema = z.string().trim().min(1).max(256);
27
- const listOptionsSchema = z
28
- .object({
29
- query: z.string().trim().min(1).max(1_000).optional(),
30
- limit: z.number().int().min(1).max(100).default(20),
31
- offset: z.number().int().nonnegative().default(0),
32
- })
33
- .strict();
34
- const documentation = readFileSync(new URL("../static/code_mode/mcp/documentation.md", import.meta.url), "utf8");
35
- function parseMethodArgs(method, args, schema) {
36
- const parsed = schema.safeParse(args);
37
- if (!parsed.success)
38
- throw new Error(`Invalid mcp.${method} arguments: ${formatZodError(parsed.error)}`);
39
- return parsed.data;
40
- }
41
- export function createMcpToolDefinition(backend, manager) {
42
- return createCodeModeToolDefinition(backend, {
43
- schema: MCP_TOOL,
44
- timeoutMs: 900_000,
45
- parseArguments(raw) {
46
- const code = typeof raw === "object" &&
47
- raw !== null &&
48
- typeof raw.code === "string"
49
- ? raw.code
50
- : "";
51
- const subject = code
52
- .split(/\r?\n/)
53
- .map((line) => line.trim())
54
- .find(Boolean) ?? "(invalid code)";
55
- const parsed = argsSchema.safeParse(raw);
56
- return parsed.success
57
- ? { ok: true, args: parsed.data, code: parsed.data.code, subject }
58
- : { ok: false, error: formatZodError(parsed.error), code, subject };
59
- },
60
- execute: async ({ code, agentId, signal }) => await executeInternalCodeMode({
61
- name: "mcp",
62
- documentation,
63
- code,
64
- agentId,
65
- backend,
66
- signal,
67
- timeoutMs: 900_000,
68
- api: {
69
- listServers: async (args) => {
70
- parseMethodArgs("listServers", args, z.tuple([]));
71
- return manager.listServers();
72
- },
73
- searchTools: async (args, context) => {
74
- const [query, options] = parseMethodArgs("searchTools", args, z.tuple([
75
- z.string().trim().min(1).max(1_000),
76
- z
77
- .object({
78
- server: nameSchema.optional(),
79
- limit: z.number().int().min(1).max(100).default(8),
80
- })
81
- .strict()
82
- .optional(),
83
- ]));
84
- return await searchMcpTools(manager, query, options ?? { limit: 8 }, context.signal);
85
- },
86
- listTools: async (args, context) => {
87
- const [server, options] = parseMethodArgs("listTools", args, z.tuple([nameSchema, listOptionsSchema.optional()]));
88
- const { query, limit, offset } = options ?? listOptionsSchema.parse({});
89
- const catalog = await manager.listTools(server, context.signal);
90
- const terms = query?.toLowerCase().split(/\s+/) ?? [];
91
- const matching = catalog.tools.filter((tool) => {
92
- const text = `${tool.name} ${tool.description ?? ""}`.toLowerCase();
93
- return terms.every((term) => text.includes(term));
94
- });
95
- const tools = matching.slice(offset, offset + limit).map((tool) => ({
96
- name: tool.name,
97
- ...(tool.description ? { description: tool.description } : {}),
98
- }));
99
- return {
100
- ...(catalog.instructions ? { instructions: catalog.instructions } : {}),
101
- tools,
102
- total: matching.length,
103
- ...(offset + tools.length < matching.length
104
- ? { nextOffset: offset + tools.length }
105
- : {}),
106
- };
107
- },
108
- listResources: async (args, context) => {
109
- const [server, options] = parseMethodArgs("listResources", args, z.tuple([nameSchema, listOptionsSchema.optional()]));
110
- const { query, limit, offset } = options ?? listOptionsSchema.parse({});
111
- const catalog = await manager.listResources(server, context.signal);
112
- const terms = query?.toLowerCase().split(/\s+/) ?? [];
113
- const matching = catalog.filter((resource) => {
114
- const text = `${resource.uri} ${resource.name} ${resource.title ?? ""} ${resource.description ?? ""}`.toLowerCase();
115
- return terms.every((term) => text.includes(term));
116
- });
117
- const resources = matching.slice(offset, offset + limit);
118
- return {
119
- resources,
120
- total: matching.length,
121
- ...(offset + resources.length < matching.length
122
- ? { nextOffset: offset + resources.length }
123
- : {}),
124
- };
125
- },
126
- listResourceTemplates: async (args, context) => {
127
- const [server, options] = parseMethodArgs("listResourceTemplates", args, z.tuple([nameSchema, listOptionsSchema.optional()]));
128
- const { query, limit, offset } = options ?? listOptionsSchema.parse({});
129
- const catalog = await manager.listResourceTemplates(server, context.signal);
130
- const terms = query?.toLowerCase().split(/\s+/) ?? [];
131
- const matching = catalog.filter((resource) => {
132
- const text = `${resource.uriTemplate} ${resource.name} ${resource.title ?? ""} ${resource.description ?? ""}`.toLowerCase();
133
- return terms.every((term) => text.includes(term));
134
- });
135
- const resourceTemplates = matching.slice(offset, offset + limit);
136
- return {
137
- resourceTemplates,
138
- total: matching.length,
139
- ...(offset + resourceTemplates.length < matching.length
140
- ? { nextOffset: offset + resourceTemplates.length }
141
- : {}),
142
- };
143
- },
144
- readResource: async (args, context) => {
145
- const [server, uri] = parseMethodArgs("readResource", args, z.tuple([nameSchema, z.string().trim().min(1).max(8_192)]));
146
- return await manager.readResource(server, uri, context.signal);
147
- },
148
- describeTool: async (args, context) => {
149
- const [server, name] = parseMethodArgs("describeTool", args, z.tuple([nameSchema, nameSchema]));
150
- const tool = await manager.describeTool(server, name, context.signal);
151
- return {
152
- name: tool.name,
153
- ...(tool.description ? { description: tool.description } : {}),
154
- inputSchema: tool.inputSchema,
155
- ...(tool.outputSchema ? { outputSchema: tool.outputSchema } : {}),
156
- ...(tool.annotations ? { annotations: tool.annotations } : {}),
157
- };
158
- },
159
- callTool: async (args, context) => {
160
- const [server, name, input] = parseMethodArgs("callTool", args, z.tuple([nameSchema, nameSchema, z.record(z.string(), z.unknown())]));
161
- return await manager.callTool(server, name, input, context.signal);
162
- },
163
- },
164
- }),
165
- });
166
- }
167
- //# sourceMappingURL=mcp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/core/tools/mcp.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"nook.js","sourceRoot":"","sources":["../../../src/core/tools/nook.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"web.js","sourceRoot":"","sources":["../../../src/core/tools/web.ts"],"names":[],"mappings":"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"}