micro-models-agent 0.6.4 → 0.7.1

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 (472) hide show
  1. package/README.md +286 -436
  2. package/dist/main.js +11706 -0
  3. package/dist/skills/builtin/git.md +36 -0
  4. package/dist/skills/builtin/typescript.md +35 -0
  5. package/package.json +41 -47
  6. package/dist/agent/context.d.ts +0 -73
  7. package/dist/agent/context.d.ts.map +0 -1
  8. package/dist/agent/context.js +0 -262
  9. package/dist/agent/context.js.map +0 -1
  10. package/dist/agent/error-escalation.d.ts +0 -19
  11. package/dist/agent/error-escalation.d.ts.map +0 -1
  12. package/dist/agent/error-escalation.js +0 -168
  13. package/dist/agent/error-escalation.js.map +0 -1
  14. package/dist/agent/loop.d.ts +0 -46
  15. package/dist/agent/loop.d.ts.map +0 -1
  16. package/dist/agent/loop.js +0 -1043
  17. package/dist/agent/loop.js.map +0 -1
  18. package/dist/agent/memory.d.ts +0 -40
  19. package/dist/agent/memory.d.ts.map +0 -1
  20. package/dist/agent/memory.js +0 -231
  21. package/dist/agent/memory.js.map +0 -1
  22. package/dist/agent/modes/applier.d.ts +0 -43
  23. package/dist/agent/modes/applier.d.ts.map +0 -1
  24. package/dist/agent/modes/applier.js +0 -30
  25. package/dist/agent/modes/applier.js.map +0 -1
  26. package/dist/agent/modes/registry.d.ts +0 -35
  27. package/dist/agent/modes/registry.d.ts.map +0 -1
  28. package/dist/agent/modes/registry.js +0 -169
  29. package/dist/agent/modes/registry.js.map +0 -1
  30. package/dist/agent/modes/types.d.ts +0 -61
  31. package/dist/agent/modes/types.d.ts.map +0 -1
  32. package/dist/agent/modes/types.js +0 -13
  33. package/dist/agent/modes/types.js.map +0 -1
  34. package/dist/agent/react-loop.d.ts +0 -65
  35. package/dist/agent/react-loop.d.ts.map +0 -1
  36. package/dist/agent/react-loop.js +0 -101
  37. package/dist/agent/react-loop.js.map +0 -1
  38. package/dist/agent/system-prompt.d.ts +0 -26
  39. package/dist/agent/system-prompt.d.ts.map +0 -1
  40. package/dist/agent/system-prompt.js +0 -478
  41. package/dist/agent/system-prompt.js.map +0 -1
  42. package/dist/agent/tool-executor.d.ts +0 -36
  43. package/dist/agent/tool-executor.d.ts.map +0 -1
  44. package/dist/agent/tool-executor.js +0 -346
  45. package/dist/agent/tool-executor.js.map +0 -1
  46. package/dist/agent/user-profile.d.ts +0 -26
  47. package/dist/agent/user-profile.d.ts.map +0 -1
  48. package/dist/agent/user-profile.js +0 -169
  49. package/dist/agent/user-profile.js.map +0 -1
  50. package/dist/agent/write-enforcer.d.ts +0 -7
  51. package/dist/agent/write-enforcer.d.ts.map +0 -1
  52. package/dist/agent/write-enforcer.js +0 -8
  53. package/dist/agent/write-enforcer.js.map +0 -1
  54. package/dist/cli/config.d.ts +0 -13
  55. package/dist/cli/config.d.ts.map +0 -1
  56. package/dist/cli/config.js +0 -82
  57. package/dist/cli/config.js.map +0 -1
  58. package/dist/cli/model.d.ts +0 -13
  59. package/dist/cli/model.d.ts.map +0 -1
  60. package/dist/cli/model.js +0 -170
  61. package/dist/cli/model.js.map +0 -1
  62. package/dist/cli/provider.d.ts +0 -12
  63. package/dist/cli/provider.d.ts.map +0 -1
  64. package/dist/cli/provider.js +0 -90
  65. package/dist/cli/provider.js.map +0 -1
  66. package/dist/cli/update.d.ts +0 -12
  67. package/dist/cli/update.d.ts.map +0 -1
  68. package/dist/cli/update.js +0 -69
  69. package/dist/cli/update.js.map +0 -1
  70. package/dist/cli.d.ts +0 -3
  71. package/dist/cli.d.ts.map +0 -1
  72. package/dist/cli.js +0 -310
  73. package/dist/cli.js.map +0 -1
  74. package/dist/config/config.d.ts +0 -59
  75. package/dist/config/config.d.ts.map +0 -1
  76. package/dist/config/config.js +0 -232
  77. package/dist/config/config.js.map +0 -1
  78. package/dist/config/types.d.ts +0 -122
  79. package/dist/config/types.d.ts.map +0 -1
  80. package/dist/config/types.js +0 -13
  81. package/dist/config/types.js.map +0 -1
  82. package/dist/file-loader.d.ts +0 -20
  83. package/dist/file-loader.d.ts.map +0 -1
  84. package/dist/file-loader.js +0 -121
  85. package/dist/file-loader.js.map +0 -1
  86. package/dist/index.d.ts +0 -9
  87. package/dist/index.d.ts.map +0 -1
  88. package/dist/index.js +0 -11
  89. package/dist/index.js.map +0 -1
  90. package/dist/indexer/cache.d.ts +0 -34
  91. package/dist/indexer/cache.d.ts.map +0 -1
  92. package/dist/indexer/cache.js +0 -221
  93. package/dist/indexer/cache.js.map +0 -1
  94. package/dist/indexer/code-index.d.ts +0 -27
  95. package/dist/indexer/code-index.d.ts.map +0 -1
  96. package/dist/indexer/code-index.js +0 -219
  97. package/dist/indexer/code-index.js.map +0 -1
  98. package/dist/indexer/project-map.d.ts +0 -23
  99. package/dist/indexer/project-map.d.ts.map +0 -1
  100. package/dist/indexer/project-map.js +0 -264
  101. package/dist/indexer/project-map.js.map +0 -1
  102. package/dist/llm/lmstudio-native.d.ts +0 -10
  103. package/dist/llm/lmstudio-native.d.ts.map +0 -1
  104. package/dist/llm/lmstudio-native.js +0 -179
  105. package/dist/llm/lmstudio-native.js.map +0 -1
  106. package/dist/llm/openai-compat.d.ts +0 -11
  107. package/dist/llm/openai-compat.d.ts.map +0 -1
  108. package/dist/llm/openai-compat.js +0 -161
  109. package/dist/llm/openai-compat.js.map +0 -1
  110. package/dist/llm/provider.d.ts +0 -46
  111. package/dist/llm/provider.d.ts.map +0 -1
  112. package/dist/llm/provider.js +0 -13
  113. package/dist/llm/provider.js.map +0 -1
  114. package/dist/llm/token-counter.d.ts +0 -15
  115. package/dist/llm/token-counter.d.ts.map +0 -1
  116. package/dist/llm/token-counter.js +0 -51
  117. package/dist/llm/token-counter.js.map +0 -1
  118. package/dist/logger.d.ts +0 -24
  119. package/dist/logger.d.ts.map +0 -1
  120. package/dist/logger.js +0 -156
  121. package/dist/logger.js.map +0 -1
  122. package/dist/plugins/adapters/hooks-adapter.d.ts +0 -12
  123. package/dist/plugins/adapters/hooks-adapter.d.ts.map +0 -1
  124. package/dist/plugins/adapters/hooks-adapter.js +0 -23
  125. package/dist/plugins/adapters/hooks-adapter.js.map +0 -1
  126. package/dist/plugins/builtin/lint-on-write/index.d.ts +0 -12
  127. package/dist/plugins/builtin/lint-on-write/index.d.ts.map +0 -1
  128. package/dist/plugins/builtin/lint-on-write/index.js +0 -98
  129. package/dist/plugins/builtin/lint-on-write/index.js.map +0 -1
  130. package/dist/plugins/builtin/lint-on-write/index.ts +0 -97
  131. package/dist/plugins/builtin/lint-on-write/manifest.json +0 -13
  132. package/dist/plugins/builtin/notify/index.d.ts +0 -11
  133. package/dist/plugins/builtin/notify/index.d.ts.map +0 -1
  134. package/dist/plugins/builtin/notify/index.js +0 -102
  135. package/dist/plugins/builtin/notify/index.js.map +0 -1
  136. package/dist/plugins/builtin/notify/index.ts +0 -105
  137. package/dist/plugins/builtin/notify/manifest.json +0 -16
  138. package/dist/plugins/loader.d.ts +0 -18
  139. package/dist/plugins/loader.d.ts.map +0 -1
  140. package/dist/plugins/loader.js +0 -182
  141. package/dist/plugins/loader.js.map +0 -1
  142. package/dist/plugins/manager.d.ts +0 -55
  143. package/dist/plugins/manager.d.ts.map +0 -1
  144. package/dist/plugins/manager.js +0 -190
  145. package/dist/plugins/manager.js.map +0 -1
  146. package/dist/plugins/types.d.ts +0 -76
  147. package/dist/plugins/types.d.ts.map +0 -1
  148. package/dist/plugins/types.js +0 -8
  149. package/dist/plugins/types.js.map +0 -1
  150. package/dist/repl/commands.d.ts +0 -63
  151. package/dist/repl/commands.d.ts.map +0 -1
  152. package/dist/repl/commands.js +0 -1070
  153. package/dist/repl/commands.js.map +0 -1
  154. package/dist/repl/history.d.ts +0 -32
  155. package/dist/repl/history.d.ts.map +0 -1
  156. package/dist/repl/history.js +0 -40
  157. package/dist/repl/history.js.map +0 -1
  158. package/dist/repl/index.d.ts +0 -14
  159. package/dist/repl/index.d.ts.map +0 -1
  160. package/dist/repl/index.js +0 -235
  161. package/dist/repl/index.js.map +0 -1
  162. package/dist/session/store.d.ts +0 -46
  163. package/dist/session/store.d.ts.map +0 -1
  164. package/dist/session/store.js +0 -154
  165. package/dist/session/store.js.map +0 -1
  166. package/dist/setup-wizard.d.ts +0 -3
  167. package/dist/setup-wizard.d.ts.map +0 -1
  168. package/dist/setup-wizard.js +0 -410
  169. package/dist/setup-wizard.js.map +0 -1
  170. package/dist/skills/builtin/agent-test/SKILL.md +0 -68
  171. package/dist/skills/builtin/cli-expert/SKILL.md +0 -848
  172. package/dist/skills/builtin/code-review/SKILL.md +0 -424
  173. package/dist/skills/builtin/git-expert/SKILL.md +0 -522
  174. package/dist/skills/builtin/grill-me/SKILL.md +0 -46
  175. package/dist/skills/builtin/jest-testing-expert/SKILL.md +0 -957
  176. package/dist/skills/builtin/nodejs-expert/SKILL.md +0 -192
  177. package/dist/skills/builtin/systematic-debugging/SKILL.md +0 -296
  178. package/dist/skills/builtin/test-driven-development/SKILL.md +0 -371
  179. package/dist/skills/builtin/typescript-expert/SKILL.md +0 -429
  180. package/dist/skills/builtin/web-scraping/SKILL.md +0 -422
  181. package/dist/skills/loader.d.ts +0 -49
  182. package/dist/skills/loader.d.ts.map +0 -1
  183. package/dist/skills/loader.js +0 -401
  184. package/dist/skills/loader.js.map +0 -1
  185. package/dist/styling/engine.d.ts +0 -39
  186. package/dist/styling/engine.d.ts.map +0 -1
  187. package/dist/styling/engine.js +0 -122
  188. package/dist/styling/engine.js.map +0 -1
  189. package/dist/styling/index.d.ts +0 -15
  190. package/dist/styling/index.d.ts.map +0 -1
  191. package/dist/styling/index.js +0 -40
  192. package/dist/styling/index.js.map +0 -1
  193. package/dist/styling/loader.d.ts +0 -9
  194. package/dist/styling/loader.d.ts.map +0 -1
  195. package/dist/styling/loader.js +0 -169
  196. package/dist/styling/loader.js.map +0 -1
  197. package/dist/styling/types.d.ts +0 -64
  198. package/dist/styling/types.d.ts.map +0 -1
  199. package/dist/styling/types.js +0 -12
  200. package/dist/styling/types.js.map +0 -1
  201. package/dist/subagent/chat.d.ts +0 -19
  202. package/dist/subagent/chat.d.ts.map +0 -1
  203. package/dist/subagent/chat.js +0 -279
  204. package/dist/subagent/chat.js.map +0 -1
  205. package/dist/subagent/context.d.ts +0 -9
  206. package/dist/subagent/context.d.ts.map +0 -1
  207. package/dist/subagent/context.js +0 -75
  208. package/dist/subagent/context.js.map +0 -1
  209. package/dist/subagent/definition.d.ts +0 -7
  210. package/dist/subagent/definition.d.ts.map +0 -1
  211. package/dist/subagent/definition.js +0 -26
  212. package/dist/subagent/definition.js.map +0 -1
  213. package/dist/subagent/errors.d.ts +0 -24
  214. package/dist/subagent/errors.d.ts.map +0 -1
  215. package/dist/subagent/errors.js +0 -85
  216. package/dist/subagent/errors.js.map +0 -1
  217. package/dist/subagent/validation.d.ts +0 -17
  218. package/dist/subagent/validation.d.ts.map +0 -1
  219. package/dist/subagent/validation.js +0 -83
  220. package/dist/subagent/validation.js.map +0 -1
  221. package/dist/tools/adapters/bash-to-fs.d.ts +0 -20
  222. package/dist/tools/adapters/bash-to-fs.d.ts.map +0 -1
  223. package/dist/tools/adapters/bash-to-fs.js +0 -74
  224. package/dist/tools/adapters/bash-to-fs.js.map +0 -1
  225. package/dist/tools/adapters/content-sanitizer.d.ts +0 -13
  226. package/dist/tools/adapters/content-sanitizer.d.ts.map +0 -1
  227. package/dist/tools/adapters/content-sanitizer.js +0 -73
  228. package/dist/tools/adapters/content-sanitizer.js.map +0 -1
  229. package/dist/tools/adapters/grounding-fixer.d.ts +0 -15
  230. package/dist/tools/adapters/grounding-fixer.d.ts.map +0 -1
  231. package/dist/tools/adapters/grounding-fixer.js +0 -57
  232. package/dist/tools/adapters/grounding-fixer.js.map +0 -1
  233. package/dist/tools/adapters/index.d.ts +0 -6
  234. package/dist/tools/adapters/index.d.ts.map +0 -1
  235. package/dist/tools/adapters/index.js +0 -5
  236. package/dist/tools/adapters/index.js.map +0 -1
  237. package/dist/tools/adapters/pipeline.d.ts +0 -34
  238. package/dist/tools/adapters/pipeline.d.ts.map +0 -1
  239. package/dist/tools/adapters/pipeline.js +0 -58
  240. package/dist/tools/adapters/pipeline.js.map +0 -1
  241. package/dist/tools/adapters/types.d.ts +0 -46
  242. package/dist/tools/adapters/types.d.ts.map +0 -1
  243. package/dist/tools/adapters/types.js +0 -2
  244. package/dist/tools/adapters/types.js.map +0 -1
  245. package/dist/tools/approve.d.ts +0 -27
  246. package/dist/tools/approve.d.ts.map +0 -1
  247. package/dist/tools/approve.js +0 -45
  248. package/dist/tools/approve.js.map +0 -1
  249. package/dist/tools/bash.d.ts +0 -25
  250. package/dist/tools/bash.d.ts.map +0 -1
  251. package/dist/tools/bash.js +0 -292
  252. package/dist/tools/bash.js.map +0 -1
  253. package/dist/tools/fs/copy-file.d.ts +0 -13
  254. package/dist/tools/fs/copy-file.d.ts.map +0 -1
  255. package/dist/tools/fs/copy-file.js +0 -54
  256. package/dist/tools/fs/copy-file.js.map +0 -1
  257. package/dist/tools/fs/create-dir.d.ts +0 -13
  258. package/dist/tools/fs/create-dir.d.ts.map +0 -1
  259. package/dist/tools/fs/create-dir.js +0 -44
  260. package/dist/tools/fs/create-dir.js.map +0 -1
  261. package/dist/tools/fs/delete-file.d.ts +0 -13
  262. package/dist/tools/fs/delete-file.d.ts.map +0 -1
  263. package/dist/tools/fs/delete-file.js +0 -52
  264. package/dist/tools/fs/delete-file.js.map +0 -1
  265. package/dist/tools/fs/edit-file.d.ts +0 -15
  266. package/dist/tools/fs/edit-file.d.ts.map +0 -1
  267. package/dist/tools/fs/edit-file.js +0 -95
  268. package/dist/tools/fs/edit-file.js.map +0 -1
  269. package/dist/tools/fs/file-info.d.ts +0 -13
  270. package/dist/tools/fs/file-info.d.ts.map +0 -1
  271. package/dist/tools/fs/file-info.js +0 -50
  272. package/dist/tools/fs/file-info.js.map +0 -1
  273. package/dist/tools/fs/glob-search.d.ts +0 -13
  274. package/dist/tools/fs/glob-search.d.ts.map +0 -1
  275. package/dist/tools/fs/glob-search.js +0 -112
  276. package/dist/tools/fs/glob-search.js.map +0 -1
  277. package/dist/tools/fs/grep-search.d.ts +0 -14
  278. package/dist/tools/fs/grep-search.d.ts.map +0 -1
  279. package/dist/tools/fs/grep-search.js +0 -135
  280. package/dist/tools/fs/grep-search.js.map +0 -1
  281. package/dist/tools/fs/list-dir.d.ts +0 -13
  282. package/dist/tools/fs/list-dir.d.ts.map +0 -1
  283. package/dist/tools/fs/list-dir.js +0 -74
  284. package/dist/tools/fs/list-dir.js.map +0 -1
  285. package/dist/tools/fs/move-file.d.ts +0 -13
  286. package/dist/tools/fs/move-file.d.ts.map +0 -1
  287. package/dist/tools/fs/move-file.js +0 -54
  288. package/dist/tools/fs/move-file.js.map +0 -1
  289. package/dist/tools/fs/path-utils.d.ts +0 -51
  290. package/dist/tools/fs/path-utils.d.ts.map +0 -1
  291. package/dist/tools/fs/path-utils.js +0 -103
  292. package/dist/tools/fs/path-utils.js.map +0 -1
  293. package/dist/tools/fs/read-file.d.ts +0 -13
  294. package/dist/tools/fs/read-file.d.ts.map +0 -1
  295. package/dist/tools/fs/read-file.js +0 -64
  296. package/dist/tools/fs/read-file.js.map +0 -1
  297. package/dist/tools/fs/tree.d.ts +0 -13
  298. package/dist/tools/fs/tree.d.ts.map +0 -1
  299. package/dist/tools/fs/tree.js +0 -89
  300. package/dist/tools/fs/tree.js.map +0 -1
  301. package/dist/tools/fs/types.d.ts +0 -14
  302. package/dist/tools/fs/types.d.ts.map +0 -1
  303. package/dist/tools/fs/types.js +0 -11
  304. package/dist/tools/fs/types.js.map +0 -1
  305. package/dist/tools/fs/write-file.d.ts +0 -14
  306. package/dist/tools/fs/write-file.d.ts.map +0 -1
  307. package/dist/tools/fs/write-file.js +0 -83
  308. package/dist/tools/fs/write-file.js.map +0 -1
  309. package/dist/tools/hooks.d.ts +0 -44
  310. package/dist/tools/hooks.d.ts.map +0 -1
  311. package/dist/tools/hooks.js +0 -217
  312. package/dist/tools/hooks.js.map +0 -1
  313. package/dist/tools/id-gen.d.ts +0 -4
  314. package/dist/tools/id-gen.d.ts.map +0 -1
  315. package/dist/tools/id-gen.js +0 -12
  316. package/dist/tools/id-gen.js.map +0 -1
  317. package/dist/tools/mcp.d.ts +0 -36
  318. package/dist/tools/mcp.d.ts.map +0 -1
  319. package/dist/tools/mcp.js +0 -93
  320. package/dist/tools/mcp.js.map +0 -1
  321. package/dist/tools/native/approve.d.ts +0 -11
  322. package/dist/tools/native/approve.d.ts.map +0 -1
  323. package/dist/tools/native/approve.js +0 -39
  324. package/dist/tools/native/approve.js.map +0 -1
  325. package/dist/tools/native/plan.d.ts +0 -10
  326. package/dist/tools/native/plan.d.ts.map +0 -1
  327. package/dist/tools/native/plan.js +0 -115
  328. package/dist/tools/native/plan.js.map +0 -1
  329. package/dist/tools/native/project-map.d.ts +0 -15
  330. package/dist/tools/native/project-map.d.ts.map +0 -1
  331. package/dist/tools/native/project-map.js +0 -203
  332. package/dist/tools/native/project-map.js.map +0 -1
  333. package/dist/tools/native/question.d.ts +0 -11
  334. package/dist/tools/native/question.d.ts.map +0 -1
  335. package/dist/tools/native/question.js +0 -41
  336. package/dist/tools/native/question.js.map +0 -1
  337. package/dist/tools/native/scaffold.d.ts +0 -5
  338. package/dist/tools/native/scaffold.d.ts.map +0 -1
  339. package/dist/tools/native/scaffold.js +0 -246
  340. package/dist/tools/native/scaffold.js.map +0 -1
  341. package/dist/tools/native/theme.d.ts +0 -10
  342. package/dist/tools/native/theme.d.ts.map +0 -1
  343. package/dist/tools/native/theme.js +0 -101
  344. package/dist/tools/native/theme.js.map +0 -1
  345. package/dist/tools/native/todo.d.ts +0 -10
  346. package/dist/tools/native/todo.d.ts.map +0 -1
  347. package/dist/tools/native/todo.js +0 -58
  348. package/dist/tools/native/todo.js.map +0 -1
  349. package/dist/tools/native/user-profile.d.ts +0 -10
  350. package/dist/tools/native/user-profile.d.ts.map +0 -1
  351. package/dist/tools/native/user-profile.js +0 -58
  352. package/dist/tools/native/user-profile.js.map +0 -1
  353. package/dist/tools/parse-tool-call.d.ts +0 -11
  354. package/dist/tools/parse-tool-call.d.ts.map +0 -1
  355. package/dist/tools/parse-tool-call.js +0 -87
  356. package/dist/tools/parse-tool-call.js.map +0 -1
  357. package/dist/tools/plan.d.ts +0 -40
  358. package/dist/tools/plan.d.ts.map +0 -1
  359. package/dist/tools/plan.js +0 -143
  360. package/dist/tools/plan.js.map +0 -1
  361. package/dist/tools/question.d.ts +0 -33
  362. package/dist/tools/question.d.ts.map +0 -1
  363. package/dist/tools/question.js +0 -62
  364. package/dist/tools/question.js.map +0 -1
  365. package/dist/tools/registry.d.ts +0 -37
  366. package/dist/tools/registry.d.ts.map +0 -1
  367. package/dist/tools/registry.js +0 -97
  368. package/dist/tools/registry.js.map +0 -1
  369. package/dist/tools/sanitizer.d.ts +0 -30
  370. package/dist/tools/sanitizer.d.ts.map +0 -1
  371. package/dist/tools/sanitizer.js +0 -77
  372. package/dist/tools/sanitizer.js.map +0 -1
  373. package/dist/tools/subagent.d.ts +0 -39
  374. package/dist/tools/subagent.d.ts.map +0 -1
  375. package/dist/tools/subagent.js +0 -225
  376. package/dist/tools/subagent.js.map +0 -1
  377. package/dist/tools/syntax-check.d.ts +0 -32
  378. package/dist/tools/syntax-check.d.ts.map +0 -1
  379. package/dist/tools/syntax-check.js +0 -272
  380. package/dist/tools/syntax-check.js.map +0 -1
  381. package/dist/tools/todo.d.ts +0 -28
  382. package/dist/tools/todo.d.ts.map +0 -1
  383. package/dist/tools/todo.js +0 -125
  384. package/dist/tools/todo.js.map +0 -1
  385. package/dist/tools/types.d.ts +0 -51
  386. package/dist/tools/types.d.ts.map +0 -1
  387. package/dist/tools/types.js +0 -2
  388. package/dist/tools/types.js.map +0 -1
  389. package/dist/tools/web-browse.d.ts +0 -5
  390. package/dist/tools/web-browse.d.ts.map +0 -1
  391. package/dist/tools/web-browse.js +0 -757
  392. package/dist/tools/web-browse.js.map +0 -1
  393. package/dist/tools/web-fetch.d.ts +0 -19
  394. package/dist/tools/web-fetch.d.ts.map +0 -1
  395. package/dist/tools/web-fetch.js +0 -90
  396. package/dist/tools/web-fetch.js.map +0 -1
  397. package/dist/tools/web-search.d.ts +0 -19
  398. package/dist/tools/web-search.d.ts.map +0 -1
  399. package/dist/tools/web-search.js +0 -97
  400. package/dist/tools/web-search.js.map +0 -1
  401. package/dist/ui/components/status-bar.d.ts +0 -11
  402. package/dist/ui/components/status-bar.d.ts.map +0 -1
  403. package/dist/ui/components/status-bar.js +0 -20
  404. package/dist/ui/components/status-bar.js.map +0 -1
  405. package/dist/ui/index.d.ts +0 -8
  406. package/dist/ui/index.d.ts.map +0 -1
  407. package/dist/ui/index.js +0 -9
  408. package/dist/ui/index.js.map +0 -1
  409. package/dist/ui/ink/components/App.d.ts +0 -98
  410. package/dist/ui/ink/components/App.d.ts.map +0 -1
  411. package/dist/ui/ink/components/App.js +0 -212
  412. package/dist/ui/ink/components/App.js.map +0 -1
  413. package/dist/ui/ink/components/Conversation.d.ts +0 -20
  414. package/dist/ui/ink/components/Conversation.d.ts.map +0 -1
  415. package/dist/ui/ink/components/Conversation.js +0 -15
  416. package/dist/ui/ink/components/Conversation.js.map +0 -1
  417. package/dist/ui/ink/components/MessageBlock.d.ts +0 -27
  418. package/dist/ui/ink/components/MessageBlock.d.ts.map +0 -1
  419. package/dist/ui/ink/components/MessageBlock.js +0 -41
  420. package/dist/ui/ink/components/MessageBlock.js.map +0 -1
  421. package/dist/ui/ink/components/PromptInput.d.ts +0 -25
  422. package/dist/ui/ink/components/PromptInput.d.ts.map +0 -1
  423. package/dist/ui/ink/components/PromptInput.js +0 -167
  424. package/dist/ui/ink/components/PromptInput.js.map +0 -1
  425. package/dist/ui/ink/components/SelectInput.d.ts +0 -9
  426. package/dist/ui/ink/components/SelectInput.d.ts.map +0 -1
  427. package/dist/ui/ink/components/SelectInput.js +0 -30
  428. package/dist/ui/ink/components/SelectInput.js.map +0 -1
  429. package/dist/ui/ink/components/StatusBar.d.ts +0 -14
  430. package/dist/ui/ink/components/StatusBar.d.ts.map +0 -1
  431. package/dist/ui/ink/components/StatusBar.js +0 -20
  432. package/dist/ui/ink/components/StatusBar.js.map +0 -1
  433. package/dist/ui/ink/components/StreamBlock.d.ts +0 -8
  434. package/dist/ui/ink/components/StreamBlock.d.ts.map +0 -1
  435. package/dist/ui/ink/components/StreamBlock.js +0 -15
  436. package/dist/ui/ink/components/StreamBlock.js.map +0 -1
  437. package/dist/ui/ink/components/Tags.d.ts +0 -26
  438. package/dist/ui/ink/components/Tags.d.ts.map +0 -1
  439. package/dist/ui/ink/components/Tags.js +0 -37
  440. package/dist/ui/ink/components/Tags.js.map +0 -1
  441. package/dist/ui/ink/components/ToolCallBlock.d.ts +0 -31
  442. package/dist/ui/ink/components/ToolCallBlock.d.ts.map +0 -1
  443. package/dist/ui/ink/components/ToolCallBlock.js +0 -17
  444. package/dist/ui/ink/components/ToolCallBlock.js.map +0 -1
  445. package/dist/ui/ink/renderer.d.ts +0 -69
  446. package/dist/ui/ink/renderer.d.ts.map +0 -1
  447. package/dist/ui/ink/renderer.js +0 -142
  448. package/dist/ui/ink/renderer.js.map +0 -1
  449. package/dist/ui/ink/theme.d.ts +0 -28
  450. package/dist/ui/ink/theme.d.ts.map +0 -1
  451. package/dist/ui/ink/theme.js +0 -45
  452. package/dist/ui/ink/theme.js.map +0 -1
  453. package/dist/ui/md-formatter.d.ts +0 -16
  454. package/dist/ui/md-formatter.d.ts.map +0 -1
  455. package/dist/ui/md-formatter.js +0 -448
  456. package/dist/ui/md-formatter.js.map +0 -1
  457. package/dist/ui/readline-renderer.d.ts +0 -45
  458. package/dist/ui/readline-renderer.d.ts.map +0 -1
  459. package/dist/ui/readline-renderer.js +0 -181
  460. package/dist/ui/readline-renderer.js.map +0 -1
  461. package/dist/ui/renderer.d.ts +0 -66
  462. package/dist/ui/renderer.d.ts.map +0 -1
  463. package/dist/ui/renderer.js +0 -16
  464. package/dist/ui/renderer.js.map +0 -1
  465. package/dist/ui/subagent-renderer.d.ts +0 -58
  466. package/dist/ui/subagent-renderer.d.ts.map +0 -1
  467. package/dist/ui/subagent-renderer.js +0 -100
  468. package/dist/ui/subagent-renderer.js.map +0 -1
  469. package/dist/updater.d.ts +0 -15
  470. package/dist/updater.d.ts.map +0 -1
  471. package/dist/updater.js +0 -166
  472. package/dist/updater.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"grounding-fixer.js","sourceRoot":"","sources":["../../../src/tools/adapters/grounding-fixer.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAgB;IAChD,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,EAAE;IAEZ,KAAK,CAAC,KAAK,CAAC,IAAgB,EAAE,GAAmB;QAC/C,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC;QACjD,IAAI,YAAY,EAAE,OAAO,KAAK,KAAK;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAE/D,oDAAoD;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC;QAC1C,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAEjE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC;YACtB,WAAW;YACX,YAAY;YACZ,WAAW;YACX,aAAa;YACb,WAAW;YACX,YAAY;YACZ,UAAU;SACX,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAErE,iDAAiD;QACjD,MAAM,aAAa,GAAG,kCAAkC,CAAC;QACzD,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,IAAI,KAA6B,CAAC;QAClC,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC/D,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACvD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAClD,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnE,KAAK,GAAG,IAAI,CAAC;gBACb,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,IAAI;gBACJ,GAAG,EAAE,2DAA2D,IAAI,GAAG;aACxE,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC5B,CAAC;CACF,CAAC"}
