tianxincode 1.0.48 → 1.0.49

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 (298) hide show
  1. package/README.md +200 -200
  2. package/dist/cli/commands.js +18 -18
  3. package/dist/core/ai/agents/caller/prompts/role.txt +50 -50
  4. package/dist/core/ai/agents/chat/chat.agent.js +30 -30
  5. package/dist/core/ai/agents/chat/prompts/role.txt +30 -30
  6. package/dist/core/ai/agents/code/code.agent.js +6 -6
  7. package/dist/core/ai/agents/code/prompts/role.txt +50 -50
  8. package/dist/core/ai/agents/common/prompt/role.txt +51 -51
  9. package/dist/core/ai/agents/common/prompts.js +26 -26
  10. package/dist/core/ai/agents/design/design.agent.js +6 -6
  11. package/dist/core/ai/agents/design/prompts/role.txt +36 -36
  12. package/dist/core/ai/agents/dream/prompts/init.txt +20 -20
  13. package/dist/core/ai/agents/mem/mem.agent.js +5 -5
  14. package/dist/core/ai/agents/mem/prompts/role.txt +35 -35
  15. package/dist/core/ai/agents/skill/prompts/role.txt +61 -61
  16. package/dist/core/ai/agents/skill/skill.agent.js +26 -26
  17. package/dist/core/ai/agents/summarizer/prompts/role.txt +30 -30
  18. package/dist/core/ai/agents/task/prompts/role.txt +50 -50
  19. package/dist/core/ai/agents/task/task.agent.js +30 -30
  20. package/dist/core/db/db.service.d.ts.map +1 -1
  21. package/dist/core/db/db.service.js +2 -0
  22. package/dist/core/db/db.service.js.map +1 -1
  23. package/dist/core/db/init_sql/ai_log.init.js +15 -15
  24. package/dist/core/db/init_sql/code_snippet.init.js +11 -11
  25. package/dist/core/db/init_sql/config.init.js +15 -15
  26. package/dist/core/db/init_sql/custom_action.init.js +10 -10
  27. package/dist/core/db/init_sql/dingding.init.js +9 -9
  28. package/dist/core/db/init_sql/email.init.js +14 -14
  29. package/dist/core/db/init_sql/lsp.init.js +8 -8
  30. package/dist/core/db/init_sql/message_file.init.js +11 -11
  31. package/dist/core/db/init_sql/project.init.js +20 -20
  32. package/dist/core/db/init_sql/provider.init.js +35 -35
  33. package/dist/core/db/init_sql/scheduler.init.js +32 -32
  34. package/dist/core/db/init_sql/session.init.js +23 -23
  35. package/dist/core/db/init_sql/spec.init.js +15 -15
  36. package/dist/core/db/init_sql/waf_gateway.init.js +9 -9
  37. package/dist/core/db/init_sql/zihao.init.js +11 -11
  38. package/dist/core/lsp/sql.js +11 -11
  39. package/dist/core/tools/provider/bash.txt +47 -47
  40. package/dist/core/tools/provider/code_search.txt +20 -20
  41. package/dist/core/tools/provider/edit_file.txt +13 -13
  42. package/dist/core/tools/provider/glob.txt +12 -12
  43. package/dist/core/tools/provider/grep.txt +14 -14
  44. package/dist/core/tools/provider/lsp.txt +19 -19
  45. package/dist/core/tools/provider/memory.txt +21 -21
  46. package/dist/core/tools/provider/read_file.txt +17 -17
  47. package/dist/core/tools/provider/todo_read.txt +16 -16
  48. package/dist/core/tools/provider/todo_write.txt +48 -48
  49. package/dist/core/tools/provider/web_fetch.txt +17 -17
  50. package/dist/core/tools/provider/web_search.txt +18 -18
  51. package/dist/core/tools/provider/write_file.txt +11 -11
  52. package/dist/gateway/api/skill/detail_skill.d.ts.map +1 -1
  53. package/dist/gateway/api/skill/detail_skill.js +7 -5
  54. package/dist/gateway/api/skill/detail_skill.js.map +1 -1
  55. package/dist/gateway/cli/commands.js +18 -18
  56. package/dist/modules/ai/agents/chat/prompts/role.txt +30 -30
  57. package/dist/modules/ai/agents/code/prompts/role.txt +50 -50
  58. package/dist/modules/ai/agents/mem/prompts/role.txt +35 -35
  59. package/dist/modules/ai/agents/skill/prompts/role.txt +61 -61
  60. package/dist/modules/ai/agents/task/prompts/role.txt +50 -50
  61. package/dist/modules/ai/ai-log.service.js +10 -10
  62. package/dist/modules/ai/provider/openai/prompt/role.txt +51 -51
  63. package/dist/modules/ai/summarizer/summarizer.prompts.js +30 -30
  64. package/dist/modules/config/config.service.js +5 -5
  65. package/dist/modules/db/db.service.js +252 -252
  66. package/dist/modules/email/email.config.repository.js +1 -1
  67. package/dist/modules/repositories/project.repository.d.ts +28 -0
  68. package/dist/modules/repositories/project.repository.d.ts.map +1 -0
  69. package/dist/modules/repositories/project.repository.js +47 -0
  70. package/dist/modules/repositories/project.repository.js.map +1 -0
  71. package/dist/modules/scheduler/task-log.service.js +1 -1
  72. package/dist/modules/services/project/project.service.d.ts +14 -0
  73. package/dist/modules/services/project/project.service.d.ts.map +1 -0
  74. package/dist/modules/services/project/project.service.js +47 -0
  75. package/dist/modules/services/project/project.service.js.map +1 -0
  76. package/dist/modules/skill/skill.txt +36 -36
  77. package/dist/modules/spec/spec.injector.js +24 -24
  78. package/dist/modules/tools/provider/bash.txt +47 -47
  79. package/dist/modules/tools/provider/code_search.txt +20 -20
  80. package/dist/modules/tools/provider/edit_file.txt +13 -13
  81. package/dist/modules/tools/provider/glob.txt +12 -12
  82. package/dist/modules/tools/provider/grep.txt +14 -14
  83. package/dist/modules/tools/provider/lsp.txt +19 -19
  84. package/dist/modules/tools/provider/memory.txt +21 -21
  85. package/dist/modules/tools/provider/read_file.txt +17 -17
  86. package/dist/modules/tools/provider/todo_read.txt +16 -16
  87. package/dist/modules/tools/provider/todo_write.txt +48 -48
  88. package/dist/modules/tools/provider/web_fetch.txt +17 -17
  89. package/dist/modules/tools/provider/web_search.txt +18 -18
  90. package/dist/modules/tools/provider/write_file.txt +11 -11
  91. package/dist/modules/waf-gateway/waf-gateway.module.js +8 -8
  92. package/dist/modules/waf-gateway/waf-gateway.service.js +12 -12
  93. package/dist/repositories/project.repository.d.ts +28 -0
  94. package/dist/repositories/project.repository.d.ts.map +1 -0
  95. package/dist/repositories/project.repository.js +47 -0
  96. package/dist/repositories/project.repository.js.map +1 -0
  97. package/dist/repository/ai_log.repository.js +1 -1
  98. package/dist/repository/config.repository.js +5 -5
  99. package/dist/repository/email.repository.js +1 -1
  100. package/dist/repository/memory.repository.js +1 -1
  101. package/dist/repository/project.repository.js +3 -3
  102. package/dist/repository/scheduler.repository.js +2 -2
  103. package/dist/repository/session.repository.js +1 -1
  104. package/dist/repository/zihao-config.repository.js +1 -1
  105. package/dist/services/skill/skill.tool.d.ts.map +1 -1
  106. package/dist/services/skill/skill.tool.js +6 -1
  107. package/dist/services/skill/skill.tool.js.map +1 -1
  108. package/dist/services/skill/skill.txt +36 -36
  109. package/package.json +76 -76
  110. package/scripts/copy-txt.js +31 -31
  111. package/scripts/ink-scroll-demo.tsx +147 -147
  112. package/tsconfig.test.json +9 -9
  113. package/web/dist/assets/{ConfirmDialog-B2bVsPFI.js → ConfirmDialog-B03GcCHQ.js} +1 -1
  114. package/web/dist/assets/PcLayout-CYW3zqcs.css +1 -0
  115. package/web/dist/assets/{PcLayout-DeXNBHu2.js → PcLayout-ZTdJNg7G.js} +1 -1
  116. package/web/dist/assets/{aiLogsView-JvjhLmyo.js → aiLogsView-Bt8Xg1Qx.js} +1 -1
  117. package/web/dist/assets/{cssMode-sYHhwUZh.js → cssMode-CBb6D87U.js} +1 -1
  118. package/web/dist/assets/{customActionsView-Cvmzxvl4.js → customActionsView-DdjnHzwm.js} +1 -1
  119. package/web/dist/assets/deployView-CD7ji9IS.css +1 -0
  120. package/web/dist/assets/{deployView-CjV4ySrf.js → deployView-Cj51_Job.js} +1 -1
  121. package/web/dist/assets/designView-C3pSX4nP.css +1 -0
  122. package/web/dist/assets/designView-RT8tKEN9.js +18 -0
  123. package/web/dist/assets/devWorkflowView-BTozmaiN.js +36 -0
  124. package/web/dist/assets/devWorkflowView-DYhIfbCB.css +1 -0
  125. package/web/dist/assets/devWorkflowViewApp-CErbhC2s.css +1 -0
  126. package/web/dist/assets/{devWorkflowViewApp-DPlFgiS_.js → devWorkflowViewApp-DLslXEq9.js} +3 -3
  127. package/web/dist/assets/{fileZihao-DvZmuTYu.js → fileZihao-CtZ4bUIH.js} +1 -1
  128. package/web/dist/assets/{freemarker2-DTyAQBBj.js → freemarker2-CX3jc3l2.js} +1 -1
  129. package/web/dist/assets/gitChanges-D6QxPcii.css +1 -0
  130. package/web/dist/assets/{gitChanges-Cpf4HHoF.js → gitChanges-DFRvzL5I.js} +1 -1
  131. package/web/dist/assets/gitChangesApp-Bjn-MCmr.css +1 -0
  132. package/web/dist/assets/{gitChangesApp-BOURDd_l.js → gitChangesApp-ZI7-V8oB.js} +2 -2
  133. package/web/dist/assets/{handlebars-DiWIXxOG.js → handlebars-CTaQD6FN.js} +1 -1
  134. package/web/dist/assets/{html-BCQWkFzH.js → html-BruJsfYv.js} +1 -1
  135. package/web/dist/assets/{htmlMode-BbMA34cR.js → htmlMode-wewroXLr.js} +1 -1
  136. package/web/dist/assets/{index-C_tz4Wda.css → index-C0xmVTIn.css} +1 -1
  137. package/web/dist/assets/{index-C7axH05o.js → index-Cn73hS12.js} +9 -9
  138. package/web/dist/assets/{javascript-By4MYHaO.js → javascript-B4ku8P1-.js} +1 -1
  139. package/web/dist/assets/{jsonMode-5JIz7tDN.js → jsonMode-BIvVuBMG.js} +1 -1
  140. package/web/dist/assets/{liquid-BQBVii4f.js → liquid-Bo3G0Ep7.js} +1 -1
  141. package/web/dist/assets/{mdx-Cwk7nqzM.js → mdx-Duv0ylZz.js} +1 -1
  142. package/web/dist/assets/{mediaChat-DivTDoIv.js → mediaChat-RT7iqqYb.js} +1 -1
  143. package/web/dist/assets/{python-L_kGfe1T.js → python-CEhCctGm.js} +1 -1
  144. package/web/dist/assets/{razor-XGuHliMI.js → razor-DPK8nTD7.js} +1 -1
  145. package/web/dist/assets/{taskView-BcJ3LAxp.js → taskView-sOyebRqn.js} +1 -1
  146. package/web/dist/assets/{terminalView-q-UKzK0M.js → terminalView-GTYtDlus.js} +2 -2
  147. package/web/dist/assets/{terminalView-CQVYh6D3.css → terminalView-eZ0agsPP.css} +1 -1
  148. package/web/dist/assets/{tsMode-SuiD3mJa.js → tsMode-BZvUU1nf.js} +1 -1
  149. package/web/dist/assets/{typescript-DJcyqRjT.js → typescript-CmEn-k1B.js} +1 -1
  150. package/web/dist/assets/{wikiView-ygHSGyPp.css → wikiView-C-oqMnJM.css} +1 -1
  151. package/web/dist/assets/{wikiView-B3GIPUlD.js → wikiView-CRjg-cZ8.js} +1 -1
  152. package/web/dist/assets/{xml-DQgCzk55.js → xml-bjvdKeyy.js} +1 -1
  153. package/web/dist/assets/{yaml-DBdEYBPA.js → yaml-N5RXWxJk.js} +1 -1
  154. package/web/dist/index.html +2 -2
  155. package/web/package.json +28 -28
  156. package/dist/modules/ai/react/index.d.ts +0 -5
  157. package/dist/modules/ai/react/index.d.ts.map +0 -1
  158. package/dist/modules/ai/react/index.js +0 -4
  159. package/dist/modules/ai/react/index.js.map +0 -1
  160. package/dist/modules/ai/react/prompt/role.txt +0 -51
  161. package/dist/modules/ai/react/provider.parser.d.ts +0 -20
  162. package/dist/modules/ai/react/provider.parser.d.ts.map +0 -1
  163. package/dist/modules/ai/react/provider.parser.js +0 -88
  164. package/dist/modules/ai/react/provider.parser.js.map +0 -1
  165. package/dist/modules/ai/react/react.parser.d.ts +0 -80
  166. package/dist/modules/ai/react/react.parser.d.ts.map +0 -1
  167. package/dist/modules/ai/react/react.parser.js +0 -365
  168. package/dist/modules/ai/react/react.parser.js.map +0 -1
  169. package/dist/modules/ai/react/react.prompts.d.ts +0 -26
  170. package/dist/modules/ai/react/react.prompts.d.ts.map +0 -1
  171. package/dist/modules/ai/react/react.prompts.js +0 -170
  172. package/dist/modules/ai/react/react.prompts.js.map +0 -1
  173. package/dist/modules/ai/react/react.types.d.ts +0 -50
  174. package/dist/modules/ai/react/react.types.d.ts.map +0 -1
  175. package/dist/modules/ai/react/react.types.js +0 -2
  176. package/dist/modules/ai/react/react.types.js.map +0 -1
  177. package/dist/modules/ai/react/react.validator.d.ts +0 -14
  178. package/dist/modules/ai/react/react.validator.d.ts.map +0 -1
  179. package/dist/modules/ai/react/react.validator.js +0 -53
  180. package/dist/modules/ai/react/react.validator.js.map +0 -1
  181. package/dist/modules/ai/react.agent.d.ts +0 -82
  182. package/dist/modules/ai/react.agent.d.ts.map +0 -1
  183. package/dist/modules/ai/react.agent.js +0 -220
  184. package/dist/modules/ai/react.agent.js.map +0 -1
  185. package/dist/modules/skill/skill.service.d.ts +0 -72
  186. package/dist/modules/skill/skill.service.d.ts.map +0 -1
  187. package/dist/modules/skill/skill.service.js +0 -283
  188. package/dist/modules/skill/skill.service.js.map +0 -1
  189. package/dist/modules/tools/builtin/bash.d.ts +0 -3
  190. package/dist/modules/tools/builtin/bash.d.ts.map +0 -1
  191. package/dist/modules/tools/builtin/bash.js +0 -126
  192. package/dist/modules/tools/builtin/bash.js.map +0 -1
  193. package/dist/modules/tools/builtin/bash.tool.d.ts +0 -6
  194. package/dist/modules/tools/builtin/bash.tool.d.ts.map +0 -1
  195. package/dist/modules/tools/builtin/bash.tool.js +0 -52
  196. package/dist/modules/tools/builtin/bash.tool.js.map +0 -1
  197. package/dist/modules/tools/builtin/bash.txt +0 -69
  198. package/dist/modules/tools/builtin/code_search.d.ts +0 -3
  199. package/dist/modules/tools/builtin/code_search.d.ts.map +0 -1
  200. package/dist/modules/tools/builtin/code_search.js +0 -86
  201. package/dist/modules/tools/builtin/code_search.js.map +0 -1
  202. package/dist/modules/tools/builtin/code_search.txt +0 -41
  203. package/dist/modules/tools/builtin/edit-file.tool.d.ts +0 -6
  204. package/dist/modules/tools/builtin/edit-file.tool.d.ts.map +0 -1
  205. package/dist/modules/tools/builtin/edit-file.tool.js +0 -58
  206. package/dist/modules/tools/builtin/edit-file.tool.js.map +0 -1
  207. package/dist/modules/tools/builtin/edit_file.d.ts +0 -3
  208. package/dist/modules/tools/builtin/edit_file.d.ts.map +0 -1
  209. package/dist/modules/tools/builtin/edit_file.js +0 -105
  210. package/dist/modules/tools/builtin/edit_file.js.map +0 -1
  211. package/dist/modules/tools/builtin/edit_file.txt +0 -61
  212. package/dist/modules/tools/builtin/glob.d.ts +0 -3
  213. package/dist/modules/tools/builtin/glob.d.ts.map +0 -1
  214. package/dist/modules/tools/builtin/glob.js +0 -85
  215. package/dist/modules/tools/builtin/glob.js.map +0 -1
  216. package/dist/modules/tools/builtin/glob.tool.d.ts +0 -6
  217. package/dist/modules/tools/builtin/glob.tool.d.ts.map +0 -1
  218. package/dist/modules/tools/builtin/glob.tool.js +0 -81
  219. package/dist/modules/tools/builtin/glob.tool.js.map +0 -1
  220. package/dist/modules/tools/builtin/glob.txt +0 -33
  221. package/dist/modules/tools/builtin/grep.d.ts +0 -3
  222. package/dist/modules/tools/builtin/grep.d.ts.map +0 -1
  223. package/dist/modules/tools/builtin/grep.js +0 -94
  224. package/dist/modules/tools/builtin/grep.js.map +0 -1
  225. package/dist/modules/tools/builtin/grep.tool.d.ts +0 -6
  226. package/dist/modules/tools/builtin/grep.tool.d.ts.map +0 -1
  227. package/dist/modules/tools/builtin/grep.tool.js +0 -96
  228. package/dist/modules/tools/builtin/grep.tool.js.map +0 -1
  229. package/dist/modules/tools/builtin/grep.txt +0 -37
  230. package/dist/modules/tools/builtin/index.d.ts +0 -8
  231. package/dist/modules/tools/builtin/index.d.ts.map +0 -1
  232. package/dist/modules/tools/builtin/index.js +0 -80
  233. package/dist/modules/tools/builtin/index.js.map +0 -1
  234. package/dist/modules/tools/builtin/lsp.d.ts +0 -7
  235. package/dist/modules/tools/builtin/lsp.d.ts.map +0 -1
  236. package/dist/modules/tools/builtin/lsp.js +0 -126
  237. package/dist/modules/tools/builtin/lsp.js.map +0 -1
  238. package/dist/modules/tools/builtin/lsp.txt +0 -45
  239. package/dist/modules/tools/builtin/memory.d.ts +0 -3
  240. package/dist/modules/tools/builtin/memory.d.ts.map +0 -1
  241. package/dist/modules/tools/builtin/memory.js +0 -77
  242. package/dist/modules/tools/builtin/memory.js.map +0 -1
  243. package/dist/modules/tools/builtin/memory.txt +0 -58
  244. package/dist/modules/tools/builtin/read-file.tool.d.ts +0 -6
  245. package/dist/modules/tools/builtin/read-file.tool.d.ts.map +0 -1
  246. package/dist/modules/tools/builtin/read-file.tool.js +0 -46
  247. package/dist/modules/tools/builtin/read-file.tool.js.map +0 -1
  248. package/dist/modules/tools/builtin/read_file.d.ts +0 -3
  249. package/dist/modules/tools/builtin/read_file.d.ts.map +0 -1
  250. package/dist/modules/tools/builtin/read_file.js +0 -107
  251. package/dist/modules/tools/builtin/read_file.js.map +0 -1
  252. package/dist/modules/tools/builtin/read_file.txt +0 -38
  253. package/dist/modules/tools/builtin/todo_read.d.ts +0 -6
  254. package/dist/modules/tools/builtin/todo_read.d.ts.map +0 -1
  255. package/dist/modules/tools/builtin/todo_read.js +0 -25
  256. package/dist/modules/tools/builtin/todo_read.js.map +0 -1
  257. package/dist/modules/tools/builtin/todo_read.txt +0 -34
  258. package/dist/modules/tools/builtin/todo_write.d.ts +0 -6
  259. package/dist/modules/tools/builtin/todo_write.d.ts.map +0 -1
  260. package/dist/modules/tools/builtin/todo_write.js +0 -46
  261. package/dist/modules/tools/builtin/todo_write.js.map +0 -1
  262. package/dist/modules/tools/builtin/todo_write.txt +0 -67
  263. package/dist/modules/tools/builtin/web_fetch.d.ts +0 -3
  264. package/dist/modules/tools/builtin/web_fetch.d.ts.map +0 -1
  265. package/dist/modules/tools/builtin/web_fetch.js +0 -52
  266. package/dist/modules/tools/builtin/web_fetch.js.map +0 -1
  267. package/dist/modules/tools/builtin/web_fetch.txt +0 -38
  268. package/dist/modules/tools/builtin/web_search.d.ts +0 -3
  269. package/dist/modules/tools/builtin/web_search.d.ts.map +0 -1
  270. package/dist/modules/tools/builtin/web_search.js +0 -100
  271. package/dist/modules/tools/builtin/web_search.js.map +0 -1
  272. package/dist/modules/tools/builtin/web_search.txt +0 -43
  273. package/dist/modules/tools/builtin/write-file.tool.d.ts +0 -6
  274. package/dist/modules/tools/builtin/write-file.tool.d.ts.map +0 -1
  275. package/dist/modules/tools/builtin/write-file.tool.js +0 -38
  276. package/dist/modules/tools/builtin/write-file.tool.js.map +0 -1
  277. package/dist/modules/tools/builtin/write_file.d.ts +0 -3
  278. package/dist/modules/tools/builtin/write_file.d.ts.map +0 -1
  279. package/dist/modules/tools/builtin/write_file.js +0 -61
  280. package/dist/modules/tools/builtin/write_file.js.map +0 -1
  281. package/dist/modules/tools/builtin/write_file.txt +0 -58
  282. package/dist/modules/tools/provider/openai/tools.d.ts +0 -3
  283. package/dist/modules/tools/provider/openai/tools.d.ts.map +0 -1
  284. package/dist/modules/tools/provider/openai/tools.js +0 -212
  285. package/dist/modules/tools/provider/openai/tools.js.map +0 -1
  286. package/dist/modules/tools/provider/skill.d.ts +0 -6
  287. package/dist/modules/tools/provider/skill.d.ts.map +0 -1
  288. package/dist/modules/tools/provider/skill.js +0 -64
  289. package/dist/modules/tools/provider/skill.js.map +0 -1
  290. package/web/dist/assets/PcLayout-L-XuK1oQ.css +0 -1
  291. package/web/dist/assets/deployView-hCh3_M8H.css +0 -1
  292. package/web/dist/assets/designView-CqZ75hOS.css +0 -1
  293. package/web/dist/assets/designView-DrUNRVEE.js +0 -18
  294. package/web/dist/assets/devWorkflowView-BpdJTMEb.js +0 -36
  295. package/web/dist/assets/devWorkflowView-D7EKjoLj.css +0 -1
  296. package/web/dist/assets/devWorkflowViewApp-BYYMIdCm.css +0 -1
  297. package/web/dist/assets/gitChanges-BYj-Y2K-.css +0 -1
  298. package/web/dist/assets/gitChangesApp-Btw-XKcP.css +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"grep.js","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/grep.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * 内容搜索工具(Grep)
