@superblocksteam/vite-plugin-file-sync 2.0.42-next.5 → 2.0.42-next.50

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 (421) hide show
  1. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts +2 -1
  2. package/dist/ai-service/agent/prompts/build-base-system-prompt.d.ts.map +1 -1
  3. package/dist/ai-service/agent/prompts/build-base-system-prompt.js +31 -2
  4. package/dist/ai-service/agent/prompts/build-base-system-prompt.js.map +1 -1
  5. package/dist/ai-service/agent/subagents/apis/example-selector.d.ts +24 -0
  6. package/dist/ai-service/agent/subagents/apis/example-selector.d.ts.map +1 -0
  7. package/dist/ai-service/agent/subagents/apis/example-selector.js +104 -0
  8. package/dist/ai-service/agent/subagents/apis/example-selector.js.map +1 -0
  9. package/dist/ai-service/agent/subagents/apis/examples.d.ts +55 -0
  10. package/dist/ai-service/agent/subagents/apis/examples.d.ts.map +1 -0
  11. package/dist/ai-service/agent/subagents/apis/examples.js +1229 -0
  12. package/dist/ai-service/agent/subagents/apis/examples.js.map +1 -0
  13. package/dist/ai-service/agent/subagents/apis/generate-api-source.d.ts +83 -0
  14. package/dist/ai-service/agent/subagents/apis/generate-api-source.d.ts.map +1 -0
  15. package/dist/ai-service/agent/{apis.js → subagents/apis/generate-api-source.js} +131 -99
  16. package/dist/ai-service/agent/subagents/apis/generate-api-source.js.map +1 -0
  17. package/dist/ai-service/agent/subagents/apis/prompt-builder.d.ts +39 -0
  18. package/dist/ai-service/agent/subagents/apis/prompt-builder.d.ts.map +1 -0
  19. package/dist/ai-service/agent/subagents/apis/prompt-builder.js +115 -0
  20. package/dist/ai-service/agent/subagents/apis/prompt-builder.js.map +1 -0
  21. package/dist/ai-service/agent/{apis-static-analysis.d.ts → subagents/apis/static-analysis.d.ts} +1 -1
  22. package/dist/ai-service/agent/subagents/apis/static-analysis.d.ts.map +1 -0
  23. package/dist/ai-service/agent/{apis-static-analysis.js → subagents/apis/static-analysis.js} +3 -2
  24. package/dist/ai-service/agent/subagents/apis/static-analysis.js.map +1 -0
  25. package/dist/ai-service/agent/subagents/apis/system-prompt.d.ts +3 -0
  26. package/dist/ai-service/agent/subagents/apis/system-prompt.d.ts.map +1 -0
  27. package/dist/ai-service/agent/{apis-system-prompt.js → subagents/apis/system-prompt.js} +67 -31
  28. package/dist/ai-service/agent/{apis-system-prompt.js.map → subagents/apis/system-prompt.js.map} +1 -1
  29. package/dist/ai-service/agent/tool-message-utils.d.ts +6 -15
  30. package/dist/ai-service/agent/tool-message-utils.d.ts.map +1 -1
  31. package/dist/ai-service/agent/tool-message-utils.js +75 -248
  32. package/dist/ai-service/agent/tool-message-utils.js.map +1 -1
  33. package/dist/ai-service/agent/tools/build-add-event.d.ts +2 -4
  34. package/dist/ai-service/agent/tools/build-add-event.d.ts.map +1 -1
  35. package/dist/ai-service/agent/tools/build-add-event.js +9 -8
  36. package/dist/ai-service/agent/tools/build-add-event.js.map +1 -1
  37. package/dist/ai-service/agent/tools/build-add-state-var.d.ts +2 -4
  38. package/dist/ai-service/agent/tools/build-add-state-var.d.ts.map +1 -1
  39. package/dist/ai-service/agent/tools/build-add-state-var.js +6 -5
  40. package/dist/ai-service/agent/tools/build-add-state-var.js.map +1 -1
  41. package/dist/ai-service/agent/tools/build-add-timer.d.ts +2 -4
  42. package/dist/ai-service/agent/tools/build-add-timer.d.ts.map +1 -1
  43. package/dist/ai-service/agent/tools/build-add-timer.js +7 -6
  44. package/dist/ai-service/agent/tools/build-add-timer.js.map +1 -1
  45. package/dist/ai-service/agent/tools/build-create-page.d.ts +2 -3
  46. package/dist/ai-service/agent/tools/build-create-page.d.ts.map +1 -1
  47. package/dist/ai-service/agent/tools/build-create-page.js +11 -10
  48. package/dist/ai-service/agent/tools/build-create-page.js.map +1 -1
  49. package/dist/ai-service/agent/tools/build-debug.d.ts +1 -3
  50. package/dist/ai-service/agent/tools/build-debug.d.ts.map +1 -1
  51. package/dist/ai-service/agent/tools/build-debug.js +7 -5
  52. package/dist/ai-service/agent/tools/build-debug.js.map +1 -1
  53. package/dist/ai-service/agent/tools/build-edit-file.d.ts +2 -4
  54. package/dist/ai-service/agent/tools/build-edit-file.d.ts.map +1 -1
  55. package/dist/ai-service/agent/tools/build-edit-file.js +10 -7
  56. package/dist/ai-service/agent/tools/build-edit-file.js.map +1 -1
  57. package/dist/ai-service/agent/tools/build-finalize.d.ts +2 -4
  58. package/dist/ai-service/agent/tools/build-finalize.d.ts.map +1 -1
  59. package/dist/ai-service/agent/tools/build-finalize.js +7 -6
  60. package/dist/ai-service/agent/tools/build-finalize.js.map +1 -1
  61. package/dist/ai-service/agent/tools/build-install-packages.d.ts +2 -4
  62. package/dist/ai-service/agent/tools/build-install-packages.d.ts.map +1 -1
  63. package/dist/ai-service/agent/tools/build-install-packages.js +7 -6
  64. package/dist/ai-service/agent/tools/build-install-packages.js.map +1 -1
  65. package/dist/ai-service/agent/tools/build-list-available-components.d.ts +3 -8
  66. package/dist/ai-service/agent/tools/build-list-available-components.d.ts.map +1 -1
  67. package/dist/ai-service/agent/tools/build-list-available-components.js +30 -9
  68. package/dist/ai-service/agent/tools/build-list-available-components.js.map +1 -1
  69. package/dist/ai-service/agent/tools/build-list-files.d.ts +2 -3
  70. package/dist/ai-service/agent/tools/build-list-files.d.ts.map +1 -1
  71. package/dist/ai-service/agent/tools/build-list-files.js +10 -8
  72. package/dist/ai-service/agent/tools/build-list-files.js.map +1 -1
  73. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts +3 -3
  74. package/dist/ai-service/agent/tools/build-manage-checklist.d.ts.map +1 -1
  75. package/dist/ai-service/agent/tools/build-manage-checklist.js +9 -8
  76. package/dist/ai-service/agent/tools/build-manage-checklist.js.map +1 -1
  77. package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts +2 -4
  78. package/dist/ai-service/agent/tools/build-multi-edit-file.d.ts.map +1 -1
  79. package/dist/ai-service/agent/tools/build-multi-edit-file.js +9 -6
  80. package/dist/ai-service/agent/tools/build-multi-edit-file.js.map +1 -1
  81. package/dist/ai-service/agent/tools/build-read-files.d.ts +2 -4
  82. package/dist/ai-service/agent/tools/build-read-files.d.ts.map +1 -1
  83. package/dist/ai-service/agent/tools/build-read-files.js +10 -8
  84. package/dist/ai-service/agent/tools/build-read-files.js.map +1 -1
  85. package/dist/ai-service/agent/tools/build-register-component-name.d.ts +2 -4
  86. package/dist/ai-service/agent/tools/build-register-component-name.d.ts.map +1 -1
  87. package/dist/ai-service/agent/tools/build-register-component-name.js +9 -8
  88. package/dist/ai-service/agent/tools/build-register-component-name.js.map +1 -1
  89. package/dist/ai-service/agent/tools/build-rename-page.d.ts +2 -3
  90. package/dist/ai-service/agent/tools/build-rename-page.d.ts.map +1 -1
  91. package/dist/ai-service/agent/tools/build-rename-page.js +6 -5
  92. package/dist/ai-service/agent/tools/build-rename-page.js.map +1 -1
  93. package/dist/ai-service/agent/tools/build-set-api-triggers.d.ts +2 -4
  94. package/dist/ai-service/agent/tools/build-set-api-triggers.d.ts.map +1 -1
  95. package/dist/ai-service/agent/tools/build-set-api-triggers.js +6 -5
  96. package/dist/ai-service/agent/tools/build-set-api-triggers.js.map +1 -1
  97. package/dist/ai-service/agent/tools/build-update-state-var.d.ts +2 -3
  98. package/dist/ai-service/agent/tools/build-update-state-var.d.ts.map +1 -1
  99. package/dist/ai-service/agent/tools/build-update-state-var.js +6 -5
  100. package/dist/ai-service/agent/tools/build-update-state-var.js.map +1 -1
  101. package/dist/ai-service/agent/tools/build-validate-icons.d.ts +2 -3
  102. package/dist/ai-service/agent/tools/build-validate-icons.d.ts.map +1 -1
  103. package/dist/ai-service/agent/tools/build-validate-icons.js +8 -6
  104. package/dist/ai-service/agent/tools/build-validate-icons.js.map +1 -1
  105. package/dist/ai-service/agent/tools/build-write-file.d.ts +2 -4
  106. package/dist/ai-service/agent/tools/build-write-file.d.ts.map +1 -1
  107. package/dist/ai-service/agent/tools/build-write-file.js +6 -5
  108. package/dist/ai-service/agent/tools/build-write-file.js.map +1 -1
  109. package/dist/ai-service/agent/tools/debug-cache.d.ts.map +1 -1
  110. package/dist/ai-service/agent/tools/debug-cache.js +3 -0
  111. package/dist/ai-service/agent/tools/debug-cache.js.map +1 -1
  112. package/dist/ai-service/agent/tools/index.d.ts +23 -20
  113. package/dist/ai-service/agent/tools/index.d.ts.map +1 -1
  114. package/dist/ai-service/agent/tools/index.js +23 -20
  115. package/dist/ai-service/agent/tools/index.js.map +1 -1
  116. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts +25 -0
  117. package/dist/ai-service/agent/tools/integrations/execute-request.d.ts.map +1 -0
  118. package/dist/ai-service/agent/tools/integrations/execute-request.js +213 -0
  119. package/dist/ai-service/agent/tools/integrations/execute-request.js.map +1 -0
  120. package/dist/ai-service/agent/tools/integrations/index.d.ts +4 -0
  121. package/dist/ai-service/agent/tools/integrations/index.d.ts.map +1 -0
  122. package/dist/ai-service/agent/tools/integrations/index.js +4 -0
  123. package/dist/ai-service/agent/tools/integrations/index.js.map +1 -0
  124. package/dist/ai-service/agent/tools/integrations/internal.d.ts +3 -0
  125. package/dist/ai-service/agent/tools/integrations/internal.d.ts.map +1 -0
  126. package/dist/ai-service/agent/tools/integrations/internal.js +11 -0
  127. package/dist/ai-service/agent/tools/integrations/internal.js.map +1 -0
  128. package/dist/ai-service/agent/tools/integrations/metadata.d.ts +9 -0
  129. package/dist/ai-service/agent/tools/integrations/metadata.d.ts.map +1 -0
  130. package/dist/ai-service/agent/tools/integrations/metadata.js +57 -0
  131. package/dist/ai-service/agent/tools/integrations/metadata.js.map +1 -0
  132. package/dist/ai-service/agent/tools/integrations/run-code.d.ts +5 -0
  133. package/dist/ai-service/agent/tools/integrations/run-code.d.ts.map +1 -0
  134. package/dist/ai-service/agent/tools/integrations/run-code.js +32 -0
  135. package/dist/ai-service/agent/tools/integrations/run-code.js.map +1 -0
  136. package/dist/ai-service/agent/tools/study-current-app-state.d.ts +2 -4
  137. package/dist/ai-service/agent/tools/study-current-app-state.d.ts.map +1 -1
  138. package/dist/ai-service/agent/tools/study-current-app-state.js +10 -8
  139. package/dist/ai-service/agent/tools/study-current-app-state.js.map +1 -1
  140. package/dist/ai-service/agent/tools.d.ts +3 -280
  141. package/dist/ai-service/agent/tools.d.ts.map +1 -1
  142. package/dist/ai-service/agent/tools.js +68 -55
  143. package/dist/ai-service/agent/tools.js.map +1 -1
  144. package/dist/ai-service/agent/tools2/access-control.d.ts +119 -0
  145. package/dist/ai-service/agent/tools2/access-control.d.ts.map +1 -0
  146. package/dist/ai-service/agent/tools2/access-control.js +216 -0
  147. package/dist/ai-service/agent/tools2/access-control.js.map +1 -0
  148. package/dist/ai-service/agent/tools2/example.d.ts +13 -0
  149. package/dist/ai-service/agent/tools2/example.d.ts.map +1 -0
  150. package/dist/ai-service/agent/tools2/example.js +143 -0
  151. package/dist/ai-service/agent/tools2/example.js.map +1 -0
  152. package/dist/ai-service/agent/tools2/index.d.ts +16 -0
  153. package/dist/ai-service/agent/tools2/index.d.ts.map +1 -0
  154. package/dist/ai-service/agent/tools2/index.js +18 -0
  155. package/dist/ai-service/agent/tools2/index.js.map +1 -0
  156. package/dist/ai-service/agent/tools2/registry.d.ts +167 -0
  157. package/dist/ai-service/agent/tools2/registry.d.ts.map +1 -0
  158. package/dist/ai-service/agent/tools2/registry.js +305 -0
  159. package/dist/ai-service/agent/tools2/registry.js.map +1 -0
  160. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts +12 -0
  161. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.d.ts.map +1 -0
  162. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js +73 -0
  163. package/dist/ai-service/agent/tools2/tools/ask-multi-choice.js.map +1 -0
  164. package/dist/ai-service/agent/tools2/tools/bash.d.ts +34 -0
  165. package/dist/ai-service/agent/tools2/tools/bash.d.ts.map +1 -0
  166. package/dist/ai-service/agent/tools2/tools/bash.js +76 -0
  167. package/dist/ai-service/agent/tools2/tools/bash.js.map +1 -0
  168. package/dist/ai-service/agent/tools2/tools/edit.d.ts +14 -0
  169. package/dist/ai-service/agent/tools2/tools/edit.d.ts.map +1 -0
  170. package/dist/ai-service/agent/tools2/tools/edit.js +60 -0
  171. package/dist/ai-service/agent/tools2/tools/edit.js.map +1 -0
  172. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts +10 -0
  173. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.d.ts.map +1 -0
  174. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js +66 -0
  175. package/dist/ai-service/agent/tools2/tools/exit-plan-mode.js.map +1 -0
  176. package/dist/ai-service/agent/tools2/tools/glob.d.ts +11 -0
  177. package/dist/ai-service/agent/tools2/tools/glob.d.ts.map +1 -0
  178. package/dist/ai-service/agent/tools2/tools/glob.js +44 -0
  179. package/dist/ai-service/agent/tools2/tools/glob.js.map +1 -0
  180. package/dist/ai-service/agent/tools2/tools/grep.d.ts +21 -0
  181. package/dist/ai-service/agent/tools2/tools/grep.d.ts.map +1 -0
  182. package/dist/ai-service/agent/tools2/tools/grep.js +100 -0
  183. package/dist/ai-service/agent/tools2/tools/grep.js.map +1 -0
  184. package/dist/ai-service/agent/tools2/tools/index.d.ts +13 -0
  185. package/dist/ai-service/agent/tools2/tools/index.d.ts.map +1 -0
  186. package/dist/ai-service/agent/tools2/tools/index.js +13 -0
  187. package/dist/ai-service/agent/tools2/tools/index.js.map +1 -0
  188. package/dist/ai-service/agent/tools2/tools/read.d.ts +9 -0
  189. package/dist/ai-service/agent/tools2/tools/read.d.ts.map +1 -0
  190. package/dist/ai-service/agent/tools2/tools/read.js +43 -0
  191. package/dist/ai-service/agent/tools2/tools/read.js.map +1 -0
  192. package/dist/ai-service/agent/tools2/tools/write.d.ts +11 -0
  193. package/dist/ai-service/agent/tools2/tools/write.d.ts.map +1 -0
  194. package/dist/ai-service/agent/tools2/tools/write.js +28 -0
  195. package/dist/ai-service/agent/tools2/tools/write.js.map +1 -0
  196. package/dist/ai-service/agent/tools2/types.d.ts +148 -0
  197. package/dist/ai-service/agent/tools2/types.d.ts.map +1 -0
  198. package/dist/ai-service/agent/tools2/types.js +55 -0
  199. package/dist/ai-service/agent/tools2/types.js.map +1 -0
  200. package/dist/ai-service/agent/utils.d.ts +2 -3
  201. package/dist/ai-service/agent/utils.d.ts.map +1 -1
  202. package/dist/ai-service/agent/utils.js +14 -13
  203. package/dist/ai-service/agent/utils.js.map +1 -1
  204. package/dist/ai-service/chat/chat-session-store.d.ts +5 -0
  205. package/dist/ai-service/chat/chat-session-store.d.ts.map +1 -1
  206. package/dist/ai-service/chat/chat-session-store.js +484 -345
  207. package/dist/ai-service/chat/chat-session-store.js.map +1 -1
  208. package/dist/ai-service/chat/extract-history.d.ts +1 -0
  209. package/dist/ai-service/chat/extract-history.d.ts.map +1 -1
  210. package/dist/ai-service/chat/extract-history.js +12 -1
  211. package/dist/ai-service/chat/extract-history.js.map +1 -1
  212. package/dist/ai-service/const.d.ts +2 -1
  213. package/dist/ai-service/const.d.ts.map +1 -1
  214. package/dist/ai-service/const.js +7 -1
  215. package/dist/ai-service/const.js.map +1 -1
  216. package/dist/ai-service/index.d.ts +9 -8
  217. package/dist/ai-service/index.d.ts.map +1 -1
  218. package/dist/ai-service/index.js +7 -0
  219. package/dist/ai-service/index.js.map +1 -1
  220. package/dist/ai-service/integrations/store.d.ts +24 -1
  221. package/dist/ai-service/integrations/store.d.ts.map +1 -1
  222. package/dist/ai-service/integrations/store.js +86 -2
  223. package/dist/ai-service/integrations/store.js.map +1 -1
  224. package/dist/ai-service/llm/context/caching/constants.d.ts +27 -0
  225. package/dist/ai-service/llm/context/caching/constants.d.ts.map +1 -0
  226. package/dist/ai-service/llm/context/caching/constants.js +20 -0
  227. package/dist/ai-service/llm/context/caching/constants.js.map +1 -0
  228. package/dist/ai-service/llm/context/caching/factory.d.ts +12 -0
  229. package/dist/ai-service/llm/context/caching/factory.d.ts.map +1 -0
  230. package/dist/ai-service/llm/context/caching/factory.js +28 -0
  231. package/dist/ai-service/llm/context/caching/factory.js.map +1 -0
  232. package/dist/ai-service/llm/context/caching/index.d.ts +10 -0
  233. package/dist/ai-service/llm/context/caching/index.d.ts.map +1 -0
  234. package/dist/ai-service/llm/context/caching/index.js +9 -0
  235. package/dist/ai-service/llm/context/caching/index.js.map +1 -0
  236. package/dist/ai-service/llm/context/caching/quantized-strategy.d.ts +22 -0
  237. package/dist/ai-service/llm/context/caching/quantized-strategy.d.ts.map +1 -0
  238. package/dist/ai-service/llm/context/caching/quantized-strategy.js +48 -0
  239. package/dist/ai-service/llm/context/caching/quantized-strategy.js.map +1 -0
  240. package/dist/ai-service/llm/context/caching/strategy.d.ts +20 -0
  241. package/dist/ai-service/llm/context/caching/strategy.d.ts.map +1 -0
  242. package/dist/ai-service/llm/context/caching/strategy.js +5 -0
  243. package/dist/ai-service/llm/context/caching/strategy.js.map +1 -0
  244. package/dist/ai-service/llm/context/caching/types.d.ts +34 -0
  245. package/dist/ai-service/llm/context/caching/types.d.ts.map +1 -0
  246. package/dist/ai-service/llm/context/caching/types.js +8 -0
  247. package/dist/ai-service/llm/context/caching/types.js.map +1 -0
  248. package/dist/ai-service/llm/context/config.d.ts +51 -0
  249. package/dist/ai-service/llm/context/config.d.ts.map +1 -0
  250. package/dist/ai-service/llm/context/config.js +58 -0
  251. package/dist/ai-service/llm/context/config.js.map +1 -0
  252. package/dist/ai-service/llm/context/constants.d.ts +106 -0
  253. package/dist/ai-service/llm/context/constants.d.ts.map +1 -0
  254. package/dist/ai-service/llm/context/constants.js +106 -0
  255. package/dist/ai-service/llm/context/constants.js.map +1 -0
  256. package/dist/ai-service/llm/context/context.d.ts +207 -0
  257. package/dist/ai-service/llm/context/context.d.ts.map +1 -0
  258. package/dist/ai-service/llm/context/context.js +742 -0
  259. package/dist/ai-service/llm/context/context.js.map +1 -0
  260. package/dist/ai-service/llm/context/errors.d.ts +45 -0
  261. package/dist/ai-service/llm/context/errors.d.ts.map +1 -0
  262. package/dist/ai-service/llm/context/errors.js +56 -0
  263. package/dist/ai-service/llm/context/errors.js.map +1 -0
  264. package/dist/ai-service/llm/context/index.d.ts +13 -0
  265. package/dist/ai-service/llm/context/index.d.ts.map +1 -0
  266. package/dist/ai-service/llm/context/index.js +17 -0
  267. package/dist/ai-service/llm/context/index.js.map +1 -0
  268. package/dist/ai-service/llm/context/internal-types.d.ts +52 -0
  269. package/dist/ai-service/llm/context/internal-types.d.ts.map +1 -0
  270. package/dist/ai-service/llm/context/internal-types.js +28 -0
  271. package/dist/ai-service/llm/context/internal-types.js.map +1 -0
  272. package/dist/ai-service/llm/context/levels/index.d.ts +12 -0
  273. package/dist/ai-service/llm/context/levels/index.d.ts.map +1 -0
  274. package/dist/ai-service/llm/context/levels/index.js +12 -0
  275. package/dist/ai-service/llm/context/levels/index.js.map +1 -0
  276. package/dist/ai-service/llm/context/levels/l1.d.ts +83 -0
  277. package/dist/ai-service/llm/context/levels/l1.d.ts.map +1 -0
  278. package/dist/ai-service/llm/context/levels/l1.js +143 -0
  279. package/dist/ai-service/llm/context/levels/l1.js.map +1 -0
  280. package/dist/ai-service/llm/context/levels/l2.d.ts +60 -0
  281. package/dist/ai-service/llm/context/levels/l2.d.ts.map +1 -0
  282. package/dist/ai-service/llm/context/levels/l2.js +96 -0
  283. package/dist/ai-service/llm/context/levels/l2.js.map +1 -0
  284. package/dist/ai-service/llm/context/levels/l3.d.ts +46 -0
  285. package/dist/ai-service/llm/context/levels/l3.d.ts.map +1 -0
  286. package/dist/ai-service/llm/context/levels/l3.js +70 -0
  287. package/dist/ai-service/llm/context/levels/l3.js.map +1 -0
  288. package/dist/ai-service/llm/context/logger.d.ts +17 -0
  289. package/dist/ai-service/llm/context/logger.d.ts.map +1 -0
  290. package/dist/ai-service/llm/context/logger.js +26 -0
  291. package/dist/ai-service/llm/context/logger.js.map +1 -0
  292. package/dist/ai-service/llm/context/manager.d.ts +79 -0
  293. package/dist/ai-service/llm/context/manager.d.ts.map +1 -0
  294. package/dist/ai-service/llm/context/manager.js +136 -0
  295. package/dist/ai-service/llm/context/manager.js.map +1 -0
  296. package/dist/ai-service/llm/context/options.d.ts +43 -0
  297. package/dist/ai-service/llm/context/options.d.ts.map +1 -0
  298. package/dist/ai-service/llm/context/options.js +81 -0
  299. package/dist/ai-service/llm/context/options.js.map +1 -0
  300. package/dist/ai-service/llm/context/serialization.d.ts +56 -0
  301. package/dist/ai-service/llm/context/serialization.d.ts.map +1 -0
  302. package/dist/ai-service/llm/context/serialization.js +9 -0
  303. package/dist/ai-service/llm/context/serialization.js.map +1 -0
  304. package/dist/ai-service/llm/context/storage/index.d.ts +10 -0
  305. package/dist/ai-service/llm/context/storage/index.d.ts.map +1 -0
  306. package/dist/ai-service/llm/context/storage/index.js +2 -0
  307. package/dist/ai-service/llm/context/storage/index.js.map +1 -0
  308. package/dist/ai-service/llm/context/storage/local.d.ts +22 -0
  309. package/dist/ai-service/llm/context/storage/local.d.ts.map +1 -0
  310. package/dist/ai-service/llm/context/storage/local.js +42 -0
  311. package/dist/ai-service/llm/context/storage/local.js.map +1 -0
  312. package/dist/ai-service/llm/context/types.d.ts +125 -0
  313. package/dist/ai-service/llm/context/types.d.ts.map +1 -0
  314. package/dist/ai-service/llm/context/types.js +5 -0
  315. package/dist/ai-service/llm/context/types.js.map +1 -0
  316. package/dist/ai-service/llm/context/utils/content-compaction.d.ts +26 -0
  317. package/dist/ai-service/llm/context/utils/content-compaction.d.ts.map +1 -0
  318. package/dist/ai-service/llm/context/utils/content-compaction.js +52 -0
  319. package/dist/ai-service/llm/context/utils/content-compaction.js.map +1 -0
  320. package/dist/ai-service/llm/context/utils/index.d.ts +10 -0
  321. package/dist/ai-service/llm/context/utils/index.d.ts.map +1 -0
  322. package/dist/ai-service/llm/context/utils/index.js +10 -0
  323. package/dist/ai-service/llm/context/utils/index.js.map +1 -0
  324. package/dist/ai-service/llm/context/utils/message-utils.d.ts +34 -0
  325. package/dist/ai-service/llm/context/utils/message-utils.d.ts.map +1 -0
  326. package/dist/ai-service/llm/context/utils/message-utils.js +68 -0
  327. package/dist/ai-service/llm/context/utils/message-utils.js.map +1 -0
  328. package/dist/ai-service/llm/context/utils/token-estimation.d.ts +31 -0
  329. package/dist/ai-service/llm/context/utils/token-estimation.d.ts.map +1 -0
  330. package/dist/ai-service/llm/context/utils/token-estimation.js +52 -0
  331. package/dist/ai-service/llm/context/utils/token-estimation.js.map +1 -0
  332. package/dist/ai-service/llm/context/utils/visualization.d.ts +40 -0
  333. package/dist/ai-service/llm/context/utils/visualization.d.ts.map +1 -0
  334. package/dist/ai-service/llm/context/utils/visualization.js +516 -0
  335. package/dist/ai-service/llm/context/utils/visualization.js.map +1 -0
  336. package/dist/ai-service/llm/impl/anthropic.js +2 -2
  337. package/dist/ai-service/llm/impl/anthropic.js.map +1 -1
  338. package/dist/ai-service/llmobs/helpers.d.ts.map +1 -1
  339. package/dist/ai-service/llmobs/helpers.js +10 -19
  340. package/dist/ai-service/llmobs/helpers.js.map +1 -1
  341. package/dist/ai-service/llmobs/middleware/stream-text.js +4 -1
  342. package/dist/ai-service/llmobs/middleware/stream-text.js.map +1 -1
  343. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ButtonPropsDocs.js +1 -1
  344. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/CheckboxPropsDocs.js +1 -1
  345. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ColumnPropsDocs.js +1 -1
  346. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ContainerPropsDocs.js +1 -1
  347. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/DatePickerPropsDocs.js +1 -1
  348. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/DropdownPropsDocs.js +1 -1
  349. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/IconPropsDocs.js +1 -1
  350. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ImagePropsDocs.js +1 -1
  351. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/InputPropsDocs.js +1 -1
  352. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/ModalPropsDocs.js +1 -1
  353. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/PagePropsDocs.js +1 -1
  354. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SectionPropsDocs.js +1 -1
  355. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SlideoutPropsDocs.js +1 -1
  356. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/SwitchPropsDocs.js +1 -1
  357. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/TablePropsDocs.js +1 -1
  358. package/dist/ai-service/prompt-builder-service/static-fragments/library-components/TextPropsDocs.js +1 -1
  359. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/Dim.js +1 -1
  360. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/EventFlow.js +1 -1
  361. package/dist/ai-service/prompt-builder-service/static-fragments/library-typedefs/TextStyleWithVariant.js +1 -1
  362. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/full-examples.js +1 -1
  363. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-api.js +1 -1
  364. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-components-rules.js +1 -1
  365. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-custom-components.js +1 -1
  366. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-data-filtering.js +1 -1
  367. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-event-flow.js +1 -1
  368. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-forms.js +1 -1
  369. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-layouts.js +1 -1
  370. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-page.js +1 -1
  371. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-rbac.js +1 -1
  372. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-routes.js +1 -1
  373. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-state.js +1 -1
  374. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/superblocks-theming-chakra-new.js +1 -1
  375. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-base.js +1 -1
  376. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-incremental.js +1 -1
  377. package/dist/ai-service/prompt-builder-service/static-fragments/platform-parts/system-specific-edit.js +1 -1
  378. package/dist/ai-service/state-machine/clark-fsm.d.ts +9 -5
  379. package/dist/ai-service/state-machine/clark-fsm.d.ts.map +1 -1
  380. package/dist/ai-service/state-machine/clark-fsm.js.map +1 -1
  381. package/dist/ai-service/state-machine/handlers/agent-planning.d.ts.map +1 -1
  382. package/dist/ai-service/state-machine/handlers/agent-planning.js +36 -9
  383. package/dist/ai-service/state-machine/handlers/agent-planning.js.map +1 -1
  384. package/dist/ai-service/state-machine/handlers/llm-generating.d.ts.map +1 -1
  385. package/dist/ai-service/state-machine/handlers/llm-generating.js +154 -104
  386. package/dist/ai-service/state-machine/handlers/llm-generating.js.map +1 -1
  387. package/dist/ai-service/state-machine/helpers/context-id.d.ts +4 -0
  388. package/dist/ai-service/state-machine/helpers/context-id.d.ts.map +1 -0
  389. package/dist/ai-service/state-machine/helpers/context-id.js +16 -0
  390. package/dist/ai-service/state-machine/helpers/context-id.js.map +1 -0
  391. package/dist/ai-service/state-machine/helpers/peer.d.ts.map +1 -1
  392. package/dist/ai-service/state-machine/helpers/peer.js +7 -4
  393. package/dist/ai-service/state-machine/helpers/peer.js.map +1 -1
  394. package/dist/ai-service/state-machine/mocks.d.ts +2 -3
  395. package/dist/ai-service/state-machine/mocks.d.ts.map +1 -1
  396. package/dist/ai-service/state-machine/mocks.js.map +1 -1
  397. package/dist/ai-service/types.d.ts +3 -0
  398. package/dist/ai-service/types.d.ts.map +1 -1
  399. package/dist/ai-service/types.js.map +1 -1
  400. package/dist/ai-service/util/parse-jwt.d.ts +12 -0
  401. package/dist/ai-service/util/parse-jwt.d.ts.map +1 -0
  402. package/dist/ai-service/util/parse-jwt.js +30 -0
  403. package/dist/ai-service/util/parse-jwt.js.map +1 -0
  404. package/dist/ai-service/util/safe-stringify.d.ts +1 -1
  405. package/dist/ai-service/util/safe-stringify.d.ts.map +1 -1
  406. package/dist/ai-service/util/safe-stringify.js +3 -3
  407. package/dist/ai-service/util/safe-stringify.js.map +1 -1
  408. package/dist/binding-extraction/extract-js-identifiers.d.ts.map +1 -1
  409. package/dist/binding-extraction/extract-js-identifiers.js +1 -1
  410. package/dist/binding-extraction/extract-js-identifiers.js.map +1 -1
  411. package/dist/component-docs-service/index.d.ts.map +1 -1
  412. package/dist/component-docs-service/index.js +0 -2
  413. package/dist/component-docs-service/index.js.map +1 -1
  414. package/package.json +8 -8
  415. package/dist/ai-service/agent/apis-static-analysis.d.ts.map +0 -1
  416. package/dist/ai-service/agent/apis-static-analysis.js.map +0 -1
  417. package/dist/ai-service/agent/apis-system-prompt.d.ts +0 -3
  418. package/dist/ai-service/agent/apis-system-prompt.d.ts.map +0 -1
  419. package/dist/ai-service/agent/apis.d.ts +0 -55
  420. package/dist/ai-service/agent/apis.d.ts.map +0 -1
  421. package/dist/ai-service/agent/apis.js.map +0 -1
