codemate-ai 1.0.0 → 1.0.2

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 (531) hide show
  1. package/README.md +30 -27
  2. package/dist/cli.js +5344 -0
  3. package/package.json +6 -4
  4. package/dist/src/agents/base/Agent.d.ts +0 -13
  5. package/dist/src/agents/base/Agent.d.ts.map +0 -1
  6. package/dist/src/agents/base/Agent.js +0 -10
  7. package/dist/src/agents/base/Agent.js.map +0 -1
  8. package/dist/src/agents/builtin/ExploreAgent.d.ts +0 -13
  9. package/dist/src/agents/builtin/ExploreAgent.d.ts.map +0 -1
  10. package/dist/src/agents/builtin/ExploreAgent.js +0 -71
  11. package/dist/src/agents/builtin/ExploreAgent.js.map +0 -1
  12. package/dist/src/agents/builtin/GeneralAgent.d.ts +0 -13
  13. package/dist/src/agents/builtin/GeneralAgent.d.ts.map +0 -1
  14. package/dist/src/agents/builtin/GeneralAgent.js +0 -80
  15. package/dist/src/agents/builtin/GeneralAgent.js.map +0 -1
  16. package/dist/src/agents/builtin/PlanAgent.d.ts +0 -15
  17. package/dist/src/agents/builtin/PlanAgent.d.ts.map +0 -1
  18. package/dist/src/agents/builtin/PlanAgent.js +0 -85
  19. package/dist/src/agents/builtin/PlanAgent.js.map +0 -1
  20. package/dist/src/application/Application.d.ts +0 -28
  21. package/dist/src/application/Application.d.ts.map +0 -1
  22. package/dist/src/application/Application.js +0 -209
  23. package/dist/src/application/Application.js.map +0 -1
  24. package/dist/src/application/Container.d.ts +0 -14
  25. package/dist/src/application/Container.d.ts.map +0 -1
  26. package/dist/src/application/Container.js +0 -47
  27. package/dist/src/application/Container.js.map +0 -1
  28. package/dist/src/cli.d.ts +0 -3
  29. package/dist/src/cli.d.ts.map +0 -1
  30. package/dist/src/cli.js +0 -54
  31. package/dist/src/cli.js.map +0 -1
  32. package/dist/src/code/CodeEditor.d.ts +0 -9
  33. package/dist/src/code/CodeEditor.d.ts.map +0 -1
  34. package/dist/src/code/CodeEditor.js +0 -61
  35. package/dist/src/code/CodeEditor.js.map +0 -1
  36. package/dist/src/code/CodeLocator.d.ts +0 -8
  37. package/dist/src/code/CodeLocator.d.ts.map +0 -1
  38. package/dist/src/code/CodeLocator.js +0 -111
  39. package/dist/src/code/CodeLocator.js.map +0 -1
  40. package/dist/src/code/CodeParser.d.ts +0 -6
  41. package/dist/src/code/CodeParser.d.ts.map +0 -1
  42. package/dist/src/code/CodeParser.js +0 -32
  43. package/dist/src/code/CodeParser.js.map +0 -1
  44. package/dist/src/code/types.d.ts +0 -21
  45. package/dist/src/code/types.d.ts.map +0 -1
  46. package/dist/src/code/types.js +0 -2
  47. package/dist/src/code/types.js.map +0 -1
  48. package/dist/src/commands/base/SlashCommand.d.ts +0 -14
  49. package/dist/src/commands/base/SlashCommand.d.ts.map +0 -1
  50. package/dist/src/commands/base/SlashCommand.js +0 -14
  51. package/dist/src/commands/base/SlashCommand.js.map +0 -1
  52. package/dist/src/commands/model/ModelCommand.d.ts +0 -10
  53. package/dist/src/commands/model/ModelCommand.d.ts.map +0 -1
  54. package/dist/src/commands/model/ModelCommand.js +0 -20
  55. package/dist/src/commands/model/ModelCommand.js.map +0 -1
  56. package/dist/src/commands/performance/PerformanceCommand.d.ts +0 -12
  57. package/dist/src/commands/performance/PerformanceCommand.d.ts.map +0 -1
  58. package/dist/src/commands/performance/PerformanceCommand.js +0 -22
  59. package/dist/src/commands/performance/PerformanceCommand.js.map +0 -1
  60. package/dist/src/commands/session/ClearCommand.d.ts +0 -9
  61. package/dist/src/commands/session/ClearCommand.d.ts.map +0 -1
  62. package/dist/src/commands/session/ClearCommand.js +0 -19
  63. package/dist/src/commands/session/ClearCommand.js.map +0 -1
  64. package/dist/src/commands/session/ExitCommand.d.ts +0 -9
  65. package/dist/src/commands/session/ExitCommand.d.ts.map +0 -1
  66. package/dist/src/commands/session/ExitCommand.js +0 -12
  67. package/dist/src/commands/session/ExitCommand.js.map +0 -1
  68. package/dist/src/commands/session/HelpCommand.d.ts +0 -9
  69. package/dist/src/commands/session/HelpCommand.d.ts.map +0 -1
  70. package/dist/src/commands/session/HelpCommand.js +0 -44
  71. package/dist/src/commands/session/HelpCommand.js.map +0 -1
  72. package/dist/src/commands/session/SessionsCommand.d.ts +0 -9
  73. package/dist/src/commands/session/SessionsCommand.d.ts.map +0 -1
  74. package/dist/src/commands/session/SessionsCommand.js +0 -26
  75. package/dist/src/commands/session/SessionsCommand.js.map +0 -1
  76. package/dist/src/commands/snapshot/RewindCommand.d.ts +0 -9
  77. package/dist/src/commands/snapshot/RewindCommand.d.ts.map +0 -1
  78. package/dist/src/commands/snapshot/RewindCommand.js +0 -43
  79. package/dist/src/commands/snapshot/RewindCommand.js.map +0 -1
  80. package/dist/src/commands/snapshot/SnapshotsCommand.d.ts +0 -9
  81. package/dist/src/commands/snapshot/SnapshotsCommand.d.ts.map +0 -1
  82. package/dist/src/commands/snapshot/SnapshotsCommand.js +0 -25
  83. package/dist/src/commands/snapshot/SnapshotsCommand.js.map +0 -1
  84. package/dist/src/commands/spec/SpecCreateCommand.d.ts +0 -9
  85. package/dist/src/commands/spec/SpecCreateCommand.d.ts.map +0 -1
  86. package/dist/src/commands/spec/SpecCreateCommand.js +0 -22
  87. package/dist/src/commands/spec/SpecCreateCommand.js.map +0 -1
  88. package/dist/src/commands/spec/SpecListCommand.d.ts +0 -9
  89. package/dist/src/commands/spec/SpecListCommand.d.ts.map +0 -1
  90. package/dist/src/commands/spec/SpecListCommand.js +0 -15
  91. package/dist/src/commands/spec/SpecListCommand.js.map +0 -1
  92. package/dist/src/commands/spec/SpecShowCommand.d.ts +0 -9
  93. package/dist/src/commands/spec/SpecShowCommand.d.ts.map +0 -1
  94. package/dist/src/commands/spec/SpecShowCommand.js +0 -21
  95. package/dist/src/commands/spec/SpecShowCommand.js.map +0 -1
  96. package/dist/src/managers/AgentManager.d.ts +0 -19
  97. package/dist/src/managers/AgentManager.d.ts.map +0 -1
  98. package/dist/src/managers/AgentManager.js +0 -47
  99. package/dist/src/managers/AgentManager.js.map +0 -1
  100. package/dist/src/managers/PluginManager.d.ts +0 -23
  101. package/dist/src/managers/PluginManager.d.ts.map +0 -1
  102. package/dist/src/managers/PluginManager.js +0 -80
  103. package/dist/src/managers/PluginManager.js.map +0 -1
  104. package/dist/src/managers/SlashCommandManager.d.ts +0 -19
  105. package/dist/src/managers/SlashCommandManager.d.ts.map +0 -1
  106. package/dist/src/managers/SlashCommandManager.js +0 -80
  107. package/dist/src/managers/SlashCommandManager.js.map +0 -1
  108. package/dist/src/managers/SpecManager.d.ts +0 -26
  109. package/dist/src/managers/SpecManager.d.ts.map +0 -1
  110. package/dist/src/managers/SpecManager.js +0 -134
  111. package/dist/src/managers/SpecManager.js.map +0 -1
  112. package/dist/src/managers/ToolManager.d.ts +0 -24
  113. package/dist/src/managers/ToolManager.d.ts.map +0 -1
  114. package/dist/src/managers/ToolManager.js +0 -97
  115. package/dist/src/managers/ToolManager.js.map +0 -1
  116. package/dist/src/mcp/MCPClient.d.ts +0 -17
  117. package/dist/src/mcp/MCPClient.d.ts.map +0 -1
  118. package/dist/src/mcp/MCPClient.js +0 -117
  119. package/dist/src/mcp/MCPClient.js.map +0 -1
  120. package/dist/src/mcp/MCPManager.d.ts +0 -12
  121. package/dist/src/mcp/MCPManager.d.ts.map +0 -1
  122. package/dist/src/mcp/MCPManager.js +0 -63
  123. package/dist/src/mcp/MCPManager.js.map +0 -1
  124. package/dist/src/mcp/MCPTool.d.ts +0 -15
  125. package/dist/src/mcp/MCPTool.d.ts.map +0 -1
  126. package/dist/src/mcp/MCPTool.js +0 -73
  127. package/dist/src/mcp/MCPTool.js.map +0 -1
  128. package/dist/src/mcp/types.d.ts +0 -42
  129. package/dist/src/mcp/types.d.ts.map +0 -1
  130. package/dist/src/mcp/types.js +0 -2
  131. package/dist/src/mcp/types.js.map +0 -1
  132. package/dist/src/optimization/CompactionService.d.ts +0 -10
  133. package/dist/src/optimization/CompactionService.d.ts.map +0 -1
  134. package/dist/src/optimization/CompactionService.js +0 -82
  135. package/dist/src/optimization/CompactionService.js.map +0 -1
  136. package/dist/src/optimization/CompressionService.d.ts +0 -18
  137. package/dist/src/optimization/CompressionService.d.ts.map +0 -1
  138. package/dist/src/optimization/CompressionService.js +0 -95
  139. package/dist/src/optimization/CompressionService.js.map +0 -1
  140. package/dist/src/optimization/PerformanceMonitor.d.ts +0 -22
  141. package/dist/src/optimization/PerformanceMonitor.d.ts.map +0 -1
  142. package/dist/src/optimization/PerformanceMonitor.js +0 -90
  143. package/dist/src/optimization/PerformanceMonitor.js.map +0 -1
  144. package/dist/src/optimization/PruningService.d.ts +0 -5
  145. package/dist/src/optimization/PruningService.d.ts.map +0 -1
  146. package/dist/src/optimization/PruningService.js +0 -59
  147. package/dist/src/optimization/PruningService.js.map +0 -1
  148. package/dist/src/optimization/types.d.ts +0 -49
  149. package/dist/src/optimization/types.d.ts.map +0 -1
  150. package/dist/src/optimization/types.js +0 -2
  151. package/dist/src/optimization/types.js.map +0 -1
  152. package/dist/src/plugins/base/Plugin.d.ts +0 -17
  153. package/dist/src/plugins/base/Plugin.d.ts.map +0 -1
  154. package/dist/src/plugins/base/Plugin.js +0 -19
  155. package/dist/src/plugins/base/Plugin.js.map +0 -1
  156. package/dist/src/plugins/builtin/LoggerPlugin.d.ts +0 -13
  157. package/dist/src/plugins/builtin/LoggerPlugin.d.ts.map +0 -1
  158. package/dist/src/plugins/builtin/LoggerPlugin.js +0 -19
  159. package/dist/src/plugins/builtin/LoggerPlugin.js.map +0 -1
  160. package/dist/src/plugins/builtin/PerformancePlugin.d.ts +0 -16
  161. package/dist/src/plugins/builtin/PerformancePlugin.d.ts.map +0 -1
  162. package/dist/src/plugins/builtin/PerformancePlugin.js +0 -50
  163. package/dist/src/plugins/builtin/PerformancePlugin.js.map +0 -1
  164. package/dist/src/plugins/builtin/SecurityPlugin.d.ts +0 -18
  165. package/dist/src/plugins/builtin/SecurityPlugin.d.ts.map +0 -1
  166. package/dist/src/plugins/builtin/SecurityPlugin.js +0 -42
  167. package/dist/src/plugins/builtin/SecurityPlugin.js.map +0 -1
  168. package/dist/src/server/HTTPServer.d.ts +0 -25
  169. package/dist/src/server/HTTPServer.d.ts.map +0 -1
  170. package/dist/src/server/HTTPServer.js +0 -231
  171. package/dist/src/server/HTTPServer.js.map +0 -1
  172. package/dist/src/server/WebSocketServer.d.ts +0 -16
  173. package/dist/src/server/WebSocketServer.d.ts.map +0 -1
  174. package/dist/src/server/WebSocketServer.js +0 -118
  175. package/dist/src/server/WebSocketServer.js.map +0 -1
  176. package/dist/src/services/ConfigService.d.ts +0 -23
  177. package/dist/src/services/ConfigService.d.ts.map +0 -1
  178. package/dist/src/services/ConfigService.js +0 -169
  179. package/dist/src/services/ConfigService.js.map +0 -1
  180. package/dist/src/services/EventBus.d.ts +0 -12
  181. package/dist/src/services/EventBus.d.ts.map +0 -1
  182. package/dist/src/services/EventBus.js +0 -63
  183. package/dist/src/services/EventBus.js.map +0 -1
  184. package/dist/src/services/ModelService.d.ts +0 -24
  185. package/dist/src/services/ModelService.d.ts.map +0 -1
  186. package/dist/src/services/ModelService.js +0 -188
  187. package/dist/src/services/ModelService.js.map +0 -1
  188. package/dist/src/services/Paths.d.ts +0 -17
  189. package/dist/src/services/Paths.d.ts.map +0 -1
  190. package/dist/src/services/Paths.js +0 -125
  191. package/dist/src/services/Paths.js.map +0 -1
  192. package/dist/src/services/SessionService.d.ts +0 -19
  193. package/dist/src/services/SessionService.d.ts.map +0 -1
  194. package/dist/src/services/SessionService.js +0 -137
  195. package/dist/src/services/SessionService.js.map +0 -1
  196. package/dist/src/snapshot/FileHistory.d.ts +0 -18
  197. package/dist/src/snapshot/FileHistory.d.ts.map +0 -1
  198. package/dist/src/snapshot/FileHistory.js +0 -118
  199. package/dist/src/snapshot/FileHistory.js.map +0 -1
  200. package/dist/src/snapshot/types.d.ts +0 -19
  201. package/dist/src/snapshot/types.d.ts.map +0 -1
  202. package/dist/src/snapshot/types.js +0 -2
  203. package/dist/src/snapshot/types.js.map +0 -1
  204. package/dist/src/specs/types.d.ts +0 -54
  205. package/dist/src/specs/types.d.ts.map +0 -1
  206. package/dist/src/specs/types.js +0 -8
  207. package/dist/src/specs/types.js.map +0 -1
  208. package/dist/src/specs/utils/generator.d.ts +0 -4
  209. package/dist/src/specs/utils/generator.d.ts.map +0 -1
  210. package/dist/src/specs/utils/generator.js +0 -106
  211. package/dist/src/specs/utils/generator.js.map +0 -1
  212. package/dist/src/specs/utils/parser.d.ts +0 -3
  213. package/dist/src/specs/utils/parser.d.ts.map +0 -1
  214. package/dist/src/specs/utils/parser.js +0 -152
  215. package/dist/src/specs/utils/parser.js.map +0 -1
  216. package/dist/src/styles/base/OutputStyle.d.ts +0 -15
  217. package/dist/src/styles/base/OutputStyle.d.ts.map +0 -1
  218. package/dist/src/styles/base/OutputStyle.js +0 -16
  219. package/dist/src/styles/base/OutputStyle.js.map +0 -1
  220. package/dist/src/styles/builtin/index.d.ts +0 -8
  221. package/dist/src/styles/builtin/index.d.ts.map +0 -1
  222. package/dist/src/styles/builtin/index.js +0 -61
  223. package/dist/src/styles/builtin/index.js.map +0 -1
  224. package/dist/src/styles/managers/OutputStyleManager.d.ts +0 -20
  225. package/dist/src/styles/managers/OutputStyleManager.d.ts.map +0 -1
  226. package/dist/src/styles/managers/OutputStyleManager.js +0 -110
  227. package/dist/src/styles/managers/OutputStyleManager.js.map +0 -1
  228. package/dist/src/styles/utils/markdown.d.ts +0 -18
  229. package/dist/src/styles/utils/markdown.d.ts.map +0 -1
  230. package/dist/src/styles/utils/markdown.js +0 -107
  231. package/dist/src/styles/utils/markdown.js.map +0 -1
  232. package/dist/src/tools/base/Tool.d.ts +0 -17
  233. package/dist/src/tools/base/Tool.d.ts.map +0 -1
  234. package/dist/src/tools/base/Tool.js +0 -31
  235. package/dist/src/tools/base/Tool.js.map +0 -1
  236. package/dist/src/tools/code/EditCodeTool.d.ts +0 -50
  237. package/dist/src/tools/code/EditCodeTool.d.ts.map +0 -1
  238. package/dist/src/tools/code/EditCodeTool.js +0 -38
  239. package/dist/src/tools/code/EditCodeTool.js.map +0 -1
  240. package/dist/src/tools/file/DeleteFileTool.d.ts +0 -18
  241. package/dist/src/tools/file/DeleteFileTool.d.ts.map +0 -1
  242. package/dist/src/tools/file/DeleteFileTool.js +0 -45
  243. package/dist/src/tools/file/DeleteFileTool.js.map +0 -1
  244. package/dist/src/tools/file/EditFileTool.d.ts +0 -24
  245. package/dist/src/tools/file/EditFileTool.d.ts.map +0 -1
  246. package/dist/src/tools/file/EditFileTool.js +0 -53
  247. package/dist/src/tools/file/EditFileTool.js.map +0 -1
  248. package/dist/src/tools/file/ListFilesTool.d.ts +0 -29
  249. package/dist/src/tools/file/ListFilesTool.d.ts.map +0 -1
  250. package/dist/src/tools/file/ListFilesTool.js +0 -34
  251. package/dist/src/tools/file/ListFilesTool.js.map +0 -1
  252. package/dist/src/tools/file/ReadFileTool.d.ts +0 -25
  253. package/dist/src/tools/file/ReadFileTool.d.ts.map +0 -1
  254. package/dist/src/tools/file/ReadFileTool.js +0 -38
  255. package/dist/src/tools/file/ReadFileTool.js.map +0 -1
  256. package/dist/src/tools/file/WriteFileTool.d.ts +0 -30
  257. package/dist/src/tools/file/WriteFileTool.d.ts.map +0 -1
  258. package/dist/src/tools/file/WriteFileTool.js +0 -39
  259. package/dist/src/tools/file/WriteFileTool.js.map +0 -1
  260. package/dist/src/tools/interactive/AskUserTool.d.ts +0 -18
  261. package/dist/src/tools/interactive/AskUserTool.d.ts.map +0 -1
  262. package/dist/src/tools/interactive/AskUserTool.js +0 -43
  263. package/dist/src/tools/interactive/AskUserTool.js.map +0 -1
  264. package/dist/src/tools/interactive/ConfirmTool.d.ts +0 -18
  265. package/dist/src/tools/interactive/ConfirmTool.d.ts.map +0 -1
  266. package/dist/src/tools/interactive/ConfirmTool.js +0 -53
  267. package/dist/src/tools/interactive/ConfirmTool.js.map +0 -1
  268. package/dist/src/tools/network/FetchTool.d.ts +0 -24
  269. package/dist/src/tools/network/FetchTool.d.ts.map +0 -1
  270. package/dist/src/tools/network/FetchTool.js +0 -56
  271. package/dist/src/tools/network/FetchTool.js.map +0 -1
  272. package/dist/src/tools/network/WebSearchTool.d.ts +0 -20
  273. package/dist/src/tools/network/WebSearchTool.d.ts.map +0 -1
  274. package/dist/src/tools/network/WebSearchTool.js +0 -69
  275. package/dist/src/tools/network/WebSearchTool.js.map +0 -1
  276. package/dist/src/tools/search/GlobTool.d.ts +0 -20
  277. package/dist/src/tools/search/GlobTool.d.ts.map +0 -1
  278. package/dist/src/tools/search/GlobTool.js +0 -62
  279. package/dist/src/tools/search/GlobTool.js.map +0 -1
  280. package/dist/src/tools/search/GrepTool.d.ts +0 -26
  281. package/dist/src/tools/search/GrepTool.d.ts.map +0 -1
  282. package/dist/src/tools/search/GrepTool.js +0 -97
  283. package/dist/src/tools/search/GrepTool.js.map +0 -1
  284. package/dist/src/tools/spec/SpecReadTool.d.ts +0 -16
  285. package/dist/src/tools/spec/SpecReadTool.d.ts.map +0 -1
  286. package/dist/src/tools/spec/SpecReadTool.js +0 -79
  287. package/dist/src/tools/spec/SpecReadTool.js.map +0 -1
  288. package/dist/src/tools/spec/SpecUpdateTaskTool.d.ts +0 -23
  289. package/dist/src/tools/spec/SpecUpdateTaskTool.d.ts.map +0 -1
  290. package/dist/src/tools/spec/SpecUpdateTaskTool.js +0 -42
  291. package/dist/src/tools/spec/SpecUpdateTaskTool.js.map +0 -1
  292. package/dist/src/tools/special/ExitPlanTool.d.ts +0 -15
  293. package/dist/src/tools/special/ExitPlanTool.d.ts.map +0 -1
  294. package/dist/src/tools/special/ExitPlanTool.js +0 -32
  295. package/dist/src/tools/special/ExitPlanTool.js.map +0 -1
  296. package/dist/src/tools/special/SkillTool.d.ts +0 -19
  297. package/dist/src/tools/special/SkillTool.d.ts.map +0 -1
  298. package/dist/src/tools/special/SkillTool.js +0 -45
  299. package/dist/src/tools/special/SkillTool.js.map +0 -1
  300. package/dist/src/tools/system/BashTool.d.ts +0 -18
  301. package/dist/src/tools/system/BashTool.d.ts.map +0 -1
  302. package/dist/src/tools/system/BashTool.js +0 -29
  303. package/dist/src/tools/system/BashTool.js.map +0 -1
  304. package/dist/src/tools/system/EnvTool.d.ts +0 -15
  305. package/dist/src/tools/system/EnvTool.d.ts.map +0 -1
  306. package/dist/src/tools/system/EnvTool.js +0 -47
  307. package/dist/src/tools/system/EnvTool.js.map +0 -1
  308. package/dist/src/tools/system/ExecTool.d.ts +0 -21
  309. package/dist/src/tools/system/ExecTool.d.ts.map +0 -1
  310. package/dist/src/tools/system/ExecTool.js +0 -41
  311. package/dist/src/tools/system/ExecTool.js.map +0 -1
  312. package/dist/src/tools/task/TaskTool.d.ts +0 -34
  313. package/dist/src/tools/task/TaskTool.d.ts.map +0 -1
  314. package/dist/src/tools/task/TaskTool.js +0 -105
  315. package/dist/src/tools/task/TaskTool.js.map +0 -1
  316. package/dist/src/tools/task/TodoReadTool.d.ts +0 -16
  317. package/dist/src/tools/task/TodoReadTool.d.ts.map +0 -1
  318. package/dist/src/tools/task/TodoReadTool.js +0 -43
  319. package/dist/src/tools/task/TodoReadTool.js.map +0 -1
  320. package/dist/src/tools/task/TodoWriteTool.d.ts +0 -25
  321. package/dist/src/tools/task/TodoWriteTool.d.ts.map +0 -1
  322. package/dist/src/tools/task/TodoWriteTool.js +0 -82
  323. package/dist/src/tools/task/TodoWriteTool.js.map +0 -1
  324. package/dist/src/types/index.d.ts +0 -175
  325. package/dist/src/types/index.d.ts.map +0 -1
  326. package/dist/src/types/index.js +0 -31
  327. package/dist/src/types/index.js.map +0 -1
  328. package/dist/src/ui/App.d.ts +0 -8
  329. package/dist/src/ui/App.d.ts.map +0 -1
  330. package/dist/src/ui/App.js +0 -100
  331. package/dist/src/ui/App.js.map +0 -1
  332. package/dist/src/ui/components/MessageList.d.ts +0 -8
  333. package/dist/src/ui/components/MessageList.d.ts.map +0 -1
  334. package/dist/src/ui/components/MessageList.js +0 -13
  335. package/dist/src/ui/components/MessageList.js.map +0 -1
  336. package/dist/src/ui/components/SessionList.d.ts +0 -10
  337. package/dist/src/ui/components/SessionList.d.ts.map +0 -1
  338. package/dist/src/ui/components/SessionList.js +0 -23
  339. package/dist/src/ui/components/SessionList.js.map +0 -1
  340. package/dist/src/ui/context/AppContext.d.ts +0 -18
  341. package/dist/src/ui/context/AppContext.d.ts.map +0 -1
  342. package/dist/src/ui/context/AppContext.js +0 -22
  343. package/dist/src/ui/context/AppContext.js.map +0 -1
  344. package/dist/src/ui/hooks/useSession.d.ts +0 -6
  345. package/dist/src/ui/hooks/useSession.d.ts.map +0 -1
  346. package/dist/src/ui/hooks/useSession.js +0 -59
  347. package/dist/src/ui/hooks/useSession.js.map +0 -1
  348. package/dist/src/utils/calculator.d.ts +0 -3
  349. package/dist/src/utils/calculator.d.ts.map +0 -1
  350. package/dist/src/utils/calculator.js +0 -13
  351. package/dist/src/utils/calculator.js.map +0 -1
  352. package/dist/src/utils/firstRun.d.ts +0 -4
  353. package/dist/src/utils/firstRun.d.ts.map +0 -1
  354. package/dist/src/utils/firstRun.js +0 -32
  355. package/dist/src/utils/firstRun.js.map +0 -1
  356. package/dist/src/utils/math.d.ts +0 -2
  357. package/dist/src/utils/math.d.ts.map +0 -1
  358. package/dist/src/utils/math.js +0 -4
  359. package/dist/src/utils/math.js.map +0 -1
  360. package/dist/src/utils/setup.d.ts +0 -2
  361. package/dist/src/utils/setup.d.ts.map +0 -1
  362. package/dist/src/utils/setup.js +0 -87
  363. package/dist/src/utils/setup.js.map +0 -1
  364. package/dist/src/utils/tokenCounter.d.ts +0 -4
  365. package/dist/src/utils/tokenCounter.d.ts.map +0 -1
  366. package/dist/src/utils/tokenCounter.js +0 -27
  367. package/dist/src/utils/tokenCounter.js.map +0 -1
  368. package/dist/tests/integration/agents.test.d.ts +0 -2
  369. package/dist/tests/integration/agents.test.d.ts.map +0 -1
  370. package/dist/tests/integration/agents.test.js +0 -34
  371. package/dist/tests/integration/agents.test.js.map +0 -1
  372. package/dist/tests/integration/cli.test.d.ts +0 -2
  373. package/dist/tests/integration/cli.test.d.ts.map +0 -1
  374. package/dist/tests/integration/cli.test.js +0 -70
  375. package/dist/tests/integration/cli.test.js.map +0 -1
  376. package/dist/tests/integration/commands.test.d.ts +0 -2
  377. package/dist/tests/integration/commands.test.d.ts.map +0 -1
  378. package/dist/tests/integration/commands.test.js +0 -35
  379. package/dist/tests/integration/commands.test.js.map +0 -1
  380. package/dist/tests/integration/mcp.test.d.ts +0 -2
  381. package/dist/tests/integration/mcp.test.d.ts.map +0 -1
  382. package/dist/tests/integration/mcp.test.js +0 -44
  383. package/dist/tests/integration/mcp.test.js.map +0 -1
  384. package/dist/tests/integration/output-styles.test.d.ts +0 -2
  385. package/dist/tests/integration/output-styles.test.d.ts.map +0 -1
  386. package/dist/tests/integration/output-styles.test.js +0 -88
  387. package/dist/tests/integration/output-styles.test.js.map +0 -1
  388. package/dist/tests/integration/plugins.test.d.ts +0 -2
  389. package/dist/tests/integration/plugins.test.d.ts.map +0 -1
  390. package/dist/tests/integration/plugins.test.js +0 -42
  391. package/dist/tests/integration/plugins.test.js.map +0 -1
  392. package/dist/tests/integration/specs.test.d.ts +0 -2
  393. package/dist/tests/integration/specs.test.d.ts.map +0 -1
  394. package/dist/tests/integration/specs.test.js +0 -102
  395. package/dist/tests/integration/specs.test.js.map +0 -1
  396. package/dist/tests/integration/ui.test.d.ts +0 -2
  397. package/dist/tests/integration/ui.test.d.ts.map +0 -1
  398. package/dist/tests/integration/ui.test.js +0 -71
  399. package/dist/tests/integration/ui.test.js.map +0 -1
  400. package/dist/tests/mocks/mock-mcp-server.d.ts +0 -3
  401. package/dist/tests/mocks/mock-mcp-server.d.ts.map +0 -1
  402. package/dist/tests/mocks/mock-mcp-server.js +0 -127
  403. package/dist/tests/mocks/mock-mcp-server.js.map +0 -1
  404. package/dist/tests/unit/application/Application.test.d.ts +0 -2
  405. package/dist/tests/unit/application/Application.test.d.ts.map +0 -1
  406. package/dist/tests/unit/application/Application.test.js +0 -21
  407. package/dist/tests/unit/application/Application.test.js.map +0 -1
  408. package/dist/tests/unit/application/Container.test.d.ts +0 -2
  409. package/dist/tests/unit/application/Container.test.d.ts.map +0 -1
  410. package/dist/tests/unit/application/Container.test.js +0 -38
  411. package/dist/tests/unit/application/Container.test.js.map +0 -1
  412. package/dist/tests/unit/code/CodeEditor.test.d.ts +0 -2
  413. package/dist/tests/unit/code/CodeEditor.test.d.ts.map +0 -1
  414. package/dist/tests/unit/code/CodeEditor.test.js +0 -56
  415. package/dist/tests/unit/code/CodeEditor.test.js.map +0 -1
  416. package/dist/tests/unit/code/CodeLocator.test.d.ts +0 -2
  417. package/dist/tests/unit/code/CodeLocator.test.d.ts.map +0 -1
  418. package/dist/tests/unit/code/CodeLocator.test.js +0 -50
  419. package/dist/tests/unit/code/CodeLocator.test.js.map +0 -1
  420. package/dist/tests/unit/code/CodeParser.test.d.ts +0 -2
  421. package/dist/tests/unit/code/CodeParser.test.d.ts.map +0 -1
  422. package/dist/tests/unit/code/CodeParser.test.js +0 -27
  423. package/dist/tests/unit/code/CodeParser.test.js.map +0 -1
  424. package/dist/tests/unit/managers/AgentManager.test.d.ts +0 -2
  425. package/dist/tests/unit/managers/AgentManager.test.d.ts.map +0 -1
  426. package/dist/tests/unit/managers/AgentManager.test.js +0 -68
  427. package/dist/tests/unit/managers/AgentManager.test.js.map +0 -1
  428. package/dist/tests/unit/managers/PluginManager.test.d.ts +0 -2
  429. package/dist/tests/unit/managers/PluginManager.test.d.ts.map +0 -1
  430. package/dist/tests/unit/managers/PluginManager.test.js +0 -76
  431. package/dist/tests/unit/managers/PluginManager.test.js.map +0 -1
  432. package/dist/tests/unit/managers/SlashCommandManager.test.d.ts +0 -2
  433. package/dist/tests/unit/managers/SlashCommandManager.test.d.ts.map +0 -1
  434. package/dist/tests/unit/managers/SlashCommandManager.test.js +0 -47
  435. package/dist/tests/unit/managers/SlashCommandManager.test.js.map +0 -1
  436. package/dist/tests/unit/managers/SpecManager.test.d.ts +0 -2
  437. package/dist/tests/unit/managers/SpecManager.test.d.ts.map +0 -1
  438. package/dist/tests/unit/managers/SpecManager.test.js +0 -97
  439. package/dist/tests/unit/managers/SpecManager.test.js.map +0 -1
  440. package/dist/tests/unit/managers/ToolManager.test.d.ts +0 -2
  441. package/dist/tests/unit/managers/ToolManager.test.d.ts.map +0 -1
  442. package/dist/tests/unit/managers/ToolManager.test.js +0 -69
  443. package/dist/tests/unit/managers/ToolManager.test.js.map +0 -1
  444. package/dist/tests/unit/mcp/MCPClient.test.d.ts +0 -2
  445. package/dist/tests/unit/mcp/MCPClient.test.d.ts.map +0 -1
  446. package/dist/tests/unit/mcp/MCPClient.test.js +0 -40
  447. package/dist/tests/unit/mcp/MCPClient.test.js.map +0 -1
  448. package/dist/tests/unit/services/ConfigService.test.d.ts +0 -2
  449. package/dist/tests/unit/services/ConfigService.test.d.ts.map +0 -1
  450. package/dist/tests/unit/services/ConfigService.test.js +0 -104
  451. package/dist/tests/unit/services/ConfigService.test.js.map +0 -1
  452. package/dist/tests/unit/services/EventBus.test.d.ts +0 -2
  453. package/dist/tests/unit/services/EventBus.test.d.ts.map +0 -1
  454. package/dist/tests/unit/services/EventBus.test.js +0 -117
  455. package/dist/tests/unit/services/EventBus.test.js.map +0 -1
  456. package/dist/tests/unit/services/ModelService.test.d.ts +0 -2
  457. package/dist/tests/unit/services/ModelService.test.d.ts.map +0 -1
  458. package/dist/tests/unit/services/ModelService.test.js +0 -63
  459. package/dist/tests/unit/services/ModelService.test.js.map +0 -1
  460. package/dist/tests/unit/services/Paths.test.d.ts +0 -2
  461. package/dist/tests/unit/services/Paths.test.d.ts.map +0 -1
  462. package/dist/tests/unit/services/Paths.test.js +0 -33
  463. package/dist/tests/unit/services/Paths.test.js.map +0 -1
  464. package/dist/tests/unit/services/SessionService.test.d.ts +0 -2
  465. package/dist/tests/unit/services/SessionService.test.d.ts.map +0 -1
  466. package/dist/tests/unit/services/SessionService.test.js +0 -80
  467. package/dist/tests/unit/services/SessionService.test.js.map +0 -1
  468. package/dist/tests/unit/snapshot/FileHistory.test.d.ts +0 -2
  469. package/dist/tests/unit/snapshot/FileHistory.test.d.ts.map +0 -1
  470. package/dist/tests/unit/snapshot/FileHistory.test.js +0 -101
  471. package/dist/tests/unit/snapshot/FileHistory.test.js.map +0 -1
  472. package/dist/tests/unit/specs/generator.test.d.ts +0 -2
  473. package/dist/tests/unit/specs/generator.test.d.ts.map +0 -1
  474. package/dist/tests/unit/specs/generator.test.js +0 -70
  475. package/dist/tests/unit/specs/generator.test.js.map +0 -1
  476. package/dist/tests/unit/specs/parser.test.d.ts +0 -2
  477. package/dist/tests/unit/specs/parser.test.d.ts.map +0 -1
  478. package/dist/tests/unit/specs/parser.test.js +0 -85
  479. package/dist/tests/unit/specs/parser.test.js.map +0 -1
  480. package/dist/tests/unit/styles/OutputStyle.test.d.ts +0 -2
  481. package/dist/tests/unit/styles/OutputStyle.test.d.ts.map +0 -1
  482. package/dist/tests/unit/styles/OutputStyle.test.js +0 -33
  483. package/dist/tests/unit/styles/OutputStyle.test.js.map +0 -1
  484. package/dist/tests/unit/styles/OutputStyleManager.test.d.ts +0 -2
  485. package/dist/tests/unit/styles/OutputStyleManager.test.d.ts.map +0 -1
  486. package/dist/tests/unit/styles/OutputStyleManager.test.js +0 -75
  487. package/dist/tests/unit/styles/OutputStyleManager.test.js.map +0 -1
  488. package/dist/tests/unit/tools/BashTool.test.d.ts +0 -2
  489. package/dist/tests/unit/tools/BashTool.test.d.ts.map +0 -1
  490. package/dist/tests/unit/tools/BashTool.test.js +0 -35
  491. package/dist/tests/unit/tools/BashTool.test.js.map +0 -1
  492. package/dist/tests/unit/tools/EditFileTool.test.d.ts +0 -2
  493. package/dist/tests/unit/tools/EditFileTool.test.d.ts.map +0 -1
  494. package/dist/tests/unit/tools/EditFileTool.test.js +0 -48
  495. package/dist/tests/unit/tools/EditFileTool.test.js.map +0 -1
  496. package/dist/tests/unit/tools/GrepTool.test.d.ts +0 -2
  497. package/dist/tests/unit/tools/GrepTool.test.d.ts.map +0 -1
  498. package/dist/tests/unit/tools/GrepTool.test.js +0 -46
  499. package/dist/tests/unit/tools/GrepTool.test.js.map +0 -1
  500. package/dist/tests/unit/tools/ListFilesTool.test.d.ts +0 -2
  501. package/dist/tests/unit/tools/ListFilesTool.test.d.ts.map +0 -1
  502. package/dist/tests/unit/tools/ListFilesTool.test.js +0 -58
  503. package/dist/tests/unit/tools/ListFilesTool.test.js.map +0 -1
  504. package/dist/tests/unit/tools/ReadFileTool.test.d.ts +0 -2
  505. package/dist/tests/unit/tools/ReadFileTool.test.d.ts.map +0 -1
  506. package/dist/tests/unit/tools/ReadFileTool.test.js +0 -42
  507. package/dist/tests/unit/tools/ReadFileTool.test.js.map +0 -1
  508. package/dist/tests/unit/tools/TodoWriteTool.test.d.ts +0 -2
  509. package/dist/tests/unit/tools/TodoWriteTool.test.d.ts.map +0 -1
  510. package/dist/tests/unit/tools/TodoWriteTool.test.js +0 -54
  511. package/dist/tests/unit/tools/TodoWriteTool.test.js.map +0 -1
  512. package/dist/tests/unit/tools/WriteFileTool.test.d.ts +0 -2
  513. package/dist/tests/unit/tools/WriteFileTool.test.d.ts.map +0 -1
  514. package/dist/tests/unit/tools/WriteFileTool.test.js +0 -69
  515. package/dist/tests/unit/tools/WriteFileTool.test.js.map +0 -1
  516. package/dist/tests/unit/ui/App.test.d.ts +0 -2
  517. package/dist/tests/unit/ui/App.test.d.ts.map +0 -1
  518. package/dist/tests/unit/ui/App.test.js +0 -46
  519. package/dist/tests/unit/ui/App.test.js.map +0 -1
  520. package/dist/tests/unit/ui/AppContext.test.d.ts +0 -2
  521. package/dist/tests/unit/ui/AppContext.test.d.ts.map +0 -1
  522. package/dist/tests/unit/ui/AppContext.test.js +0 -39
  523. package/dist/tests/unit/ui/AppContext.test.js.map +0 -1
  524. package/dist/tests/unit/ui/MessageList.test.d.ts +0 -2
  525. package/dist/tests/unit/ui/MessageList.test.d.ts.map +0 -1
  526. package/dist/tests/unit/ui/MessageList.test.js +0 -23
  527. package/dist/tests/unit/ui/MessageList.test.js.map +0 -1
  528. package/dist/tests/unit/ui/SessionList.test.d.ts +0 -2
  529. package/dist/tests/unit/ui/SessionList.test.d.ts.map +0 -1
  530. package/dist/tests/unit/ui/SessionList.test.js +0 -49
  531. package/dist/tests/unit/ui/SessionList.test.js.map +0 -1
