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
@@ -35,12 +35,12 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.parseFileReference = parseFileReference;
37
37
  exports.processFileReferences = processFileReferences;
38
- exports.hasFileReferences = hasFileReferences;
39
- exports.extractFileReferences = extractFileReferences;
40
38
  const file_1 = require("./file");
41
39
  const log_1 = require("./log");
42
- const prompt_1 = require("../tools/Read/prompt");
43
- const Read_1 = require("../tools/Read/Read");
40
+ const viewFile_1 = require("../prompt/tools/viewFile");
41
+ const ViewFile_1 = require("../tools/ViewFile");
42
+ const tool_1 = require("../prompt/tool");
43
+ const define_1 = require("../prompt/define");
44
44
  const cwd_1 = require("./cwd");
45
45
  const fs = __importStar(require("fs"));
46
46
  const path = __importStar(require("path"));
@@ -59,7 +59,7 @@ function parseFileReference(reference) {
59
59
  const colonIndex = cleanRef.lastIndexOf(':');
60
60
  if (colonIndex === -1) {
61
61
  // 没有行号,检查是否为目录
62
- const fullPath = (0, file_1.normalizeFilePath)(cleanRef);
62
+ const fullPath = (0, file_1.canonicalizeFilePath)(cleanRef);
63
63
  let isDirectory = false;
64
64
  try {
65
65
  const stats = fs.statSync(fullPath);
@@ -114,16 +114,15 @@ async function processDirectoryReference(fullPath, agentContext) {
114
114
  const systemReminders = [];
115
115
  const supplementaryInfo = [];
116
116
  // 获取 Bash 工具
117
- const bashTool = agentContext.tools.find((t) => t.name === 'Bash');
117
+ const bashTool = agentContext.tools.find((t) => t.name === tool_1.TOOL_NAME_RUN_SHELL);
118
118
  if (!bashTool) {
119
- (0, log_1.logWarn)('BashTool not found, cannot list directory contents');
119
+ (0, log_1.logWarn)(`${tool_1.TOOL_NAME_RUN_SHELL} tool not found, cannot list directory contents`);
120
120
  return { systemReminders, supplementaryInfo };
121
121
  }
122
- // 添加 Bash 工具调用的 system-reminder
123
122
  const bashToolCallInfo = `{"command":"ls \\"${fullPath}\\""}`;
124
123
  systemReminders.push({
125
124
  type: 'text',
126
- text: `<system-reminder>\nCalled the Bash tool with the following input: ${bashToolCallInfo}\n</system-reminder>`
125
+ text: `${define_1.REMINDER_SYS_OPEN}\nCalled the ${tool_1.TOOL_NAME_RUN_SHELL} tool with the following input: ${bashToolCallInfo}\n${define_1.REMINDER_SYS_CLOSE}`
127
126
  });
128
127
  // 调用 Bash 工具列出目录内容(覆盖 agentId 避免触发 chunk 事件)
129
128
  const bashGenerator = bashTool.call({
@@ -132,14 +131,14 @@ async function processDirectoryReference(fullPath, agentContext) {
132
131
  }, { ...agentContext, agentId: 'fileReference' });
133
132
  for await (const result of bashGenerator) {
134
133
  if (result.type === 'result') {
135
- // 添加目录列表结果的 system-reminder
136
134
  const content = result.resultForAssistant?.replace(/"/g, '\\"') || '';
137
135
  systemReminders.push({
138
136
  type: 'text',
139
- text: `<system-reminder>\nResult of calling the Bash tool: "${content}"\n</system-reminder>`
137
+ text: `${define_1.REMINDER_SYS_OPEN}\nResult of calling the ${tool_1.TOOL_NAME_RUN_SHELL} tool: "${content}"\n${define_1.REMINDER_SYS_CLOSE}`
140
138
  });
141
139
  // 添加补充信息
142
- const displayName = path.relative((0, cwd_1.getCwd)(), fullPath) || path.basename(fullPath);
140
+ const relativeName = path.relative((0, cwd_1.readInitialCwd)(), fullPath) || path.basename(fullPath);
141
+ const displayName = relativeName.endsWith('/') ? relativeName : `${relativeName}/`;
143
142
  supplementaryInfo.push({
144
143
  type: 'dir',
145
144
  name: displayName,
@@ -161,7 +160,7 @@ async function processSingleReference(match, agentContext, fileReadTool) {
161
160
  const referenceText = match[1]; // 去掉@的部分,如 index.js:13-17
162
161
  // 解析文件引用
163
162
  const parsed = parseFileReference(referenceText);
164
- const fullPath = (0, file_1.normalizeFilePath)(parsed.fileName);
163
+ const fullPath = (0, file_1.canonicalizeFilePath)(parsed.fileName);
165
164
  (0, log_1.logInfo)(`Processing file reference: ${fullReference} -> ${fullPath}${parsed.startLine ? `:${parsed.startLine}${parsed.endLine !== parsed.startLine ? `-${parsed.endLine}` : ''}` : ''}`);
166
165
  try {
167
166
  // 检查是否为目录引用
@@ -172,16 +171,16 @@ async function processSingleReference(match, agentContext, fileReadTool) {
172
171
  if (path.extname(fullPath).toLowerCase() === '.pdf') {
173
172
  systemReminders.push({
174
173
  type: 'text',
175
- text: `<system-reminder>\nPDF files can be read directly using the Read tool with optional page ranges (e.g., pages: "1-5"). Maximum 20 pages per request.\n</system-reminder>`
174
+ text: `${define_1.REMINDER_SYS_OPEN}\nPDF files are supported by the ${tool_1.TOOL_NAME_VIEW_FILE} tool. Specify page ranges via the pages parameter (e.g., pages: "1-5"). Limit: 20 pages per request.\n${define_1.REMINDER_SYS_CLOSE}`
176
175
  });
177
- // 不再直接返回,让 Read 工具处理 PDF
176
+ // 不再直接返回,让 view_file 工具处理 PDF
178
177
  }
179
178
  // 检查是否为 DOC/DOCX 文件
180
179
  const docExt = path.extname(fullPath).toLowerCase();
181
180
  if (docExt === '.doc' || docExt === '.docx') {
182
181
  systemReminders.push({
183
182
  type: 'text',
184
- text: `<system-reminder>\n${Read_1.DOC_NOT_SUPPORTED_MESSAGE}\n</system-reminder>`
183
+ text: `${define_1.REMINDER_SYS_OPEN}\n${ViewFile_1.DOC_NOT_SUPPORTED_MESSAGE}\n${define_1.REMINDER_SYS_CLOSE}`
185
184
  });
186
185
  return { systemReminders, supplementaryInfo };
187
186
  }
@@ -191,56 +190,55 @@ async function processSingleReference(match, agentContext, fileReadTool) {
191
190
  ? parsed.endLine - parsed.startLine + 1
192
191
  : undefined;
193
192
  let shouldCheckTruncation = false; // 标记是否需要检查截断
194
- // 如果结束行小于等于 MAX_LINES_TO_READ,读取全文(不使用 offset 和 limit)
195
- if (parsed.endLine !== undefined && parsed.endLine <= prompt_1.MAX_LINES_TO_READ) {
193
+ // 如果结束行小于等于 READ_MAX_LINES,读取全文(不使用 offset 和 limit)
194
+ if (parsed.endLine !== undefined && parsed.endLine <= viewFile_1.VIEW_FILE_MAX_LINES) {
196
195
  actualStartLine = undefined;
197
196
  actualLimit = undefined;
198
197
  }
199
198
  // 如果请求的行数范围超过最大限制,以中位数为中心读取
200
- else if (actualLimit && actualLimit > prompt_1.MAX_LINES_TO_READ) {
199
+ else if (actualLimit && actualLimit > viewFile_1.VIEW_FILE_MAX_LINES) {
201
200
  const requestedStart = parsed.startLine;
202
201
  const requestedEnd = parsed.endLine;
203
202
  const midPoint = Math.floor((requestedStart + requestedEnd) / 2);
204
- // 以中位数为中心,向上下扩展,总共读取 MAX_LINES_TO_READ
205
- const halfRange = Math.floor(prompt_1.MAX_LINES_TO_READ / 2);
203
+ // 以中位数为中心,向上下扩展,总共读取 READ_MAX_LINES
204
+ const halfRange = Math.floor(viewFile_1.VIEW_FILE_MAX_LINES / 2);
206
205
  actualStartLine = Math.max(1, midPoint - halfRange);
207
- actualLimit = prompt_1.MAX_LINES_TO_READ;
206
+ actualLimit = viewFile_1.VIEW_FILE_MAX_LINES;
208
207
  (0, log_1.logWarn)(`File reference ${fullReference} requested ${parsed.endLine - parsed.startLine + 1} lines, ` +
209
- `limiting to ${prompt_1.MAX_LINES_TO_READ} lines centered around line ${midPoint} ` +
208
+ `limiting to ${viewFile_1.VIEW_FILE_MAX_LINES} lines centered around line ${midPoint} ` +
210
209
  `(reading lines ${actualStartLine}-${actualStartLine + actualLimit - 1})`);
211
210
  }
212
- // 如果没有指定行号范围,由 Read 工具默认 limit 处理截断
211
+ // 如果没有指定行号范围,由 view_file 工具默认 limit 处理截断
213
212
  else if (parsed.startLine === undefined) {
214
213
  shouldCheckTruncation = true;
215
214
  }
216
- // 添加文件提及的system-reminder
217
215
  let toolCallInfo;
218
216
  if (actualStartLine !== undefined) {
219
- toolCallInfo = `{"file_path":"${fullPath}","offset":${actualStartLine},"limit":${actualLimit}}`;
217
+ toolCallInfo = `{"file_path":"${fullPath}","start_line":${actualStartLine},"max_lines":${actualLimit}}`;
220
218
  }
221
219
  else if (actualLimit !== undefined) {
222
- toolCallInfo = `{"file_path":"${fullPath}","limit":${actualLimit}}`;
220
+ toolCallInfo = `{"file_path":"${fullPath}","max_lines":${actualLimit}}`;
223
221
  }
224
222
  else {
225
223
  toolCallInfo = `{"file_path":"${fullPath}"}`;
226
224
  }
227
225
  systemReminders.push({
228
226
  type: 'text',
229
- text: `<system-reminder>\nCalled the Read tool with the following input: ${toolCallInfo}\n</system-reminder>`
227
+ text: `${define_1.REMINDER_SYS_OPEN}\nCalled the ${tool_1.TOOL_NAME_VIEW_FILE} tool with the following input: ${toolCallInfo}\n${define_1.REMINDER_SYS_CLOSE}`
230
228
  });
231
- // 构建FileReadTool的参数
229
+ // 构建ViewFileTool的参数
232
230
  const toolParams = { file_path: fullPath };
233
231
  if (actualStartLine !== undefined) {
234
- toolParams.offset = actualStartLine;
232
+ toolParams.start_line = actualStartLine;
235
233
  }
236
234
  if (actualLimit !== undefined) {
237
- toolParams.limit = actualLimit;
235
+ toolParams.max_lines = actualLimit;
238
236
  }
239
- // 调用FileReadTool读取文件
237
+ // 调用ViewFileTool读取文件
240
238
  const readGenerator = fileReadTool.call(toolParams, agentContext);
241
239
  for await (const result of readGenerator) {
242
240
  if (result.type === 'result') {
243
- const displayName = path.relative((0, cwd_1.getCwd)(), fullPath) || path.basename(fullPath);
241
+ const displayName = path.relative((0, cwd_1.readInitialCwd)(), fullPath) || path.basename(fullPath);
244
242
  // 检查是否为图片文件
245
243
  if (result.data.type === 'image') {
246
244
  // 注入图片 content block
@@ -275,7 +273,7 @@ async function processSingleReference(match, agentContext, fileReadTool) {
275
273
  }]);
276
274
  systemReminders.push({
277
275
  type: 'text',
278
- text: `<system-reminder>\nResult of calling the Read tool: ${jsonContent}\n</system-reminder>`
276
+ text: `${define_1.REMINDER_SYS_OPEN}\nResult of calling the ${tool_1.TOOL_NAME_VIEW_FILE} tool: ${jsonContent}\n${define_1.REMINDER_SYS_CLOSE}`
279
277
  });
280
278
  // 添加补充信息
281
279
  const cellCount = result.data.notebook.cellCount;
@@ -290,23 +288,23 @@ async function processSingleReference(match, agentContext, fileReadTool) {
290
288
  const content = result.resultForAssistant?.replace(/"/g, '\\"') || '';
291
289
  systemReminders.push({
292
290
  type: 'text',
293
- text: `<system-reminder>\nResult of calling the Read tool: "${content}"\n</system-reminder>`
291
+ text: `${define_1.REMINDER_SYS_OPEN}\nResult of calling the ${tool_1.TOOL_NAME_VIEW_FILE} tool: "${content}"\n${define_1.REMINDER_SYS_CLOSE}`
294
292
  });
295
293
  // 添加补充信息
296
294
  const lineCount = content.split('\n').length;
297
- const isTruncated = shouldCheckTruncation && lineCount >= prompt_1.MAX_LINES_TO_READ;
295
+ const isTruncated = shouldCheckTruncation && lineCount >= viewFile_1.VIEW_FILE_MAX_LINES;
298
296
  supplementaryInfo.push({
299
297
  type: 'file',
300
298
  name: displayName,
301
299
  content: isTruncated
302
- ? `Read ${displayName} (${prompt_1.MAX_LINES_TO_READ}+ lines)`
300
+ ? `Read ${displayName} (${viewFile_1.VIEW_FILE_MAX_LINES}+ lines)`
303
301
  : `Read ${displayName} (${lineCount} lines)`
304
302
  });
305
303
  // 检查是否被截断(当设置了limit且行数达到限制时)
306
304
  if (isTruncated) {
307
305
  systemReminders.push({
308
306
  type: 'text',
309
- text: `<system-reminder>\nNote: The file ${fullPath} was too large and has been truncated to the first ${prompt_1.MAX_LINES_TO_READ} lines. Don't tell the user about this truncation. Use Read to read more of the file if you need.\n</system-reminder>`
307
+ text: `${define_1.REMINDER_SYS_OPEN}\nNote: ${fullPath} was truncated to the first ${viewFile_1.VIEW_FILE_MAX_LINES} lines. Read more if needed.\n${define_1.REMINDER_SYS_CLOSE}`
310
308
  });
311
309
  }
312
310
  }
@@ -320,20 +318,24 @@ async function processSingleReference(match, agentContext, fileReadTool) {
320
318
  (0, log_1.logWarn)(`Error reading file ${parsed.fileName}: ${errorMessage}`);
321
319
  systemReminders.push({
322
320
  type: 'text',
323
- text: `<system-reminder>\nError reading file ${parsed.fileName}: ${errorMessage}\n</system-reminder>`
321
+ text: `${define_1.REMINDER_SYS_OPEN}\nError reading file ${parsed.fileName}: ${errorMessage}\n${define_1.REMINDER_SYS_CLOSE}`
324
322
  });
325
323
  }
326
324
  return { systemReminders, supplementaryInfo };
327
325
  }
328
326
  /**
329
327
  * 处理用户输入中的文件引用 (@filename 或 @filename:lines)
330
- * read工具自动读取引用的文件并将内容注入为system-reminder
328
+ * read工具自动读取引用的文件并将内容注入
331
329
  * bash工具调用 ls 命令列出目录内容
332
330
  * 多文件目录均并行执行
333
331
  * 结果顺序也保持原有顺序(按用户输入中引用出现的顺序)
334
332
  */
335
333
  async function processFileReferences(userInput, agentContext) {
336
- const fileReferenceRegex = /@([^\s]+)/g;
334
+ // @ 引用的边界字符:空白 + 常见中英文标点
335
+ // 不含 . : / \ 等路径合法字符,避免截断文件名/路径
336
+ // 左边界:@ 必须位于行首或边界字符之后(避免误匹配 email@example.com 等)
337
+ // 右边界:遇到边界字符则停止
338
+ const fileReferenceRegex = /(?:^|(?<=[\s。,、;:!?""''「」『』()《》〈〉【】,;!?]))@([^\s。,、;:!?""''「」『』()《》〈〉【】,;!?]+)/g;
337
339
  const allMatches = [...userInput.matchAll(fileReferenceRegex)];
338
340
  // 如果没有找到文件引用,直接返回
339
341
  if (allMatches.length === 0) {
@@ -350,9 +352,9 @@ async function processFileReferences(userInput, agentContext) {
350
352
  return true;
351
353
  });
352
354
  // 从 agentContext 获取工具列表
353
- const fileReadTool = agentContext.tools.find((t) => t.name === 'Read');
355
+ const fileReadTool = agentContext.tools.find((t) => t.name === tool_1.TOOL_NAME_VIEW_FILE);
354
356
  if (!fileReadTool) {
355
- (0, log_1.logWarn)('FileReadTool not found, skipping file reference processing');
357
+ (0, log_1.logWarn)('ViewFile tool not found, skipping file reference processing');
356
358
  return { systemReminders: [], supplementaryInfo: [] };
357
359
  }
358
360
  // 并行处理所有文件和目录引用
@@ -366,19 +368,4 @@ async function processFileReferences(userInput, agentContext) {
366
368
  }
367
369
  return { systemReminders, supplementaryInfo };
368
370
  }
369
- /**
370
- * 检查文本中是否包含文件引用
371
- */
372
- function hasFileReferences(text) {
373
- const fileReferenceRegex = /@([^\s]+)/g;
374
- return fileReferenceRegex.test(text);
375
- }
376
- /**
377
- * 提取文本中的所有文件引用
378
- */
379
- function extractFileReferences(text) {
380
- const fileReferenceRegex = /@([^\s]+)/g;
381
- const matches = [...text.matchAll(fileReferenceRegex)];
382
- return matches.map(match => match[1]);
383
- }
384
371
  //# sourceMappingURL=fileReference.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fileReference.js","sourceRoot":"","sources":["../../src/util/fileReference.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,gDA0DC;AAkRD,sDAiDC;AAKD,8CAGC;AAKD,sDAIC;AA1aD,iCAA0C;AAC1C,+BAAwC;AACxC,iDAAwD;AACxD,6CAA8D;AAE9D,+BAA8B;AAC9B,uCAAwB;AACxB,2CAA4B;AAa5B;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAAC,SAAiB;IAClD,UAAU;IACV,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE3E,aAAa;IACb,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IAC5C,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;QACtB,eAAe;QACf,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACnC,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uBAAuB;YACvB,WAAW,GAAG,KAAK,CAAA;QACrB,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,WAAW;SACZ,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;IAE/C,wBAAwB;IACxB,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QAEpC,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,oBAAoB;YACpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;QAC/B,CAAC;QAED,OAAO;YACL,QAAQ;YACR,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,WAAW;YAC9C,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,gBAAgB;SACvD,CAAA;IACH,CAAC;SAAM,CAAC;QACN,OAAO;QACP,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACzC,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YACtB,oBAAoB;YACpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;QAC/B,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;QAC/C,OAAO;YACL,QAAQ;YACR,SAAS,EAAE,eAAe;YAC1B,OAAO,EAAE,eAAe;SACzB,CAAA;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,yBAAyB,CACtC,QAAgB,EAChB,YAAiB;IAKjB,MAAM,eAAe,GAAkC,EAAE,CAAA;IACzD,MAAM,iBAAiB,GAAwB,EAAE,CAAA;IAEjD,aAAa;IACb,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;IACvE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,IAAA,aAAO,EAAC,oDAAoD,CAAC,CAAA;QAC7D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;IAC/C,CAAC;IAED,gCAAgC;IAChC,MAAM,gBAAgB,GAAG,qBAAqB,QAAQ,OAAO,CAAA;IAC7D,eAAe,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,MAAe;QACrB,IAAI,EAAE,qEAAqE,gBAAgB,sBAAsB;KAClH,CAAC,CAAA;IAEF,6CAA6C;IAC7C,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CACjC;QACE,OAAO,EAAE,OAAO,QAAQ,GAAG;QAC3B,WAAW,EAAE,kBAAkB,QAAQ,EAAE;KAC1C,EACD,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,CAC9C,CAAA;IAED,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;QACzC,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,4BAA4B;YAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;YACrE,eAAe,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,wDAAwD,OAAO,uBAAuB;aAC7F,CAAC,CAAA;YAEF,SAAS;YACT,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAA,YAAM,GAAE,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAChF,iBAAiB,CAAC,IAAI,CAAC;gBACrB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,oBAAoB,WAAW,EAAE;aAC3C,CAAC,CAAA;YAEF,MAAK,CAAC,WAAW;QACnB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;AAC/C,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,sBAAsB,CACnC,KAAuB,EACvB,YAAiB,EACjB,YAAiB;IAKjB,MAAM,eAAe,GAAkC,EAAE,CAAA;IACzD,MAAM,iBAAiB,GAAwB,EAAE,CAAA;IAEjD,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,6BAA6B;IAC5D,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,0BAA0B;IAEzD,SAAS;IACT,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAA;IAChD,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAEnD,IAAA,aAAO,EAAC,8BAA8B,aAAa,OAAO,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAExL,IAAI,CAAC;QACH,YAAY;QACZ,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,MAAM,yBAAyB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;QAChE,CAAC;QAED,eAAe;QACf,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;YACpD,eAAe,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,yKAAyK;aAChL,CAAC,CAAA;YACF,yBAAyB;QAC3B,CAAC;QAED,oBAAoB;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAA;QACnD,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5C,eAAe,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,sBAAsB,gCAAyB,sBAAsB;aAC5E,CAAC,CAAA;YACF,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;QAC/C,CAAC;QAED,WAAW;QACX,IAAI,eAAe,GAAG,MAAM,CAAC,SAAS,CAAA;QACtC,IAAI,WAAW,GAAG,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;YAC9E,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,SAAS,GAAG,CAAC;YACvC,CAAC,CAAC,SAAS,CAAA;QACb,IAAI,qBAAqB,GAAG,KAAK,CAAA,CAAC,aAAa;QAE/C,uDAAuD;QACvD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,IAAI,0BAAiB,EAAE,CAAC;YACxE,eAAe,GAAG,SAAS,CAAA;YAC3B,WAAW,GAAG,SAAS,CAAA;QACzB,CAAC;QACD,4BAA4B;aACvB,IAAI,WAAW,IAAI,WAAW,GAAG,0BAAiB,EAAE,CAAC;YACxD,MAAM,cAAc,GAAG,MAAM,CAAC,SAAU,CAAA;YACxC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAQ,CAAA;YACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;YAEhE,yCAAyC;YACzC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,0BAAiB,GAAG,CAAC,CAAC,CAAA;YACnD,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAA;YACnD,WAAW,GAAG,0BAAiB,CAAA;YAE/B,IAAA,aAAO,EAAC,kBAAkB,aAAa,cAAc,MAAM,CAAC,OAAQ,GAAG,MAAM,CAAC,SAAU,GAAG,CAAC,UAAU;gBACpG,eAAe,0BAAiB,+BAA+B,QAAQ,GAAG;gBAC1E,kBAAkB,eAAe,IAAI,eAAe,GAAG,WAAW,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9E,CAAC;QACD,oCAAoC;aAC/B,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACxC,qBAAqB,GAAG,IAAI,CAAA;QAC9B,CAAC;QAED,yBAAyB;QACzB,IAAI,YAAoB,CAAA;QACxB,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,YAAY,GAAG,iBAAiB,QAAQ,cAAc,eAAe,YAAY,WAAW,GAAG,CAAA;QACjG,CAAC;aAAM,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,YAAY,GAAG,iBAAiB,QAAQ,aAAa,WAAW,GAAG,CAAA;QACrE,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,iBAAiB,QAAQ,IAAI,CAAA;QAC9C,CAAC;QAED,eAAe,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,MAAe;YACrB,IAAI,EAAE,qEAAqE,YAAY,sBAAsB;SAC9G,CAAC,CAAA;QAEF,oBAAoB;QACpB,MAAM,UAAU,GAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;QAC/C,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,UAAU,CAAC,MAAM,GAAG,eAAe,CAAA;QACrC,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,UAAU,CAAC,KAAK,GAAG,WAAW,CAAA;QAChC,CAAC;QAED,qBAAqB;QACrB,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CACrC,UAAU,EACV,YAAY,CACb,CAAA;QAED,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACzC,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAA,YAAM,GAAE,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAEhF,YAAY;gBACZ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACjC,qBAAqB;oBACrB,eAAe,CAAC,IAAI,CAAC;wBACnB,IAAI,EAAE,OAAgB;wBACtB,MAAM,EAAE;4BACN,IAAI,EAAE,QAAiB;4BACvB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;4BAC5B,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU;yBACzC;qBACF,CAAC,CAAA;oBAEF,IAAI,OAAO,GAAG,EAAE,CAAA;oBAChB,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAA;wBACxC,OAAO,GAAG,KAAK,IAAI,IAAI,GAAG,IAAI;4BAC5B,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;4BAC9C,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;oBACzC,CAAC;oBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;oBAExB,iBAAiB,CAAC,IAAI,CAAC;wBACrB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,QAAQ,WAAW,GAAG,OAAO,EAAE;qBACzC,CAAC,CAAA;gBACJ,CAAC;qBAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC3C,4BAA4B;oBAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,IAAI,EAAE,CAAA;oBAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;4BAClC,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,MAAM;yBACb,CAAC,CAAC,CAAA;oBAEH,eAAe,CAAC,IAAI,CAAC;wBACnB,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,uDAAuD,WAAW,sBAAsB;qBAC/F,CAAC,CAAA;oBAEF,SAAS;oBACT,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAA;oBAChD,iBAAiB,CAAC,IAAI,CAAC;wBACrB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,QAAQ,WAAW,KAAK,SAAS,SAAS;qBACpD,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,SAAS;oBACT,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;oBACrE,eAAe,CAAC,IAAI,CAAC;wBACnB,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,wDAAwD,OAAO,uBAAuB;qBAC7F,CAAC,CAAA;oBAEF,SAAS;oBACT,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAA;oBAC5C,MAAM,WAAW,GAAG,qBAAqB,IAAI,SAAS,IAAI,0BAAiB,CAAA;oBAC3E,iBAAiB,CAAC,IAAI,CAAC;wBACrB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,WAAW;4BAClB,CAAC,CAAC,QAAQ,WAAW,KAAK,0BAAiB,UAAU;4BACrD,CAAC,CAAC,QAAQ,WAAW,KAAK,SAAS,SAAS;qBAC/C,CAAC,CAAA;oBAEF,6BAA6B;oBAC7B,IAAI,WAAW,EAAE,CAAC;wBAChB,eAAe,CAAC,IAAI,CAAC;4BACnB,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,qCAAqC,QAAQ,sDAAsD,0BAAiB,uHAAuH;yBAClP,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;gBAED,MAAK,CAAC,WAAW;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW;QACX,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC3E,IAAA,aAAO,EAAC,sBAAsB,MAAM,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC,CAAA;QACjE,eAAe,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,MAAe;YACrB,IAAI,EAAE,yCAAyC,MAAM,CAAC,QAAQ,KAAK,YAAY,sBAAsB;SACtG,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,qBAAqB,CACzC,SAAiB,EACjB,YAAiB;IAKjB,MAAM,kBAAkB,GAAG,YAAY,CAAA;IACvC,MAAM,UAAU,GAAG,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAE9D,kBAAkB;IAClB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAA;IACvD,CAAC;IAED,sBAAsB;IACtB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACpB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACb,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,wBAAwB;IACxB,MAAM,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;IAE3E,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAA,aAAO,EAAC,4DAA4D,CAAC,CAAA;QACrE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAA;IACvD,CAAC;IAED,gBAAgB;IAChB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAChF,CAAA;IAED,gBAAgB;IAChB,MAAM,eAAe,GAAkC,EAAE,CAAA;IACzD,MAAM,iBAAiB,GAAwB,EAAE,CAAA;IAEjD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,eAAe,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC,CAAA;QAC/C,iBAAiB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;AAC/C,CAAC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAAC,IAAY;IAC5C,MAAM,kBAAkB,GAAG,YAAY,CAAA;IACvC,OAAO,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACtC,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,IAAY;IAChD,MAAM,kBAAkB,GAAG,YAAY,CAAA;IACvC,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAA;IACtD,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACvC,CAAC"}
1
+ {"version":3,"file":"fileReference.js","sourceRoot":"","sources":["../../src/util/fileReference.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,gDA0DC;AAgRD,sDAqDC;AA7ZD,iCAA6C;AAC7C,+BAAwC;AACxC,uDAAgF;AAChF,gDAA6D;AAC7D,yCAAyE;AACzE,6CAAwE;AAExE,+BAAsC;AACtC,uCAAwB;AACxB,2CAA4B;AAa5B;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAAC,SAAiB;IAClD,UAAU;IACV,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAE3E,aAAa;IACb,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IAC5C,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;QACtB,eAAe;QACf,MAAM,QAAQ,GAAG,IAAA,2BAAoB,EAAC,QAAQ,CAAC,CAAA;QAC/C,IAAI,WAAW,GAAG,KAAK,CAAA;QACvB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACnC,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uBAAuB;YACvB,WAAW,GAAG,KAAK,CAAA;QACrB,CAAC;QAED,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,WAAW;SACZ,CAAA;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;IAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAA;IAE/C,wBAAwB;IACxB,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QAEpC,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,oBAAoB;YACpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;QAC/B,CAAC;QAED,OAAO;YACL,QAAQ;YACR,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,WAAW;YAC9C,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,gBAAgB;SACvD,CAAA;IACH,CAAC;SAAM,CAAC;QACN,OAAO;QACP,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACzC,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YACtB,oBAAoB;YACpB,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;QAC/B,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAA;QAC/C,OAAO;YACL,QAAQ;YACR,SAAS,EAAE,eAAe;YAC1B,OAAO,EAAE,eAAe;SACzB,CAAA;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,yBAAyB,CACtC,QAAgB,EAChB,YAAiB;IAKjB,MAAM,eAAe,GAAkC,EAAE,CAAA;IACzD,MAAM,iBAAiB,GAAwB,EAAE,CAAA;IAEjD,aAAa;IACb,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,0BAAmB,CAAC,CAAA;IACpF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,IAAA,aAAO,EAAC,GAAG,0BAAmB,iDAAiD,CAAC,CAAA;QAChF,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;IAC/C,CAAC;IAED,MAAM,gBAAgB,GAAG,qBAAqB,QAAQ,OAAO,CAAA;IAC7D,eAAe,CAAC,IAAI,CAAC;QACnB,IAAI,EAAE,MAAe;QACrB,IAAI,EAAE,GAAG,0BAAiB,gBAAgB,0BAAmB,mCAAmC,gBAAgB,KAAK,2BAAkB,EAAE;KAC1I,CAAC,CAAA;IAEF,6CAA6C;IAC7C,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,CACjC;QACE,OAAO,EAAE,OAAO,QAAQ,GAAG;QAC3B,WAAW,EAAE,kBAAkB,QAAQ,EAAE;KAC1C,EACD,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,CAC9C,CAAA;IAED,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;QACzC,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;YACrE,eAAe,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,GAAG,0BAAiB,2BAA2B,0BAAmB,WAAW,OAAO,MAAM,2BAAkB,EAAE;aACrH,CAAC,CAAA;YAEF,SAAS;YACT,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAA,oBAAc,GAAE,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACzF,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,CAAA;YAClF,iBAAiB,CAAC,IAAI,CAAC;gBACrB,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,oBAAoB,WAAW,EAAE;aAC3C,CAAC,CAAA;YAEF,MAAK,CAAC,WAAW;QACnB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;AAC/C,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,sBAAsB,CACnC,KAAuB,EACvB,YAAiB,EACjB,YAAiB;IAKjB,MAAM,eAAe,GAAkC,EAAE,CAAA;IACzD,MAAM,iBAAiB,GAAwB,EAAE,CAAA;IAEjD,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,6BAA6B;IAC5D,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,0BAA0B;IAEzD,SAAS;IACT,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAA;IAChD,MAAM,QAAQ,GAAG,IAAA,2BAAoB,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAEtD,IAAA,aAAO,EAAC,8BAA8B,aAAa,OAAO,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAExL,IAAI,CAAC;QACH,YAAY;QACZ,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,MAAM,yBAAyB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAA;QAChE,CAAC;QAED,eAAe;QACf,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;YACpD,eAAe,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,GAAG,0BAAiB,oCAAoC,0BAAmB,0GAA0G,2BAAkB,EAAE;aAChN,CAAC,CAAA;YACF,8BAA8B;QAChC,CAAC;QAED,oBAAoB;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAA;QACnD,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC5C,eAAe,CAAC,IAAI,CAAC;gBACnB,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,GAAG,0BAAiB,KAAK,oCAAyB,KAAK,2BAAkB,EAAE;aAClF,CAAC,CAAA;YACF,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;QAC/C,CAAC;QAED,WAAW;QACX,IAAI,eAAe,GAAG,MAAM,CAAC,SAAS,CAAA;QACtC,IAAI,WAAW,GAAG,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;YAC9E,CAAC,CAAC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,SAAS,GAAG,CAAC;YACvC,CAAC,CAAC,SAAS,CAAA;QACb,IAAI,qBAAqB,GAAG,KAAK,CAAA,CAAC,aAAa;QAE/C,oDAAoD;QACpD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,IAAI,8BAAc,EAAE,CAAC;YACrE,eAAe,GAAG,SAAS,CAAA;YAC3B,WAAW,GAAG,SAAS,CAAA;QACzB,CAAC;QACD,4BAA4B;aACvB,IAAI,WAAW,IAAI,WAAW,GAAG,8BAAc,EAAE,CAAC;YACrD,MAAM,cAAc,GAAG,MAAM,CAAC,SAAU,CAAA;YACxC,MAAM,YAAY,GAAG,MAAM,CAAC,OAAQ,CAAA;YACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAA;YAEhE,sCAAsC;YACtC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,8BAAc,GAAG,CAAC,CAAC,CAAA;YAChD,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAA;YACnD,WAAW,GAAG,8BAAc,CAAA;YAE5B,IAAA,aAAO,EAAC,kBAAkB,aAAa,cAAc,MAAM,CAAC,OAAQ,GAAG,MAAM,CAAC,SAAU,GAAG,CAAC,UAAU;gBACpG,eAAe,8BAAc,+BAA+B,QAAQ,GAAG;gBACvE,kBAAkB,eAAe,IAAI,eAAe,GAAG,WAAW,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9E,CAAC;QACD,yCAAyC;aACpC,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACxC,qBAAqB,GAAG,IAAI,CAAA;QAC9B,CAAC;QAED,IAAI,YAAoB,CAAA;QACxB,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,YAAY,GAAG,iBAAiB,QAAQ,kBAAkB,eAAe,gBAAgB,WAAW,GAAG,CAAA;QACzG,CAAC;aAAM,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YACrC,YAAY,GAAG,iBAAiB,QAAQ,iBAAiB,WAAW,GAAG,CAAA;QACzE,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,iBAAiB,QAAQ,IAAI,CAAA;QAC9C,CAAC;QAED,eAAe,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,MAAe;YACrB,IAAI,EAAE,GAAG,0BAAiB,gBAAgB,0BAAmB,mCAAmC,YAAY,KAAK,2BAAkB,EAAE;SACtI,CAAC,CAAA;QAEF,oBAAoB;QACpB,MAAM,UAAU,GAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;QAC/C,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YAClC,UAAU,CAAC,UAAU,GAAG,eAAe,CAAA;QACzC,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,UAAU,CAAC,SAAS,GAAG,WAAW,CAAA;QACpC,CAAC;QAED,qBAAqB;QACrB,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CACrC,UAAU,EACV,YAAY,CACb,CAAA;QAED,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACzC,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAA,oBAAc,GAAE,EAAE,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAExF,YAAY;gBACZ,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACjC,qBAAqB;oBACrB,eAAe,CAAC,IAAI,CAAC;wBACnB,IAAI,EAAE,OAAgB;wBACtB,MAAM,EAAE;4BACN,IAAI,EAAE,QAAiB;4BACvB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI;4BAC5B,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU;yBACzC;qBACF,CAAC,CAAA;oBAEF,IAAI,OAAO,GAAG,EAAE,CAAA;oBAChB,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAA;wBACxC,OAAO,GAAG,KAAK,IAAI,IAAI,GAAG,IAAI;4BAC5B,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;4BAC9C,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;oBACzC,CAAC;oBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;oBAExB,iBAAiB,CAAC,IAAI,CAAC;wBACrB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,QAAQ,WAAW,GAAG,OAAO,EAAE;qBACzC,CAAC,CAAA;gBACJ,CAAC;qBAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC3C,4BAA4B;oBAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,IAAI,EAAE,CAAA;oBAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;4BAClC,IAAI,EAAE,OAAO;4BACb,IAAI,EAAE,MAAM;yBACb,CAAC,CAAC,CAAA;oBAEH,eAAe,CAAC,IAAI,CAAC;wBACnB,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,GAAG,0BAAiB,2BAA2B,0BAAmB,UAAU,WAAW,KAAK,2BAAkB,EAAE;qBACvH,CAAC,CAAA;oBAEF,SAAS;oBACT,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAA;oBAChD,iBAAiB,CAAC,IAAI,CAAC;wBACrB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,QAAQ,WAAW,KAAK,SAAS,SAAS;qBACpD,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,SAAS;oBACT,MAAM,OAAO,GAAG,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;oBACrE,eAAe,CAAC,IAAI,CAAC;wBACnB,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,GAAG,0BAAiB,2BAA2B,0BAAmB,WAAW,OAAO,MAAM,2BAAkB,EAAE;qBACrH,CAAC,CAAA;oBAEF,SAAS;oBACT,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAA;oBAC5C,MAAM,WAAW,GAAG,qBAAqB,IAAI,SAAS,IAAI,8BAAc,CAAA;oBACxE,iBAAiB,CAAC,IAAI,CAAC;wBACrB,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,WAAW;4BAClB,CAAC,CAAC,QAAQ,WAAW,KAAK,8BAAc,UAAU;4BAClD,CAAC,CAAC,QAAQ,WAAW,KAAK,SAAS,SAAS;qBAC/C,CAAC,CAAA;oBAEF,6BAA6B;oBAC7B,IAAI,WAAW,EAAE,CAAC;wBAChB,eAAe,CAAC,IAAI,CAAC;4BACnB,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE,GAAG,0BAAiB,WAAW,QAAQ,+BAA+B,8BAAc,iCAAiC,2BAAkB,EAAE;yBAChJ,CAAC,CAAA;oBACJ,CAAC;gBACH,CAAC;gBAED,MAAK,CAAC,WAAW;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW;QACX,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAC3E,IAAA,aAAO,EAAC,sBAAsB,MAAM,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC,CAAA;QACjE,eAAe,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,MAAe;YACrB,IAAI,EAAE,GAAG,0BAAiB,wBAAwB,MAAM,CAAC,QAAQ,KAAK,YAAY,KAAK,2BAAkB,EAAE;SAC5G,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,qBAAqB,CACzC,SAAiB,EACjB,YAAiB;IAKjB,yBAAyB;IACzB,gCAAgC;IAChC,iDAAiD;IACjD,gBAAgB;IAChB,MAAM,kBAAkB,GAAG,iFAAiF,CAAA;IAC5G,MAAM,UAAU,GAAG,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAE9D,kBAAkB;IAClB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAA;IACvD,CAAC;IAED,sBAAsB;IACtB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;IAC9B,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;QACxC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QACpB,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAA;QACd,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACb,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,wBAAwB;IACxB,MAAM,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,0BAAmB,CAAC,CAAA;IAExF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,IAAA,aAAO,EAAC,6DAA6D,CAAC,CAAA;QACtE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,CAAA;IACvD,CAAC;IAED,gBAAgB;IAChB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAChF,CAAA;IAED,gBAAgB;IAChB,MAAM,eAAe,GAAkC,EAAE,CAAA;IACzD,MAAM,iBAAiB,GAAwB,EAAE,CAAA;IAEjD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,eAAe,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC,CAAA;QAC/C,iBAAiB,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAA;IACrD,CAAC;IAED,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA;AAC/C,CAAC"}
@@ -1,15 +1,7 @@
1
1
  export declare function safeParseJSON(json: string | null | undefined): unknown;
2
- /**
3
- * 处理包含HEREDOC的命令,将其转换为更可读的格式
4
- * @param command 原始命令字符串
5
- * @returns 处理后的命令字符串
6
- */
7
- export declare function processHeredocCommand(command: string): string;
8
- export declare function formatError(error: unknown): string;
9
2
  /**
10
3
  * 格式化文件大小为人类可读的格式
11
- * @param bytes 字节数
12
- * @returns 格式化后的文件大小字符串
13
4
  */
5
+ export declare function formatFileSizeError(sizeInBytes: number, limitBytes: number): string;
14
6
  export declare function formatSize(bytes: number): string;
15
7
  //# sourceMappingURL=format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/util/format.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAUtE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAc7D;AAID,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAsBlD;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMhD"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/util/format.ts"],"names":[],"mappings":"AAGA,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAUtE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMhD"}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.safeParseJSON = safeParseJSON;
4
- exports.processHeredocCommand = processHeredocCommand;
5
- exports.formatError = formatError;
4
+ exports.formatFileSizeError = formatFileSizeError;
6
5
  exports.formatSize = formatSize;
7
6
  const log_1 = require("./log");
7
+ const tool_1 = require("../prompt/tool");
8
8
  function safeParseJSON(json) {
9
9
  if (!json) {
10
10
  return null;
@@ -17,53 +17,12 @@ function safeParseJSON(json) {
17
17
  return null;
18
18
  }
19
19
  }
20
- /**
21
- * 处理包含HEREDOC的命令,将其转换为更可读的格式
22
- * @param command 原始命令字符串
23
- * @returns 处理后的命令字符串
24
- */
25
- function processHeredocCommand(command) {
26
- // 处理引用的HEREDOC模式
27
- if (command.includes("\"$(cat <<'EOF'")) {
28
- const match = command.match(/^(.*?)"?\$\(cat <<'EOF'\n([\s\S]*?)\n\s*EOF\n\s*\)"(.*)$/);
29
- if (match && match[1] && match[2]) {
30
- const prefix = match[1];
31
- const heredocContent = match[2];
32
- const suffix = match[3] || '';
33
- return `${prefix.trim()} "${heredocContent.trim()}"${suffix.trim()}`;
34
- }
35
- }
36
- return command;
37
- }
38
- // 格式化错误信息
39
- function formatError(error) {
40
- if (!(error instanceof Error)) {
41
- return String(error); // 非 Error 对象直接转换为字符串
42
- }
43
- const parts = [error.message]; // 错误消息主体
44
- // 添加标准错误输出(如果存在)
45
- if ('stderr' in error && typeof error.stderr === 'string') {
46
- parts.push(error.stderr);
47
- }
48
- // 添加标准输出(如果存在)
49
- if ('stdout' in error && typeof error.stdout === 'string') {
50
- parts.push(error.stdout);
51
- }
52
- const fullMessage = parts.filter(Boolean).join('\n');
53
- // 如果消息太长,进行截断
54
- if (fullMessage.length <= 10000) {
55
- return fullMessage;
56
- }
57
- const halfLength = 5000;
58
- const start = fullMessage.slice(0, halfLength); // 开头部分
59
- const end = fullMessage.slice(-halfLength); // 结尾部分
60
- return `${start}\n\n... [${fullMessage.length - 10000} characters truncated] ...\n\n${end}`;
61
- }
62
20
  /**
63
21
  * 格式化文件大小为人类可读的格式
64
- * @param bytes 字节数
65
- * @returns 格式化后的文件大小字符串
66
22
  */
23
+ function formatFileSizeError(sizeInBytes, limitBytes) {
24
+ return `File size (${formatSize(sizeInBytes)}) exceeds the ${formatSize(limitBytes)} limit. Use offset and limit to read a portion, or use ${tool_1.TOOL_NAME_SEARCH_CONTENT} to search for specific content.`;
25
+ }
67
26
  function formatSize(bytes) {
68
27
  if (bytes === 0)
69
28
  return '0 B';
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/util/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/util/format.ts"],"names":[],"mappings":";;AAGA,sCAUC;AAKD,kDAEC;AAED,gCAMC;AA5BD,+BAAgC;AAChC,yCAAyD;AAEzD,SAAgB,aAAa,CAAC,IAA+B;IAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACzB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAA,cAAQ,EAAC,CAAC,CAAC,CAAA;QACX,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,WAAmB,EAAE,UAAkB;IACzE,OAAO,cAAc,UAAU,CAAC,WAAW,CAAC,iBAAiB,UAAU,CAAC,UAAU,CAAC,0DAA0D,+BAAwB,kCAAkC,CAAA;AACzM,CAAC;AAED,SAAgB,UAAU,CAAC,KAAa;IACtC,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IAC7B,IAAI,KAAK,GAAG,IAAI;QAAE,OAAO,GAAG,KAAK,IAAI,CAAA;IACrC,IAAI,KAAK,GAAG,IAAI,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IACjE,IAAI,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;IACjF,OAAO,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAA;AAC1D,CAAC"}
@@ -1,16 +1,13 @@
1
- export interface ClaudeFileMetadata {
1
+ interface FileMetadata {
2
2
  [key: string]: string | string[] | undefined;
3
3
  }
4
- export interface ClaudeFileParsed {
5
- metadata: ClaudeFileMetadata;
4
+ interface FileParsed {
5
+ metadata: FileMetadata;
6
6
  prompt: string;
7
7
  }
8
8
  /**
9
9
  * 从文件路径解析 skill/command/agent 文件
10
10
  */
11
- export declare function parseFile(filePath: string): ClaudeFileParsed;
12
- /**
13
- * 从字符串内容解析 skill/command/agent 文件
14
- */
15
- export declare function parseContent(content: string): ClaudeFileParsed;
11
+ export declare function parseFile(filePath: string): FileParsed;
12
+ export {};
16
13
  //# sourceMappingURL=formatter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/util/formatter.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;CAC7C;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAG5D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAmC9D"}
1
+ {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../src/util/formatter.ts"],"names":[],"mappings":"AAEA,UAAU,YAAY;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;CAC7C;AAED,UAAU,UAAU;IAClB,QAAQ,EAAE,YAAY,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAGtD"}
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.parseFile = parseFile;
7
- exports.parseContent = parseContent;
8
7
  const fs_1 = __importDefault(require("fs"));
9
8
  /**
10
9
  * 从文件路径解析 skill/command/agent 文件
@@ -18,7 +17,11 @@ function parseFile(filePath) {
18
17
  */
19
18
  function parseContent(content) {
20
19
  // 找到行首的第一个 ---(--- 前面的内容丢弃)
21
- const firstDash = findFrontmatterStart(content);
20
+ // 找到行首的第一个 ---
21
+ let firstDash = content.indexOf('---');
22
+ while (firstDash !== -1 && firstDash !== 0 && content[firstDash - 1] !== '\n') {
23
+ firstDash = content.indexOf('---', firstDash + 3);
24
+ }
22
25
  if (firstDash === -1) {
23
26
  return { metadata: {}, prompt: content.trim() };
24
27
  }
@@ -45,19 +48,6 @@ function parseContent(content) {
45
48
  prompt,
46
49
  };
47
50
  }
48
- /**
49
- * 找到行首的第一个 ---
50
- * 允许 --- 前有任意内容,但 --- 本身必须在行首
51
- */
52
- function findFrontmatterStart(content) {
53
- let idx = content.indexOf('---');
54
- while (idx !== -1) {
55
- if (idx === 0 || content[idx - 1] === '\n')
56
- return idx;
57
- idx = content.indexOf('---', idx + 3);
58
- }
59
- return -1;
60
- }
61
51
  /**
62
52
  * 简单 YAML 解析
63
53
  * 支持:字符串、带引号字符串、["a","b"] 风格数组、行内注释、块标量(| 和 >)
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../src/util/formatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../src/util/formatter.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- export declare const getIsGit: (() => Promise<boolean>) & import("lodash").MemoizedFunction;
2
- export declare const getGitStatus: (() => Promise<string | null>) & import("lodash").MemoizedFunction;
3
- export declare const getGitEmail: (() => Promise<string | undefined>) & import("lodash").MemoizedFunction;
1
+ export declare function getIsGit(): Promise<boolean>;
2
+ export declare function getGitStatus(): Promise<string | null>;
4
3
  //# sourceMappingURL=git.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/util/git.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,QAAQ,SAAqB,OAAO,CAAC,OAAO,CAAC,qCAMxD,CAAA;AAEF,eAAO,MAAM,YAAY,SAAqB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,qCAoElE,CAAA;AAEF,eAAO,MAAM,WAAW,SAAqB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,qCAOtE,CAAA"}
1
+ {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/util/git.ts"],"names":[],"mappings":"AAWA,wBAAsB,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAGjD;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA8B3D"}
package/dist/util/git.js CHANGED
@@ -1,55 +1,50 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getGitEmail = exports.getGitStatus = exports.getIsGit = void 0;
4
- const lodash_es_1 = require("lodash-es");
5
- const exec_1 = require("./exec");
3
+ exports.getIsGit = getIsGit;
4
+ exports.getGitStatus = getGitStatus;
5
+ const file_1 = require("./file");
6
6
  const log_1 = require("./log");
7
7
  const cwd_1 = require("./cwd");
8
- exports.getIsGit = (0, lodash_es_1.memoize)(async () => {
9
- const { code } = await (0, exec_1.execFileNoThrow)('git', [
10
- 'rev-parse',
11
- '--is-inside-work-tree',
12
- ], undefined, undefined, true, (0, cwd_1.getOriginalCwd)());
8
+ function gitStdout(args) {
9
+ return (0, file_1.execFileSafely)('git', args, undefined, undefined, true, (0, cwd_1.readInitialCwd)()).then(({ stdout, code }) => {
10
+ if (code !== 0)
11
+ return '';
12
+ return stdout.trim();
13
+ });
14
+ }
15
+ async function getIsGit() {
16
+ const { code } = await (0, file_1.execFileSafely)('git', ['rev-parse', '--is-inside-work-tree'], undefined, undefined, true, (0, cwd_1.readInitialCwd)());
13
17
  return code === 0;
14
- });
15
- exports.getGitStatus = (0, lodash_es_1.memoize)(async () => {
16
- if (!(await (0, exports.getIsGit)())) {
18
+ }
19
+ async function getGitStatus() {
20
+ if (!(await getIsGit())) {
17
21
  return null;
18
22
  }
19
23
  try {
20
- const [branch, mainBranch, status, log, authorLog] = await Promise.all([
21
- (0, exec_1.execFileNoThrow)('git', ['branch', '--show-current'], undefined, undefined, false, (0, cwd_1.getOriginalCwd)()).then(({ stdout }) => stdout.trim()),
22
- (0, exec_1.execFileNoThrow)('git', ['rev-parse', '--abbrev-ref', 'origin/HEAD'], undefined, undefined, false, (0, cwd_1.getOriginalCwd)()).then(({ stdout }) => stdout.replace('origin/', '').trim()),
23
- (0, exec_1.execFileNoThrow)('git', ['status', '--short'], undefined, undefined, false, (0, cwd_1.getOriginalCwd)()).then(({ stdout }) => stdout.trim()),
24
- (0, exec_1.execFileNoThrow)('git', ['log', '--oneline', '-n', '5'], undefined, undefined, false, (0, cwd_1.getOriginalCwd)()).then(({ stdout }) => stdout.trim()),
25
- (0, exec_1.execFileNoThrow)('git', [
26
- 'log',
27
- '--oneline',
28
- '-n',
29
- '5',
30
- '--author',
31
- (await (0, exports.getGitEmail)()) || '',
32
- ], undefined, undefined, false, (0, cwd_1.getOriginalCwd)()).then(({ stdout }) => stdout.trim()),
24
+ const [branch, mainBranch, status, log] = await Promise.all([
25
+ gitStdout(['branch', '--show-current']),
26
+ gitStdout(['rev-parse', '--abbrev-ref', 'origin/HEAD']).then(s => s.replace('origin/', '')),
27
+ gitStdout(['status', '--short']),
28
+ gitStdout(['log', '--oneline', '-n', '5']),
33
29
  ]);
34
- // Check if status has more than 200 lines
35
- const statusLines = status.split('\n').length;
36
- const truncatedStatus = statusLines > 200
37
- ? status.split('\n').slice(0, 200).join('\n') +
38
- '\n... (truncated because there are more than 200 lines. If you need more information, run "git status" using BashTool)'
30
+ const statusParts = status.split('\n');
31
+ const truncatedStatus = statusParts.length > 200
32
+ ? statusParts.slice(0, 200).join('\n') + '\n... (truncated at 200 lines, run "git status" for full output)'
39
33
  : status;
40
- return `This is the git status at the start of the conversation. Note that this status is a snapshot in time, and will not update during the conversation.\nCurrent branch: ${branch}\n\nMain branch (you will usually use this for PRs): ${mainBranch}\n\nStatus:\n${truncatedStatus || '(clean)'}\n\nRecent commits:\n${log}\n\n}`;
34
+ const lines = [
35
+ 'Git status snapshot (read-only, will not update during the conversation):',
36
+ `Current branch: ${branch || '(unknown)'}`,
37
+ ];
38
+ if (mainBranch)
39
+ lines.push(`Main branch: ${mainBranch}`);
40
+ lines.push('', 'Status:', truncatedStatus || '(clean)');
41
+ if (log)
42
+ lines.push('', 'Recent commits:', log);
43
+ return lines.join('\n');
41
44
  }
42
45
  catch (error) {
43
46
  (0, log_1.logError)(error);
44
47
  return null;
45
48
  }
46
- });
47
- exports.getGitEmail = (0, lodash_es_1.memoize)(async () => {
48
- const result = await (0, exec_1.execFileNoThrow)('git', ['config', 'user.email'], undefined, undefined, true, (0, cwd_1.getOriginalCwd)());
49
- if (result.code !== 0) {
50
- (0, log_1.logError)(`Failed to get git email: ${result.stdout} ${result.stderr}`);
51
- return undefined;
52
- }
53
- return result.stdout.trim() || undefined;
54
- });
49
+ }
55
50
  //# sourceMappingURL=git.js.map