@@ -0,0 +1,76 @@
1
+ import { exec } from "node:child_process";
2
+ import { promisify } from "node:util";
3
+ import { z } from "zod";
4
+ import { createToolFactory, PermissionLevel, ToolCategory } from "../types.js";
5
+ const execAsync = promisify(exec);
6
+ /**
7
+ * Bash tool - Executes bash commands in a persistent shell session.
8
+ */
9
+ export const bashToolFactory = createToolFactory("bash", () => ({
10
+ description: `
11
+ Executes a given bash command in a persistent shell session with optional timeout, ensuring proper handling and security measures.
12
+
13
+ IMPORTANT: This tool is for terminal operations like git, npm, docker, etc. DO NOT use it for file operations (reading, writing, editing, searching, finding files) - use the specialized tools for this instead.
14
+ `,
15
+ category: ToolCategory.GENERAL,
16
+ defaultPermission: PermissionLevel.PROMPT,
17
+ inputSchema: z.object({
18
+ command: z.string().describe("Command to execute"),
19
+ description: z
20
+ .string()
21
+ .optional()
22
+ .describe("Description of what command does"),
23
+ timeout: z
24
+ .number()
25
+ .optional()
26
+ .default(120000)
27
+ .describe("Timeout in ms (max 600000, default 120000)"),
28
+ run_in_background: z
29
+ .boolean()
30
+ .optional()
31
+ .default(false)
32
+ .describe("Run in background (default: false)"),
33
+ }),
34
+ execute: async ({ command, description: _description, timeout, run_in_background, }) => {
35
+ try {
36
+ if (run_in_background) {
37
+ // For background execution, spawn without waiting
38
+ const childProcess = exec(command, {
39
+ timeout,
40
+ maxBuffer: 10 * 1024 * 1024, // 10MB
41
+ });
42
+ return {
43
+ success: true,
44
+ message: "Command started in background",
45
+ pid: childProcess.pid,
46
+ };
47
+ }
48
+ // For foreground execution, wait for completion
49
+ const { stdout, stderr } = await execAsync(command, {
50
+ timeout,
51
+ maxBuffer: 10 * 1024 * 1024, // 10MB
52
+ });
53
+ return {
54
+ success: true,
55
+ stdout: stdout || "",
56
+ stderr: stderr || "",
57
+ exitCode: 0,
58
+ };
59
+ }
60
+ catch (error) {
61
+ // Handle timeout
62
+ if (error.killed && error.signal === "SIGTERM") {
63
+ throw new Error(`Command timed out after ${timeout}ms`);
64
+ }
65
+ // Handle non-zero exit code
66
+ return {
67
+ success: false,
68
+ stdout: error.stdout || "",
69
+ stderr: error.stderr || "",
70
+ exitCode: error.code || 1,
71
+ error: error.message,
72
+ };
73
+ }
74
+ },
75
+ }));
76
+ //# sourceMappingURL=bash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/bash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE/E,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,WAAW,EAAE;;;;CAId;IACC,QAAQ,EAAE,YAAY,CAAC,OAAO;IAC9B,iBAAiB,EAAE,eAAe,CAAC,MAAM;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;QAClD,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,kCAAkC,CAAC;QAC/C,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,OAAO,CAAC,MAAM,CAAC;aACf,QAAQ,CAAC,4CAA4C,CAAC;QACzD,iBAAiB,EAAE,CAAC;aACjB,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,OAAO,CAAC,KAAK,CAAC;aACd,QAAQ,CAAC,oCAAoC,CAAC;KAClD,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,EACd,OAAO,EACP,WAAW,EAAE,YAAY,EACzB,OAAO,EACP,iBAAiB,GAClB,EAAE,EAAE;QACH,IAAI,CAAC;YACH,IAAI,iBAAiB,EAAE,CAAC;gBACtB,kDAAkD;gBAClD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE;oBACjC,OAAO;oBACP,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO;iBACrC,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,+BAA+B;oBACxC,GAAG,EAAE,YAAY,CAAC,GAAG;iBACtB,CAAC;YACJ,CAAC;YAED,gDAAgD;YAChD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE;gBAClD,OAAO;gBACP,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,OAAO;aACrC,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,MAAM,IAAI,EAAE;gBACpB,MAAM,EAAE,MAAM,IAAI,EAAE;gBACpB,QAAQ,EAAE,CAAC;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,iBAAiB;YACjB,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,IAAI,CAAC,CAAC;YAC1D,CAAC;YAED,4BAA4B;YAC5B,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;gBAC1B,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;gBAC1B,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC;gBACzB,KAAK,EAAE,KAAK,CAAC,OAAO;aACrB,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Edit tool - Performs exact string replacements in files.
3
+ */
4
+ export declare const editToolFactory: import("../types.js").ToolFactory<import("../types.js").Tool<{
5
+ file_path: string;
6
+ old_string: string;
7
+ new_string: string;
8
+ replace_all: boolean;
9
+ }, {
10
+ success: boolean;
11
+ message: string;
12
+ replacements: number;
13
+ }>>;
14
+ //# sourceMappingURL=edit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/edit.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;GAuDzB,CAAC"}
@@ -0,0 +1,60 @@
1
+ import fs from "node:fs/promises";
2
+ import { z } from "zod";
3
+ import { createToolFactory, PermissionLevel, ToolCategory } from "../types.js";
4
+ /**
5
+ * Edit tool - Performs exact string replacements in files.
6
+ */
7
+ export const editToolFactory = createToolFactory("edit", () => ({
8
+ description: "Performs exact string replacements in files.",
9
+ category: ToolCategory.FILE,
10
+ defaultPermission: PermissionLevel.ALLOW,
11
+ inputSchema: z.object({
12
+ file_path: z.string().describe("Absolute path to file"),
13
+ old_string: z.string().describe("Text to replace"),
14
+ new_string: z.string().describe("Text to replace with"),
15
+ replace_all: z
16
+ .boolean()
17
+ .optional()
18
+ .default(false)
19
+ .describe("Replace all occurrences (default: false)"),
20
+ }),
21
+ execute: async ({ file_path, old_string, new_string, replace_all }) => {
22
+ try {
23
+ const content = await fs.readFile(file_path, "utf-8");
24
+ let newContent;
25
+ if (replace_all) {
26
+ // Replace all occurrences
27
+ newContent = content.split(old_string).join(new_string);
28
+ }
29
+ else {
30
+ // Replace only first occurrence
31
+ const index = content.indexOf(old_string);
32
+ if (index === -1) {
33
+ throw new Error(`String not found in file: ${old_string}`);
34
+ }
35
+ // Check if unique
36
+ const secondIndex = content.indexOf(old_string, index + 1);
37
+ if (secondIndex !== -1) {
38
+ throw new Error("String is not unique in file. Use replace_all=true or provide more context.");
39
+ }
40
+ newContent =
41
+ content.substring(0, index) +
42
+ new_string +
43
+ content.substring(index + old_string.length);
44
+ }
45
+ await fs.writeFile(file_path, newContent, "utf-8");
46
+ return {
47
+ success: true,
48
+ message: `File edited: ${file_path}`,
49
+ replacements: replace_all ? content.split(old_string).length - 1 : 1,
50
+ };
51
+ }
52
+ catch (error) {
53
+ if (error instanceof Error) {
54
+ throw new Error(`Failed to edit file: ${error.message}`);
55
+ }
56
+ throw new Error("Failed to edit file: Unknown error");
57
+ }
58
+ },
59
+ }));
60
+ //# sourceMappingURL=edit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/edit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,WAAW,EAAE,8CAA8C;IAC3D,QAAQ,EAAE,YAAY,CAAC,IAAI;IAC3B,iBAAiB,EAAE,eAAe,CAAC,KAAK;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QACvD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAClD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;QACvD,WAAW,EAAE,CAAC;aACX,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,OAAO,CAAC,KAAK,CAAC;aACd,QAAQ,CAAC,0CAA0C,CAAC;KACxD,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,EAAE;QACpE,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAEtD,IAAI,UAAkB,CAAC;YACvB,IAAI,WAAW,EAAE,CAAC;gBAChB,0BAA0B;gBAC1B,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,gCAAgC;gBAChC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC1C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;oBACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,UAAU,EAAE,CAAC,CAAC;gBAC7D,CAAC;gBACD,kBAAkB;gBAClB,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;gBAC3D,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;oBACvB,MAAM,IAAI,KAAK,CACb,6EAA6E,CAC9E,CAAC;gBACJ,CAAC;gBACD,UAAU;oBACR,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC;wBAC3B,UAAU;wBACV,OAAO,CAAC,SAAS,CAAC,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC;YAED,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YAEnD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,gBAAgB,SAAS,EAAE;gBACpC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aACrE,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3D,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;CACF,CAAC,CAAC,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Exit Plan Mode - prompts the user to exit Plan mode when they have finished planning and are ready to code.
3
+ */
4
+ export declare const exitPlanModeToolFactory: import("../types.js").ToolFactory<import("../types.js").Tool<{
5
+ plan: string;
6
+ }, {
7
+ success: boolean;
8
+ message: string;
9
+ }>>;
10
+ //# sourceMappingURL=exit-plan-mode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exit-plan-mode.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/exit-plan-mode.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;GAkEnC,CAAC"}
@@ -0,0 +1,66 @@
1
+ import { z } from "zod";
2
+ import { sendUserMessageChannel } from "../../../state-machine/helpers/peer.js";
3
+ import { createToolFactory, PermissionLevel, ToolCategory } from "../types.js";
4
+ /**
5
+ * Exit Plan Mode - prompts the user to exit Plan mode when they have finished planning and are ready to code.
6
+ */
7
+ export const exitPlanModeToolFactory = createToolFactory("exitPlanMode", (clark, services) => {
8
+ const { chatSessionStore } = services;
9
+ return {
10
+ description: `
11
+ Use this tool to present a specific, actionable plan to the user in Plan mode.
12
+
13
+ This tool presents your plan with a "Build It" button that allows the user to switch to Build mode.
14
+ NEVER output a plan directly as text - ALWAYS use this tool to present plans properly.
15
+
16
+ IMPORTANT: Only use this tool AFTER you have gathered enough information to create a specific plan.
17
+
18
+ Before presenting a plan:
19
+ - If the user's request is ambiguous or has multiple interpretations, use askMultiChoice to clarify
20
+ - If there are unknowns about requirements, preferences, or approach, use askMultiChoice first
21
+ - If design decisions need to be made, ask the user for their preferences first
22
+ - Gather enough context to create a concrete, specific plan
23
+
24
+ When to use this tool:
25
+ - You are in Plan mode
26
+ - You have a clear understanding of the user's requirements
27
+ - You have resolved any ambiguities through askMultiChoice
28
+ - You have a specific, actionable plan for implementing a coding task
29
+ - The plan outlines concrete implementation steps
30
+
31
+ When NOT to use:
32
+ - When there are still unknowns or ambiguities - use askMultiChoice instead
33
+ - For research tasks (gathering information, searching files, understanding codebase)
34
+ - When answering questions without a coding plan
35
+ - When you're already in Build mode
36
+
37
+ After calling this tool, the user will either:
38
+ - Click "Build It" to switch to Build mode and execute the plan
39
+ - Provide feedback to refine the plan further
40
+ `,
41
+ category: ToolCategory.GENERAL,
42
+ defaultPermission: PermissionLevel.ALLOW,
43
+ readOnly: true,
44
+ inputSchema: z.object({
45
+ plan: z
46
+ .string()
47
+ .describe("The plan to present to the user. Supports markdown formatting."),
48
+ }),
49
+ execute: async ({ plan }) => {
50
+ // Send plan message to user with special type for UI to render with "Build It" button
51
+ const payload = {
52
+ type: "plan",
53
+ text: plan,
54
+ group: "clark",
55
+ };
56
+ // Use sendUserMessageChannel to ensure ID is generated and shared properly
57
+ const sendUserMessage = sendUserMessageChannel(clark, chatSessionStore);
58
+ await sendUserMessage(payload);
59
+ return {
60
+ success: true,
61
+ message: "Plan presented to user. Awaiting mode confirmation.",
62
+ };
63
+ },
64
+ };
65
+ });
66
+ //# sourceMappingURL=exit-plan-mode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exit-plan-mode.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/exit-plan-mode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI/E;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CACtD,cAAc,EACd,CAAC,KAAY,EAAE,QAAiC,EAAE,EAAE;IAClD,MAAM,EAAE,gBAAgB,EAAE,GAAG,QAAQ,CAAC;IAEtC,OAAO;QACL,WAAW,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BlB;QACK,QAAQ,EAAE,YAAY,CAAC,OAAO;QAC9B,iBAAiB,EAAE,eAAe,CAAC,KAAK;QACxC,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,IAAI,EAAE,CAAC;iBACJ,MAAM,EAAE;iBACR,QAAQ,CACP,gEAAgE,CACjE;SACJ,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;YAC1B,sFAAsF;YACtF,MAAM,OAAO,GAAG;gBACd,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,OAAO;aACf,CAAC;YAEF,2EAA2E;YAC3E,MAAM,eAAe,GAAG,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;YACxE,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;YAE/B,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,qDAAqD;aAC/D,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Glob tool - Fast file pattern matching.
3
+ */
4
+ export declare const globToolFactory: import("../types.js").ToolFactory<import("../types.js").Tool<{
5
+ pattern: string;
6
+ path?: string | undefined;
7
+ }, {
8
+ files: string[];
9
+ count: number;
10
+ }>>;
11
+ //# sourceMappingURL=glob.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glob.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/glob.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;GAoCzB,CAAC"}
@@ -0,0 +1,44 @@
1
+ import { glob } from "glob";
2
+ import { z } from "zod";
3
+ import { createToolFactory, PermissionLevel, ToolCategory } from "../types.js";
4
+ /**
5
+ * Glob tool - Fast file pattern matching.
6
+ */
7
+ export const globToolFactory = createToolFactory("glob", () => ({
8
+ description: `
9
+ - Fast file pattern matching tool that works with any codebase size
10
+ - Supports glob patterns like "**/*.js" or "src/**/*.ts"
11
+ - Returns matching file paths sorted by modification time
12
+ - Use this tool when you need to find files by name patterns
13
+ - When you are doing an open ended search that may require multiple rounds of globbing and grepping, use the Agent tool instead
14
+ - You have the capability to call multiple tools in a single response. It is always better to speculatively perform multiple searches as a batch that are potentially useful.
15
+ `,
16
+ category: ToolCategory.FILE,
17
+ defaultPermission: PermissionLevel.ALLOW,
18
+ inputSchema: z.object({
19
+ pattern: z.string().describe("Glob pattern (e.g., **/*.js)"),
20
+ path: z.string().optional().describe("Directory to search in"),
21
+ }),
22
+ execute: async ({ pattern, path: searchPath }) => {
23
+ try {
24
+ const cwd = searchPath || process.cwd();
25
+ const files = await glob(pattern, {
26
+ cwd,
27
+ nodir: true,
28
+ dot: true,
29
+ absolute: false,
30
+ });
31
+ return {
32
+ files,
33
+ count: files.length,
34
+ };
35
+ }
36
+ catch (error) {
37
+ if (error instanceof Error) {
38
+ throw new Error(`Failed to glob files: ${error.message}`);
39
+ }
40
+ throw new Error("Failed to glob files: Unknown error");
41
+ }
42
+ },
43
+ }));
44
+ //# sourceMappingURL=glob.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glob.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/glob.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,WAAW,EAAE;;;;;;;CAOd;IACC,QAAQ,EAAE,YAAY,CAAC,IAAI;IAC3B,iBAAiB,EAAE,eAAe,CAAC,KAAK;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QAC5D,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;KAC/D,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE;gBAChC,GAAG;gBACH,KAAK,EAAE,IAAI;gBACX,GAAG,EAAE,IAAI;gBACT,QAAQ,EAAE,KAAK;aAChB,CAAC,CAAC;YAEH,OAAO;gBACL,KAAK;gBACL,KAAK,EAAE,KAAK,CAAC,MAAM;aACpB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;CACF,CAAC,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Grep tool - Powerful search built on ripgrep.
3
+ */
4
+ export declare const grepToolFactory: import("../types.js").ToolFactory<import("../types.js").Tool<{
5
+ pattern: string;
6
+ type?: string | undefined;
7
+ path?: string | undefined;
8
+ glob?: string | undefined;
9
+ output_mode?: "content" | "count" | "files_with_matches" | undefined;
10
+ "-i"?: boolean | undefined;
11
+ "-n"?: boolean | undefined;
12
+ "-A"?: number | undefined;
13
+ "-B"?: number | undefined;
14
+ "-C"?: number | undefined;
15
+ head_limit?: number | undefined;
16
+ multiline?: boolean | undefined;
17
+ }, {
18
+ output: string;
19
+ matches: number | undefined;
20
+ }>>;
21
+ //# sourceMappingURL=grep.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/grep.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;GAsGzB,CAAC"}
@@ -0,0 +1,100 @@
1
+ import { exec } from "node:child_process";
2
+ import { promisify } from "node:util";
3
+ import { z } from "zod";
4
+ import { createToolFactory, PermissionLevel, ToolCategory } from "../types.js";
5
+ const execAsync = promisify(exec);
6
+ /**
7
+ * Grep tool - Powerful search built on ripgrep.
8
+ */
9
+ export const grepToolFactory = createToolFactory("grep", () => ({
10
+ description: `
11
+ A powerful search tool built on ripgrep
12
+
13
+ Usage:
14
+ - ALWAYS use Grep for search tasks. NEVER invoke grep or rg as a Bash command.
15
+ - Supports full regex syntax (e.g., "log.*Error", "function\\s+\\w+")
16
+ - Filter files with glob parameter (e.g., "*.js", "**/*.tsx") or type parameter (e.g., "js", "py", "rust")
17
+ - Output modes: "content" shows matching lines, "files_with_matches" shows only file paths (default), "count" shows match counts
18
+ - Use Task tool for open-ended searches requiring multiple rounds
19
+ - Pattern syntax: Uses ripgrep (not grep) - literal braces need escaping (use interface\\{\\} to find interface{} in Go code)
20
+ - Multiline matching: By default patterns match within single lines only. For cross-line patterns like struct \\{[\\s\\S]*?field, use multiline: true
21
+ `,
22
+ category: ToolCategory.FILE,
23
+ defaultPermission: PermissionLevel.ALLOW,
24
+ inputSchema: z.object({
25
+ pattern: z.string().describe("Regex pattern to search"),
26
+ path: z.string().optional().describe("File/directory to search in"),
27
+ output_mode: z
28
+ .enum(["content", "files_with_matches", "count"])
29
+ .optional()
30
+ .describe("Output mode (default: files_with_matches)"),
31
+ glob: z.string().optional().describe("Filter files (e.g., *.js)"),
32
+ type: z.string().optional().describe("File type (e.g., js, py, rust)"),
33
+ "-i": z.boolean().optional().describe("Case insensitive"),
34
+ "-n": z.boolean().optional().describe("Show line numbers"),
35
+ "-A": z.number().optional().describe("Context lines after match"),
36
+ "-B": z.number().optional().describe("Context lines before match"),
37
+ "-C": z.number().optional().describe("Context lines before and after"),
38
+ head_limit: z.number().optional().describe("Limit output lines"),
39
+ multiline: z.boolean().optional().describe("Enable multiline matching"),
40
+ }),
41
+ execute: async ({ pattern, path: searchPath, output_mode = "files_with_matches", glob: globPattern, type, "-i": caseInsensitive, "-n": lineNumbers, "-A": afterContext, "-B": beforeContext, "-C": context, head_limit, multiline, }) => {
42
+ try {
43
+ const args = ["rg"];
44
+ // Output mode flags
45
+ if (output_mode === "files_with_matches") {
46
+ args.push("-l");
47
+ }
48
+ else if (output_mode === "count") {
49
+ args.push("-c");
50
+ }
51
+ // Optional flags
52
+ if (caseInsensitive)
53
+ args.push("-i");
54
+ if (lineNumbers && output_mode === "content")
55
+ args.push("-n");
56
+ if (afterContext !== undefined && output_mode === "content")
57
+ args.push(`-A ${afterContext}`);
58
+ if (beforeContext !== undefined && output_mode === "content")
59
+ args.push(`-B ${beforeContext}`);
60
+ if (context !== undefined && output_mode === "content")
61
+ args.push(`-C ${context}`);
62
+ if (multiline)
63
+ args.push("-U", "--multiline-dotall");
64
+ if (globPattern)
65
+ args.push(`--glob '${globPattern}'`);
66
+ if (type)
67
+ args.push(`--type ${type}`);
68
+ // Pattern and path
69
+ args.push(`'${pattern.replace(/'/g, "'\\''")}'`);
70
+ if (searchPath)
71
+ args.push(`'${searchPath.replace(/'/g, "'\\''")}'`);
72
+ const command = args.join(" ");
73
+ const { stdout } = await execAsync(command, {
74
+ maxBuffer: 10 * 1024 * 1024, // 10MB
75
+ });
76
+ let result = stdout;
77
+ if (head_limit) {
78
+ const lines = result.split("\n");
79
+ result = lines.slice(0, head_limit).join("\n");
80
+ }
81
+ return {
82
+ output: result,
83
+ matches: output_mode === "files_with_matches"
84
+ ? result.split("\n").filter((l) => l.trim()).length
85
+ : undefined,
86
+ };
87
+ }
88
+ catch (error) {
89
+ // ripgrep returns exit code 1 when no matches found
90
+ if (error.code === 1) {
91
+ return { output: "", matches: 0 };
92
+ }
93
+ if (error instanceof Error) {
94
+ throw new Error(`Failed to grep: ${error.message}`);
95
+ }
96
+ throw new Error("Failed to grep: Unknown error");
97
+ }
98
+ },
99
+ }));
100
+ //# sourceMappingURL=grep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grep.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/grep.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * File system tools for the Tool Registry.
3
+ *
4
+ * These tools provide core file system operations (read, write, edit, etc.)
5
+ * with access control support.
6
+ */
7
+ export { readToolFactory } from "./read.js";
8
+ export { writeToolFactory } from "./write.js";
9
+ export { editToolFactory } from "./edit.js";
10
+ export { globToolFactory } from "./glob.js";
11
+ export { grepToolFactory } from "./grep.js";
12
+ export { bashToolFactory } from "./bash.js";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * File system tools for the Tool Registry.
3
+ *
4
+ * These tools provide core file system operations (read, write, edit, etc.)
5
+ * with access control support.
6
+ */
7
+ export { readToolFactory } from "./read.js";
8
+ export { writeToolFactory } from "./write.js";
9
+ export { editToolFactory } from "./edit.js";
10
+ export { globToolFactory } from "./glob.js";
11
+ export { grepToolFactory } from "./grep.js";
12
+ export { bashToolFactory } from "./bash.js";
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Read tool - Reads files from the filesystem with optional offset/limit.
3
+ */
4
+ export declare const readToolFactory: import("../types.js").ToolFactory<import("../types.js").Tool<{
5
+ file_path: string;
6
+ offset?: number | undefined;
7
+ limit?: number | undefined;
8
+ }, string>>;
9
+ //# sourceMappingURL=read.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/read.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,eAAe;;;;WAqCzB,CAAC"}
@@ -0,0 +1,43 @@
1
+ import fs from "node:fs/promises";
2
+ import { z } from "zod";
3
+ import { createToolFactory, PermissionLevel, ToolCategory } from "../types.js";
4
+ /**
5
+ * Read tool - Reads files from the filesystem with optional offset/limit.
6
+ */
7
+ export const readToolFactory = createToolFactory("read", () => ({
8
+ description: `
9
+ Reads a file from the local filesystem. You can access any file directly by using this tool. Assume this tool is able to read all files on the machine. If the User provides a path to a file assume that path is valid. It is okay to read a file that does not exist; an error will be returned.
10
+ `,
11
+ category: ToolCategory.FILE,
12
+ defaultPermission: PermissionLevel.ALLOW,
13
+ inputSchema: z.object({
14
+ file_path: z.string().describe("Absolute path to file"),
15
+ offset: z.number().optional().describe("Line number to start reading from"),
16
+ limit: z.number().optional().describe("Number of lines to read"),
17
+ }),
18
+ execute: async ({ file_path, offset, limit }) => {
19
+ try {
20
+ // Read the entire file
21
+ const content = await fs.readFile(file_path, "utf-8");
22
+ const lines = content.split("\n");
23
+ // Apply offset and limit
24
+ const startLine = offset ? offset - 1 : 0; // offset is 1-indexed
25
+ const endLine = limit ? startLine + limit : lines.length;
26
+ const selectedLines = lines.slice(startLine, endLine);
27
+ // Format with line numbers (cat -n style)
28
+ const lineNumberStart = offset ?? 1;
29
+ const formattedLines = selectedLines.map((line, index) => {
30
+ const lineNumber = lineNumberStart + index;
31
+ return `${lineNumber.toString().padStart(6)}\t${line}`;
32
+ });
33
+ return formattedLines.join("\n");
34
+ }
35
+ catch (error) {
36
+ if (error instanceof Error) {
37
+ throw new Error(`Failed to read file: ${error.message}`);
38
+ }
39
+ throw new Error("Failed to read file: Unknown error");
40
+ }
41
+ },
42
+ }));
43
+ //# sourceMappingURL=read.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/read.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,WAAW,EAAE;;CAEd;IACC,QAAQ,EAAE,YAAY,CAAC,IAAI;IAC3B,iBAAiB,EAAE,eAAe,CAAC,KAAK;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QACvD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAC3E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;KACjE,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;QAC9C,IAAI,CAAC;YACH,uBAAuB;YACvB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAElC,yBAAyB;YACzB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB;YACjE,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;YACzD,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAEtD,0CAA0C;YAC1C,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,CAAC;YACpC,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBACvD,MAAM,UAAU,GAAG,eAAe,GAAG,KAAK,CAAC;gBAC3C,OAAO,GAAG,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACzD,CAAC,CAAC,CAAC;YAEH,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3D,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;CACF,CAAC,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Write tool - Writes files to the filesystem.
3
+ */
4
+ export declare const writeToolFactory: import("../types.js").ToolFactory<import("../types.js").Tool<{
5
+ content: string;
6
+ file_path: string;
7
+ }, {
8
+ success: boolean;
9
+ message: string;
10
+ }>>;
11
+ //# sourceMappingURL=write.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/write.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;GAmB1B,CAAC"}
@@ -0,0 +1,28 @@
1
+ import fs from "node:fs/promises";
2
+ import { z } from "zod";
3
+ import { createToolFactory, PermissionLevel, ToolCategory } from "../types.js";
4
+ /**
5
+ * Write tool - Writes files to the filesystem.
6
+ */
7
+ export const writeToolFactory = createToolFactory("write", () => ({
8
+ description: "Writes a file to the local filesystem.",
9
+ category: ToolCategory.FILE,
10
+ defaultPermission: PermissionLevel.PROMPT,
11
+ inputSchema: z.object({
12
+ file_path: z.string().describe("Absolute path to file"),
13
+ content: z.string().describe("Content to write"),
14
+ }),
15
+ execute: async ({ file_path, content }) => {
16
+ try {
17
+ await fs.writeFile(file_path, content, "utf-8");
18
+ return { success: true, message: `File written: ${file_path}` };
19
+ }
20
+ catch (error) {
21
+ if (error instanceof Error) {
22
+ throw new Error(`Failed to write file: ${error.message}`);
23
+ }
24
+ throw new Error("Failed to write file: Unknown error");
25
+ }
26
+ },
27
+ }));
28
+ //# sourceMappingURL=write.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../../../../src/ai-service/agent/tools2/tools/write.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;IAChE,WAAW,EAAE,wCAAwC;IACrD,QAAQ,EAAE,YAAY,CAAC,IAAI;IAC3B,iBAAiB,EAAE,eAAe,CAAC,MAAM;IACzC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QACvD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;KACjD,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QACxC,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAChD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,SAAS,EAAE,EAAE,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,yBAAyB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;CACF,CAAC,CAAC,CAAC"}