3
- */
4
- import { Tool } from '../tool.types.js';
5
- export declare const grepTool: Tool;
6
- //# sourceMappingURL=grep.tool.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"grep.tool.d.ts","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/grep.tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AA0ExC,eAAO,MAAM,QAAQ,EAAE,IAyCtB,CAAC"}
@@ -1,96 +0,0 @@
1
- /**
2
- * 内容搜索工具(Grep)
3
- */
4
- import * as fs from 'fs';
5
- import * as path from 'path';
6
- function grep(pattern, dir, filePattern) {
7
- const results = [];
8
- const regex = new RegExp(pattern, 'g');
9
- const ignore = ['node_modules', '.git', 'dist', 'build', '.next', 'coverage'];
10
- const maxResults = 100;
11
- const walk = (currentDir) => {
12
- if (results.length >= maxResults)
13
- return;
14
- const entries = fs.readdirSync(currentDir, { withFileTypes: true });
15
- for (const entry of entries) {
16
- if (results.length >= maxResults)
17
- break;
18
- if (entry.isDirectory()) {
19
- if (!ignore.includes(entry.name)) {
20
- walk(path.join(currentDir, entry.name));
21
- }
22
- }
23
- else {
24
- const fullPath = path.join(currentDir, entry.name);
25
- const relativePath = path.relative(dir, fullPath);
26
- if (filePattern && !matchGlob(filePattern, relativePath)) {
27
- continue;
28
- }
29
- try {
30
- const content = fs.readFileSync(fullPath, 'utf-8');
31
- const lines = content.split('\n');
32
- for (let i = 0; i < lines.length && results.length < maxResults; i++) {
33
- if (regex.test(lines[i])) {
34
- results.push({
35
- file: relativePath,
36
- line: i + 1,
37
- content: lines[i].trim().slice(0, 200),
38
- });
39
- }
40
- }
41
- }
42
- catch { }
43
- }
44
- }
45
- };
46
- walk(dir);
47
- return results;
48
- }
49
- function matchGlob(pattern, filePath) {
50
- const regex = new RegExp('^' + pattern
51
- .replace(/\*\*/g, '<<DOUBLESTAR>>')
52
- .replace(/\*/g, '[^/]*')
53
- .replace(/<<DOUBLESTAR>>/g, '.*')
54
- .replace(/\?/g, '[^/]')
55
- .replace(/\./g, '\\.')
56
- .replace(/\\/g, '/')
57
- + '$');
58
- return regex.test(filePath.replace(/\\/g, '/'));
59
- }
60
- export const grepTool = {
61
- name: 'search_content',
62
- description: '在文件中搜索正则表达式模式。返回匹配的文件名和行号。',
63
- parameters: {
64
- type: 'object',
65
- properties: {
66
- pattern: {
67
- type: 'string',
68
- description: '正则表达式模式',
69
- },
70
- directory: {
71
- type: 'string',
72
- description: '搜索目录(可选)',
73
- },
74
- include: {
75
- type: 'string',
76
- description: '文件模式过滤(可选,如 "*.ts")',
77
- },
78
- },
79
- required: ['pattern'],
80
- },
81
- execute: async (params) => {
82
- const { pattern, directory = process.cwd(), include } = params;
83
- try {
84
- const results = grep(pattern, directory, include);
85
- if (results.length === 0) {
86
- return `未找到匹配: ${pattern}`;
87
- }
88
- const output = results.map(r => `${r.file}:${r.line}: ${r.content}`).join('\n');
89
- return `找到 ${results.length} 处匹配:\n${output}`;
90
- }
91
- catch (error) {
92
- return `错误: ${error instanceof Error ? error.message : String(error)}`;
93
- }
94
- },
95
- };
96
- //# sourceMappingURL=grep.tool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"grep.tool.js","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/grep.tool.ts"],"names":[],"mappings":"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"}
@@ -1,37 +0,0 @@
1
- ### 工具grep
2
- 快速的内容搜索工具,适用于任何规模的代码库。
3
-
4
- **功能**:
5
- - 使用正则表达式搜索文件内容
6
- - 支持完整正则语法(如 "log.*Error", "function\s+\w+" 等)
7
- - 用 `include` 参数按文件模式过滤(如 "*.js", "*.{ts,tsx}")
8
- - 返回有匹配的文件路径和行号,按修改时间排序
9
- - 当你需要查找包含特定模式的文件时使用此工具
10
-
11
- **注意**:
12
- - 如果需要识别/统计文件中的匹配数量,直接用 Bash 工具运行 `rg` (ripgrep),**不要**用 Grep
13
- - 当你需要可能需要多轮搜索的开放式搜索时,使用 Task 工具
14
-
15
- 举例:
16
- ```xml
17
- <react>
18
- <thought>搜索包含 "executeCommand" 的 TypeScript 文件</thought>
19
- <action>
20
- <action_name>grep</action_name>
21
- <action_input>
22
- <pattern>executeCommand</pattern>
23
- <directory>E:\ai\txcode\src</directory>
24
- <include>*.ts</include>
25
- </action_input>
26
- </action>
27
- <keep_context>true</keep_context>
28
- </react>
29
- ```
30
-
31
- 参数说明:
32
-
33
- | 字段 | 类型 | 说明 |
34
- |------|------|
35
- | `pattern` | string | 正则表达式模式 |
36
- | `directory` | string | 搜索目录(可选) |
37
- | `include` | string | 文件模式过滤(可选,如 "*.ts") |
@@ -1,8 +0,0 @@
1
- /**
2
- * 内置工具导出
3
- */
4
- import { Tool } from '../tool.types.js';
5
- export declare function getBuiltinTools(): Promise<Tool[]>;
6
- export declare function getBuiltinToolsInstance(): Promise<Tool[]>;
7
- export declare const builtinTools: Tool[];
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAoDvC,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAkBvD;AAID,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,CAK/D;AAED,eAAO,MAAM,YAAY,EAAE,IAAI,EAAO,CAAA"}
@@ -1,80 +0,0 @@
1
- /**
2
- * 内置工具导出
3
- */
4
- import { bashTool } from './bash.js';
5
- import { readFileTool } from './read_file.js';
6
- import { writeFileTool } from './write_file.js';
7
- import { editFileTool } from './edit_file.js';
8
- import { globTool } from './glob.js';
9
- import { grepTool } from './grep.js';
10
- import { todoReadTool } from './todo_read.js';
11
- import { todoWriteTool } from './todo_write.js';
12
- import { lspTool } from './lsp.js';
13
- import { webSearchTool } from './web_search.js';
14
- import { webFetchTool } from './web_fetch.js';
15
- import { codeSearchTool } from './code_search.js';
16
- import { memoryTool } from './memory.js';
17
- import { skillTool } from '../../skill/skill.tool.js';
18
- import fs from 'fs/promises';
19
- import path from 'path';
20
- import { fileURLToPath } from 'url';
21
- const __filename = fileURLToPath(import.meta.url);
22
- const DESCRIPTIONS_DIR = path.dirname(__filename);
23
- async function loadDescription(filePath) {
24
- try {
25
- return await fs.readFile(filePath, 'utf-8');
26
- }
27
- catch {
28
- return '';
29
- }
30
- }
31
- async function withDescriptions(tools) {
32
- const results = [];
33
- for (const tool of tools) {
34
- if (tool.descriptionFile) {
35
- let descPath;
36
- if (tool.name === 'skill') {
37
- descPath = path.join(DESCRIPTIONS_DIR, '..', '..', 'skill', 'skill.txt');
38
- }
39
- else {
40
- descPath = path.isAbsolute(tool.descriptionFile)
41
- ? tool.descriptionFile
42
- : path.join(DESCRIPTIONS_DIR, tool.descriptionFile);
43
- }
44
- const desc = await loadDescription(descPath);
45
- results.push({ ...tool, description: desc });
46
- }
47
- else {
48
- results.push(tool);
49
- }
50
- }
51
- return results;
52
- }
53
- export async function getBuiltinTools() {
54
- const tools = [
55
- bashTool,
56
- readFileTool,
57
- writeFileTool,
58
- editFileTool,
59
- globTool,
60
- grepTool,
61
- todoReadTool,
62
- todoWriteTool,
63
- lspTool,
64
- webSearchTool,
65
- webFetchTool,
66
- codeSearchTool,
67
- memoryTool,
68
- skillTool,
69
- ];
70
- return withDescriptions(tools);
71
- }
72
- let _builtinTools = null;
73
- export async function getBuiltinToolsInstance() {
74
- if (!_builtinTools) {
75
- _builtinTools = await getBuiltinTools();
76
- }
77
- return _builtinTools;
78
- }
79
- export const builtinTools = [];
80
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAErD,OAAO,EAAE,MAAM,aAAa,CAAA;AAC5B,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAEnC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;AAEjD,KAAK,UAAU,eAAe,CAAC,QAAgB;IAC7C,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,KAAa;IAC3C,MAAM,OAAO,GAAW,EAAE,CAAA;IAC1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,QAAgB,CAAA;YACpB,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC1B,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,CAAC,CAAA;YAC1E,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC;oBAC9C,CAAC,CAAC,IAAI,CAAC,eAAe;oBACtB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAA;YACvD,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAA;YAC5C,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;QAC9C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,KAAK,GAAG;QACZ,QAAQ;QACR,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,QAAQ;QACR,QAAQ;QACR,YAAY;QACZ,aAAa;QACb,OAAO;QACP,aAAa;QACb,YAAY;QACZ,cAAc;QACd,UAAU;QACV,SAAS;KACV,CAAA;IACD,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAA;AAChC,CAAC;AAED,IAAI,aAAa,GAAkB,IAAI,CAAA;AAEvC,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,MAAM,eAAe,EAAE,CAAA;IACzC,CAAC;IACD,OAAO,aAAa,CAAA;AACtB,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAW,EAAE,CAAA"}
@@ -1,7 +0,0 @@
1
- /**
2
- * LSP (Language Server Protocol) 工具
3
- */
4
- import { Tool } from '../tool.types.js';
5
- declare const lspTool: Tool;
6
- export { lspTool };
7
- //# sourceMappingURL=lsp.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lsp.d.ts","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/lsp.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,IAAI,EAA2B,MAAM,kBAAkB,CAAA;AAGhE,QAAA,MAAM,OAAO,EAAE,IA6Id,CAAA;AAED,OAAO,EAAE,OAAO,EAAE,CAAA"}
@@ -1,126 +0,0 @@
1
- /**
2
- * LSP (Language Server Protocol) 工具
3
- */
4
- import * as path from "path";
5
- import { LSPManager, LSPClient, getServersByExtension } from "../../../lsp/index.js";
6
- const lspTool = {
7
- name: "lsp",
8
- description: '',
9
- descriptionFile: 'lsp.txt',
10
- parameters: {
11
- type: "object",
12
- properties: {
13
- action: {
14
- type: "string",
15
- enum: [
16
- "gotoDefinition",
17
- "findReferences",
18
- "hover",
19
- "documentSymbol",
20
- "workspaceSymbol",
21
- "gotoImplementation",
22
- "callHierarchy",
23
- ],
24
- description: "要执行的 LSP 操作",
25
- },
26
- filePath: {
27
- type: "string",
28
- description: "文件路径(gotoDefinition, findReferences, hover, documentSymbol, gotoImplementation, callHierarchy 操作需要)",
29
- },
30
- line: {
31
- type: "number",
32
- description: "行号(1-indexed,用于 gotoDefinition, findReferences, hover, gotoImplementation, callHierarchy)",
33
- },
34
- character: {
35
- type: "number",
36
- description: "字符位置(0-indexed,用于 gotoDefinition, findReferences, hover, gotoImplementation, callHierarchy)",
37
- },
38
- query: {
39
- type: "string",
40
- description: "搜索查询(workspaceSymbol 操作需要)",
41
- },
42
- },
43
- required: ["action"],
44
- },
45
- execute: async (params, context) => {
46
- const { action, filePath, line, character, query } = params;
47
- if (!filePath && action !== "workspaceSymbol") {
48
- return { success: false, output: '', error: "filePath is required for this action" };
49
- }
50
- const ext = path.extname(filePath || "");
51
- const servers = getServersByExtension(ext);
52
- if (servers.length === 0) {
53
- return { success: false, output: '', error: `No LSP server found for extension: ${ext}` };
54
- }
55
- const serverId = servers[0].id;
56
- const status = await LSPManager.getServerStatus(serverId);
57
- if (status.status !== "running") {
58
- return { success: false, output: '', error: `LSP server ${serverId} is not running` };
59
- }
60
- const client = new LSPClient(serverId);
61
- const uri = `file://${path.resolve(filePath || "")}`;
62
- try {
63
- let result;
64
- switch (action) {
65
- case "gotoDefinition": {
66
- result = await client.gotoDefinition(uri, {
67
- line: (line || 1) - 1,
68
- character: character || 0,
69
- });
70
- break;
71
- }
72
- case "findReferences": {
73
- result = await client.findReferences(uri, {
74
- line: (line || 1) - 1,
75
- character: character || 0,
76
- });
77
- break;
78
- }
79
- case "hover": {
80
- result = await client.hover(uri, {
81
- line: (line || 1) - 1,
82
- character: character || 0,
83
- });
84
- break;
85
- }
86
- case "documentSymbol": {
87
- result = await client.documentSymbol(uri);
88
- break;
89
- }
90
- case "workspaceSymbol": {
91
- if (!query) {
92
- return { success: false, output: '', error: "query is required for workspaceSymbol" };
93
- }
94
- result = await client.workspaceSymbol(query);
95
- break;
96
- }
97
- case "gotoImplementation": {
98
- result = await client.gotoImplementation(uri, {
99
- line: (line || 1) - 1,
100
- character: character || 0,
101
- });
102
- break;
103
- }
104
- case "callHierarchy": {
105
- result = await client.callHierarchy(uri, {
106
- line: (line || 1) - 1,
107
- character: character || 0,
108
- });
109
- break;
110
- }
111
- default:
112
- return { success: false, output: '', error: `Unknown action: ${action}` };
113
- }
114
- return {
115
- success: true,
116
- output: JSON.stringify(result, null, 2),
117
- metadata: { action, filePath, serverId }
118
- };
119
- }
120
- catch (err) {
121
- return { success: false, output: '', error: err.message };
122
- }
123
- }
124
- };
125
- export { lspTool };
126
- //# sourceMappingURL=lsp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lsp.js","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/lsp.ts"],"names":[],"mappings":"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"}
@@ -1,45 +0,0 @@
1
- ### 工具lsp
2
- 与语言服务器协议(LSP)服务器交互,获取代码智能功能。
3
-
4
- **支持的操作**:
5
- - gotoDefinition:查找符号定义位置
6
- - findReferences:查找符号的所有引用
7
- - hover:获取悬停信息(文档、类型信息)
8
- - documentSymbol:获取文档中的所有符号(函数、类、变量)
9
- - workspaceSymbol:在整个工作区搜索符号
10
- - gotoImplementation:查找接口或抽象方法的实现
11
- - callHierarchy:获取位置的调用层次结构项(函数/方法)
12
-
13
- **所有操作需要**:
14
- - `filePath`:要操作的文件
15
- - `line`:行号(从 1 开始,编辑器中显示的那样)
16
- - `character`:字符偏移(从 1 开始)
17
-
18
- **注意**:需要为文件类型配置 LSP 服务器。如果文件类型没有可用的服务器,返回错误。
19
-
20
- 举例:
21
- ```xml
22
- <react>
23
- <thought>查找 executeCommand 函数的定义位置</thought>
24
- <action>
25
- <action_name>lsp</action_name>
26
- <action_input>
27
- <action>gotoDefinition</action>
28
- <filePath>E:\ai\txcode\src\components\App.tsx</filePath>
29
- <line>42</line>
30
- <character>20</character>
31
- </action_input>
32
- </action>
33
- <keep_context>true</keep_context>
34
- </react>
35
- ```
36
-
37
- 参数说明:
38
-
39
- | 字段 | 类型 | 说明 |
40
- |------|------|
41
- | `action` | string | 要执行的 LSP 操作(必需):gotoDefinition, findReferences, hover, documentSymbol, workspaceSymbol, gotoImplementation, callHierarchy |
42
- | `filePath` | string | 文件路径(gotoDefinition, findReferences, hover, documentSymbol, gotoImplementation, callHierarchy 操作需要) |
43
- | `line` | number | 行号(1-indexed,用于 gotoDefinition, findReferences, hover, gotoImplementation, callHierarchy) |
44
- | `character` | number | 字符位置(0-indexed,用于 gotoDefinition, findReferences, hover, gotoImplementation, callHierarchy) |
45
- | `query` | string | 搜索查询(workspaceSymbol 操作需要) |
@@ -1,3 +0,0 @@
1
- import { Tool } from '../tool.types.js';
2
- export declare const memoryTool: Tool;
3
- //# sourceMappingURL=memory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/memory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAA2B,MAAM,kBAAkB,CAAA;AAmChE,eAAO,MAAM,UAAU,EAAE,IA6DxB,CAAA"}
@@ -1,77 +0,0 @@
1
- import fs from 'fs';
2
- import path from 'path';
3
- function parseMemoryFile(filePath, fileName) {
4
- const match = fileName.match(/^(\d{2})-(.+)\.md$/);
5
- if (!match)
6
- return null;
7
- const id = match[1];
8
- const name = match[2].replace(/-/g, ' ');
9
- const content = fs.readFileSync(filePath, 'utf-8');
10
- const frontMatterMatch = content.match(/^---\n([\s\S]*?)\n---/);
11
- let description = '';
12
- let updated = '';
13
- if (frontMatterMatch) {
14
- const frontMatter = frontMatterMatch[1];
15
- const descMatch = frontMatter.match(/description:\s*(.+)/);
16
- const updatedMatch = frontMatter.match(/updated:\s*(.+)/);
17
- if (descMatch)
18
- description = descMatch[1].trim();
19
- if (updatedMatch)
20
- updated = updatedMatch[1].trim();
21
- }
22
- return { id, name, description, updated, path: filePath };
23
- }
24
- export const memoryTool = {
25
- name: 'memory',
26
- description: '',
27
- descriptionFile: 'memory.txt',
28
- parameters: {
29
- type: 'object',
30
- properties: {},
31
- required: []
32
- },
33
- execute: async (params, context) => {
34
- const memoryDir = path.join(context.workDir || process.cwd(), '.txcode', 'memory');
35
- const dirExists = fs.existsSync(memoryDir);
36
- if (!dirExists) {
37
- return {
38
- success: true,
39
- output: '记忆列表 (共 0 个):\n\n暂无记忆,请使用 write_file 在 .txcode/memory/ 目录下创建第一个记忆文件。\n\n记忆文件命名格式: {序号}-{名称}.md,如 01-项目架构.md',
40
- metadata: { count: 0 }
41
- };
42
- }
43
- const files = fs.readdirSync(memoryDir)
44
- .filter(f => f.endsWith('.md'))
45
- .sort();
46
- const memories = [];
47
- for (const file of files) {
48
- const filePath = path.join(memoryDir, file);
49
- const info = parseMemoryFile(filePath, file);
50
- if (info) {
51
- memories.push(info);
52
- }
53
- }
54
- if (memories.length === 0) {
55
- return {
56
- success: true,
57
- output: '记忆列表 (共 0 个):\n\n暂无记忆,请使用 write_file 在 .txcode/memory/ 目录下创建第一个记忆文件。',
58
- metadata: { count: 0 }
59
- };
60
- }
61
- let output = `记忆列表 (共 ${memories.length} 个):\n`;
62
- const relativeBase = path.join('.txcode', 'memory');
63
- for (let i = 0; i < memories.length; i++) {
64
- const m = memories[i];
65
- const relPath = path.relative(context.workDir || process.cwd(), m.path);
66
- output += `\n${i + 1}. [${m.id}] ${m.name} - 描述:${m.description} - updated:${m.updated}`;
67
- output += `\n 路径: ${relPath}`;
68
- }
69
- output += `\n\n要读取记忆内容,请使用 read_file 工具读取上述路径。`;
70
- return {
71
- success: true,
72
- output,
73
- metadata: { count: memories.length, memories }
74
- };
75
- }
76
- };
77
- //# sourceMappingURL=memory.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/memory.ts"],"names":[],"mappings":"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"}
@@ -1,58 +0,0 @@
1
- ### 工具memory
2
- 获取项目的记忆列表。记忆用于记录项目的关键信息(架构、目录结构、核心模块、关键路径等),帮助 AI 快速了解项目并定位代码。
3
-
4
- **工作流顺序**:
5
- 1. 查看记忆 → 2. 了解项目 → 3. 解决问题 → 4. 评估是否更新 → 5. 维护记忆数量
6
-
7
- **一、查看记忆**
8
- - 参数: 无需参数,直接调用 memory 即可
9
- - 返回: 所有记忆的索引列表(序号、名称、描述、文件路径)
10
-
11
- **二、什么情况需要更新记忆**(满足任一即可):
12
- - 发现了项目的重要结构信息(如新的目录组织方式、核心模块划分)
13
- - 定位到了关键代码位置(如重要的工具函数、核心业务逻辑)
14
- - 遇到了项目特有的配置或约定(如特定的代码规范、构建配置)
15
- - 解决了复杂问题,学到了有价值的经验
16
- - 项目有新功能上线,涉及新的架构或路径
17
-
18
- **三、具体操作指令**:
19
-
20
- 1. **读取记忆**: 调用 memory 获取列表,然后用 read_file 读取具体内容
21
- 2. **新建记忆**: 使用 write_file 在 .txcode/memory/ 目录下创建文件
22
- - 命名格式: {序号}-{名称}.md,如 01-项目架构.md
23
- - 文件内容必须包含 YAML front matter:
24
- ```
25
- ---
26
- id: 01
27
- name: 记忆名称
28
- description: 一句话描述这个记忆记录什么
29
- updated: 2024-01-01
30
- ---
31
- ```
32
- 然后是正文内容
33
- 3. **修改记忆**: 使用 edit_file 编辑已有记忆文件,同时更新 updated 时间
34
- 4. **删除记忆**: 使用 bash 执行 rm 命令删除文件
35
-
36
- **四、数量限制**:
37
- - 最多 20 个记忆
38
- - 超过 20 个后只能修改已有记忆,不能新建
39
- - 删除记忆后需要重新整理序号,保持 01-20 连续
40
-
41
- 举例:
42
- ```xml
43
- <react>
44
- <thought>查看项目中已有的记忆</thought>
45
- <action>
46
- <action_name>memory</action_name>
47
- <action_input>
48
- </action_input>
49
- </action>
50
- <keep_context>true</keep_context>
51
- </react>
52
- ```
53
-
54
- 参数说明:
55
-
56
- | 字段 | 类型 | 说明 |
57
- |------|------|
58
- | (无) | - | 此工具不需要参数 |
@@ -1,6 +0,0 @@
1
- /**
2
- * 文件读取工具
3
- */
4
- import { Tool } from '../tool.types.js';
5
- export declare const readFileTool: Tool;
6
- //# sourceMappingURL=read-file.tool.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"read-file.tool.d.ts","sourceRoot":"","sources":["../../../../src/modules/tools/builtin/read-file.tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAExC,eAAO,MAAM,YAAY,EAAE,IA4C1B,CAAC"}