sema-core 1.0.14 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (680) hide show
  1. package/README.md +15 -10
  2. package/dist/{constants → conf}/config.d.ts +0 -1
  3. package/dist/conf/config.d.ts.map +1 -0
  4. package/dist/{constants → conf}/config.js +1 -3
  5. package/dist/conf/config.js.map +1 -0
  6. package/dist/core/Conversation.d.ts +3 -14
  7. package/dist/core/Conversation.d.ts.map +1 -1
  8. package/dist/core/Conversation.js +53 -89
  9. package/dist/core/Conversation.js.map +1 -1
  10. package/dist/core/RunTools.d.ts +5 -5
  11. package/dist/core/RunTools.d.ts.map +1 -1
  12. package/dist/core/RunTools.js +22 -31
  13. package/dist/core/RunTools.js.map +1 -1
  14. package/dist/core/SemaCore.d.ts +21 -22
  15. package/dist/core/SemaCore.d.ts.map +1 -1
  16. package/dist/core/SemaCore.js +16 -24
  17. package/dist/core/SemaCore.js.map +1 -1
  18. package/dist/core/SemaEngine.d.ts +2 -2
  19. package/dist/core/SemaEngine.d.ts.map +1 -1
  20. package/dist/core/SemaEngine.js +30 -33
  21. package/dist/core/SemaEngine.js.map +1 -1
  22. package/dist/events/EventSystem.d.ts.map +1 -1
  23. package/dist/events/EventSystem.js +3 -2
  24. package/dist/events/EventSystem.js.map +1 -1
  25. package/dist/events/types.d.ts +75 -41
  26. package/dist/events/types.d.ts.map +1 -1
  27. package/dist/manager/ConfManager.d.ts +10 -3
  28. package/dist/manager/ConfManager.d.ts.map +1 -1
  29. package/dist/manager/ConfManager.js +30 -13
  30. package/dist/manager/ConfManager.js.map +1 -1
  31. package/dist/manager/CronManager.d.ts +3 -6
  32. package/dist/manager/CronManager.d.ts.map +1 -1
  33. package/dist/manager/CronManager.js +62 -74
  34. package/dist/manager/CronManager.js.map +1 -1
  35. package/dist/manager/ModelManager.d.ts +0 -3
  36. package/dist/manager/ModelManager.d.ts.map +1 -1
  37. package/dist/manager/ModelManager.js +2 -4
  38. package/dist/manager/ModelManager.js.map +1 -1
  39. package/dist/manager/PermissionManager.d.ts +4 -6
  40. package/dist/manager/PermissionManager.d.ts.map +1 -1
  41. package/dist/manager/PermissionManager.js +70 -65
  42. package/dist/manager/PermissionManager.js.map +1 -1
  43. package/dist/manager/StateManager.d.ts +40 -7
  44. package/dist/manager/StateManager.d.ts.map +1 -1
  45. package/dist/manager/StateManager.js +79 -22
  46. package/dist/manager/StateManager.js.map +1 -1
  47. package/dist/manager/TaskManager.d.ts +2 -9
  48. package/dist/manager/TaskManager.d.ts.map +1 -1
  49. package/dist/manager/TaskManager.js +64 -66
  50. package/dist/manager/TaskManager.js.map +1 -1
  51. package/dist/prompt/agents.d.ts +3 -0
  52. package/dist/prompt/agents.d.ts.map +1 -0
  53. package/dist/prompt/agents.js +52 -0
  54. package/dist/prompt/agents.js.map +1 -0
  55. package/dist/prompt/commands.d.ts +3 -0
  56. package/dist/prompt/commands.d.ts.map +1 -0
  57. package/dist/prompt/commands.js +19 -0
  58. package/dist/prompt/commands.js.map +1 -0
  59. package/dist/prompt/compact.d.ts +2 -0
  60. package/dist/prompt/compact.d.ts.map +1 -0
  61. package/dist/prompt/compact.js +22 -0
  62. package/dist/prompt/compact.js.map +1 -0
  63. package/dist/prompt/define.d.ts +5 -0
  64. package/dist/prompt/define.d.ts.map +1 -0
  65. package/dist/prompt/define.js +8 -0
  66. package/dist/prompt/define.js.map +1 -0
  67. package/dist/prompt/design/design.d.ts +47 -0
  68. package/dist/prompt/design/design.d.ts.map +1 -0
  69. package/dist/prompt/design/design.js +224 -0
  70. package/dist/prompt/design/design.js.map +1 -0
  71. package/dist/prompt/design/designPhilosophy.d.ts +2 -0
  72. package/dist/prompt/design/designPhilosophy.d.ts.map +1 -0
  73. package/dist/prompt/design/designPhilosophy.js +79 -0
  74. package/dist/prompt/design/designPhilosophy.js.map +1 -0
  75. package/dist/prompt/design/designSystemSpec.d.ts +2 -0
  76. package/dist/prompt/design/designSystemSpec.d.ts.map +1 -0
  77. package/dist/prompt/design/designSystemSpec.js +44 -0
  78. package/dist/prompt/design/designSystemSpec.js.map +1 -0
  79. package/dist/prompt/design/imgPlaceholder.d.ts +2 -0
  80. package/dist/prompt/design/imgPlaceholder.d.ts.map +1 -0
  81. package/dist/prompt/design/imgPlaceholder.js +56 -0
  82. package/dist/prompt/design/imgPlaceholder.js.map +1 -0
  83. package/dist/prompt/memory.d.ts +2 -0
  84. package/dist/prompt/memory.d.ts.map +1 -0
  85. package/dist/prompt/memory.js +23 -0
  86. package/dist/prompt/memory.js.map +1 -0
  87. package/dist/prompt/plan.d.ts +2 -0
  88. package/dist/prompt/plan.d.ts.map +1 -0
  89. package/dist/prompt/plan.js +30 -0
  90. package/dist/prompt/plan.js.map +1 -0
  91. package/dist/prompt/quickchat.d.ts +2 -0
  92. package/dist/prompt/quickchat.d.ts.map +1 -0
  93. package/dist/prompt/quickchat.js +16 -0
  94. package/dist/prompt/quickchat.js.map +1 -0
  95. package/dist/prompt/system.d.ts +3 -0
  96. package/dist/prompt/system.d.ts.map +1 -0
  97. package/dist/prompt/system.js +76 -0
  98. package/dist/prompt/system.js.map +1 -0
  99. package/dist/prompt/tool.d.ts +22 -0
  100. package/dist/prompt/tool.d.ts.map +1 -0
  101. package/dist/prompt/tool.js +25 -0
  102. package/dist/prompt/tool.js.map +1 -0
  103. package/dist/prompt/toolAliases.d.ts +16 -0
  104. package/dist/prompt/toolAliases.d.ts.map +1 -0
  105. package/dist/prompt/toolAliases.js +46 -0
  106. package/dist/prompt/toolAliases.js.map +1 -0
  107. package/dist/prompt/tools/createCron.d.ts +2 -0
  108. package/dist/prompt/tools/createCron.d.ts.map +1 -0
  109. package/dist/prompt/tools/createCron.js +29 -0
  110. package/dist/prompt/tools/createCron.js.map +1 -0
  111. package/dist/prompt/tools/createTodo.d.ts +2 -0
  112. package/dist/prompt/tools/createTodo.d.ts.map +1 -0
  113. package/dist/prompt/tools/createTodo.js +23 -0
  114. package/dist/prompt/tools/createTodo.js.map +1 -0
  115. package/dist/prompt/tools/fetchUrl.d.ts +3 -0
  116. package/dist/prompt/tools/fetchUrl.d.ts.map +1 -0
  117. package/dist/prompt/tools/fetchUrl.js +27 -0
  118. package/dist/prompt/tools/fetchUrl.js.map +1 -0
  119. package/dist/prompt/tools/planToAgent.d.ts +2 -0
  120. package/dist/prompt/tools/planToAgent.d.ts.map +1 -0
  121. package/dist/prompt/tools/planToAgent.js +24 -0
  122. package/dist/prompt/tools/planToAgent.js.map +1 -0
  123. package/dist/prompt/tools/runShell.d.ts +2 -0
  124. package/dist/prompt/tools/runShell.d.ts.map +1 -0
  125. package/dist/prompt/tools/runShell.js +31 -0
  126. package/dist/prompt/tools/runShell.js.map +1 -0
  127. package/dist/prompt/tools/searchContent.d.ts +2 -0
  128. package/dist/prompt/tools/searchContent.d.ts.map +1 -0
  129. package/dist/prompt/tools/searchContent.js +18 -0
  130. package/dist/prompt/tools/searchContent.js.map +1 -0
  131. package/dist/prompt/tools/skill.d.ts +2 -0
  132. package/dist/prompt/tools/skill.d.ts.map +1 -0
  133. package/dist/prompt/tools/skill.js +14 -0
  134. package/dist/prompt/tools/skill.js.map +1 -0
  135. package/dist/prompt/tools/subAgent.d.ts +2 -0
  136. package/dist/prompt/tools/subAgent.d.ts.map +1 -0
  137. package/dist/prompt/tools/subAgent.js +45 -0
  138. package/dist/prompt/tools/subAgent.js.map +1 -0
  139. package/dist/prompt/tools/viewFile.d.ts +4 -0
  140. package/dist/prompt/tools/viewFile.d.ts.map +1 -0
  141. package/dist/prompt/tools/viewFile.js +26 -0
  142. package/dist/prompt/tools/viewFile.js.map +1 -0
  143. package/dist/services/agents/agentsManager.d.ts +12 -15
  144. package/dist/services/agents/agentsManager.d.ts.map +1 -1
  145. package/dist/services/agents/agentsManager.js +67 -65
  146. package/dist/services/agents/agentsManager.js.map +1 -1
  147. package/dist/services/agents/genDesignSystemReminder.d.ts +3 -0
  148. package/dist/services/agents/genDesignSystemReminder.d.ts.map +1 -0
  149. package/dist/services/agents/genDesignSystemReminder.js +149 -0
  150. package/dist/services/agents/genDesignSystemReminder.js.map +1 -0
  151. package/dist/services/agents/genSystemPrompt.d.ts +11 -11
  152. package/dist/services/agents/genSystemPrompt.d.ts.map +1 -1
  153. package/dist/services/agents/genSystemPrompt.js +58 -121
  154. package/dist/services/agents/genSystemPrompt.js.map +1 -1
  155. package/dist/services/agents/{systemReminder.d.ts → genSystemReminder.d.ts} +2 -7
  156. package/dist/services/agents/genSystemReminder.d.ts.map +1 -0
  157. package/dist/services/agents/genSystemReminder.js +86 -0
  158. package/dist/services/agents/genSystemReminder.js.map +1 -0
  159. package/dist/services/api/adapt/anthropic.d.ts +3 -5
  160. package/dist/services/api/adapt/anthropic.d.ts.map +1 -1
  161. package/dist/services/api/adapt/anthropic.js +32 -18
  162. package/dist/services/api/adapt/anthropic.js.map +1 -1
  163. package/dist/services/api/adapt/openai.d.ts +3 -3
  164. package/dist/services/api/adapt/openai.d.ts.map +1 -1
  165. package/dist/services/api/adapt/openai.js +20 -23
  166. package/dist/services/api/adapt/openai.js.map +1 -1
  167. package/dist/services/api/adapt/util.d.ts +0 -1
  168. package/dist/services/api/adapt/util.d.ts.map +1 -1
  169. package/dist/services/api/adapt/util.js +3 -5
  170. package/dist/services/api/adapt/util.js.map +1 -1
  171. package/dist/services/api/apiUtil.d.ts +3 -0
  172. package/dist/services/api/apiUtil.d.ts.map +1 -1
  173. package/dist/services/api/apiUtil.js +30 -26
  174. package/dist/services/api/apiUtil.js.map +1 -1
  175. package/dist/services/api/cache.d.ts +5 -5
  176. package/dist/services/api/cache.d.ts.map +1 -1
  177. package/dist/services/api/cache.js +16 -20
  178. package/dist/services/api/cache.js.map +1 -1
  179. package/dist/services/api/queryLLM.d.ts +4 -5
  180. package/dist/services/api/queryLLM.d.ts.map +1 -1
  181. package/dist/services/api/queryLLM.js +2 -6
  182. package/dist/services/api/queryLLM.js.map +1 -1
  183. package/dist/services/commands/commandsManager.d.ts +11 -14
  184. package/dist/services/commands/commandsManager.d.ts.map +1 -1
  185. package/dist/services/commands/commandsManager.js +54 -64
  186. package/dist/services/commands/commandsManager.js.map +1 -1
  187. package/dist/services/commands/runCommand.d.ts.map +1 -1
  188. package/dist/services/commands/runCommand.js +3 -27
  189. package/dist/services/commands/runCommand.js.map +1 -1
  190. package/dist/services/design/designManager.d.ts +29 -0
  191. package/dist/services/design/designManager.d.ts.map +1 -0
  192. package/dist/services/design/designManager.js +365 -0
  193. package/dist/services/design/designManager.js.map +1 -0
  194. package/dist/services/mcp/MCPClient.d.ts.map +1 -1
  195. package/dist/services/mcp/MCPClient.js +9 -1
  196. package/dist/services/mcp/MCPClient.js.map +1 -1
  197. package/dist/services/mcp/MCPManager.d.ts +9 -29
  198. package/dist/services/mcp/MCPManager.d.ts.map +1 -1
  199. package/dist/services/mcp/MCPManager.js +53 -147
  200. package/dist/services/mcp/MCPManager.js.map +1 -1
  201. package/dist/services/mcp/MCPToolAdapter.js +4 -4
  202. package/dist/services/mcp/MCPToolAdapter.js.map +1 -1
  203. package/dist/services/memory/memManager.d.ts +6 -9
  204. package/dist/services/memory/memManager.d.ts.map +1 -1
  205. package/dist/services/memory/memManager.js +22 -42
  206. package/dist/services/memory/memManager.js.map +1 -1
  207. package/dist/services/plugins/pluginsManager.d.ts +9 -17
  208. package/dist/services/plugins/pluginsManager.d.ts.map +1 -1
  209. package/dist/services/plugins/pluginsManager.js +33 -104
  210. package/dist/services/plugins/pluginsManager.js.map +1 -1
  211. package/dist/services/rules/rulesManager.d.ts +7 -9
  212. package/dist/services/rules/rulesManager.d.ts.map +1 -1
  213. package/dist/services/rules/rulesManager.js +19 -39
  214. package/dist/services/rules/rulesManager.js.map +1 -1
  215. package/dist/services/skills/skillsManager.d.ts +10 -13
  216. package/dist/services/skills/skillsManager.d.ts.map +1 -1
  217. package/dist/services/skills/skillsManager.js +41 -54
  218. package/dist/services/skills/skillsManager.js.map +1 -1
  219. package/dist/tools/CreateCron.d.ts +68 -0
  220. package/dist/tools/CreateCron.d.ts.map +1 -0
  221. package/dist/tools/CreateCron.js +76 -0
  222. package/dist/tools/CreateCron.js.map +1 -0
  223. package/dist/tools/CreateTodo.d.ts +48 -0
  224. package/dist/tools/CreateTodo.d.ts.map +1 -0
  225. package/dist/tools/CreateTodo.js +50 -0
  226. package/dist/tools/CreateTodo.js.map +1 -0
  227. package/dist/tools/{CronDelete/CronDelete.d.ts → DelCron.d.ts} +11 -11
  228. package/dist/tools/DelCron.d.ts.map +1 -0
  229. package/dist/tools/{CronDelete/CronDelete.js → DelCron.js} +12 -12
  230. package/dist/tools/DelCron.js.map +1 -0
  231. package/dist/tools/{NotebookEdit/NotebookEdit.d.ts → EditNotebook.d.ts} +37 -37
  232. package/dist/tools/EditNotebook.d.ts.map +1 -0
  233. package/dist/tools/EditNotebook.js +220 -0
  234. package/dist/tools/EditNotebook.js.map +1 -0
  235. package/dist/tools/{WebFetch/WebFetch.d.ts → FetchUrl.d.ts} +8 -8
  236. package/dist/tools/FetchUrl.d.ts.map +1 -0
  237. package/dist/tools/{WebFetch/WebFetch.js → FetchUrl.js} +30 -34
  238. package/dist/tools/FetchUrl.js.map +1 -0
  239. package/dist/tools/GetTodo.d.ts +34 -0
  240. package/dist/tools/GetTodo.d.ts.map +1 -0
  241. package/dist/tools/{TaskGet/TaskGet.js → GetTodo.js} +21 -20
  242. package/dist/tools/GetTodo.js.map +1 -0
  243. package/dist/tools/{CronList/CronList.d.ts → ListCrons.d.ts} +12 -13
  244. package/dist/tools/ListCrons.d.ts.map +1 -0
  245. package/dist/tools/{CronList/CronList.js → ListCrons.js} +20 -20
  246. package/dist/tools/ListCrons.js.map +1 -0
  247. package/dist/tools/ListTodos.d.ts +27 -0
  248. package/dist/tools/ListTodos.d.ts.map +1 -0
  249. package/dist/tools/{TaskList/TaskList.js → ListTodos.js} +20 -19
  250. package/dist/tools/ListTodos.js.map +1 -0
  251. package/dist/tools/{Edit/Edit.d.ts → PatchFile.d.ts} +39 -43
  252. package/dist/tools/PatchFile.d.ts.map +1 -0
  253. package/dist/tools/PatchFile.js +214 -0
  254. package/dist/tools/PatchFile.js.map +1 -0
  255. package/dist/tools/PeekBgJob.d.ts +58 -0
  256. package/dist/tools/PeekBgJob.d.ts.map +1 -0
  257. package/dist/tools/PeekBgJob.js +92 -0
  258. package/dist/tools/PeekBgJob.js.map +1 -0
  259. package/dist/tools/PickOption.d.ts +463 -0
  260. package/dist/tools/PickOption.d.ts.map +1 -0
  261. package/dist/tools/PickOption.js +226 -0
  262. package/dist/tools/PickOption.js.map +1 -0
  263. package/dist/tools/PlanToAgent.d.ts +42 -0
  264. package/dist/tools/PlanToAgent.d.ts.map +1 -0
  265. package/dist/tools/{ExitPlanMode/ExitPlanMode.js → PlanToAgent.js} +47 -43
  266. package/dist/tools/PlanToAgent.js.map +1 -0
  267. package/dist/tools/{Bash/Bash.d.ts → RunShell.d.ts} +23 -21
  268. package/dist/tools/RunShell.d.ts.map +1 -0
  269. package/dist/tools/{Bash/Bash.js → RunShell.js} +55 -58
  270. package/dist/tools/RunShell.js.map +1 -0
  271. package/dist/tools/SearchContent.d.ts +86 -0
  272. package/dist/tools/SearchContent.d.ts.map +1 -0
  273. package/dist/tools/SearchContent.js +237 -0
  274. package/dist/tools/SearchContent.js.map +1 -0
  275. package/dist/tools/{Glob/Glob.d.ts → SearchFiles.d.ts} +8 -8
  276. package/dist/tools/SearchFiles.d.ts.map +1 -0
  277. package/dist/tools/{Glob/Glob.js → SearchFiles.js} +24 -31
  278. package/dist/tools/SearchFiles.js.map +1 -0
  279. package/dist/tools/{Skill/Skill.d.ts → Skill.d.ts} +11 -11
  280. package/dist/tools/Skill.d.ts.map +1 -0
  281. package/dist/tools/{Skill/Skill.js → Skill.js} +21 -19
  282. package/dist/tools/Skill.js.map +1 -0
  283. package/dist/tools/{TaskStop/TaskStop.d.ts → StopBgJob.d.ts} +17 -17
  284. package/dist/tools/StopBgJob.d.ts.map +1 -0
  285. package/dist/tools/StopBgJob.js +69 -0
  286. package/dist/tools/StopBgJob.js.map +1 -0
  287. package/dist/tools/SubAgent.d.ts +67 -0
  288. package/dist/tools/SubAgent.d.ts.map +1 -0
  289. package/dist/tools/{Agent/Agent.js → SubAgent.js} +60 -58
  290. package/dist/tools/SubAgent.js.map +1 -0
  291. package/dist/tools/UpdateTodo.d.ts +76 -0
  292. package/dist/tools/UpdateTodo.d.ts.map +1 -0
  293. package/dist/tools/UpdateTodo.js +111 -0
  294. package/dist/tools/UpdateTodo.js.map +1 -0
  295. package/dist/tools/{Read/Read.d.ts → ViewFile.d.ts} +26 -64
  296. package/dist/tools/ViewFile.d.ts.map +1 -0
  297. package/dist/tools/ViewFile.js +365 -0
  298. package/dist/tools/ViewFile.js.map +1 -0
  299. package/dist/tools/{Write/Write.d.ts → WriteFile.d.ts} +12 -12
  300. package/dist/tools/WriteFile.d.ts.map +1 -0
  301. package/dist/tools/WriteFile.js +150 -0
  302. package/dist/tools/WriteFile.js.map +1 -0
  303. package/dist/tools/base/Tool.d.ts +2 -2
  304. package/dist/tools/base/Tool.d.ts.map +1 -1
  305. package/dist/tools/base/tools.d.ts +1 -0
  306. package/dist/tools/base/tools.d.ts.map +1 -1
  307. package/dist/tools/base/tools.js +56 -50
  308. package/dist/tools/base/tools.js.map +1 -1
  309. package/dist/types/agent.d.ts +0 -1
  310. package/dist/types/agent.d.ts.map +1 -1
  311. package/dist/types/command.d.ts +0 -2
  312. package/dist/types/command.d.ts.map +1 -1
  313. package/dist/types/cron.d.ts +6 -6
  314. package/dist/types/cron.d.ts.map +1 -1
  315. package/dist/types/design.d.ts +24 -0
  316. package/dist/types/design.d.ts.map +1 -0
  317. package/dist/types/design.js +6 -0
  318. package/dist/types/design.js.map +1 -0
  319. package/dist/types/errors.d.ts +0 -2
  320. package/dist/types/errors.d.ts.map +1 -1
  321. package/dist/types/errors.js +0 -2
  322. package/dist/types/errors.js.map +1 -1
  323. package/dist/types/index.d.ts +16 -12
  324. package/dist/types/index.d.ts.map +1 -1
  325. package/dist/types/index.js +28 -5
  326. package/dist/types/index.js.map +1 -1
  327. package/dist/types/mcp.d.ts +1 -3
  328. package/dist/types/mcp.d.ts.map +1 -1
  329. package/dist/types/message.d.ts +5 -4
  330. package/dist/types/message.d.ts.map +1 -1
  331. package/dist/types/model.d.ts +1 -1
  332. package/dist/types/model.d.ts.map +1 -1
  333. package/dist/types/plugin.d.ts +8 -11
  334. package/dist/types/plugin.d.ts.map +1 -1
  335. package/dist/types/skill.d.ts +0 -3
  336. package/dist/types/skill.d.ts.map +1 -1
  337. package/dist/types/skill.js +0 -2
  338. package/dist/types/skill.js.map +1 -1
  339. package/dist/types/task.d.ts +10 -10
  340. package/dist/types/task.d.ts.map +1 -1
  341. package/dist/types/todoTask.d.ts +4 -5
  342. package/dist/types/todoTask.d.ts.map +1 -1
  343. package/dist/util/adapter.d.ts +8 -3
  344. package/dist/util/adapter.d.ts.map +1 -1
  345. package/dist/util/adapter.js +22 -49
  346. package/dist/util/adapter.js.map +1 -1
  347. package/dist/util/agentStats.d.ts +1 -1
  348. package/dist/util/agentStats.d.ts.map +1 -1
  349. package/dist/util/agentStats.js +16 -24
  350. package/dist/util/agentStats.js.map +1 -1
  351. package/dist/util/cacheLLM.d.ts +5 -5
  352. package/dist/util/cacheLLM.d.ts.map +1 -1
  353. package/dist/util/cacheLLM.js.map +1 -1
  354. package/dist/util/color.d.ts +44 -0
  355. package/dist/util/color.d.ts.map +1 -0
  356. package/dist/util/color.js +247 -0
  357. package/dist/util/color.js.map +1 -0
  358. package/dist/util/commands.d.ts +4 -5
  359. package/dist/util/commands.d.ts.map +1 -1
  360. package/dist/util/commands.js +22 -112
  361. package/dist/util/commands.js.map +1 -1
  362. package/dist/util/compact.d.ts +6 -3
  363. package/dist/util/compact.d.ts.map +1 -1
  364. package/dist/util/compact.js +20 -149
  365. package/dist/util/compact.js.map +1 -1
  366. package/dist/util/cron.d.ts +1 -9
  367. package/dist/util/cron.d.ts.map +1 -1
  368. package/dist/util/cron.js +2 -29
  369. package/dist/util/cron.js.map +1 -1
  370. package/dist/util/cwd.d.ts +2 -35
  371. package/dist/util/cwd.d.ts.map +1 -1
  372. package/dist/util/cwd.js +7 -57
  373. package/dist/util/cwd.js.map +1 -1
  374. package/dist/util/diff.d.ts +6 -4
  375. package/dist/util/diff.d.ts.map +1 -1
  376. package/dist/util/diff.js +63 -104
  377. package/dist/util/diff.js.map +1 -1
  378. package/dist/{tools/Edit/utils.d.ts → util/edit.d.ts} +2 -5
  379. package/dist/util/edit.d.ts.map +1 -0
  380. package/dist/util/edit.js +44 -0
  381. package/dist/util/edit.js.map +1 -0
  382. package/dist/util/env.d.ts +1 -4
  383. package/dist/util/env.d.ts.map +1 -1
  384. package/dist/util/env.js +22 -15
  385. package/dist/util/env.js.map +1 -1
  386. package/dist/util/fetchUrl.d.ts +18 -0
  387. package/dist/util/fetchUrl.d.ts.map +1 -0
  388. package/dist/util/fetchUrl.js +101 -0
  389. package/dist/util/fetchUrl.js.map +1 -0
  390. package/dist/util/file.d.ts +32 -45
  391. package/dist/util/file.d.ts.map +1 -1
  392. package/dist/util/file.js +153 -236
  393. package/dist/util/file.js.map +1 -1
  394. package/dist/util/fileReference.d.ts +1 -9
  395. package/dist/util/fileReference.d.ts.map +1 -1
  396. package/dist/util/fileReference.js +45 -58
  397. package/dist/util/fileReference.js.map +1 -1
  398. package/dist/util/format.d.ts +1 -9
  399. package/dist/util/format.d.ts.map +1 -1
  400. package/dist/util/format.js +5 -46
  401. package/dist/util/format.js.map +1 -1
  402. package/dist/util/formatter.d.ts +5 -8
  403. package/dist/util/formatter.d.ts.map +1 -1
  404. package/dist/util/formatter.js +5 -15
  405. package/dist/util/formatter.js.map +1 -1
  406. package/dist/util/git.d.ts +2 -3
  407. package/dist/util/git.d.ts.map +1 -1
  408. package/dist/util/git.js +34 -39
  409. package/dist/util/git.js.map +1 -1
  410. package/dist/util/history.d.ts +0 -7
  411. package/dist/util/history.d.ts.map +1 -1
  412. package/dist/util/history.js +3 -50
  413. package/dist/util/history.js.map +1 -1
  414. package/dist/util/log.d.ts +0 -1
  415. package/dist/util/log.d.ts.map +1 -1
  416. package/dist/util/log.js +2 -7
  417. package/dist/util/log.js.map +1 -1
  418. package/dist/util/logLLM.d.ts +0 -4
  419. package/dist/util/logLLM.d.ts.map +1 -1
  420. package/dist/util/logLLM.js +6 -16
  421. package/dist/util/logLLM.js.map +1 -1
  422. package/dist/util/message.d.ts +12 -11
  423. package/dist/util/message.d.ts.map +1 -1
  424. package/dist/util/message.js +68 -89
  425. package/dist/util/message.js.map +1 -1
  426. package/dist/util/model.d.ts +0 -3
  427. package/dist/util/model.d.ts.map +1 -1
  428. package/dist/util/model.js +1 -5
  429. package/dist/util/model.js.map +1 -1
  430. package/dist/util/notebook.d.ts +1 -8
  431. package/dist/util/notebook.d.ts.map +1 -1
  432. package/dist/util/notebook.js +36 -63
  433. package/dist/util/notebook.js.map +1 -1
  434. package/dist/util/pdf.d.ts +14 -72
  435. package/dist/util/pdf.d.ts.map +1 -1
  436. package/dist/util/pdf.js +51 -460
  437. package/dist/util/pdf.js.map +1 -1
  438. package/dist/util/process.d.ts +1 -1
  439. package/dist/util/process.d.ts.map +1 -1
  440. package/dist/util/process.js +7 -11
  441. package/dist/util/process.js.map +1 -1
  442. package/dist/util/quickchat.d.ts +6 -0
  443. package/dist/util/quickchat.d.ts.map +1 -0
  444. package/dist/util/{btw.js → quickchat.js} +14 -32
  445. package/dist/util/quickchat.js.map +1 -0
  446. package/dist/util/ripgrep.d.ts +4 -2
  447. package/dist/util/ripgrep.d.ts.map +1 -1
  448. package/dist/util/ripgrep.js +40 -116
  449. package/dist/util/ripgrep.js.map +1 -1
  450. package/dist/util/savePath.d.ts +2 -18
  451. package/dist/util/savePath.d.ts.map +1 -1
  452. package/dist/util/savePath.js +7 -47
  453. package/dist/util/savePath.js.map +1 -1
  454. package/dist/util/secureFile.d.ts +13 -135
  455. package/dist/util/secureFile.d.ts.map +1 -1
  456. package/dist/util/secureFile.js +74 -478
  457. package/dist/util/secureFile.js.map +1 -1
  458. package/dist/util/session.d.ts +0 -21
  459. package/dist/util/session.d.ts.map +1 -1
  460. package/dist/util/session.js +0 -49
  461. package/dist/util/session.js.map +1 -1
  462. package/dist/util/shell.d.ts +23 -3
  463. package/dist/util/shell.d.ts.map +1 -1
  464. package/dist/util/shell.js +199 -290
  465. package/dist/util/shell.js.map +1 -1
  466. package/dist/util/time.d.ts +6 -5
  467. package/dist/util/time.d.ts.map +1 -1
  468. package/dist/util/time.js +10 -6
  469. package/dist/util/time.js.map +1 -1
  470. package/dist/util/tokens.d.ts +0 -1
  471. package/dist/util/tokens.d.ts.map +1 -1
  472. package/dist/util/tokens.js +12 -23
  473. package/dist/util/tokens.js.map +1 -1
  474. package/dist/util/topic.d.ts +1 -4
  475. package/dist/util/topic.d.ts.map +1 -1
  476. package/dist/util/topic.js +12 -11
  477. package/dist/util/topic.js.map +1 -1
  478. package/dist/util/writeFile.d.ts +12 -0
  479. package/dist/util/writeFile.d.ts.map +1 -0
  480. package/dist/util/writeFile.js +69 -0
  481. package/dist/util/writeFile.js.map +1 -0
  482. package/package.json +1 -1
  483. package/dist/constants/config.d.ts.map +0 -1
  484. package/dist/constants/config.js.map +0 -1
  485. package/dist/constants/message.d.ts +0 -10
  486. package/dist/constants/message.d.ts.map +0 -1
  487. package/dist/constants/message.js +0 -25
  488. package/dist/constants/message.js.map +0 -1
  489. package/dist/constants/product.d.ts +0 -4
  490. package/dist/constants/product.d.ts.map +0 -1
  491. package/dist/constants/product.js +0 -7
  492. package/dist/constants/product.js.map +0 -1
  493. package/dist/services/agents/defaultBuiltInAgentsConfs.d.ts +0 -3
  494. package/dist/services/agents/defaultBuiltInAgentsConfs.d.ts.map +0 -1
  495. package/dist/services/agents/defaultBuiltInAgentsConfs.js +0 -125
  496. package/dist/services/agents/defaultBuiltInAgentsConfs.js.map +0 -1
  497. package/dist/services/agents/prompt.d.ts +0 -10
  498. package/dist/services/agents/prompt.d.ts.map +0 -1
  499. package/dist/services/agents/prompt.js +0 -144
  500. package/dist/services/agents/prompt.js.map +0 -1
  501. package/dist/services/agents/systemReminder.d.ts.map +0 -1
  502. package/dist/services/agents/systemReminder.js +0 -68
  503. package/dist/services/agents/systemReminder.js.map +0 -1
  504. package/dist/tools/Agent/Agent.d.ts +0 -67
  505. package/dist/tools/Agent/Agent.d.ts.map +0 -1
  506. package/dist/tools/Agent/Agent.js.map +0 -1
  507. package/dist/tools/Agent/prompt.d.ts +0 -6
  508. package/dist/tools/Agent/prompt.d.ts.map +0 -1
  509. package/dist/tools/Agent/prompt.js +0 -73
  510. package/dist/tools/Agent/prompt.js.map +0 -1
  511. package/dist/tools/AskUserQuestion/AskUserQuestion.d.ts +0 -179
  512. package/dist/tools/AskUserQuestion/AskUserQuestion.d.ts.map +0 -1
  513. package/dist/tools/AskUserQuestion/AskUserQuestion.js +0 -165
  514. package/dist/tools/AskUserQuestion/AskUserQuestion.js.map +0 -1
  515. package/dist/tools/AskUserQuestion/prompt.d.ts +0 -3
  516. package/dist/tools/AskUserQuestion/prompt.d.ts.map +0 -1
  517. package/dist/tools/AskUserQuestion/prompt.js +0 -17
  518. package/dist/tools/AskUserQuestion/prompt.js.map +0 -1
  519. package/dist/tools/Bash/Bash.d.ts.map +0 -1
  520. package/dist/tools/Bash/Bash.js.map +0 -1
  521. package/dist/tools/Bash/prompt.d.ts +0 -5
  522. package/dist/tools/Bash/prompt.d.ts.map +0 -1
  523. package/dist/tools/Bash/prompt.js +0 -130
  524. package/dist/tools/Bash/prompt.js.map +0 -1
  525. package/dist/tools/Bash/utils.d.ts +0 -9
  526. package/dist/tools/Bash/utils.d.ts.map +0 -1
  527. package/dist/tools/Bash/utils.js +0 -41
  528. package/dist/tools/Bash/utils.js.map +0 -1
  529. package/dist/tools/CronCreate/CronCreate.d.ts +0 -68
  530. package/dist/tools/CronCreate/CronCreate.d.ts.map +0 -1
  531. package/dist/tools/CronCreate/CronCreate.js +0 -75
  532. package/dist/tools/CronCreate/CronCreate.js.map +0 -1
  533. package/dist/tools/CronCreate/prompt.d.ts +0 -3
  534. package/dist/tools/CronCreate/prompt.d.ts.map +0 -1
  535. package/dist/tools/CronCreate/prompt.js +0 -41
  536. package/dist/tools/CronCreate/prompt.js.map +0 -1
  537. package/dist/tools/CronDelete/CronDelete.d.ts.map +0 -1
  538. package/dist/tools/CronDelete/CronDelete.js.map +0 -1
  539. package/dist/tools/CronDelete/prompt.d.ts +0 -3
  540. package/dist/tools/CronDelete/prompt.d.ts.map +0 -1
  541. package/dist/tools/CronDelete/prompt.js +0 -6
  542. package/dist/tools/CronDelete/prompt.js.map +0 -1
  543. package/dist/tools/CronList/CronList.d.ts.map +0 -1
  544. package/dist/tools/CronList/CronList.js.map +0 -1
  545. package/dist/tools/CronList/prompt.d.ts +0 -3
  546. package/dist/tools/CronList/prompt.d.ts.map +0 -1
  547. package/dist/tools/CronList/prompt.js +0 -6
  548. package/dist/tools/CronList/prompt.js.map +0 -1
  549. package/dist/tools/Edit/Edit.d.ts.map +0 -1
  550. package/dist/tools/Edit/Edit.js +0 -225
  551. package/dist/tools/Edit/Edit.js.map +0 -1
  552. package/dist/tools/Edit/prompt.d.ts +0 -3
  553. package/dist/tools/Edit/prompt.d.ts.map +0 -1
  554. package/dist/tools/Edit/prompt.js +0 -15
  555. package/dist/tools/Edit/prompt.js.map +0 -1
  556. package/dist/tools/Edit/utils.d.ts.map +0 -1
  557. package/dist/tools/Edit/utils.js +0 -60
  558. package/dist/tools/Edit/utils.js.map +0 -1
  559. package/dist/tools/ExitPlanMode/ExitPlanMode.d.ts +0 -42
  560. package/dist/tools/ExitPlanMode/ExitPlanMode.d.ts.map +0 -1
  561. package/dist/tools/ExitPlanMode/ExitPlanMode.js.map +0 -1
  562. package/dist/tools/ExitPlanMode/prompt.d.ts +0 -3
  563. package/dist/tools/ExitPlanMode/prompt.d.ts.map +0 -1
  564. package/dist/tools/ExitPlanMode/prompt.js +0 -28
  565. package/dist/tools/ExitPlanMode/prompt.js.map +0 -1
  566. package/dist/tools/Glob/Glob.d.ts.map +0 -1
  567. package/dist/tools/Glob/Glob.js.map +0 -1
  568. package/dist/tools/Glob/prompt.d.ts +0 -3
  569. package/dist/tools/Glob/prompt.d.ts.map +0 -1
  570. package/dist/tools/Glob/prompt.js +0 -11
  571. package/dist/tools/Glob/prompt.js.map +0 -1
  572. package/dist/tools/Grep/Grep.d.ts +0 -106
  573. package/dist/tools/Grep/Grep.d.ts.map +0 -1
  574. package/dist/tools/Grep/Grep.js +0 -301
  575. package/dist/tools/Grep/Grep.js.map +0 -1
  576. package/dist/tools/Grep/prompt.d.ts +0 -3
  577. package/dist/tools/Grep/prompt.d.ts.map +0 -1
  578. package/dist/tools/Grep/prompt.js +0 -17
  579. package/dist/tools/Grep/prompt.js.map +0 -1
  580. package/dist/tools/NotebookEdit/NotebookEdit.d.ts.map +0 -1
  581. package/dist/tools/NotebookEdit/NotebookEdit.js +0 -312
  582. package/dist/tools/NotebookEdit/NotebookEdit.js.map +0 -1
  583. package/dist/tools/NotebookEdit/prompt.d.ts +0 -3
  584. package/dist/tools/NotebookEdit/prompt.d.ts.map +0 -1
  585. package/dist/tools/NotebookEdit/prompt.js +0 -6
  586. package/dist/tools/NotebookEdit/prompt.js.map +0 -1
  587. package/dist/tools/Read/Read.d.ts.map +0 -1
  588. package/dist/tools/Read/Read.js +0 -472
  589. package/dist/tools/Read/Read.js.map +0 -1
  590. package/dist/tools/Read/prompt.d.ts +0 -4
  591. package/dist/tools/Read/prompt.d.ts.map +0 -1
  592. package/dist/tools/Read/prompt.js +0 -23
  593. package/dist/tools/Read/prompt.js.map +0 -1
  594. package/dist/tools/Skill/Skill.d.ts.map +0 -1
  595. package/dist/tools/Skill/Skill.js.map +0 -1
  596. package/dist/tools/Skill/prompt.d.ts +0 -3
  597. package/dist/tools/Skill/prompt.d.ts.map +0 -1
  598. package/dist/tools/Skill/prompt.js +0 -27
  599. package/dist/tools/Skill/prompt.js.map +0 -1
  600. package/dist/tools/TaskCreate/TaskCreate.d.ts +0 -54
  601. package/dist/tools/TaskCreate/TaskCreate.d.ts.map +0 -1
  602. package/dist/tools/TaskCreate/TaskCreate.js +0 -51
  603. package/dist/tools/TaskCreate/TaskCreate.js.map +0 -1
  604. package/dist/tools/TaskCreate/prompt.d.ts +0 -3
  605. package/dist/tools/TaskCreate/prompt.d.ts.map +0 -1
  606. package/dist/tools/TaskCreate/prompt.js +0 -45
  607. package/dist/tools/TaskCreate/prompt.js.map +0 -1
  608. package/dist/tools/TaskGet/TaskGet.d.ts +0 -34
  609. package/dist/tools/TaskGet/TaskGet.d.ts.map +0 -1
  610. package/dist/tools/TaskGet/TaskGet.js.map +0 -1
  611. package/dist/tools/TaskGet/prompt.d.ts +0 -3
  612. package/dist/tools/TaskGet/prompt.d.ts.map +0 -1
  613. package/dist/tools/TaskGet/prompt.js +0 -26
  614. package/dist/tools/TaskGet/prompt.js.map +0 -1
  615. package/dist/tools/TaskList/TaskList.d.ts +0 -27
  616. package/dist/tools/TaskList/TaskList.d.ts.map +0 -1
  617. package/dist/tools/TaskList/TaskList.js.map +0 -1
  618. package/dist/tools/TaskList/prompt.d.ts +0 -3
  619. package/dist/tools/TaskList/prompt.d.ts.map +0 -1
  620. package/dist/tools/TaskList/prompt.js +0 -25
  621. package/dist/tools/TaskList/prompt.js.map +0 -1
  622. package/dist/tools/TaskOutput/TaskOutput.d.ts +0 -58
  623. package/dist/tools/TaskOutput/TaskOutput.d.ts.map +0 -1
  624. package/dist/tools/TaskOutput/TaskOutput.js +0 -95
  625. package/dist/tools/TaskOutput/TaskOutput.js.map +0 -1
  626. package/dist/tools/TaskStop/TaskStop.d.ts.map +0 -1
  627. package/dist/tools/TaskStop/TaskStop.js +0 -69
  628. package/dist/tools/TaskStop/TaskStop.js.map +0 -1
  629. package/dist/tools/TaskUpdate/TaskUpdate.d.ts +0 -88
  630. package/dist/tools/TaskUpdate/TaskUpdate.d.ts.map +0 -1
  631. package/dist/tools/TaskUpdate/TaskUpdate.js +0 -115
  632. package/dist/tools/TaskUpdate/TaskUpdate.js.map +0 -1
  633. package/dist/tools/TaskUpdate/prompt.d.ts +0 -3
  634. package/dist/tools/TaskUpdate/prompt.d.ts.map +0 -1
  635. package/dist/tools/TaskUpdate/prompt.js +0 -80
  636. package/dist/tools/TaskUpdate/prompt.js.map +0 -1
  637. package/dist/tools/TodoWrite/TodoWrite.d.ts +0 -92
  638. package/dist/tools/TodoWrite/TodoWrite.d.ts.map +0 -1
  639. package/dist/tools/TodoWrite/TodoWrite.js +0 -101
  640. package/dist/tools/TodoWrite/TodoWrite.js.map +0 -1
  641. package/dist/tools/TodoWrite/prompt.d.ts +0 -3
  642. package/dist/tools/TodoWrite/prompt.d.ts.map +0 -1
  643. package/dist/tools/TodoWrite/prompt.js +0 -187
  644. package/dist/tools/TodoWrite/prompt.js.map +0 -1
  645. package/dist/tools/WebFetch/WebFetch.d.ts.map +0 -1
  646. package/dist/tools/WebFetch/WebFetch.js.map +0 -1
  647. package/dist/tools/WebFetch/prompt.d.ts +0 -4
  648. package/dist/tools/WebFetch/prompt.d.ts.map +0 -1
  649. package/dist/tools/WebFetch/prompt.js +0 -38
  650. package/dist/tools/WebFetch/prompt.js.map +0 -1
  651. package/dist/tools/WebFetch/utils.d.ts +0 -20
  652. package/dist/tools/WebFetch/utils.d.ts.map +0 -1
  653. package/dist/tools/WebFetch/utils.js +0 -223
  654. package/dist/tools/WebFetch/utils.js.map +0 -1
  655. package/dist/tools/Write/Write.d.ts.map +0 -1
  656. package/dist/tools/Write/Write.js +0 -197
  657. package/dist/tools/Write/Write.js.map +0 -1
  658. package/dist/tools/Write/prompt.d.ts +0 -3
  659. package/dist/tools/Write/prompt.d.ts.map +0 -1
  660. package/dist/tools/Write/prompt.js +0 -13
  661. package/dist/tools/Write/prompt.js.map +0 -1
  662. package/dist/util/assembleTools.d.ts +0 -6
  663. package/dist/util/assembleTools.d.ts.map +0 -1
  664. package/dist/util/assembleTools.js +0 -17
  665. package/dist/util/assembleTools.js.map +0 -1
  666. package/dist/util/btw.d.ts +0 -6
  667. package/dist/util/btw.d.ts.map +0 -1
  668. package/dist/util/btw.js.map +0 -1
  669. package/dist/util/directory.d.ts +0 -37
  670. package/dist/util/directory.d.ts.map +0 -1
  671. package/dist/util/directory.js +0 -137
  672. package/dist/util/directory.js.map +0 -1
  673. package/dist/util/exec.d.ts +0 -6
  674. package/dist/util/exec.d.ts.map +0 -1
  675. package/dist/util/exec.js +0 -43
  676. package/dist/util/exec.js.map +0 -1
  677. package/dist/util/filePermission.d.ts +0 -14
  678. package/dist/util/filePermission.d.ts.map +0 -1
  679. package/dist/util/filePermission.js +0 -47
  680. package/dist/util/filePermission.js.map +0 -1