@@ -1,80 +0,0 @@
1
- export class SlashCommandManager {
2
- commands = new Map();
3
- aliases = new Map();
4
- register(command) {
5
- if (this.commands.has(command.name)) {
6
- throw new Error(`Command already registered: ${command.name}`);
7
- }
8
- this.commands.set(command.name, command);
9
- for (const alias of command.aliases) {
10
- if (this.aliases.has(alias)) {
11
- throw new Error(`Alias already registered: ${alias}`);
12
- }
13
- this.aliases.set(alias, command.name);
14
- }
15
- console.log(`✅ Registered command: /${command.name}`);
16
- }
17
- async execute(input, app) {
18
- if (!input.startsWith('/')) {
19
- return false;
20
- }
21
- const parts = input.slice(1).trim().split(/\s+/);
22
- const commandName = parts[0];
23
- const args = parts.slice(1);
24
- let command = this.commands.get(commandName);
25
- if (!command) {
26
- const realName = this.aliases.get(commandName);
27
- if (realName) {
28
- command = this.commands.get(realName);
29
- }
30
- }
31
- if (!command) {
32
- console.error(`❌ Unknown command: /${commandName}`);
33
- console.log('💡 Type /help to see available commands');
34
- return false;
35
- }
36
- if (!command.validate(args)) {
37
- console.error(`❌ Invalid arguments for command: /${commandName}`);
38
- return false;
39
- }
40
- try {
41
- console.log(`🔧 Executing command: /${commandName}`);
42
- await command.execute(args, app);
43
- console.log(`✅ Command executed successfully: /${commandName}`);
44
- return true;
45
- }
46
- catch (error) {
47
- console.error(`❌ Command execution failed: /${commandName}`, error);
48
- if (error instanceof Error) {
49
- console.error(` Error: ${error.message}`);
50
- }
51
- return false;
52
- }
53
- }
54
- isCommand(input) {
55
- return input.trim().startsWith('/');
56
- }
57
- has(name) {
58
- return this.commands.has(name) || this.aliases.has(name);
59
- }
60
- get(name) {
61
- const command = this.commands.get(name);
62
- if (command)
63
- return command;
64
- const realName = this.aliases.get(name);
65
- if (realName) {
66
- return this.commands.get(realName);
67
- }
68
- return undefined;
69
- }
70
- list() {
71
- return Array.from(this.commands.keys());
72
- }
73
- getAllInfo() {
74
- return Array.from(this.commands.values()).map((cmd) => cmd.getInfo());
75
- }
76
- count() {
77
- return this.commands.size;
78
- }
79
- }
80
- //# sourceMappingURL=SlashCommandManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SlashCommandManager.js","sourceRoot":"","sources":["../../../src/managers/SlashCommandManager.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import type { Paths } from '../services/Paths';
2
- import type { EventBus } from '../services/EventBus';
3
- import type { Spec, SpecMetadata, Task, TaskStatus } from '../specs/types';
4
- export interface SpecManagerConfig {
5
- paths: Paths;
6
- eventBus: EventBus;
7
- }
8
- export declare class SpecManager {
9
- private specs;
10
- private paths;
11
- private eventBus;
12
- constructor(config: SpecManagerConfig);
13
- create(title: string, description?: string): Promise<Spec>;
14
- load(specId: string): Promise<Spec>;
15
- save(spec: Spec): Promise<void>;
16
- list(): Promise<SpecMetadata[]>;
17
- brainstorm(spec: Spec, topic: string, questions: string[]): Promise<void>;
18
- addBrainstormAnswer(spec: Spec, question: string, answer: string): Promise<void>;
19
- writePlan(spec: Spec, tasks: Task[], dependencies?: Record<string, string[]>): Promise<void>;
20
- updateTaskStatus(spec: Spec, taskId: string, status: TaskStatus): Promise<void>;
21
- saveDesign(spec: Spec, architecture: string, dataModel: string, apiDesign?: string, uiDesign?: string): Promise<void>;
22
- private getSpecPath;
23
- private getSpecsDir;
24
- private generateSpecId;
25
- }
26
- //# sourceMappingURL=SpecManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SpecManager.d.ts","sourceRoot":"","sources":["../../../src/managers/SpecManager.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAO1E,MAAM,WAAW,iBAAiB;IACjC,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAOA,qBAAa,WAAW;IACvB,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,QAAQ,CAAW;gBAEf,MAAM,EAAE,iBAAiB;IAQ/B,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB1D,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBnC,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB/B,IAAI,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAkC/B,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAezE,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYhF,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5F,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB/E,UAAU,CACd,IAAI,EAAE,IAAI,EACV,YAAY,EAAE,MAAM,EACpB,SAAS,EAAE,MAAM,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC;IAgBhB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,cAAc;CAKvB"}
@@ -1,134 +0,0 @@
1
- import * as fs from 'node:fs/promises';
2
- import * as path from 'node:path';
3
- import { parseSpecMarkdown } from '../specs/utils/parser';
4
- import { generateSpecMarkdown } from '../specs/utils/generator';
5
- export class SpecManager {
6
- specs = new Map();
7
- paths;
8
- eventBus;
9
- constructor(config) {
10
- this.paths = config.paths;
11
- this.eventBus = config.eventBus;
12
- }
13
- async create(title, description) {
14
- const specId = this.generateSpecId();
15
- const now = new Date();
16
- const spec = {
17
- specId,
18
- title,
19
- description,
20
- createdAt: now,
21
- updatedAt: now,
22
- };
23
- this.specs.set(specId, spec);
24
- await this.save(spec);
25
- this.eventBus.emit('spec.created', spec);
26
- return spec;
27
- }
28
- async load(specId) {
29
- if (this.specs.has(specId)) {
30
- return this.specs.get(specId);
31
- }
32
- const specPath = this.getSpecPath(specId);
33
- const content = await fs.readFile(specPath, 'utf-8');
34
- const spec = parseSpecMarkdown(content);
35
- this.specs.set(specId, spec);
36
- this.eventBus.emit('spec.loaded', spec);
37
- return spec;
38
- }
39
- async save(spec) {
40
- spec.updatedAt = new Date();
41
- const specPath = this.getSpecPath(spec.specId);
42
- const content = generateSpecMarkdown(spec);
43
- await fs.mkdir(path.dirname(specPath), { recursive: true });
44
- await fs.writeFile(specPath, content, 'utf-8');
45
- this.specs.set(spec.specId, spec);
46
- this.eventBus.emit('spec.saved', spec);
47
- }
48
- async list() {
49
- const specsDir = this.getSpecsDir();
50
- try {
51
- const files = await fs.readdir(specsDir);
52
- const specFiles = files.filter(f => f.endsWith('.md'));
53
- const metadata = [];
54
- for (const file of specFiles) {
55
- const specId = file.replace('.md', '');
56
- const spec = await this.load(specId);
57
- metadata.push({
58
- specId: spec.specId,
59
- title: spec.title,
60
- description: spec.description,
61
- taskCount: spec.plan?.tasks.length || 0,
62
- completedTaskCount: spec.plan?.tasks.filter(t => t.status === 'completed').length || 0,
63
- createdAt: spec.createdAt,
64
- updatedAt: spec.updatedAt,
65
- });
66
- }
67
- return metadata.sort((a, b) => b.updatedAt.getTime() - a.updatedAt.getTime());
68
- }
69
- catch (error) {
70
- return [];
71
- }
72
- }
73
- async brainstorm(spec, topic, questions) {
74
- spec.brainstorm = {
75
- topic,
76
- questions,
77
- answers: {},
78
- notes: [],
79
- };
80
- await this.save(spec);
81
- this.eventBus.emit('spec.brainstorm', spec);
82
- }
83
- async addBrainstormAnswer(spec, question, answer) {
84
- if (!spec.brainstorm) {
85
- throw new Error('Brainstorm section not initialized');
86
- }
87
- spec.brainstorm.answers[question] = answer;
88
- await this.save(spec);
89
- }
90
- async writePlan(spec, tasks, dependencies) {
91
- spec.plan = {
92
- tasks,
93
- dependencies: dependencies || {},
94
- };
95
- await this.save(spec);
96
- this.eventBus.emit('spec.plan.written', spec);
97
- }
98
- async updateTaskStatus(spec, taskId, status) {
99
- if (!spec.plan) {
100
- throw new Error('Plan section not initialized');
101
- }
102
- const task = spec.plan.tasks.find(t => t.id === taskId);
103
- if (!task) {
104
- throw new Error(`Task ${taskId} not found`);
105
- }
106
- task.status = status;
107
- task.updatedAt = new Date();
108
- await this.save(spec);
109
- this.eventBus.emit('spec.task.updated', { spec, task });
110
- }
111
- async saveDesign(spec, architecture, dataModel, apiDesign, uiDesign) {
112
- spec.design = {
113
- architecture,
114
- dataModel,
115
- apiDesign,
116
- uiDesign,
117
- notes: [],
118
- };
119
- await this.save(spec);
120
- this.eventBus.emit('spec.design.saved', spec);
121
- }
122
- getSpecPath(specId) {
123
- return path.join(this.getSpecsDir(), `${specId}.md`);
124
- }
125
- getSpecsDir() {
126
- return path.join(this.paths.projectConfigDir, 'specs');
127
- }
128
- generateSpecId() {
129
- const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, -5);
130
- const random = Math.random().toString(36).substring(2, 6);
131
- return `spec-${timestamp}-${random}`;
132
- }
133
- }
134
- //# sourceMappingURL=SpecManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SpecManager.js","sourceRoot":"","sources":["../../../src/managers/SpecManager.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import { Tool } from '../tools/base/Tool';
2
- import type { EventBus } from '../services/EventBus';
3
- import type { PluginManager } from './PluginManager';
4
- import type { Container } from '../application/Container';
5
- export declare class ToolManager {
6
- private tools;
7
- private eventBus?;
8
- private pluginManager?;
9
- private container?;
10
- setContainer(container: Container): void;
11
- setPluginManager(pluginManager: PluginManager): void;
12
- setEventBus(eventBus: EventBus): void;
13
- register(tool: Tool): void;
14
- get(name: string): Tool | undefined;
15
- has(name: string): boolean;
16
- execute(name: string, input: unknown): Promise<any>;
17
- list(): string[];
18
- getAllInfo(): Array<{
19
- name: string;
20
- description: string;
21
- }>;
22
- count(): number;
23
- }
24
- //# sourceMappingURL=ToolManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolManager.d.ts","sourceRoot":"","sources":["../../../src/managers/ToolManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAe1D,qBAAa,WAAW;IAQtB,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,QAAQ,CAAC,CAAW;IAC5B,OAAO,CAAC,aAAa,CAAC,CAAgB;IACtC,OAAO,CAAC,SAAS,CAAC,CAAY;IAK9B,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI;IAcxC,gBAAgB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAUpD,WAAW,CAAC,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAerC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAmB1B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAUnC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAkBpB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAuEzD,IAAI,IAAI,MAAM,EAAE;IAchB,UAAU,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAS1D,KAAK,IAAI,MAAM;CAGhB"}
@@ -1,97 +0,0 @@
1
- import { EventType } from '../types/index';
2
- export class ToolManager {
3
- tools = new Map();
4
- eventBus;
5
- pluginManager;
6
- container;
7
- setContainer(container) {
8
- this.container = container;
9
- for (const tool of this.tools.values()) {
10
- tool.setContainer(container);
11
- }
12
- }
13
- setPluginManager(pluginManager) {
14
- this.pluginManager = pluginManager;
15
- console.log('✅ PluginManager set for ToolManager');
16
- }
17
- setEventBus(eventBus) {
18
- this.eventBus = eventBus;
19
- console.log('✅ EventBus set for ToolManager');
20
- }
21
- register(tool) {
22
- if (this.tools.has(tool.name)) {
23
- throw new Error(`Tool already registered: ${tool.name}`);
24
- }
25
- if (this.container) {
26
- tool.setContainer(this.container);
27
- }
28
- this.tools.set(tool.name, tool);
29
- console.log(`✅ Registered tool: ${tool.name}`);
30
- }
31
- get(name) {
32
- return this.tools.get(name);
33
- }
34
- has(name) {
35
- return this.tools.has(name);
36
- }
37
- async execute(name, input) {
38
- console.log(`🔧 Executing tool: ${name}`);
39
- const tool = this.tools.get(name);
40
- if (!tool) {
41
- throw new Error(`Tool not found: ${name}`);
42
- }
43
- try {
44
- if (this.pluginManager) {
45
- await this.pluginManager.triggerToolBefore(tool, input);
46
- }
47
- if (this.eventBus) {
48
- this.eventBus.emit(EventType.TOOL_BEFORE, {
49
- name,
50
- input,
51
- timestamp: Date.now(),
52
- });
53
- }
54
- const validInput = tool.validate(input);
55
- const result = await tool.execute(validInput);
56
- console.log(`✅ Tool executed successfully: ${name}`);
57
- if (this.pluginManager) {
58
- await this.pluginManager.triggerToolAfter(tool, result);
59
- }
60
- if (this.eventBus) {
61
- this.eventBus.emit(EventType.TOOL_AFTER, {
62
- name,
63
- result,
64
- timestamp: Date.now(),
65
- });
66
- }
67
- return result;
68
- }
69
- catch (error) {
70
- console.error(`❌ Tool execution failed: ${name}`, error);
71
- if (this.pluginManager) {
72
- await this.pluginManager.triggerToolAfter(tool, { error });
73
- }
74
- if (this.eventBus) {
75
- this.eventBus.emit(EventType.TOOL_ERROR, {
76
- name,
77
- error: error instanceof Error ? error : new Error(String(error)),
78
- timestamp: Date.now(),
79
- });
80
- }
81
- if (error instanceof Error) {
82
- throw new Error(`Tool execution failed (${name}): ${error.message}`);
83
- }
84
- throw new Error(`Tool execution failed (${name}): Unknown error`);
85
- }
86
- }
87
- list() {
88
- return Array.from(this.tools.keys());
89
- }
90
- getAllInfo() {
91
- return Array.from(this.tools.values()).map((tool) => tool.getInfo());
92
- }
93
- count() {
94
- return this.tools.size;
95
- }
96
- }
97
- //# sourceMappingURL=ToolManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ToolManager.js","sourceRoot":"","sources":["../../../src/managers/ToolManager.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import type { MCPServerConfig, MCPToolDefinition, MCPToolResult } from './types';
2
- export declare class MCPClient {
3
- private process;
4
- private requestId;
5
- private pendingRequests;
6
- private serverName;
7
- private config;
8
- constructor(serverName: string, config: MCPServerConfig);
9
- connect(): Promise<void>;
10
- private initialize;
11
- listTools(): Promise<MCPToolDefinition[]>;
12
- callTool(name: string, args: Record<string, any>): Promise<MCPToolResult>;
13
- private sendRequest;
14
- private handleResponse;
15
- disconnect(): Promise<void>;
16
- }
17
- //# sourceMappingURL=MCPClient.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MCPClient.d.ts","sourceRoot":"","sources":["../../../src/mcp/MCPClient.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EAGf,iBAAiB,EACjB,aAAa,EACd,MAAM,SAAS,CAAC;AAWjB,qBAAa,SAAS;IACpB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,eAAe,CAMnB;IAEJ,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAkB;gBAEpB,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe;IAQjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAgDhB,UAAU;IAgBlB,SAAS,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAczC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;YAiBjE,WAAW;IAmCzB,OAAO,CAAC,cAAc;IAkBhB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAQlC"}
@@ -1,117 +0,0 @@
1
- import { spawn } from 'node:child_process';
2
- export class MCPClient {
3
- process = null;
4
- requestId = 0;
5
- pendingRequests = new Map();
6
- serverName;
7
- config;
8
- constructor(serverName, config) {
9
- this.serverName = serverName;
10
- this.config = config;
11
- }
12
- async connect() {
13
- console.log(`🔌 Connecting to MCP server: ${this.serverName}`);
14
- this.process = spawn(this.config.command, this.config.args, {
15
- env: { ...process.env, ...this.config.env },
16
- stdio: ['pipe', 'pipe', 'pipe'],
17
- });
18
- if (!this.process.stdout || !this.process.stdin) {
19
- throw new Error('Failed to create MCP server process');
20
- }
21
- let buffer = '';
22
- this.process.stdout.on('data', (data) => {
23
- buffer += data.toString();
24
- const lines = buffer.split('\n');
25
- buffer = lines.pop() || '';
26
- for (const line of lines) {
27
- if (line.trim()) {
28
- try {
29
- const response = JSON.parse(line);
30
- this.handleResponse(response);
31
- }
32
- catch (error) {
33
- console.error('Failed to parse MCP response:', error);
34
- }
35
- }
36
- }
37
- });
38
- this.process.stderr?.on('data', (data) => {
39
- console.error(`[MCP ${this.serverName}]`, data.toString());
40
- });
41
- await this.initialize();
42
- console.log(`✅ Connected to MCP server: ${this.serverName}`);
43
- }
44
- async initialize() {
45
- await this.sendRequest('initialize', {
46
- protocolVersion: '2024-11-05',
47
- capabilities: {
48
- tools: {},
49
- },
50
- clientInfo: {
51
- name: 'aicli',
52
- version: '1.0.0',
53
- },
54
- });
55
- }
56
- async listTools() {
57
- console.log(`🔍 Discovering tools from: ${this.serverName}`);
58
- const response = await this.sendRequest('tools/list', {});
59
- const tools = response.tools || [];
60
- console.log(`✅ Found ${tools.length} tools from ${this.serverName}`);
61
- return tools;
62
- }
63
- async callTool(name, args) {
64
- console.log(`đŸ› ī¸ Calling MCP tool: ${this.serverName}.${name}`);
65
- console.log(` Arguments:`, JSON.stringify(args));
66
- const response = await this.sendRequest('tools/call', {
67
- name,
68
- arguments: args,
69
- });
70
- console.log(`✅ Tool executed: ${this.serverName}.${name}`);
71
- return response;
72
- }
73
- async sendRequest(method, params) {
74
- if (!this.process || !this.process.stdin) {
75
- throw new Error('MCP server not connected');
76
- }
77
- const id = ++this.requestId;
78
- const request = {
79
- jsonrpc: '2.0',
80
- id,
81
- method,
82
- params,
83
- };
84
- const promise = new Promise((resolve, reject) => {
85
- this.pendingRequests.set(id, { resolve, reject });
86
- setTimeout(() => {
87
- if (this.pendingRequests.has(id)) {
88
- this.pendingRequests.delete(id);
89
- reject(new Error(`MCP request timeout: ${method}`));
90
- }
91
- }, 30000);
92
- });
93
- this.process.stdin.write(JSON.stringify(request) + '\n');
94
- return promise;
95
- }
96
- handleResponse(response) {
97
- const pending = this.pendingRequests.get(response.id);
98
- if (!pending) {
99
- return;
100
- }
101
- this.pendingRequests.delete(response.id);
102
- if (response.error) {
103
- pending.reject(new Error(response.error.message));
104
- }
105
- else {
106
- pending.resolve(response.result);
107
- }
108
- }
109
- async disconnect() {
110
- if (this.process) {
111
- this.process.kill();
112
- this.process = null;
113
- }
114
- console.log(`🔌 Disconnected from MCP server: ${this.serverName}`);
115
- }
116
- }
117
- //# sourceMappingURL=MCPClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MCPClient.js","sourceRoot":"","sources":["../../../src/mcp/MCPClient.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import { MCPClient } from './MCPClient';
2
- import type { Tool } from '../tools/base/Tool';
3
- export declare class MCPManager {
4
- private clients;
5
- private tools;
6
- initialize(configPath: string): Promise<void>;
7
- private connectServer;
8
- getTools(): Tool[];
9
- getClient(serverName: string): MCPClient | undefined;
10
- disconnect(): Promise<void>;
11
- }
12
- //# sourceMappingURL=MCPManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MCPManager.d.ts","sourceRoot":"","sources":["../../../src/mcp/MCPManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAW/C,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAAgC;IAC/C,OAAO,CAAC,KAAK,CAAc;IAKrB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YA6BrC,aAAa;IA8B3B,QAAQ,IAAI,IAAI,EAAE;IAOlB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAO9C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAclC"}
@@ -1,63 +0,0 @@
1
- import * as fs from 'node:fs/promises';
2
- import { MCPClient } from './MCPClient';
3
- import { MCPTool } from './MCPTool';
4
- export class MCPManager {
5
- clients = new Map();
6
- tools = [];
7
- async initialize(configPath) {
8
- console.log(`📋 Loading MCP config from: ${configPath}`);
9
- try {
10
- const configContent = await fs.readFile(configPath, 'utf-8');
11
- const config = JSON.parse(configContent);
12
- for (const [serverName, serverConfig] of Object.entries(config.servers)) {
13
- await this.connectServer(serverName, serverConfig);
14
- }
15
- console.log(`✅ MCP initialized with ${this.clients.size} servers`);
16
- console.log(`✅ Discovered ${this.tools.length} MCP tools`);
17
- }
18
- catch (error) {
19
- if (error.code === 'ENOENT') {
20
- console.log(`â„šī¸ No MCP config found at ${configPath}`);
21
- return;
22
- }
23
- console.error(`❌ Failed to initialize MCP:`, error);
24
- throw error;
25
- }
26
- }
27
- async connectServer(serverName, config) {
28
- try {
29
- const client = new MCPClient(serverName, config);
30
- await client.connect();
31
- const toolDefs = await client.listTools();
32
- for (const toolDef of toolDefs) {
33
- const tool = new MCPTool(client, toolDef, serverName);
34
- this.tools.push(tool);
35
- }
36
- this.clients.set(serverName, client);
37
- console.log(`✅ Connected to MCP server: ${serverName} (${toolDefs.length} tools)`);
38
- }
39
- catch (error) {
40
- console.error(`❌ Failed to connect to MCP server ${serverName}:`, error);
41
- }
42
- }
43
- getTools() {
44
- return this.tools;
45
- }
46
- getClient(serverName) {
47
- return this.clients.get(serverName);
48
- }
49
- async disconnect() {
50
- for (const [serverName, client] of this.clients.entries()) {
51
- try {
52
- await client.disconnect();
53
- }
54
- catch (error) {
55
- console.error(`Failed to disconnect from ${serverName}:`, error);
56
- }
57
- }
58
- this.clients.clear();
59
- this.tools = [];
60
- console.log(`🔌 All MCP servers disconnected`);
61
- }
62
- }
63
- //# sourceMappingURL=MCPManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MCPManager.js","sourceRoot":"","sources":["../../../src/mcp/MCPManager.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- import { z } from 'zod';
2
- import { Tool } from '../tools/base/Tool';
3
- import type { MCPClient } from './MCPClient';
4
- import type { MCPToolDefinition } from './types';
5
- export declare class MCPTool extends Tool {
6
- name: string;
7
- description: string;
8
- schema: z.ZodObject<any>;
9
- private client;
10
- private toolDef;
11
- constructor(client: MCPClient, toolDef: MCPToolDefinition, serverName: string);
12
- execute(input: any): Promise<any>;
13
- private jsonSchemaToZod;
14
- }
15
- //# sourceMappingURL=MCPTool.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MCPTool.d.ts","sourceRoot":"","sources":["../../../src/mcp/MCPTool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAOjD,qBAAa,OAAQ,SAAQ,IAAI;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAEzB,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,OAAO,CAAoB;gBAEvB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM;IAiBvE,OAAO,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IA+BvC,OAAO,CAAC,eAAe;CA4CxB"}