@@ -1,6 +0,0 @@
1
- export { AdapterPipeline } from "./pipeline.js";
2
- export { bashToFsAdapter } from "./bash-to-fs.js";
3
- export { groundingFixerAdapter } from "./grounding-fixer.js";
4
- export { contentSanitizerAdapter } from "./content-sanitizer.js";
5
- export type { ToolAdapter, AdapterContext, AdapterResult } from "./types.js";
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -1,5 +0,0 @@
1
- export { AdapterPipeline } from "./pipeline.js";
2
- export { bashToFsAdapter } from "./bash-to-fs.js";
3
- export { groundingFixerAdapter } from "./grounding-fixer.js";
4
- export { contentSanitizerAdapter } from "./content-sanitizer.js";
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,34 +0,0 @@
1
- import type { ParsedCall } from "../parse-tool-call.js";
2
- import type { ToolAdapter, AdapterContext } from "./types.js";
3
- /**
4
- * Пайплайн адаптеров — запускает все зарегистрированные адаптеры
5
- * последовательно, позволяя каждому исправить tool call.
6
- *
7
- * Адаптеры сортируются по priority (меньше = раньше).
8
- * Если адаптер вернул 'block', пайплайн останавливается.
9
- * Если 'replace', следующий адаптер получает уже заменённый call.
10
- */
11
- export declare class AdapterPipeline {
12
- private adapters;
13
- constructor();
14
- /** Регистрирует стартовый набор адаптеров */
15
- private registerDefaults;
16
- /** Добавить кастомный адаптер */
17
- register(adapter: ToolAdapter): void;
18
- /** Заменить все адаптеры */
19
- setAdapters(adapters: ToolAdapter[]): void;
20
- /** Получить список адаптеров */
21
- getAdapters(): ToolAdapter[];
22
- /**
23
- * Прогнать tool call через все адаптеры.
24
- *
25
- * @returns исправленный call, или null если заблокирован, или undefined если без изменений
26
- */
27
- process(call: ParsedCall, ctx: AdapterContext): Promise<{
28
- call: ParsedCall;
29
- logs: string[];
30
- } | {
31
- blocked: string;
32
- }>;
33
- }
34
- //# sourceMappingURL=pipeline.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../src/tools/adapters/pipeline.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAK9D;;;;;;;GAOG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAqB;;IAMrC,6CAA6C;IAC7C,OAAO,CAAC,gBAAgB;IAOxB,iCAAiC;IACjC,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAKpC,4BAA4B;IAC5B,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI;IAI1C,gCAAgC;IAChC,WAAW,IAAI,WAAW,EAAE;IAI5B;;;;OAIG;IACG,OAAO,CACX,IAAI,EAAE,UAAU,EAChB,GAAG,EAAE,cAAc,GAClB,OAAO,CAAC;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAiBvE"}
@@ -1,58 +0,0 @@
1
- import { bashToFsAdapter } from "./bash-to-fs.js";
2
- import { groundingFixerAdapter } from "./grounding-fixer.js";
3
- import { contentSanitizerAdapter } from "./content-sanitizer.js";
4
- /**
5
- * Пайплайн адаптеров — запускает все зарегистрированные адаптеры
6
- * последовательно, позволяя каждому исправить tool call.
7
- *
8
- * Адаптеры сортируются по priority (меньше = раньше).
9
- * Если адаптер вернул 'block', пайплайн останавливается.
10
- * Если 'replace', следующий адаптер получает уже заменённый call.
11
- */
12
- export class AdapterPipeline {
13
- adapters = [];
14
- constructor() {
15
- this.registerDefaults();
16
- }
17
- /** Регистрирует стартовый набор адаптеров */
18
- registerDefaults() {
19
- this.adapters.push(bashToFsAdapter);
20
- this.adapters.push(groundingFixerAdapter);
21
- this.adapters.push(contentSanitizerAdapter);
22
- this.adapters.sort((a, b) => a.priority - b.priority);
23
- }
24
- /** Добавить кастомный адаптер */
25
- register(adapter) {
26
- this.adapters.push(adapter);
27
- this.adapters.sort((a, b) => a.priority - b.priority);
28
- }
29
- /** Заменить все адаптеры */
30
- setAdapters(adapters) {
31
- this.adapters = [...adapters].sort((a, b) => a.priority - b.priority);
32
- }
33
- /** Получить список адаптеров */
34
- getAdapters() {
35
- return [...this.adapters];
36
- }
37
- /**
38
- * Прогнать tool call через все адаптеры.
39
- *
40
- * @returns исправленный call, или null если заблокирован, или undefined если без изменений
41
- */
42
- async process(call, ctx) {
43
- let current = call;
44
- const logs = [];
45
- for (const adapter of this.adapters) {
46
- const result = await adapter.adapt(current, ctx);
47
- if (result.action === "block") {
48
- return { blocked: result.message };
49
- }
50
- if (result.action === "replace") {
51
- logs.push(result.log);
52
- current = result.call;
53
- }
54
- }
55
- return { call: current, logs };
56
- }
57
- }
58
- //# sourceMappingURL=pipeline.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/tools/adapters/pipeline.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEjE;;;;;;;GAOG;AACH,MAAM,OAAO,eAAe;IAClB,QAAQ,GAAkB,EAAE,CAAC;IAErC;QACE,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,6CAA6C;IACrC,gBAAgB;QACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED,iCAAiC;IACjC,QAAQ,CAAC,OAAoB;QAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED,4BAA4B;IAC5B,WAAW,CAAC,QAAuB;QACjC,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACxE,CAAC;IAED,gCAAgC;IAChC,WAAW;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,OAAO,CACX,IAAgB,EAChB,GAAmB;QAEnB,IAAI,OAAO,GAAG,IAAI,CAAC;QACnB,MAAM,IAAI,GAAa,EAAE,CAAC;QAE1B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACjD,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACrC,CAAC;YACD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtB,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;YACxB,CAAC;QACH,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACjC,CAAC;CACF"}
@@ -1,46 +0,0 @@
1
- import type { ParsedCall } from "../parse-tool-call.js";
2
- import type { AppConfig } from "../../config/types.js";
3
- /**
4
- * Контекст, передаваемый в каждый адаптер при обработке tool call'а.
5
- */
6
- export interface AdapterContext {
7
- /** Рабочая директория проекта */
8
- cwd: string;
9
- /** Конфигурация приложения */
10
- config: AppConfig;
11
- /** Сырой ответ LLM (нужен для grounding-fixer) */
12
- responseText: string;
13
- /** Список существующих файлов в проекте (для path-resolver) */
14
- existingFiles: string[];
15
- }
16
- /**
17
- * Результат обработки tool call'а адаптером.
18
- */
19
- export type AdapterResult = {
20
- action: "pass";
21
- } | {
22
- action: "replace";
23
- call: ParsedCall;
24
- log: string;
25
- } | {
26
- action: "block";
27
- message: string;
28
- };
29
- /**
30
- * Адаптер — единица пайплайна, которая перехватывает и исправляет
31
- * некорректные вызовы инструментов от LLM.
32
- *
33
- * Каждый адаптер решает одну конкретную проблему маленьких моделей:
34
- * - bash-to-fs: конвертирует bash-команды записи в write_file
35
- * - grounding-fixer: добавляет пропущенные grounding-маркеры
36
- * - content-sanitizer: чинит битый content
37
- */
38
- export interface ToolAdapter {
39
- /** Уникальное имя адаптера */
40
- name: string;
41
- /** Порядок в пайплайне (меньше = раньше) */
42
- priority: number;
43
- /** Обработать tool call. Может пропустить, заменить или заблокировать. */
44
- adapt(call: ParsedCall, ctx: AdapterContext): Promise<AdapterResult>;
45
- }
46
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tools/adapters/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,iCAAiC;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,8BAA8B;IAC9B,MAAM,EAAE,SAAS,CAAC;IAClB,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,+DAA+D;IAC/D,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,WAAW,WAAW;IAC1B,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CACtE"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/tools/adapters/types.ts"],"names":[],"mappings":""}
@@ -1,27 +0,0 @@
1
- /**
2
- * Инструмент подтверждения действия (Yes/No).
3
- *
4
- * Позволяет агенту запросить подтверждение перед потенциально
5
- * опасными операциями (удаление файлов, git push и т.д.).
6
- *
7
- * @module tools/approve
8
- */
9
- /** Состояние подтверждения */
10
- export interface ApproveState {
11
- active: boolean;
12
- action: string;
13
- response?: boolean;
14
- }
15
- /** Создаёт запрос подтверждения */
16
- export declare function askApprove(action: string): ApproveState;
17
- /** Возвращает текущий активный запрос подтверждения */
18
- export declare function getApprove(): ApproveState | null;
19
- /** Записывает ответ пользователя (true = Yes, false = No) */
20
- export declare function answerApprove(response: boolean): void;
21
- /** Проверяет есть ли активный запрос подтверждения */
22
- export declare function hasActiveApprove(): boolean;
23
- export declare function formatApprove(a: ApproveState): string;
24
- export declare function formatApproveColored(a: ApproveState): string;
25
- /** Парсит аргументы команды approve */
26
- export declare function parseApproveCommand(args: string): string;
27
- //# sourceMappingURL=approve.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"approve.d.ts","sourceRoot":"","sources":["../../src/tools/approve.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,8BAA8B;AAC9B,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAID,mCAAmC;AACnC,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAMvD;AAED,uDAAuD;AACvD,wBAAgB,UAAU,IAAI,YAAY,GAAG,IAAI,CAEhD;AAED,6DAA6D;AAC7D,wBAAgB,aAAa,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAKrD;AAED,sDAAsD;AACtD,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAID,wBAAgB,aAAa,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAErD;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAG5D;AAED,uCAAuC;AACvC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD"}
@@ -1,45 +0,0 @@
1
- /**
2
- * Инструмент подтверждения действия (Yes/No).
3
- *
4
- * Позволяет агенту запросить подтверждение перед потенциально
5
- * опасными операциями (удаление файлов, git push и т.д.).
6
- *
7
- * @module tools/approve
8
- */
9
- let currentApprove = null;
10
- /** Создаёт запрос подтверждения */
11
- export function askApprove(action) {
12
- currentApprove = {
13
- active: true,
14
- action,
15
- };
16
- return currentApprove;
17
- }
18
- /** Возвращает текущий активный запрос подтверждения */
19
- export function getApprove() {
20
- return currentApprove;
21
- }
22
- /** Записывает ответ пользователя (true = Yes, false = No) */
23
- export function answerApprove(response) {
24
- if (currentApprove) {
25
- currentApprove.response = response;
26
- currentApprove.active = false;
27
- }
28
- }
29
- /** Проверяет есть ли активный запрос подтверждения */
30
- export function hasActiveApprove() {
31
- return currentApprove?.active === true;
32
- }
33
- import { getTheme } from '../styling/index.js';
34
- export function formatApprove(a) {
35
- return `Approve: ${a.action}\n\n 1. Yes\n 2. No\n\nEnter 1 or 2:`;
36
- }
37
- export function formatApproveColored(a) {
38
- const theme = getTheme();
39
- return `${theme.warning(` ${theme.icon.separator} Approve: ${a.action}`)}\n\n ${theme.highlight('1')}. Yes\n ${theme.highlight('2')}. No`;
40
- }
41
- /** Парсит аргументы команды approve */
42
- export function parseApproveCommand(args) {
43
- return args.trim();
44
- }
45
- //# sourceMappingURL=approve.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"approve.js","sourceRoot":"","sources":["../../src/tools/approve.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,IAAI,cAAc,GAAwB,IAAI,CAAC;AAE/C,mCAAmC;AACnC,MAAM,UAAU,UAAU,CAAC,MAAc;IACvC,cAAc,GAAG;QACf,MAAM,EAAE,IAAI;QACZ,MAAM;KACP,CAAC;IACF,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,uDAAuD;AACvD,MAAM,UAAU,UAAU;IACxB,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,aAAa,CAAC,QAAiB;IAC7C,IAAI,cAAc,EAAE,CAAC;QACnB,cAAc,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACnC,cAAc,CAAC,MAAM,GAAG,KAAK,CAAC;IAChC,CAAC;AACH,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,gBAAgB;IAC9B,OAAO,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;AACzC,CAAC;AAED,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,MAAM,UAAU,aAAa,CAAC,CAAe;IAC3C,OAAO,YAAY,CAAC,CAAC,MAAM,wCAAwC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,CAAe;IAClD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IACzB,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC,WAAW,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;AACnJ,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;AACrB,CAAC"}
@@ -1,25 +0,0 @@
1
- import type { ToolDefinition } from './registry.js';
2
- import type { ToolHandler } from './types.js';
3
- /**
4
- * Исполнение shell-команд.
5
- *
6
- * Особенности:
7
- * - Автоматическая трансляция Unix-команд в PowerShell на Windows
8
- * - Санитайзинг опасных паттернов (rm -rf, fork bomb и т.д.)
9
- * - Автосоздание директорий для Set-Content
10
- * - Ограничение длины вывода (8000 символов)
11
- * - Логирование в файл для отладки
12
- *
13
- * @module tools/bash
14
- */
15
- /** Результат выполнения bash-команды */
16
- export interface BashResult {
17
- stdout: string;
18
- stderr: string;
19
- exitCode: number;
20
- truncated: boolean;
21
- }
22
- export declare function executeBash(cmd: string, timeoutSeconds?: number): Promise<BashResult>;
23
- export declare const bashDefinition: ToolDefinition;
24
- export declare const bashHandler: ToolHandler;
25
- //# sourceMappingURL=bash.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bash.d.ts","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;;;;;;GAWG;AAEH,wCAAwC;AACxC,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACpB;AAsLD,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,GAAE,MAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAoHhG;AAED,eAAO,MAAM,cAAc,EAAE,cAc5B,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,WAQzB,CAAC"}
@@ -1,292 +0,0 @@
1
- import { execa, ExecaError } from 'execa';
2
- import { execSync } from 'node:child_process';
3
- import { writeFileSync, existsSync, mkdirSync } from 'node:fs';
4
- import { join } from 'node:path';
5
- import { homedir } from 'node:os';
6
- import { sanitize } from './sanitizer.js';
7
- import { getTheme } from '../styling/index.js';
8
- import { logInfo } from '../logger.js';
9
- const MAX_OUTPUT_LENGTH = 8000; // максимальная длина вывода (обрезается)
10
- const CACHE_DIR = join(homedir(), '.mma', 'cache');
11
- let _detectedShell = null;
12
- function detectShell() {
13
- if (_detectedShell)
14
- return _detectedShell;
15
- if (process.platform !== 'win32') {
16
- _detectedShell = { executable: 'sh', args: ['-c'], isPowerShell: false };
17
- logInfo('SHELL', `detected: sh (unix)`);
18
- return _detectedShell;
19
- }
20
- // Попытка 1: pwsh (PowerShell Core 7+)
21
- try {
22
- execSync('pwsh --version', { stdio: 'pipe', timeout: 3000, windowsHide: true });
23
- _detectedShell = { executable: 'pwsh', args: ['-NoProfile', '-EncodedCommand'], isPowerShell: true };
24
- logInfo('SHELL', 'detected: pwsh (PowerShell Core)');
25
- return _detectedShell;
26
- }
27
- catch { /* pwsh not found */ }
28
- // Попытка 2: powershell.exe (Windows PowerShell 5.1, встроенная)
29
- try {
30
- execSync('powershell.exe -Version 5.1 -Command "echo ok"', { stdio: 'pipe', timeout: 3000, windowsHide: true });
31
- _detectedShell = { executable: 'powershell.exe', args: ['-NoProfile', '-EncodedCommand'], isPowerShell: true };
32
- logInfo('SHELL', 'detected: powershell.exe (Windows PowerShell 5.1)');
33
- return _detectedShell;
34
- }
35
- catch { /* powershell.exe not found */ }
36
- // Попытка 3: cmd.exe (fallback)
37
- _detectedShell = { executable: 'cmd.exe', args: ['/c'], isPowerShell: false };
38
- logInfo('SHELL', 'detected: cmd.exe (fallback)');
39
- return _detectedShell;
40
- }
41
- // ─── Трансляция Unix → PowerShell ─────────────────────────
42
- // Автоматически конвертирует стандартные Unix-команды в PowerShell-эквиваленты
43
- const UNIX_TO_PWSH = [
44
- [/^ls\s+-la/, 'dir'],
45
- [/^ls\s+/, 'dir '],
46
- [/^cat\s+/, 'Get-Content '],
47
- [/^rm\s+/, 'Remove-Item -Force '],
48
- [/^mv\s+/, 'Move-Item '],
49
- [/^cp\s+/, 'Copy-Item '],
50
- [/^mkdir\s+-p\s+(.+)/, (match) => {
51
- // Handle multiple directories: mkdir -p dir1 dir2 dir3
52
- const dirs = match[1].split(/\s+/).filter(Boolean);
53
- return dirs.map(d => `New-Item -ItemType Directory -Force -Path "${d}"`).join('; ');
54
- }],
55
- [/^mkdir\s+/, 'New-Item -ItemType Directory -Path '],
56
- [/^touch\s+/, 'New-Item -ItemType File -Force -Path '],
57
- [/^grep\s+/, "Select-String -Pattern "],
58
- [/^wc\s+/, 'Measure-Object -Line '],
59
- [/^head\s+/, 'Get-Content -TotalCount '],
60
- [/^tail\s+/, 'Get-Content -Tail '],
61
- [/^echo\s+-e\s+/, 'Write-Output '],
62
- [/^echo\s+/, 'Write-Output '],
63
- [/^pwd\s*$/, 'Get-Location'],
64
- [/^which\s+/, 'Get-Command '],
65
- [/^find\s+/, 'Get-ChildItem -Recurse -Filter '],
66
- [/^chmod\s+/, '# chmod not needed on Windows -- '],
67
- ];
68
- function expandBraces(cmd) {
69
- // Expand bash-style brace expansion: dir\{a,b,c} -> dir\a
70
- // PowerShell script blocks { ... } and hashtables @{ ... } must NOT be touched
71
- return cmd.replace(/\{([^{}]*,[^{}]*)\}/g, (_, inner) => {
72
- const items = inner.split(',').map((s) => s.trim());
73
- return items[0] || '';
74
- });
75
- }
76
- function needsBraceExpansion(cmd) {
77
- // Only expand if the pattern looks like a bash brace expansion (contains comma)
78
- return /\{[^{}]*,[^{}]*\}/.test(cmd);
79
- }
80
- function translateToPowerShell(cmd) {
81
- // Expand bash-style brace expansions (but NOT PowerShell { } blocks or @{ } hashtables)
82
- if (needsBraceExpansion(cmd)) {
83
- cmd = expandBraces(cmd);
84
- }
85
- for (const [pattern, replacement] of UNIX_TO_PWSH) {
86
- if (pattern.test(cmd)) {
87
- if (typeof replacement === 'function') {
88
- const match = cmd.match(pattern);
89
- if (match)
90
- return replacement(match);
91
- }
92
- else {
93
- return cmd.replace(pattern, replacement);
94
- }
95
- }
96
- }
97
- return cmd;
98
- }
99
- function ensureDirectoryExists(cmd, cwd) {
100
- // Auto-create directory for Set-Content commands
101
- const match = cmd.match(/Set-Content\s+-Path\s+['"]?([^'"]+?)['"]?\s+-Value/i);
102
- if (match) {
103
- let filePath = match[1];
104
- // Fix common path issues: blog-api\src\file.ts -> blog-api/src/file.ts
105
- filePath = filePath.replace(/\\/g, '/');
106
- const dir = filePath.split('/').slice(0, -1).join('/');
107
- if (dir) {
108
- const fullDir = join(cwd, dir);
109
- if (!existsSync(fullDir)) {
110
- mkdirSync(fullDir, { recursive: true });
111
- }
112
- }
113
- }
114
- }
115
- function fixJsonContent(cmd) {
116
- // Fix backslashes in JSON content that break JSON parsing
117
- // Problem: "dist\index.js" -> "dist\\index.js" or "dist/index.js"
118
- return cmd.replace(/(-Value\s+['"])(.*?)(['"])/gs, (match, prefix, content, suffix) => {
119
- // Replace \ with / in content (except for valid JSON escapes like \n, \t, \")
120
- const fixed = content
121
- .replace(/\\([^nrtbf"\\])/g, '/$1') // \i -> /i, but keep \n \t etc
122
- .replace(/\\\\/g, '/'); // \\ -> /
123
- return prefix + fixed + suffix;
124
- });
125
- }
126
- function fixCommonPathIssues(cmd) {
127
- // Fix: blog-api\src\file.ts -> blog-api/src/file.ts (normalize slashes)
128
- // Fix: blog-apifile.ts -> blog-api/file.ts (missing slash)
129
- let fixed = cmd;
130
- // Fix missing slash between folder and file: "blog-api\package.json" -> "blog-api/package.json"
131
- // But only if it looks like a path issue (no slash between folder name and file)
132
- fixed = fixed.replace(/(['"])(\w+)-(\w+)\\(\w+\.\w+)/g, '$1$2-$3/$4');
133
- return fixed;
134
- }
135
- function encodePowerShellCommand(cmd) {
136
- const utf16le = Buffer.from(cmd, 'utf16le');
137
- return utf16le.toString('base64');
138
- }
139
- function cleanCliXml(text) {
140
- // Remove CLIXML wrapper and ANSI codes
141
- if (!text.includes('#< CLIXML') && !text.includes('<Objs'))
142
- return text;
143
- // Extract error messages from CLIXML
144
- const errors = [];
145
- const regex = /<S S="Error">(.*?)<\/S>/gs;
146
- let match;
147
- while ((match = regex.exec(text)) !== null) {
148
- // Remove ANSI codes and CLIXML entities
149
- let msg = match[1]
150
- .replace(/_x001B_\[[0-9;]*m/g, '') // ANSI codes
151
- .replace(/&lt;/g, '<')
152
- .replace(/&gt;/g, '>')
153
- .replace(/&amp;/g, '&')
154
- .replace(/&quot;/g, '"')
155
- .trim();
156
- if (msg && !errors.includes(msg)) {
157
- errors.push(msg);
158
- }
159
- }
160
- return errors.length > 0 ? errors.join('\n') : text;
161
- }
162
- export async function executeBash(cmd, timeoutSeconds = 120) {
163
- // Block recursive calls to MMA itself
164
- if (/\bmma\b/.test(cmd) && /\brun\b/.test(cmd)) {
165
- return { stdout: '', stderr: 'Blocked: recursive MMA call detected. Use filesystem tools instead.', exitCode: 1, truncated: false };
166
- }
167
- // Dev server detection: long-running commands — не ждать завершения
168
- const DEV_SERVER_PATTERNS = [
169
- /\bnpm\s+run\s+dev\b/i,
170
- /\bnpx\s+vite\b/i,
171
- /\bvite\s+(--|serve)\b/i,
172
- /\bwebpack\s+serve\b/i,
173
- /\bnext\s+dev\b/i,
174
- /\bnodemon\b/i,
175
- /\bpm2\s+start\b/i,
176
- /\bforeman\b/i,
177
- ];
178
- if (DEV_SERVER_PATTERNS.some(p => p.test(cmd))) {
179
- return {
180
- stdout: `[Dev server started] Команда "${cmd}" запущена в фоне. Это long-running процесс — он не завершается. Сервер работает.`,
181
- stderr: '',
182
- exitCode: 0,
183
- truncated: false,
184
- };
185
- }
186
- cmd = fixCommonPathIssues(cmd);
187
- cmd = fixJsonContent(cmd);
188
- cmd = translateToPowerShell(cmd);
189
- if (!sanitize(cmd).safe) {
190
- const theme = getTheme();
191
- return { stdout: '', stderr: theme.error(`Blocked by sanitizer`), exitCode: 1, truncated: false };
192
- }
193
- // Auto-create directory for file write commands
194
- ensureDirectoryExists(cmd, process.cwd());
195
- if (!existsSync(CACHE_DIR)) {
196
- mkdirSync(CACHE_DIR, { recursive: true });
197
- }
198
- const cacheId = `${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
199
- const cacheFile = join(CACHE_DIR, `${cacheId}.out`);
200
- let stdout = '';
201
- let stderr = '';
202
- let exitCode = 0;
203
- const shell = detectShell();
204
- try {
205
- let result;
206
- if (shell.isPowerShell) {
207
- // PowerShell: используем -EncodedCommand для корректной передачи Unicode
208
- const encoded = encodePowerShellCommand(cmd);
209
- result = await execa(shell.executable, [...shell.args, encoded], {
210
- timeout: timeoutSeconds * 1000,
211
- maxBuffer: 10 * 1024 * 1024,
212
- windowsHide: true,
213
- cwd: process.cwd(),
214
- env: process.env,
215
- encoding: 'utf8',
216
- });
217
- }
218
- else if (shell.executable === 'cmd.exe') {
219
- // cmd.exe: передаём команду напрямую
220
- result = await execa(shell.executable, [...shell.args, cmd], {
221
- timeout: timeoutSeconds * 1000,
222
- maxBuffer: 10 * 1024 * 1024,
223
- windowsHide: true,
224
- cwd: process.cwd(),
225
- env: process.env,
226
- encoding: 'utf8',
227
- });
228
- }
229
- else {
230
- // sh (unix): передаём команду напрямую
231
- result = await execa(shell.executable, [...shell.args, cmd], {
232
- timeout: timeoutSeconds * 1000,
233
- maxBuffer: 10 * 1024 * 1024,
234
- windowsHide: true,
235
- cwd: process.cwd(),
236
- env: process.env,
237
- encoding: 'utf8',
238
- });
239
- }
240
- stdout = result.stdout;
241
- stderr = result.stderr;
242
- exitCode = result.exitCode ?? 0;
243
- }
244
- catch (e) {
245
- if (e instanceof ExecaError) {
246
- stdout = e.stdout ?? '';
247
- stderr = e.stderr ?? '';
248
- exitCode = e.exitCode ?? 1;
249
- }
250
- else {
251
- stderr = String(e);
252
- exitCode = 1;
253
- }
254
- }
255
- // Clean CLIXML from stderr
256
- stderr = cleanCliXml(stderr);
257
- writeFileSync(cacheFile, stdout, 'utf-8');
258
- let truncated = false;
259
- if (stdout.length > MAX_OUTPUT_LENGTH) {
260
- stdout = stdout.slice(0, MAX_OUTPUT_LENGTH) + `\n... (полный вывод сохранён в ${cacheFile})`;
261
- truncated = true;
262
- }
263
- if (stderr.length > MAX_OUTPUT_LENGTH) {
264
- stderr = stderr.slice(0, MAX_OUTPUT_LENGTH);
265
- }
266
- return { stdout, stderr, exitCode, truncated };
267
- }
268
- export const bashDefinition = {
269
- type: 'function',
270
- function: {
271
- name: 'bash',
272
- description: 'Execute a shell command. Use for non-file operations (npm, git, etc).',
273
- parameters: {
274
- type: 'object',
275
- properties: {
276
- cmd: { type: 'string', description: 'The command to execute' },
277
- timeout: { type: 'number', description: 'Seconds before timeout (default 120, max 600)' },
278
- },
279
- required: ['cmd'],
280
- },
281
- },
282
- };
283
- export const bashHandler = {
284
- name: 'bash',
285
- definition: bashDefinition,
286
- async execute(args) {
287
- const cmd = String(args.cmd ?? '');
288
- const timeout = Math.min(600, Math.max(1, Number(args.timeout ?? 120)));
289
- return executeBash(cmd, timeout);
290
- },
291
- };
292
- //# sourceMappingURL=bash.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { ToolDefinition } from '../registry.js';
2
- import type { ToolHandler } from '../types.js';
3
- import { fsOk } from './types.js';
4
- /**
5
- * Инструмент копирования файлов.
6
- * Создаёт родительские директории автоматически.
7
- *
8
- * @module tools/fs/copy-file
9
- */
10
- export declare const copyFileDefinition: ToolDefinition;
11
- export declare function handleCopyFile(args: Record<string, unknown>, cwd: string): ReturnType<typeof fsOk>;
12
- export declare const copyFileHandler: ToolHandler;
13
- //# sourceMappingURL=copy-file.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"copy-file.d.ts","sourceRoot":"","sources":["../../../src/tools/fs/copy-file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,EAAW,IAAI,EAAE,MAAM,YAAY,CAAC;AAE3C;;;;;GAKG;AAEH,eAAO,MAAM,kBAAkB,EAAE,cAchC,CAAC;AAEF,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,GAAG,EAAE,MAAM,GACV,UAAU,CAAC,OAAO,IAAI,CAAC,CAqBzB;AAED,eAAO,MAAM,eAAe,EAAE,WAM7B,CAAC"}