@@ -1,472 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.FileReadTool = exports.DOC_NOT_SUPPORTED_MESSAGE = void 0;
37
- const node_path_1 = require("node:path");
38
- const fs = __importStar(require("node:fs"));
39
- const zod_1 = require("zod");
40
- const file_1 = require("../../util/file");
41
- const cwd_1 = require("../../util/cwd");
42
- const prompt_1 = require("./prompt");
43
- const secureFile_1 = require("../../util/secureFile");
44
- const StateManager_1 = require("../../manager/StateManager");
45
- const notebook_1 = require("../../util/notebook");
46
- const log_1 = require("../../util/log");
47
- const imageCompress_1 = require("../../util/imageCompress");
48
- const pdf_1 = require("../../util/pdf");
49
- const format_1 = require("../../util/format");
50
- const MAX_LINES_TO_RENDER = 5;
51
- const MAX_OUTPUT_SIZE = 2 * 1024 * 1024; // 2MB in bytes
52
- exports.DOC_NOT_SUPPORTED_MESSAGE = `DOC/DOCX files are not supported for direct reading. Please use the Bash tool to extract text content:
53
-
54
- For .docx files (recommended):
55
- python -c "import zipfile,xml.etree.ElementTree as ET; root=ET.parse(zipfile.ZipFile('your_file.docx').open('word/document.xml')).getroot(); ns='http://schemas.openxmlformats.org/wordprocessingml/2006/main'; [print(''.join(t.text for t in p.iter(f'{{{ns}}}t') if t.text)) for p in root.iter(f'{{{ns}}}p')]"
56
-
57
- For .doc files on Windows:
58
- python -c "import win32com.client; w=win32com.client.Dispatch('Word.Application'); w.Visible=False; d=w.Documents.Open(r'C:\\\\full\\\\path\\\\to\\\\your_file.doc'); print(d.Content.Text); d.Close(); w.Quit()"
59
- Note: Requires pywin32 (install with: pip install pywin32)
60
-
61
- For .doc files on Linux/Mac:
62
- soffice --headless --convert-to txt your_file.doc
63
- Note: Requires LibreOffice`;
64
- /** 获取用于显示的路径:项目内文件用相对路径,项目外文件用绝对路径 */
65
- const getDisplayPath = (filePath) => {
66
- const rel = (0, node_path_1.relative)((0, cwd_1.getCwd)(), filePath);
67
- return rel.startsWith('..') ? filePath : rel;
68
- };
69
- const IMAGE_EXTENSIONS = new Set(['.png', '.jpg', '.jpeg', '.gif', '.webp']);
70
- const IMAGE_MEDIA_TYPES = {
71
- '.png': 'image/png',
72
- '.jpg': 'image/jpeg',
73
- '.jpeg': 'image/jpeg',
74
- '.gif': 'image/gif',
75
- '.webp': 'image/webp',
76
- };
77
- const inputSchema = zod_1.z.strictObject({
78
- file_path: zod_1.z.string({
79
- required_error: 'Error: The Read tool requires a \'file_path\' parameter to specify which file to read. Please provide the absolute path to the file you want to view. For example: {"file_path": "/path/to/file.txt"}',
80
- }).describe('The absolute path to the file to read'),
81
- offset: zod_1.z
82
- .number()
83
- .optional()
84
- .describe('The line number to start reading from. Only provide if the file is too large to read at once'),
85
- limit: zod_1.z
86
- .number()
87
- .optional()
88
- .describe('The number of lines to read. Only provide if the file is too large to read at once.'),
89
- pages: zod_1.z
90
- .string()
91
- .optional()
92
- .describe('Page range for PDF files (e.g., "1-5", "3", "10-20"). Only applicable to PDF files. Maximum 20 pages per request.'),
93
- });
94
- exports.FileReadTool = {
95
- name: prompt_1.TOOL_NAME_FOR_PROMPT,
96
- description() {
97
- return prompt_1.DESCRIPTION;
98
- },
99
- inputSchema,
100
- isReadOnly() {
101
- return true;
102
- },
103
- genToolResultMessage(data) {
104
- // 处理图片文件
105
- if (data.type === 'image') {
106
- const displayPath = getDisplayPath(data.image.filePath);
107
- return {
108
- title: displayPath,
109
- summary: `Read image ${displayPath}`,
110
- content: '',
111
- };
112
- }
113
- // 处理 notebook 文件
114
- if (data.type === 'notebook') {
115
- const { filePath, cellCount } = data.notebook;
116
- const cellText = cellCount === 1 ? 'cell' : 'cells';
117
- const displayPath = getDisplayPath(filePath);
118
- return {
119
- title: displayPath,
120
- summary: `Read ${displayPath} with ${cellCount} ${cellText}`,
121
- content: ''
122
- };
123
- }
124
- // 处理 PDF 文件
125
- if (data.type === 'pdf') {
126
- const relativePath = (0, node_path_1.relative)((0, cwd_1.getCwd)(), data.pdf.filePath);
127
- return {
128
- title: relativePath,
129
- summary: `Read PDF ${relativePath} (${(0, format_1.formatSize)(data.pdf.originalSize)})`,
130
- content: '',
131
- };
132
- }
133
- // 处理 PDF 提取页面
134
- if (data.type === 'pdf_parts') {
135
- const relativePath = (0, node_path_1.relative)((0, cwd_1.getCwd)(), data.pdfParts.filePath);
136
- const contentPreview = data.pdfParts.textContent
137
- ? data.pdfParts.textContent.split('\n').slice(0, 3).join('\n')
138
- : '';
139
- return {
140
- title: relativePath,
141
- summary: `Read ${data.pdfParts.count} pages from PDF ${relativePath}`,
142
- content: contentPreview ? contentPreview + '\n...' : '',
143
- };
144
- }
145
- // 处理普通文本文件
146
- const { filePath, content, numLines, startLine, totalLines } = data.file;
147
- const contentWithFallback = content || '(No content)';
148
- const lines = contentWithFallback.split('\n');
149
- const previewLines = lines.slice(0, MAX_LINES_TO_RENDER);
150
- let preview = previewLines.join('\n');
151
- if (numLines > MAX_LINES_TO_RENDER) {
152
- preview += `\n... (+${numLines - MAX_LINES_TO_RENDER} more lines)`;
153
- }
154
- const lineText = numLines === 1 ? 'line' : 'lines';
155
- const relativePath = getDisplayPath(filePath);
156
- // 部分读取时,标题显示行号范围
157
- const isPartialRead = startLine > 1 || numLines < totalLines;
158
- const endLine = startLine + numLines - 1;
159
- const title = isPartialRead
160
- ? `${relativePath}:${startLine}-${endLine}`
161
- : relativePath;
162
- return {
163
- title,
164
- summary: `Read ${relativePath} with ${numLines} ${lineText}`,
165
- content: preview
166
- };
167
- },
168
- async validateInput({ file_path, offset, limit, pages }, agentContext) {
169
- // 验证 pages 参数 (纯字符串解析,无 I/O)
170
- if (pages !== undefined) {
171
- const parsed = (0, pdf_1.parsePDFPageRange)(pages);
172
- if (!parsed) {
173
- return {
174
- result: false,
175
- message: `Invalid pages parameter: "${pages}". Use formats like "1-5", "3", or "10-20". Pages are 1-indexed.`,
176
- };
177
- }
178
- const rangeSize = parsed.lastPage === Infinity
179
- ? pdf_1.PDF_MAX_PAGES_PER_READ + 1
180
- : parsed.lastPage - parsed.firstPage + 1;
181
- if (rangeSize > pdf_1.PDF_MAX_PAGES_PER_READ) {
182
- return {
183
- result: false,
184
- message: `Page range "${pages}" exceeds maximum of ${pdf_1.PDF_MAX_PAGES_PER_READ} pages per request. Please use a smaller range.`,
185
- };
186
- }
187
- }
188
- const fullFilePath = (0, file_1.normalizeFilePath)(file_path);
189
- // Use secure file service to check if file exists and get file info
190
- const fileCheck = secureFile_1.secureFileService.safeGetFileInfo(fullFilePath);
191
- if (!fileCheck.success) {
192
- // Use the actual error from secureFileService instead of generic message
193
- let message = fileCheck.error || 'File access failed.';
194
- // If it's a path restriction error, provide helpful information
195
- if (message.includes('outside allowed directories')) {
196
- // Get current allowed paths for debuggingS
197
- const allowedPaths = [
198
- `Current working directory: ${(0, cwd_1.getCwd)()}`,
199
- `User home directory: ${require('os').homedir()}`,
200
- `Temporary directories: /tmp, /var/tmp`
201
- ];
202
- (0, log_1.logWarn)('ReadTool: File access denied');
203
- (0, log_1.logDebug)(`Requested path: ${fullFilePath}`);
204
- (0, log_1.logDebug)('Currently allowed base paths:');
205
- allowedPaths.forEach(path => (0, log_1.logDebug)(` - ${path}`));
206
- message += '\n\nCurrently allowed base paths:\n' + allowedPaths.map(p => ` - ${p}`).join('\n');
207
- }
208
- else {
209
- // For other errors (like actual file not found), try to find similar files
210
- const similarFilename = (0, file_1.findSimilarFile)(fullFilePath);
211
- if (similarFilename) {
212
- message += ` Did you mean ${similarFilename}?`;
213
- }
214
- }
215
- return {
216
- result: false,
217
- message,
218
- };
219
- }
220
- const stats = fileCheck.stats;
221
- const fileSize = stats.size;
222
- // DOC/DOCX files should be read via Bash tool
223
- const lowerExtForDoc = (0, node_path_1.extname)(fullFilePath).toLowerCase();
224
- if (lowerExtForDoc === '.doc' || lowerExtForDoc === '.docx') {
225
- return {
226
- result: false,
227
- message: exports.DOC_NOT_SUPPORTED_MESSAGE,
228
- };
229
- }
230
- // If file is too large and no offset/limit provided (skip check for images and PDFs)
231
- const isImageFile = IMAGE_EXTENSIONS.has((0, node_path_1.extname)(fullFilePath).toLowerCase());
232
- const isPDFFile = (0, pdf_1.isPDFExtension)((0, node_path_1.extname)(fullFilePath));
233
- if (!isImageFile && !isPDFFile && fileSize > MAX_OUTPUT_SIZE && !offset && !limit) {
234
- return {
235
- result: false,
236
- message: formatFileSizeError(fileSize),
237
- meta: { fileSize },
238
- };
239
- }
240
- return { result: true };
241
- },
242
- async *call({ file_path, offset = 1, limit = prompt_1.MAX_LINES_TO_READ, pages }, agentContext) {
243
- const fullFilePath = (0, file_1.normalizeFilePath)(file_path);
244
- const stateManager = (0, StateManager_1.getStateManager)();
245
- const agentState = stateManager.forAgent(agentContext.agentId);
246
- // Update read timestamp, to invalidate stale writes
247
- agentState.setReadFileTimestamp(fullFilePath, Date.now());
248
- // 检测是否为 notebook 文件
249
- const fileExtension = (0, node_path_1.extname)(fullFilePath);
250
- // DOC/DOCX files are not supported for direct reading
251
- if (fileExtension.toLowerCase() === '.doc' || fileExtension.toLowerCase() === '.docx') {
252
- throw new Error(exports.DOC_NOT_SUPPORTED_MESSAGE);
253
- }
254
- // --- PDF ---
255
- if ((0, pdf_1.isPDFExtension)(fileExtension)) {
256
- if (pages) {
257
- const parsedRange = (0, pdf_1.parsePDFPageRange)(pages);
258
- const extractResult = await (0, pdf_1.extractPDFPages)(fullFilePath, parsedRange ?? undefined);
259
- if (!extractResult.success) {
260
- throw new Error(extractResult.error.message);
261
- }
262
- // 读取提取的图像文件
263
- const path = require('path');
264
- const fs = require('fs/promises');
265
- const entries = await fs.readdir(extractResult.data.file.outputDir);
266
- const imageFiles = entries.filter((f) => f.endsWith('.jpg')).sort();
267
- // 检查是否有文本文件 (Python 提取方案)
268
- const textFile = path.join(extractResult.data.file.outputDir, 'content.txt');
269
- let textContent;
270
- try {
271
- textContent = await fs.readFile(textFile, 'utf-8');
272
- }
273
- catch {
274
- // 没有文本文件,说明是图像提取方案
275
- }
276
- const data = {
277
- type: 'pdf_parts',
278
- pdfParts: {
279
- filePath: file_path,
280
- originalSize: extractResult.data.file.originalSize,
281
- count: extractResult.data.file.count,
282
- outputDir: extractResult.data.file.outputDir,
283
- imageFiles,
284
- textContent,
285
- },
286
- };
287
- yield {
288
- type: 'result',
289
- data,
290
- resultForAssistant: this.genResultForAssistant(data),
291
- };
292
- return;
293
- }
294
- const pageCount = await (0, pdf_1.getPDFPageCount)(fullFilePath);
295
- if (pageCount !== null && pageCount > pdf_1.PDF_AT_MENTION_INLINE_THRESHOLD) {
296
- throw new Error(`This PDF has ${pageCount} pages, which is too many to read at once. ` +
297
- `Use the pages parameter to read specific page ranges (e.g., pages: "1-5"). ` +
298
- `Maximum ${pdf_1.PDF_MAX_PAGES_PER_READ} pages per request.`);
299
- }
300
- const stats = fs.statSync(fullFilePath);
301
- const shouldExtractPages = !(0, pdf_1.isPDFSupported)() || stats.size > pdf_1.PDF_EXTRACT_SIZE_THRESHOLD;
302
- if (shouldExtractPages) {
303
- const extractResult = await (0, pdf_1.extractPDFPages)(fullFilePath);
304
- if (extractResult.success) {
305
- (0, log_1.logInfo)(`PDF page extraction succeeded: ${extractResult.data.file.count} pages`);
306
- }
307
- else {
308
- (0, log_1.logWarn)(`PDF page extraction failed: ${extractResult.error.message}`);
309
- }
310
- }
311
- if (!(0, pdf_1.isPDFSupported)()) {
312
- throw new Error('Reading full PDFs is not supported with this model. Use a newer model (Sonnet 3.5 v2 or later), ' +
313
- `or use the pages parameter to read specific page ranges (e.g., pages: "1-5", maximum ${pdf_1.PDF_MAX_PAGES_PER_READ} pages per request). ` +
314
- 'Page extraction requires poppler-utils: install with `brew install poppler` on macOS or `apt-get install poppler-utils` on Debian/Ubuntu.');
315
- }
316
- const readResult = await (0, pdf_1.readPDF)(fullFilePath);
317
- if (!readResult.success) {
318
- throw new Error(readResult.error.message);
319
- }
320
- const pdfData = readResult.data;
321
- const data = {
322
- type: 'pdf',
323
- pdf: pdfData.file,
324
- };
325
- yield {
326
- type: 'result',
327
- data,
328
- resultForAssistant: this.genResultForAssistant(data),
329
- };
330
- return;
331
- }
332
- // 检测是否为图片文件
333
- const lowerExt = fileExtension.toLowerCase();
334
- if (IMAGE_EXTENSIONS.has(lowerExt)) {
335
- const imageBuffer = fs.readFileSync(fullFilePath);
336
- const mediaType = IMAGE_MEDIA_TYPES[lowerExt];
337
- let imageData;
338
- let finalMediaType;
339
- if (imageBuffer.length > MAX_OUTPUT_SIZE) {
340
- if (mediaType === 'image/gif') {
341
- throw new Error(formatFileSizeError(imageBuffer.length));
342
- }
343
- (0, log_1.logWarn)(`ReadTool: image size ${Math.round(imageBuffer.length / 1024)}KB exceeds limit ${Math.round(MAX_OUTPUT_SIZE / 1024)}KB, compressing...`);
344
- let compressed;
345
- try {
346
- compressed = await (0, imageCompress_1.compressImage)(imageBuffer, mediaType, MAX_OUTPUT_SIZE);
347
- }
348
- catch (e) {
349
- throw new Error(formatFileSizeError(imageBuffer.length));
350
- }
351
- const compressedBytes = Math.ceil(compressed.data.length * 3 / 4);
352
- if (compressedBytes > MAX_OUTPUT_SIZE) {
353
- throw new Error(formatFileSizeError(compressedBytes));
354
- }
355
- imageData = compressed.data;
356
- finalMediaType = compressed.media_type;
357
- }
358
- else {
359
- imageData = imageBuffer.toString('base64');
360
- finalMediaType = mediaType;
361
- }
362
- const data = {
363
- type: 'image',
364
- image: {
365
- filePath: file_path,
366
- data: imageData,
367
- media_type: finalMediaType,
368
- },
369
- };
370
- yield {
371
- type: 'result',
372
- data,
373
- resultForAssistant: this.genResultForAssistant(data),
374
- };
375
- return;
376
- }
377
- if (fileExtension === '.ipynb') {
378
- // 读取并解析 notebook 文件
379
- const { cells, cellCount } = (0, notebook_1.readNotebook)(fullFilePath);
380
- const data = {
381
- type: 'notebook',
382
- notebook: {
383
- filePath: file_path,
384
- cells,
385
- cellCount,
386
- },
387
- };
388
- yield {
389
- type: 'result',
390
- data,
391
- resultForAssistant: this.genResultForAssistant(data),
392
- };
393
- return;
394
- }
395
- // 处理普通文本文件
396
- // Handle offset properly - if offset is 0, don't subtract 1
397
- const lineOffset = offset === 0 ? 0 : offset - 1;
398
- const { content, lineCount, totalLines } = (0, file_1.readTextContent)(fullFilePath, lineOffset, limit);
399
- // Add size validation after reading
400
- if (content.length > MAX_OUTPUT_SIZE) {
401
- throw new Error(formatFileSizeError(content.length));
402
- }
403
- const data = {
404
- type: 'text',
405
- file: {
406
- filePath: file_path,
407
- content: content,
408
- numLines: lineCount,
409
- startLine: offset,
410
- totalLines,
411
- },
412
- };
413
- yield {
414
- type: 'result',
415
- data,
416
- resultForAssistant: this.genResultForAssistant(data),
417
- };
418
- },
419
- genResultForAssistant(data) {
420
- // 处理图片文件
421
- if (data.type === 'image') {
422
- return [
423
- {
424
- type: 'image',
425
- source: {
426
- type: 'base64',
427
- data: data.image.data,
428
- media_type: data.image.media_type,
429
- },
430
- },
431
- ];
432
- }
433
- // 处理 notebook 文件
434
- if (data.type === 'notebook') {
435
- return (0, notebook_1.formatNotebookCells)(data.notebook.cells);
436
- }
437
- // 处理 PDF 文件 (完整 PDF)
438
- // 注意:由于类型限制,这里返回 PDF 元数据作为文本
439
- if (data.type === 'pdf') {
440
- return `PDF file read: ${data.pdf.filePath} (${(0, format_1.formatSize)(data.pdf.originalSize)})\nBase64 data: ${data.pdf.base64.substring(0, 100)}...`;
441
- }
442
- // 处理 PDF 提取页面 (图像或文本)
443
- if (data.type === 'pdf_parts') {
444
- // 如果有文本内容,返回文本
445
- if (data.pdfParts.textContent) {
446
- return data.pdfParts.textContent;
447
- }
448
- // 否则返回图像
449
- const path = require('path');
450
- const fs = require('fs');
451
- return data.pdfParts.imageFiles.map(f => {
452
- const imgPath = path.join(data.pdfParts.outputDir, f);
453
- const imgBuffer = fs.readFileSync(imgPath);
454
- return {
455
- type: 'image',
456
- source: {
457
- type: 'base64',
458
- media_type: 'image/jpeg',
459
- data: imgBuffer.toString('base64'),
460
- },
461
- };
462
- });
463
- }
464
- // 处理普通文本文件
465
- return (0, file_1.addLineNumbers)(data.file);
466
- },
467
- };
468
- const formatSize = (bytes) => bytes > 1024 * 1024
469
- ? `${(bytes / (1024 * 1024)).toFixed(1)}M`
470
- : `${Math.round(bytes / 1024)}KB`;
471
- const formatFileSizeError = (sizeInBytes) => `File content (${formatSize(sizeInBytes)}) exceeds maximum allowed size (${formatSize(MAX_OUTPUT_SIZE)}). Please use offset and limit parameters to read specific portions of the file, or use the GrepTool to search for specific content.`;
472
- //# sourceMappingURL=Read.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Read.js","sourceRoot":"","sources":["../../../src/tools/Read/Read.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- export declare const MAX_LINES_TO_READ = 2000;
2
- export declare const TOOL_NAME_FOR_PROMPT = "Read";
3
- export declare const DESCRIPTION = "Reads a file from the local filesystem. You can access any file directly by using this tool.\nAssume 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.\n\nUsage:\n- The file_path parameter must be an absolute path, not a relative path\n- By default, it reads up to 2000 lines starting from the beginning of the file\n- You can optionally specify a line offset and limit (especially handy for long files), but it's recommended to read the whole file by not providing these parameters\n- Any lines longer than 2000 characters will be truncated\n- Results are returned using cat -n format, with line numbers starting at 1\n- This tool allows Claude Code to read images (eg PNG, JPG, etc). When reading an image file the contents are presented visually as Claude Code is a multimodal LLM.\n- This tool can read PDF files (.pdf). For large PDFs (more than 10 pages), you MUST provide the pages parameter to read specific page ranges (e.g., pages: \"1-5\"). Reading a large PDF without the pages parameter will fail. Maximum 20 pages per request.\n- This tool can read Jupyter notebooks (.ipynb files) and returns all cells with their outputs, combining code, text, and visualizations.\n- This tool does NOT support reading Word document files (.doc, .docx) directly. Use the Bash tool to extract text content instead.\n- This tool can only read files, not directories. To read a directory, use an ls command via the Bash tool.\n- You can call multiple tools in a single response. It is always better to speculatively read multiple potentially useful files in parallel.\n- You will regularly be asked to read screenshots. If the user provides a path to a screenshot, ALWAYS use this tool to view the file at the path. This tool will work with all temporary file paths.\n- If you read a file that exists but has empty contents you will receive a system reminder warning in place of file contents.";
4
- //# sourceMappingURL=prompt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/tools/Read/prompt.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,OAAO,CAAA;AAErC,eAAO,MAAM,oBAAoB,SAAS,CAAA;AAG1C,eAAO,MAAM,WAAW,k/DAgBsG,CAAA"}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DESCRIPTION = exports.TOOL_NAME_FOR_PROMPT = exports.MAX_LINES_TO_READ = void 0;
4
- exports.MAX_LINES_TO_READ = 2000; // 最多读取行数
5
- exports.TOOL_NAME_FOR_PROMPT = 'Read';
6
- exports.DESCRIPTION = `Reads a file from the local filesystem. You can access any file directly by using this tool.
7
- 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.
8
-
9
- Usage:
10
- - The file_path parameter must be an absolute path, not a relative path
11
- - By default, it reads up to ${exports.MAX_LINES_TO_READ} lines starting from the beginning of the file
12
- - You can optionally specify a line offset and limit (especially handy for long files), but it's recommended to read the whole file by not providing these parameters
13
- - Any lines longer than ${exports.MAX_LINES_TO_READ} characters will be truncated
14
- - Results are returned using cat -n format, with line numbers starting at 1
15
- - This tool allows Claude Code to read images (eg PNG, JPG, etc). When reading an image file the contents are presented visually as Claude Code is a multimodal LLM.
16
- - This tool can read PDF files (.pdf). For large PDFs (more than 10 pages), you MUST provide the pages parameter to read specific page ranges (e.g., pages: "1-5"). Reading a large PDF without the pages parameter will fail. Maximum 20 pages per request.
17
- - This tool can read Jupyter notebooks (.ipynb files) and returns all cells with their outputs, combining code, text, and visualizations.
18
- - This tool does NOT support reading Word document files (.doc, .docx) directly. Use the Bash tool to extract text content instead.
19
- - This tool can only read files, not directories. To read a directory, use an ls command via the Bash tool.
20
- - You can call multiple tools in a single response. It is always better to speculatively read multiple potentially useful files in parallel.
21
- - You will regularly be asked to read screenshots. If the user provides a path to a screenshot, ALWAYS use this tool to view the file at the path. This tool will work with all temporary file paths.
22
- - If you read a file that exists but has empty contents you will receive a system reminder warning in place of file contents.`;
23
- //# sourceMappingURL=prompt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/tools/Read/prompt.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAG,IAAI,CAAA,CAAE,SAAS;AAEnC,QAAA,oBAAoB,GAAG,MAAM,CAAA;AAG7B,QAAA,WAAW,GAAG;;;;;+BAKI,yBAAiB;;0BAEtB,yBAAiB;;;;;;;;;8HASmF,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Skill.d.ts","sourceRoot":"","sources":["../../../src/tools/Skill/Skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAiBvB,QAAA,MAAM,WAAW;;;;;;;;;EAGf,CAAA;AAEF,KAAK,MAAM,GAAG;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,SAAS;;;;;;;;;;;;;;6BASW,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC;;;;;;;iCAqB7B,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC;;;;wEAYY,MAAM;;;;;;;;;0BAkB7C,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC;;;;;;;;;kCAoC1B,MAAM,GAAG,MAAM;CAGH,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Skill.js","sourceRoot":"","sources":["../../../src/tools/Skill/Skill.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export declare const TOOL_NAME_FOR_PROMPT = "Skill";
2
- export declare const DESCRIPTION: string;
3
- //# sourceMappingURL=prompt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../../src/tools/Skill/prompt.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB,UAAU,CAAA;AAE3C,eAAO,MAAM,WAAW,EAAE,MAqBzB,CAAA"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DESCRIPTION = exports.TOOL_NAME_FOR_PROMPT = void 0;
4
- exports.TOOL_NAME_FOR_PROMPT = 'Skill';
5
- exports.DESCRIPTION = `Execute a skill within the main conversation
6
-
7
- When users ask you to perform tasks, check if any of the available skills match. Skills provide specialized capabilities and domain knowledge.
8
-
9
- When users reference a "slash command" or "/<something>" (e.g., "/commit", "/review-pr"), they are referring to a skill. Use this tool to invoke it.
10
-
11
- How to invoke:
12
- - Use this tool with the skill name and optional arguments
13
- - Examples:
14
- - \`skill: "pdf"\` - invoke the pdf skill
15
- - \`skill: "commit", args: "-m 'Fix bug'"\` - invoke with arguments
16
- - \`skill: "review-pr", args: "123"\` - invoke with arguments
17
- - \`skill: "ms-office-suite:pdf"\` - invoke using fully qualified name
18
-
19
- Important:
20
- - Available skills are listed in system-reminder messages in the conversation
21
- - When a skill matches the user's request, this is a BLOCKING REQUIREMENT: invoke the relevant Skill tool BEFORE generating any other response about the task
22
- - NEVER mention a skill without actually calling this tool
23
- - Do not invoke a skill that is already running
24
- - Do not use this tool for built-in CLI commands (like /help, /clear, etc.)
25
- - If you see a <command-name> tag in the current conversation turn, the skill has ALREADY been loaded - follow the instructions directly instead of calling this tool again
26
- `;
27
- //# sourceMappingURL=prompt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/tools/Skill/prompt.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG,OAAO,CAAA;AAE9B,QAAA,WAAW,GAAW;;;;;;;;;;;;;;;;;;;;;CAqBlC,CAAA"}
@@ -1,54 +0,0 @@
1
- import { z } from 'zod';
2
- declare const inputSchema: z.ZodObject<{
3
- subject: z.ZodString;
4
- description: z.ZodString;
5
- activeForm: z.ZodOptional<z.ZodString>;
6
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7
- }, "strict", z.ZodTypeAny, {
8
- subject: string;
9
- description: string;
10
- activeForm?: string | undefined;
11
- metadata?: Record<string, unknown> | undefined;
12
- }, {
13
- subject: string;
14
- description: string;
15
- activeForm?: string | undefined;
16
- metadata?: Record<string, unknown> | undefined;
17
- }>;
18
- type Out = {
19
- task: {
20
- id: string;
21
- subject: string;
22
- };
23
- };
24
- export declare const TaskCreateTool: {
25
- name: string;
26
- description(): string;
27
- inputSchema: z.ZodObject<{
28
- subject: z.ZodString;
29
- description: z.ZodString;
30
- activeForm: z.ZodOptional<z.ZodString>;
31
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
32
- }, "strict", z.ZodTypeAny, {
33
- subject: string;
34
- description: string;
35
- activeForm?: string | undefined;
36
- metadata?: Record<string, unknown> | undefined;
37
- }, {
38
- subject: string;
39
- description: string;
40
- activeForm?: string | undefined;
41
- metadata?: Record<string, unknown> | undefined;
42
- }>;
43
- isReadOnly(): false;
44
- canRunConcurrently(): true;
45
- genResultForAssistant(data: Out): string;
46
- getDisplayTitle(input: any): string;
47
- call({ subject, description, activeForm, metadata }: z.infer<typeof inputSchema>, agentContext: any): AsyncGenerator<{
48
- type: "result";
49
- data: Out;
50
- resultForAssistant: string;
51
- }, void, unknown>;
52
- };
53
- export {};
54
- //# sourceMappingURL=TaskCreate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TaskCreate.d.ts","sourceRoot":"","sources":["../../../src/tools/TaskCreate/TaskCreate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;EAKf,CAAA;AAEF,KAAK,GAAG,GAAG;IAAE,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAA;AAEpD,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;gCAYG,GAAG;2BAGR,GAAG;yDAIwB,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,gBAC7D,GAAG;;;;;CAsBoB,CAAA"}