@compass-ai/nova 1.0.74 → 1.0.76

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 (973) hide show
  1. package/dist/cli.js +557 -555
  2. package/dist/index.js +10 -8
  3. package/package.json +1 -1
  4. package/dist/acp/agent.d.ts +0 -318
  5. package/dist/acp/agent.d.ts.map +0 -1
  6. package/dist/acp/agent.js +0 -795
  7. package/dist/acp/agent.js.map +0 -1
  8. package/dist/acp/backpressure-writer.d.ts +0 -49
  9. package/dist/acp/backpressure-writer.d.ts.map +0 -1
  10. package/dist/acp/backpressure-writer.js +0 -153
  11. package/dist/acp/backpressure-writer.js.map +0 -1
  12. package/dist/acp/event-adapter.d.ts +0 -242
  13. package/dist/acp/event-adapter.d.ts.map +0 -1
  14. package/dist/acp/event-adapter.js +0 -456
  15. package/dist/acp/event-adapter.js.map +0 -1
  16. package/dist/acp/index.d.ts +0 -30
  17. package/dist/acp/index.d.ts.map +0 -1
  18. package/dist/acp/index.js +0 -36
  19. package/dist/acp/index.js.map +0 -1
  20. package/dist/acp/modes.d.ts +0 -56
  21. package/dist/acp/modes.d.ts.map +0 -1
  22. package/dist/acp/modes.js +0 -135
  23. package/dist/acp/modes.js.map +0 -1
  24. package/dist/acp/session-manager.d.ts +0 -170
  25. package/dist/acp/session-manager.d.ts.map +0 -1
  26. package/dist/acp/session-manager.js +0 -381
  27. package/dist/acp/session-manager.js.map +0 -1
  28. package/dist/acp/text-coalescer.d.ts +0 -45
  29. package/dist/acp/text-coalescer.d.ts.map +0 -1
  30. package/dist/acp/text-coalescer.js +0 -110
  31. package/dist/acp/text-coalescer.js.map +0 -1
  32. package/dist/acp/tool-bridge.d.ts +0 -156
  33. package/dist/acp/tool-bridge.d.ts.map +0 -1
  34. package/dist/acp/tool-bridge.js +0 -381
  35. package/dist/acp/tool-bridge.js.map +0 -1
  36. package/dist/acp/types.d.ts +0 -314
  37. package/dist/acp/types.d.ts.map +0 -1
  38. package/dist/acp/types.js +0 -8
  39. package/dist/acp/types.js.map +0 -1
  40. package/dist/cli.d.ts +0 -9
  41. package/dist/cli.d.ts.map +0 -1
  42. package/dist/cli.js.map +0 -1
  43. package/dist/commands/acp.d.ts +0 -26
  44. package/dist/commands/acp.d.ts.map +0 -1
  45. package/dist/commands/acp.js +0 -492
  46. package/dist/commands/acp.js.map +0 -1
  47. package/dist/commands/cache.d.ts +0 -33
  48. package/dist/commands/cache.d.ts.map +0 -1
  49. package/dist/commands/cache.js +0 -537
  50. package/dist/commands/cache.js.map +0 -1
  51. package/dist/commands/config.d.ts +0 -10
  52. package/dist/commands/config.d.ts.map +0 -1
  53. package/dist/commands/config.js +0 -367
  54. package/dist/commands/config.js.map +0 -1
  55. package/dist/commands/consent.d.ts +0 -21
  56. package/dist/commands/consent.d.ts.map +0 -1
  57. package/dist/commands/consent.js +0 -334
  58. package/dist/commands/consent.js.map +0 -1
  59. package/dist/commands/data.d.ts +0 -24
  60. package/dist/commands/data.d.ts.map +0 -1
  61. package/dist/commands/data.js +0 -586
  62. package/dist/commands/data.js.map +0 -1
  63. package/dist/commands/index.d.ts +0 -145
  64. package/dist/commands/index.d.ts.map +0 -1
  65. package/dist/commands/index.js +0 -210
  66. package/dist/commands/index.js.map +0 -1
  67. package/dist/commands/init.d.ts +0 -106
  68. package/dist/commands/init.d.ts.map +0 -1
  69. package/dist/commands/init.js +0 -349
  70. package/dist/commands/init.js.map +0 -1
  71. package/dist/commands/logs.d.ts +0 -13
  72. package/dist/commands/logs.d.ts.map +0 -1
  73. package/dist/commands/logs.js +0 -359
  74. package/dist/commands/logs.js.map +0 -1
  75. package/dist/commands/mcp.d.ts +0 -20
  76. package/dist/commands/mcp.d.ts.map +0 -1
  77. package/dist/commands/mcp.js +0 -687
  78. package/dist/commands/mcp.js.map +0 -1
  79. package/dist/commands/reset.d.ts +0 -20
  80. package/dist/commands/reset.d.ts.map +0 -1
  81. package/dist/commands/reset.js +0 -372
  82. package/dist/commands/reset.js.map +0 -1
  83. package/dist/commands/setup.d.ts +0 -74
  84. package/dist/commands/setup.d.ts.map +0 -1
  85. package/dist/commands/setup.js +0 -863
  86. package/dist/commands/setup.js.map +0 -1
  87. package/dist/commands/slash/agents.d.ts +0 -40
  88. package/dist/commands/slash/agents.d.ts.map +0 -1
  89. package/dist/commands/slash/agents.js +0 -519
  90. package/dist/commands/slash/agents.js.map +0 -1
  91. package/dist/commands/slash/approve.d.ts +0 -46
  92. package/dist/commands/slash/approve.d.ts.map +0 -1
  93. package/dist/commands/slash/approve.js +0 -239
  94. package/dist/commands/slash/approve.js.map +0 -1
  95. package/dist/commands/slash/attach.d.ts +0 -70
  96. package/dist/commands/slash/attach.d.ts.map +0 -1
  97. package/dist/commands/slash/attach.js +0 -333
  98. package/dist/commands/slash/attach.js.map +0 -1
  99. package/dist/commands/slash/clear.d.ts +0 -47
  100. package/dist/commands/slash/clear.d.ts.map +0 -1
  101. package/dist/commands/slash/clear.js +0 -261
  102. package/dist/commands/slash/clear.js.map +0 -1
  103. package/dist/commands/slash/commit.d.ts +0 -40
  104. package/dist/commands/slash/commit.d.ts.map +0 -1
  105. package/dist/commands/slash/commit.js +0 -337
  106. package/dist/commands/slash/commit.js.map +0 -1
  107. package/dist/commands/slash/compact.d.ts +0 -48
  108. package/dist/commands/slash/compact.d.ts.map +0 -1
  109. package/dist/commands/slash/compact.js +0 -288
  110. package/dist/commands/slash/compact.js.map +0 -1
  111. package/dist/commands/slash/config.d.ts +0 -20
  112. package/dist/commands/slash/config.d.ts.map +0 -1
  113. package/dist/commands/slash/config.js +0 -136
  114. package/dist/commands/slash/config.js.map +0 -1
  115. package/dist/commands/slash/context.d.ts +0 -49
  116. package/dist/commands/slash/context.d.ts.map +0 -1
  117. package/dist/commands/slash/context.js +0 -430
  118. package/dist/commands/slash/context.js.map +0 -1
  119. package/dist/commands/slash/cost.d.ts +0 -34
  120. package/dist/commands/slash/cost.d.ts.map +0 -1
  121. package/dist/commands/slash/cost.js +0 -312
  122. package/dist/commands/slash/cost.js.map +0 -1
  123. package/dist/commands/slash/custom.d.ts +0 -41
  124. package/dist/commands/slash/custom.d.ts.map +0 -1
  125. package/dist/commands/slash/custom.js +0 -126
  126. package/dist/commands/slash/custom.js.map +0 -1
  127. package/dist/commands/slash/exit.d.ts +0 -25
  128. package/dist/commands/slash/exit.d.ts.map +0 -1
  129. package/dist/commands/slash/exit.js +0 -186
  130. package/dist/commands/slash/exit.js.map +0 -1
  131. package/dist/commands/slash/export.d.ts +0 -27
  132. package/dist/commands/slash/export.d.ts.map +0 -1
  133. package/dist/commands/slash/export.js +0 -318
  134. package/dist/commands/slash/export.js.map +0 -1
  135. package/dist/commands/slash/files.d.ts +0 -47
  136. package/dist/commands/slash/files.d.ts.map +0 -1
  137. package/dist/commands/slash/files.js +0 -521
  138. package/dist/commands/slash/files.js.map +0 -1
  139. package/dist/commands/slash/help.d.ts +0 -50
  140. package/dist/commands/slash/help.d.ts.map +0 -1
  141. package/dist/commands/slash/help.js +0 -282
  142. package/dist/commands/slash/help.js.map +0 -1
  143. package/dist/commands/slash/index-cmd.d.ts +0 -41
  144. package/dist/commands/slash/index-cmd.d.ts.map +0 -1
  145. package/dist/commands/slash/index-cmd.js +0 -349
  146. package/dist/commands/slash/index-cmd.js.map +0 -1
  147. package/dist/commands/slash/index.d.ts +0 -97
  148. package/dist/commands/slash/index.d.ts.map +0 -1
  149. package/dist/commands/slash/index.js +0 -251
  150. package/dist/commands/slash/index.js.map +0 -1
  151. package/dist/commands/slash/login.d.ts +0 -23
  152. package/dist/commands/slash/login.d.ts.map +0 -1
  153. package/dist/commands/slash/login.js +0 -175
  154. package/dist/commands/slash/login.js.map +0 -1
  155. package/dist/commands/slash/logout.d.ts +0 -23
  156. package/dist/commands/slash/logout.d.ts.map +0 -1
  157. package/dist/commands/slash/logout.js +0 -153
  158. package/dist/commands/slash/logout.js.map +0 -1
  159. package/dist/commands/slash/logs.d.ts +0 -29
  160. package/dist/commands/slash/logs.d.ts.map +0 -1
  161. package/dist/commands/slash/logs.js +0 -423
  162. package/dist/commands/slash/logs.js.map +0 -1
  163. package/dist/commands/slash/mcp.d.ts +0 -29
  164. package/dist/commands/slash/mcp.d.ts.map +0 -1
  165. package/dist/commands/slash/mcp.js +0 -1026
  166. package/dist/commands/slash/mcp.js.map +0 -1
  167. package/dist/commands/slash/model.d.ts +0 -60
  168. package/dist/commands/slash/model.d.ts.map +0 -1
  169. package/dist/commands/slash/model.js +0 -466
  170. package/dist/commands/slash/model.js.map +0 -1
  171. package/dist/commands/slash/personality.d.ts +0 -40
  172. package/dist/commands/slash/personality.d.ts.map +0 -1
  173. package/dist/commands/slash/personality.js +0 -272
  174. package/dist/commands/slash/personality.js.map +0 -1
  175. package/dist/commands/slash/purge.d.ts +0 -42
  176. package/dist/commands/slash/purge.d.ts.map +0 -1
  177. package/dist/commands/slash/purge.js +0 -233
  178. package/dist/commands/slash/purge.js.map +0 -1
  179. package/dist/commands/slash/reset.d.ts +0 -44
  180. package/dist/commands/slash/reset.d.ts.map +0 -1
  181. package/dist/commands/slash/reset.js +0 -326
  182. package/dist/commands/slash/reset.js.map +0 -1
  183. package/dist/commands/slash/skills.d.ts +0 -40
  184. package/dist/commands/slash/skills.d.ts.map +0 -1
  185. package/dist/commands/slash/skills.js +0 -207
  186. package/dist/commands/slash/skills.js.map +0 -1
  187. package/dist/commands/slash/tokens.d.ts +0 -34
  188. package/dist/commands/slash/tokens.d.ts.map +0 -1
  189. package/dist/commands/slash/tokens.js +0 -205
  190. package/dist/commands/slash/tokens.js.map +0 -1
  191. package/dist/commands/slash/unleash.d.ts +0 -50
  192. package/dist/commands/slash/unleash.d.ts.map +0 -1
  193. package/dist/commands/slash/unleash.js +0 -262
  194. package/dist/commands/slash/unleash.js.map +0 -1
  195. package/dist/commands/slash/update.d.ts +0 -34
  196. package/dist/commands/slash/update.d.ts.map +0 -1
  197. package/dist/commands/slash/update.js +0 -364
  198. package/dist/commands/slash/update.js.map +0 -1
  199. package/dist/commands/slash/wrap.d.ts +0 -18
  200. package/dist/commands/slash/wrap.d.ts.map +0 -1
  201. package/dist/commands/slash/wrap.js +0 -21
  202. package/dist/commands/slash/wrap.js.map +0 -1
  203. package/dist/commands/tokens.d.ts +0 -26
  204. package/dist/commands/tokens.d.ts.map +0 -1
  205. package/dist/commands/tokens.js +0 -245
  206. package/dist/commands/tokens.js.map +0 -1
  207. package/dist/constants/builtin-agents.d.ts +0 -27
  208. package/dist/constants/builtin-agents.d.ts.map +0 -1
  209. package/dist/constants/builtin-agents.js +0 -710
  210. package/dist/constants/builtin-agents.js.map +0 -1
  211. package/dist/constants/builtin-skills.d.ts +0 -32
  212. package/dist/constants/builtin-skills.d.ts.map +0 -1
  213. package/dist/constants/builtin-skills.js +0 -389
  214. package/dist/constants/builtin-skills.js.map +0 -1
  215. package/dist/constants/defaults.d.ts +0 -448
  216. package/dist/constants/defaults.d.ts.map +0 -1
  217. package/dist/constants/defaults.js +0 -829
  218. package/dist/constants/defaults.js.map +0 -1
  219. package/dist/constants/index.d.ts +0 -27
  220. package/dist/constants/index.d.ts.map +0 -1
  221. package/dist/constants/index.js +0 -85
  222. package/dist/constants/index.js.map +0 -1
  223. package/dist/constants/install-hints.d.ts +0 -7
  224. package/dist/constants/install-hints.d.ts.map +0 -1
  225. package/dist/constants/install-hints.js +0 -123
  226. package/dist/constants/install-hints.js.map +0 -1
  227. package/dist/constants/models.d.ts +0 -255
  228. package/dist/constants/models.d.ts.map +0 -1
  229. package/dist/constants/models.js +0 -596
  230. package/dist/constants/models.js.map +0 -1
  231. package/dist/constants/schedule.d.ts +0 -43
  232. package/dist/constants/schedule.d.ts.map +0 -1
  233. package/dist/constants/schedule.js +0 -110
  234. package/dist/constants/schedule.js.map +0 -1
  235. package/dist/constants/system-utilities.d.ts +0 -57
  236. package/dist/constants/system-utilities.d.ts.map +0 -1
  237. package/dist/constants/system-utilities.js +0 -421
  238. package/dist/constants/system-utilities.js.map +0 -1
  239. package/dist/constants/token-limits.d.ts +0 -102
  240. package/dist/constants/token-limits.d.ts.map +0 -1
  241. package/dist/constants/token-limits.js +0 -286
  242. package/dist/constants/token-limits.js.map +0 -1
  243. package/dist/core/autocomplete.d.ts +0 -132
  244. package/dist/core/autocomplete.d.ts.map +0 -1
  245. package/dist/core/autocomplete.js +0 -653
  246. package/dist/core/autocomplete.js.map +0 -1
  247. package/dist/core/command-parser.d.ts +0 -301
  248. package/dist/core/command-parser.d.ts.map +0 -1
  249. package/dist/core/command-parser.js +0 -526
  250. package/dist/core/command-parser.js.map +0 -1
  251. package/dist/core/context-builder.d.ts +0 -264
  252. package/dist/core/context-builder.d.ts.map +0 -1
  253. package/dist/core/context-builder.js +0 -1018
  254. package/dist/core/context-builder.js.map +0 -1
  255. package/dist/core/event-emitter.d.ts +0 -411
  256. package/dist/core/event-emitter.d.ts.map +0 -1
  257. package/dist/core/event-emitter.js +0 -138
  258. package/dist/core/event-emitter.js.map +0 -1
  259. package/dist/core/history-manager.d.ts +0 -62
  260. package/dist/core/history-manager.d.ts.map +0 -1
  261. package/dist/core/history-manager.js +0 -151
  262. package/dist/core/history-manager.js.map +0 -1
  263. package/dist/core/slash-command-handler.d.ts +0 -352
  264. package/dist/core/slash-command-handler.d.ts.map +0 -1
  265. package/dist/core/slash-command-handler.js +0 -563
  266. package/dist/core/slash-command-handler.js.map +0 -1
  267. package/dist/core/task-processor.d.ts +0 -179
  268. package/dist/core/task-processor.d.ts.map +0 -1
  269. package/dist/core/task-processor.js +0 -519
  270. package/dist/core/task-processor.js.map +0 -1
  271. package/dist/index.d.ts +0 -90
  272. package/dist/index.d.ts.map +0 -1
  273. package/dist/index.js.map +0 -1
  274. package/dist/prompts/agent-prompt-generator.d.ts +0 -26
  275. package/dist/prompts/agent-prompt-generator.d.ts.map +0 -1
  276. package/dist/prompts/agent-prompt-generator.js +0 -244
  277. package/dist/prompts/agent-prompt-generator.js.map +0 -1
  278. package/dist/prompts/commit-message.d.ts +0 -35
  279. package/dist/prompts/commit-message.d.ts.map +0 -1
  280. package/dist/prompts/commit-message.js +0 -187
  281. package/dist/prompts/commit-message.js.map +0 -1
  282. package/dist/prompts/conversation.d.ts +0 -51
  283. package/dist/prompts/conversation.d.ts.map +0 -1
  284. package/dist/prompts/conversation.js +0 -115
  285. package/dist/prompts/conversation.js.map +0 -1
  286. package/dist/prompts/index.d.ts +0 -39
  287. package/dist/prompts/index.d.ts.map +0 -1
  288. package/dist/prompts/index.js +0 -74
  289. package/dist/prompts/index.js.map +0 -1
  290. package/dist/prompts/memory.d.ts +0 -6
  291. package/dist/prompts/memory.d.ts.map +0 -1
  292. package/dist/prompts/memory.js +0 -29
  293. package/dist/prompts/memory.js.map +0 -1
  294. package/dist/prompts/personality.d.ts +0 -77
  295. package/dist/prompts/personality.d.ts.map +0 -1
  296. package/dist/prompts/personality.js +0 -393
  297. package/dist/prompts/personality.js.map +0 -1
  298. package/dist/prompts/plan-generator.d.ts +0 -144
  299. package/dist/prompts/plan-generator.d.ts.map +0 -1
  300. package/dist/prompts/plan-generator.js +0 -553
  301. package/dist/prompts/plan-generator.js.map +0 -1
  302. package/dist/prompts/system.d.ts +0 -95
  303. package/dist/prompts/system.d.ts.map +0 -1
  304. package/dist/prompts/system.js +0 -461
  305. package/dist/prompts/system.js.map +0 -1
  306. package/dist/prompts/task-processor.d.ts +0 -94
  307. package/dist/prompts/task-processor.d.ts.map +0 -1
  308. package/dist/prompts/task-processor.js +0 -554
  309. package/dist/prompts/task-processor.js.map +0 -1
  310. package/dist/prompts/unguarded.d.ts +0 -78
  311. package/dist/prompts/unguarded.d.ts.map +0 -1
  312. package/dist/prompts/unguarded.js +0 -418
  313. package/dist/prompts/unguarded.js.map +0 -1
  314. package/dist/prompts/utils.d.ts +0 -73
  315. package/dist/prompts/utils.d.ts.map +0 -1
  316. package/dist/prompts/utils.js +0 -114
  317. package/dist/prompts/utils.js.map +0 -1
  318. package/dist/prompts/workflow.d.ts +0 -241
  319. package/dist/prompts/workflow.d.ts.map +0 -1
  320. package/dist/prompts/workflow.js +0 -608
  321. package/dist/prompts/workflow.js.map +0 -1
  322. package/dist/services/action-logger.d.ts +0 -383
  323. package/dist/services/action-logger.d.ts.map +0 -1
  324. package/dist/services/action-logger.js +0 -544
  325. package/dist/services/action-logger.js.map +0 -1
  326. package/dist/services/agent-budget-allocator.d.ts +0 -111
  327. package/dist/services/agent-budget-allocator.d.ts.map +0 -1
  328. package/dist/services/agent-budget-allocator.js +0 -278
  329. package/dist/services/agent-budget-allocator.js.map +0 -1
  330. package/dist/services/agent-manager.d.ts +0 -181
  331. package/dist/services/agent-manager.d.ts.map +0 -1
  332. package/dist/services/agent-manager.js +0 -749
  333. package/dist/services/agent-manager.js.map +0 -1
  334. package/dist/services/agent-spawner.d.ts +0 -138
  335. package/dist/services/agent-spawner.d.ts.map +0 -1
  336. package/dist/services/agent-spawner.js +0 -748
  337. package/dist/services/agent-spawner.js.map +0 -1
  338. package/dist/services/agent-state-service.d.ts +0 -145
  339. package/dist/services/agent-state-service.d.ts.map +0 -1
  340. package/dist/services/agent-state-service.js +0 -247
  341. package/dist/services/agent-state-service.js.map +0 -1
  342. package/dist/services/anthropic-client.d.ts +0 -357
  343. package/dist/services/anthropic-client.d.ts.map +0 -1
  344. package/dist/services/anthropic-client.js +0 -1451
  345. package/dist/services/anthropic-client.js.map +0 -1
  346. package/dist/services/approval-manager.d.ts +0 -385
  347. package/dist/services/approval-manager.d.ts.map +0 -1
  348. package/dist/services/approval-manager.js +0 -1044
  349. package/dist/services/approval-manager.js.map +0 -1
  350. package/dist/services/audit-logger.d.ts +0 -245
  351. package/dist/services/audit-logger.d.ts.map +0 -1
  352. package/dist/services/audit-logger.js +0 -324
  353. package/dist/services/audit-logger.js.map +0 -1
  354. package/dist/services/backup-manager.d.ts +0 -136
  355. package/dist/services/backup-manager.d.ts.map +0 -1
  356. package/dist/services/backup-manager.js +0 -260
  357. package/dist/services/backup-manager.js.map +0 -1
  358. package/dist/services/cache-service.d.ts +0 -247
  359. package/dist/services/cache-service.d.ts.map +0 -1
  360. package/dist/services/cache-service.js +0 -558
  361. package/dist/services/cache-service.js.map +0 -1
  362. package/dist/services/chat-archival-service.d.ts +0 -108
  363. package/dist/services/chat-archival-service.d.ts.map +0 -1
  364. package/dist/services/chat-archival-service.js +0 -465
  365. package/dist/services/chat-archival-service.js.map +0 -1
  366. package/dist/services/codebase-indexer.d.ts +0 -272
  367. package/dist/services/codebase-indexer.d.ts.map +0 -1
  368. package/dist/services/codebase-indexer.js +0 -863
  369. package/dist/services/codebase-indexer.js.map +0 -1
  370. package/dist/services/compass-auth-service.d.ts +0 -204
  371. package/dist/services/compass-auth-service.d.ts.map +0 -1
  372. package/dist/services/compass-auth-service.js +0 -391
  373. package/dist/services/compass-auth-service.js.map +0 -1
  374. package/dist/services/complexity-classifier.d.ts +0 -208
  375. package/dist/services/complexity-classifier.d.ts.map +0 -1
  376. package/dist/services/complexity-classifier.js +0 -1410
  377. package/dist/services/complexity-classifier.js.map +0 -1
  378. package/dist/services/config-manager.d.ts +0 -278
  379. package/dist/services/config-manager.d.ts.map +0 -1
  380. package/dist/services/config-manager.js +0 -651
  381. package/dist/services/config-manager.js.map +0 -1
  382. package/dist/services/consent-manager.d.ts +0 -239
  383. package/dist/services/consent-manager.d.ts.map +0 -1
  384. package/dist/services/consent-manager.js +0 -516
  385. package/dist/services/consent-manager.js.map +0 -1
  386. package/dist/services/conversation-compactor.d.ts +0 -223
  387. package/dist/services/conversation-compactor.d.ts.map +0 -1
  388. package/dist/services/conversation-compactor.js +0 -750
  389. package/dist/services/conversation-compactor.js.map +0 -1
  390. package/dist/services/cost-tracker.d.ts +0 -167
  391. package/dist/services/cost-tracker.d.ts.map +0 -1
  392. package/dist/services/cost-tracker.js +0 -199
  393. package/dist/services/cost-tracker.js.map +0 -1
  394. package/dist/services/credential-store.d.ts +0 -273
  395. package/dist/services/credential-store.d.ts.map +0 -1
  396. package/dist/services/credential-store.js +0 -877
  397. package/dist/services/credential-store.js.map +0 -1
  398. package/dist/services/custom-command-service.d.ts +0 -112
  399. package/dist/services/custom-command-service.d.ts.map +0 -1
  400. package/dist/services/custom-command-service.js +0 -464
  401. package/dist/services/custom-command-service.js.map +0 -1
  402. package/dist/services/default-statusline-renderer.d.ts +0 -60
  403. package/dist/services/default-statusline-renderer.d.ts.map +0 -1
  404. package/dist/services/default-statusline-renderer.js +0 -110
  405. package/dist/services/default-statusline-renderer.js.map +0 -1
  406. package/dist/services/enhanced-context-gatherer.d.ts +0 -116
  407. package/dist/services/enhanced-context-gatherer.d.ts.map +0 -1
  408. package/dist/services/enhanced-context-gatherer.js +0 -605
  409. package/dist/services/enhanced-context-gatherer.js.map +0 -1
  410. package/dist/services/file-hash-tracker.d.ts +0 -95
  411. package/dist/services/file-hash-tracker.d.ts.map +0 -1
  412. package/dist/services/file-hash-tracker.js +0 -199
  413. package/dist/services/file-hash-tracker.js.map +0 -1
  414. package/dist/services/file-service.d.ts +0 -274
  415. package/dist/services/file-service.d.ts.map +0 -1
  416. package/dist/services/file-service.js +0 -876
  417. package/dist/services/file-service.js.map +0 -1
  418. package/dist/services/git-service.d.ts +0 -536
  419. package/dist/services/git-service.d.ts.map +0 -1
  420. package/dist/services/git-service.js +0 -1215
  421. package/dist/services/git-service.js.map +0 -1
  422. package/dist/services/hook-service.d.ts +0 -148
  423. package/dist/services/hook-service.d.ts.map +0 -1
  424. package/dist/services/hook-service.js +0 -705
  425. package/dist/services/hook-service.js.map +0 -1
  426. package/dist/services/ide-state-service.d.ts +0 -114
  427. package/dist/services/ide-state-service.d.ts.map +0 -1
  428. package/dist/services/ide-state-service.js +0 -204
  429. package/dist/services/ide-state-service.js.map +0 -1
  430. package/dist/services/interactive-clarifier.d.ts +0 -90
  431. package/dist/services/interactive-clarifier.d.ts.map +0 -1
  432. package/dist/services/interactive-clarifier.js +0 -446
  433. package/dist/services/interactive-clarifier.js.map +0 -1
  434. package/dist/services/iteration-scoper.d.ts +0 -225
  435. package/dist/services/iteration-scoper.d.ts.map +0 -1
  436. package/dist/services/iteration-scoper.js +0 -387
  437. package/dist/services/iteration-scoper.js.map +0 -1
  438. package/dist/services/llm-plan-generator.d.ts +0 -44
  439. package/dist/services/llm-plan-generator.d.ts.map +0 -1
  440. package/dist/services/llm-plan-generator.js +0 -863
  441. package/dist/services/llm-plan-generator.js.map +0 -1
  442. package/dist/services/llm-system-prompt-generator.d.ts +0 -85
  443. package/dist/services/llm-system-prompt-generator.d.ts.map +0 -1
  444. package/dist/services/llm-system-prompt-generator.js +0 -257
  445. package/dist/services/llm-system-prompt-generator.js.map +0 -1
  446. package/dist/services/log-interpreter.d.ts +0 -190
  447. package/dist/services/log-interpreter.d.ts.map +0 -1
  448. package/dist/services/log-interpreter.js +0 -520
  449. package/dist/services/log-interpreter.js.map +0 -1
  450. package/dist/services/mcp-config-manager.d.ts +0 -141
  451. package/dist/services/mcp-config-manager.d.ts.map +0 -1
  452. package/dist/services/mcp-config-manager.js +0 -678
  453. package/dist/services/mcp-config-manager.js.map +0 -1
  454. package/dist/services/mcp-oauth-service.d.ts +0 -170
  455. package/dist/services/mcp-oauth-service.d.ts.map +0 -1
  456. package/dist/services/mcp-oauth-service.js +0 -892
  457. package/dist/services/mcp-oauth-service.js.map +0 -1
  458. package/dist/services/mcp-plugin-support.d.ts +0 -81
  459. package/dist/services/mcp-plugin-support.d.ts.map +0 -1
  460. package/dist/services/mcp-plugin-support.js +0 -305
  461. package/dist/services/mcp-plugin-support.js.map +0 -1
  462. package/dist/services/mcp-server-manager.d.ts +0 -134
  463. package/dist/services/mcp-server-manager.d.ts.map +0 -1
  464. package/dist/services/mcp-server-manager.js +0 -613
  465. package/dist/services/mcp-server-manager.js.map +0 -1
  466. package/dist/services/mcp-tool-integration.d.ts +0 -119
  467. package/dist/services/mcp-tool-integration.d.ts.map +0 -1
  468. package/dist/services/mcp-tool-integration.js +0 -381
  469. package/dist/services/mcp-tool-integration.js.map +0 -1
  470. package/dist/services/mcp-transport.d.ts +0 -105
  471. package/dist/services/mcp-transport.d.ts.map +0 -1
  472. package/dist/services/mcp-transport.js +0 -1316
  473. package/dist/services/mcp-transport.js.map +0 -1
  474. package/dist/services/memory-service.d.ts +0 -55
  475. package/dist/services/memory-service.d.ts.map +0 -1
  476. package/dist/services/memory-service.js +0 -251
  477. package/dist/services/memory-service.js.map +0 -1
  478. package/dist/services/model-availability.d.ts +0 -64
  479. package/dist/services/model-availability.d.ts.map +0 -1
  480. package/dist/services/model-availability.js +0 -114
  481. package/dist/services/model-availability.js.map +0 -1
  482. package/dist/services/plan-generator.d.ts +0 -98
  483. package/dist/services/plan-generator.d.ts.map +0 -1
  484. package/dist/services/plan-generator.js +0 -658
  485. package/dist/services/plan-generator.js.map +0 -1
  486. package/dist/services/plan-mode-fallback.d.ts +0 -80
  487. package/dist/services/plan-mode-fallback.d.ts.map +0 -1
  488. package/dist/services/plan-mode-fallback.js +0 -307
  489. package/dist/services/plan-mode-fallback.js.map +0 -1
  490. package/dist/services/plan-mode-handler.d.ts +0 -42
  491. package/dist/services/plan-mode-handler.d.ts.map +0 -1
  492. package/dist/services/plan-mode-handler.js +0 -388
  493. package/dist/services/plan-mode-handler.js.map +0 -1
  494. package/dist/services/plan-persistence.d.ts +0 -203
  495. package/dist/services/plan-persistence.d.ts.map +0 -1
  496. package/dist/services/plan-persistence.js +0 -538
  497. package/dist/services/plan-persistence.js.map +0 -1
  498. package/dist/services/prompt-preprocessor.d.ts +0 -73
  499. package/dist/services/prompt-preprocessor.d.ts.map +0 -1
  500. package/dist/services/prompt-preprocessor.js +0 -146
  501. package/dist/services/prompt-preprocessor.js.map +0 -1
  502. package/dist/services/rating-service.d.ts +0 -84
  503. package/dist/services/rating-service.d.ts.map +0 -1
  504. package/dist/services/rating-service.js +0 -171
  505. package/dist/services/rating-service.js.map +0 -1
  506. package/dist/services/rating-state-manager.d.ts +0 -131
  507. package/dist/services/rating-state-manager.d.ts.map +0 -1
  508. package/dist/services/rating-state-manager.js +0 -270
  509. package/dist/services/rating-state-manager.js.map +0 -1
  510. package/dist/services/sdk-runner.d.ts +0 -113
  511. package/dist/services/sdk-runner.d.ts.map +0 -1
  512. package/dist/services/sdk-runner.js +0 -1424
  513. package/dist/services/sdk-runner.js.map +0 -1
  514. package/dist/services/session-manager.d.ts +0 -528
  515. package/dist/services/session-manager.d.ts.map +0 -1
  516. package/dist/services/session-manager.js +0 -1184
  517. package/dist/services/session-manager.js.map +0 -1
  518. package/dist/services/shell-executor.d.ts +0 -337
  519. package/dist/services/shell-executor.d.ts.map +0 -1
  520. package/dist/services/shell-executor.js +0 -1201
  521. package/dist/services/shell-executor.js.map +0 -1
  522. package/dist/services/skill-service.d.ts +0 -149
  523. package/dist/services/skill-service.d.ts.map +0 -1
  524. package/dist/services/skill-service.js +0 -594
  525. package/dist/services/skill-service.js.map +0 -1
  526. package/dist/services/statusline-executor.d.ts +0 -102
  527. package/dist/services/statusline-executor.d.ts.map +0 -1
  528. package/dist/services/statusline-executor.js +0 -305
  529. package/dist/services/statusline-executor.js.map +0 -1
  530. package/dist/services/step-tracker.d.ts +0 -356
  531. package/dist/services/step-tracker.d.ts.map +0 -1
  532. package/dist/services/step-tracker.js +0 -634
  533. package/dist/services/step-tracker.js.map +0 -1
  534. package/dist/services/system-event-logger.d.ts +0 -473
  535. package/dist/services/system-event-logger.d.ts.map +0 -1
  536. package/dist/services/system-event-logger.js +0 -790
  537. package/dist/services/system-event-logger.js.map +0 -1
  538. package/dist/services/system-utility-detector.d.ts +0 -91
  539. package/dist/services/system-utility-detector.d.ts.map +0 -1
  540. package/dist/services/system-utility-detector.js +0 -238
  541. package/dist/services/system-utility-detector.js.map +0 -1
  542. package/dist/services/team-context-store.d.ts +0 -100
  543. package/dist/services/team-context-store.d.ts.map +0 -1
  544. package/dist/services/team-context-store.js +0 -513
  545. package/dist/services/team-context-store.js.map +0 -1
  546. package/dist/services/temp-file-service.d.ts +0 -164
  547. package/dist/services/temp-file-service.d.ts.map +0 -1
  548. package/dist/services/temp-file-service.js +0 -303
  549. package/dist/services/temp-file-service.js.map +0 -1
  550. package/dist/services/token-limit-enforcer.d.ts +0 -53
  551. package/dist/services/token-limit-enforcer.d.ts.map +0 -1
  552. package/dist/services/token-limit-enforcer.js +0 -90
  553. package/dist/services/token-limit-enforcer.js.map +0 -1
  554. package/dist/services/token-limit-store.d.ts +0 -105
  555. package/dist/services/token-limit-store.d.ts.map +0 -1
  556. package/dist/services/token-limit-store.js +0 -288
  557. package/dist/services/token-limit-store.js.map +0 -1
  558. package/dist/services/token-tracker.d.ts +0 -290
  559. package/dist/services/token-tracker.d.ts.map +0 -1
  560. package/dist/services/token-tracker.js +0 -751
  561. package/dist/services/token-tracker.js.map +0 -1
  562. package/dist/services/tool-registry.d.ts +0 -302
  563. package/dist/services/tool-registry.d.ts.map +0 -1
  564. package/dist/services/tool-registry.js +0 -606
  565. package/dist/services/tool-registry.js.map +0 -1
  566. package/dist/services/tools-logger.d.ts +0 -152
  567. package/dist/services/tools-logger.d.ts.map +0 -1
  568. package/dist/services/tools-logger.js +0 -222
  569. package/dist/services/tools-logger.js.map +0 -1
  570. package/dist/services/update-plan-handler.d.ts +0 -56
  571. package/dist/services/update-plan-handler.d.ts.map +0 -1
  572. package/dist/services/update-plan-handler.js +0 -372
  573. package/dist/services/update-plan-handler.js.map +0 -1
  574. package/dist/services/update-service.d.ts +0 -197
  575. package/dist/services/update-service.d.ts.map +0 -1
  576. package/dist/services/update-service.js +0 -749
  577. package/dist/services/update-service.js.map +0 -1
  578. package/dist/services/verifier.d.ts +0 -113
  579. package/dist/services/verifier.d.ts.map +0 -1
  580. package/dist/services/verifier.js +0 -541
  581. package/dist/services/verifier.js.map +0 -1
  582. package/dist/services/workflow-manager.d.ts +0 -277
  583. package/dist/services/workflow-manager.d.ts.map +0 -1
  584. package/dist/services/workflow-manager.js +0 -616
  585. package/dist/services/workflow-manager.js.map +0 -1
  586. package/dist/services/workflow-orchestrator.d.ts +0 -148
  587. package/dist/services/workflow-orchestrator.d.ts.map +0 -1
  588. package/dist/services/workflow-orchestrator.js +0 -617
  589. package/dist/services/workflow-orchestrator.js.map +0 -1
  590. package/dist/services/worktree-manager.d.ts +0 -36
  591. package/dist/services/worktree-manager.d.ts.map +0 -1
  592. package/dist/services/worktree-manager.js +0 -185
  593. package/dist/services/worktree-manager.js.map +0 -1
  594. package/dist/templates/ascii-art.d.ts +0 -136
  595. package/dist/templates/ascii-art.d.ts.map +0 -1
  596. package/dist/templates/ascii-art.js +0 -286
  597. package/dist/templates/ascii-art.js.map +0 -1
  598. package/dist/templates/help.d.ts +0 -186
  599. package/dist/templates/help.d.ts.map +0 -1
  600. package/dist/templates/help.js +0 -588
  601. package/dist/templates/help.js.map +0 -1
  602. package/dist/templates/prompts/workflow-prompts.d.ts +0 -9
  603. package/dist/templates/prompts/workflow-prompts.d.ts.map +0 -1
  604. package/dist/templates/prompts/workflow-prompts.js +0 -9
  605. package/dist/templates/prompts/workflow-prompts.js.map +0 -1
  606. package/dist/tools/agent-tools.d.ts +0 -9
  607. package/dist/tools/agent-tools.d.ts.map +0 -1
  608. package/dist/tools/agent-tools.js +0 -349
  609. package/dist/tools/agent-tools.js.map +0 -1
  610. package/dist/tools/edit-replacers.d.ts +0 -90
  611. package/dist/tools/edit-replacers.d.ts.map +0 -1
  612. package/dist/tools/edit-replacers.js +0 -553
  613. package/dist/tools/edit-replacers.js.map +0 -1
  614. package/dist/tools/file-tools.d.ts +0 -13
  615. package/dist/tools/file-tools.d.ts.map +0 -1
  616. package/dist/tools/file-tools.js +0 -954
  617. package/dist/tools/file-tools.js.map +0 -1
  618. package/dist/tools/git-tools.d.ts +0 -9
  619. package/dist/tools/git-tools.d.ts.map +0 -1
  620. package/dist/tools/git-tools.js +0 -261
  621. package/dist/tools/git-tools.js.map +0 -1
  622. package/dist/tools/index.d.ts +0 -13
  623. package/dist/tools/index.d.ts.map +0 -1
  624. package/dist/tools/index.js +0 -70
  625. package/dist/tools/index.js.map +0 -1
  626. package/dist/tools/network-tools.d.ts +0 -8
  627. package/dist/tools/network-tools.d.ts.map +0 -1
  628. package/dist/tools/network-tools.js +0 -261
  629. package/dist/tools/network-tools.js.map +0 -1
  630. package/dist/tools/openai-tools.d.ts +0 -16
  631. package/dist/tools/openai-tools.d.ts.map +0 -1
  632. package/dist/tools/openai-tools.js +0 -385
  633. package/dist/tools/openai-tools.js.map +0 -1
  634. package/dist/tools/plan-tools.d.ts +0 -9
  635. package/dist/tools/plan-tools.d.ts.map +0 -1
  636. package/dist/tools/plan-tools.js +0 -223
  637. package/dist/tools/plan-tools.js.map +0 -1
  638. package/dist/tools/schedule-tools.d.ts +0 -9
  639. package/dist/tools/schedule-tools.d.ts.map +0 -1
  640. package/dist/tools/schedule-tools.js +0 -405
  641. package/dist/tools/schedule-tools.js.map +0 -1
  642. package/dist/tools/search-tools.d.ts +0 -8
  643. package/dist/tools/search-tools.d.ts.map +0 -1
  644. package/dist/tools/search-tools.js +0 -357
  645. package/dist/tools/search-tools.js.map +0 -1
  646. package/dist/tools/shared-utils.d.ts +0 -91
  647. package/dist/tools/shared-utils.d.ts.map +0 -1
  648. package/dist/tools/shared-utils.js +0 -385
  649. package/dist/tools/shared-utils.js.map +0 -1
  650. package/dist/tools/shell-tools.d.ts +0 -9
  651. package/dist/tools/shell-tools.d.ts.map +0 -1
  652. package/dist/tools/shell-tools.js +0 -409
  653. package/dist/tools/shell-tools.js.map +0 -1
  654. package/dist/tools/skill-tools.d.ts +0 -13
  655. package/dist/tools/skill-tools.d.ts.map +0 -1
  656. package/dist/tools/skill-tools.js +0 -244
  657. package/dist/tools/skill-tools.js.map +0 -1
  658. package/dist/tools/swarm-tools.d.ts +0 -9
  659. package/dist/tools/swarm-tools.d.ts.map +0 -1
  660. package/dist/tools/swarm-tools.js +0 -422
  661. package/dist/tools/swarm-tools.js.map +0 -1
  662. package/dist/tools/user-tools.d.ts +0 -13
  663. package/dist/tools/user-tools.d.ts.map +0 -1
  664. package/dist/tools/user-tools.js +0 -232
  665. package/dist/tools/user-tools.js.map +0 -1
  666. package/dist/types/agent-process.d.ts +0 -244
  667. package/dist/types/agent-process.d.ts.map +0 -1
  668. package/dist/types/agent-process.js +0 -93
  669. package/dist/types/agent-process.js.map +0 -1
  670. package/dist/types/agent.d.ts +0 -358
  671. package/dist/types/agent.d.ts.map +0 -1
  672. package/dist/types/agent.js +0 -171
  673. package/dist/types/agent.js.map +0 -1
  674. package/dist/types/anthropic.d.ts +0 -438
  675. package/dist/types/anthropic.d.ts.map +0 -1
  676. package/dist/types/anthropic.js +0 -9
  677. package/dist/types/anthropic.js.map +0 -1
  678. package/dist/types/approval.d.ts +0 -332
  679. package/dist/types/approval.d.ts.map +0 -1
  680. package/dist/types/approval.js +0 -44
  681. package/dist/types/approval.js.map +0 -1
  682. package/dist/types/autocomplete.d.ts +0 -57
  683. package/dist/types/autocomplete.d.ts.map +0 -1
  684. package/dist/types/autocomplete.js +0 -7
  685. package/dist/types/autocomplete.js.map +0 -1
  686. package/dist/types/chat-archive.d.ts +0 -161
  687. package/dist/types/chat-archive.d.ts.map +0 -1
  688. package/dist/types/chat-archive.js +0 -36
  689. package/dist/types/chat-archive.js.map +0 -1
  690. package/dist/types/config.d.ts +0 -268
  691. package/dist/types/config.d.ts.map +0 -1
  692. package/dist/types/config.js +0 -188
  693. package/dist/types/config.js.map +0 -1
  694. package/dist/types/consent.d.ts +0 -191
  695. package/dist/types/consent.d.ts.map +0 -1
  696. package/dist/types/consent.js +0 -119
  697. package/dist/types/consent.js.map +0 -1
  698. package/dist/types/custom-command.d.ts +0 -139
  699. package/dist/types/custom-command.d.ts.map +0 -1
  700. package/dist/types/custom-command.js +0 -7
  701. package/dist/types/custom-command.js.map +0 -1
  702. package/dist/types/git.d.ts +0 -20
  703. package/dist/types/git.d.ts.map +0 -1
  704. package/dist/types/git.js +0 -2
  705. package/dist/types/git.js.map +0 -1
  706. package/dist/types/hook.d.ts +0 -342
  707. package/dist/types/hook.d.ts.map +0 -1
  708. package/dist/types/hook.js +0 -84
  709. package/dist/types/hook.js.map +0 -1
  710. package/dist/types/index.d.ts +0 -86
  711. package/dist/types/index.d.ts.map +0 -1
  712. package/dist/types/index.js +0 -71
  713. package/dist/types/index.js.map +0 -1
  714. package/dist/types/mcp.d.ts +0 -456
  715. package/dist/types/mcp.d.ts.map +0 -1
  716. package/dist/types/mcp.js +0 -94
  717. package/dist/types/mcp.js.map +0 -1
  718. package/dist/types/rating.d.ts +0 -110
  719. package/dist/types/rating.d.ts.map +0 -1
  720. package/dist/types/rating.js +0 -53
  721. package/dist/types/rating.js.map +0 -1
  722. package/dist/types/schedule.d.ts +0 -91
  723. package/dist/types/schedule.d.ts.map +0 -1
  724. package/dist/types/schedule.js +0 -8
  725. package/dist/types/schedule.js.map +0 -1
  726. package/dist/types/session.d.ts +0 -361
  727. package/dist/types/session.d.ts.map +0 -1
  728. package/dist/types/session.js +0 -9
  729. package/dist/types/session.js.map +0 -1
  730. package/dist/types/skill.d.ts +0 -258
  731. package/dist/types/skill.d.ts.map +0 -1
  732. package/dist/types/skill.js +0 -79
  733. package/dist/types/skill.js.map +0 -1
  734. package/dist/types/statusline.d.ts +0 -212
  735. package/dist/types/statusline.d.ts.map +0 -1
  736. package/dist/types/statusline.js +0 -8
  737. package/dist/types/statusline.js.map +0 -1
  738. package/dist/types/stream.d.ts +0 -61
  739. package/dist/types/stream.d.ts.map +0 -1
  740. package/dist/types/stream.js +0 -17
  741. package/dist/types/stream.js.map +0 -1
  742. package/dist/types/swarm.d.ts +0 -132
  743. package/dist/types/swarm.d.ts.map +0 -1
  744. package/dist/types/swarm.js +0 -21
  745. package/dist/types/swarm.js.map +0 -1
  746. package/dist/types/token-limits.d.ts +0 -107
  747. package/dist/types/token-limits.d.ts.map +0 -1
  748. package/dist/types/token-limits.js +0 -57
  749. package/dist/types/token-limits.js.map +0 -1
  750. package/dist/types/token.d.ts +0 -329
  751. package/dist/types/token.d.ts.map +0 -1
  752. package/dist/types/token.js +0 -9
  753. package/dist/types/token.js.map +0 -1
  754. package/dist/types/update.d.ts +0 -189
  755. package/dist/types/update.d.ts.map +0 -1
  756. package/dist/types/update.js +0 -55
  757. package/dist/types/update.js.map +0 -1
  758. package/dist/types/workflow.d.ts +0 -396
  759. package/dist/types/workflow.d.ts.map +0 -1
  760. package/dist/types/workflow.js +0 -46
  761. package/dist/types/workflow.js.map +0 -1
  762. package/dist/ui/App.d.ts +0 -62
  763. package/dist/ui/App.d.ts.map +0 -1
  764. package/dist/ui/App.js +0 -511
  765. package/dist/ui/App.js.map +0 -1
  766. package/dist/ui/InteractiveSession.d.ts +0 -34
  767. package/dist/ui/InteractiveSession.d.ts.map +0 -1
  768. package/dist/ui/InteractiveSession.js +0 -3611
  769. package/dist/ui/InteractiveSession.js.map +0 -1
  770. package/dist/ui/MCPApprovalPrompt.d.ts +0 -27
  771. package/dist/ui/MCPApprovalPrompt.d.ts.map +0 -1
  772. package/dist/ui/MCPApprovalPrompt.js +0 -51
  773. package/dist/ui/MCPApprovalPrompt.js.map +0 -1
  774. package/dist/ui/SetupWizard.d.ts +0 -26
  775. package/dist/ui/SetupWizard.d.ts.map +0 -1
  776. package/dist/ui/SetupWizard.js +0 -396
  777. package/dist/ui/SetupWizard.js.map +0 -1
  778. package/dist/ui/components/AgentCreationWizard.d.ts +0 -36
  779. package/dist/ui/components/AgentCreationWizard.d.ts.map +0 -1
  780. package/dist/ui/components/AgentCreationWizard.js +0 -619
  781. package/dist/ui/components/AgentCreationWizard.js.map +0 -1
  782. package/dist/ui/components/AgentManager.d.ts +0 -41
  783. package/dist/ui/components/AgentManager.d.ts.map +0 -1
  784. package/dist/ui/components/AgentManager.js +0 -343
  785. package/dist/ui/components/AgentManager.js.map +0 -1
  786. package/dist/ui/components/ApprovalDialog.d.ts +0 -18
  787. package/dist/ui/components/ApprovalDialog.d.ts.map +0 -1
  788. package/dist/ui/components/ApprovalDialog.js +0 -439
  789. package/dist/ui/components/ApprovalDialog.js.map +0 -1
  790. package/dist/ui/components/AsciiArt.d.ts +0 -54
  791. package/dist/ui/components/AsciiArt.d.ts.map +0 -1
  792. package/dist/ui/components/AsciiArt.js +0 -89
  793. package/dist/ui/components/AsciiArt.js.map +0 -1
  794. package/dist/ui/components/ClarificationWizard.d.ts +0 -36
  795. package/dist/ui/components/ClarificationWizard.d.ts.map +0 -1
  796. package/dist/ui/components/ClarificationWizard.js +0 -407
  797. package/dist/ui/components/ClarificationWizard.js.map +0 -1
  798. package/dist/ui/components/CompassSpinner.d.ts +0 -15
  799. package/dist/ui/components/CompassSpinner.d.ts.map +0 -1
  800. package/dist/ui/components/CompassSpinner.js +0 -50
  801. package/dist/ui/components/CompassSpinner.js.map +0 -1
  802. package/dist/ui/components/ConfirmationSelector.d.ts +0 -45
  803. package/dist/ui/components/ConfirmationSelector.d.ts.map +0 -1
  804. package/dist/ui/components/ConfirmationSelector.js +0 -106
  805. package/dist/ui/components/ConfirmationSelector.js.map +0 -1
  806. package/dist/ui/components/ContextUsage.d.ts +0 -76
  807. package/dist/ui/components/ContextUsage.d.ts.map +0 -1
  808. package/dist/ui/components/ContextUsage.js +0 -188
  809. package/dist/ui/components/ContextUsage.js.map +0 -1
  810. package/dist/ui/components/DiffPreview.d.ts +0 -13
  811. package/dist/ui/components/DiffPreview.d.ts.map +0 -1
  812. package/dist/ui/components/DiffPreview.js +0 -30
  813. package/dist/ui/components/DiffPreview.js.map +0 -1
  814. package/dist/ui/components/ExecutionModeSelector.d.ts +0 -45
  815. package/dist/ui/components/ExecutionModeSelector.d.ts.map +0 -1
  816. package/dist/ui/components/ExecutionModeSelector.js +0 -120
  817. package/dist/ui/components/ExecutionModeSelector.js.map +0 -1
  818. package/dist/ui/components/FileTree.d.ts +0 -47
  819. package/dist/ui/components/FileTree.d.ts.map +0 -1
  820. package/dist/ui/components/FileTree.js +0 -258
  821. package/dist/ui/components/FileTree.js.map +0 -1
  822. package/dist/ui/components/HelpMenu.d.ts +0 -49
  823. package/dist/ui/components/HelpMenu.d.ts.map +0 -1
  824. package/dist/ui/components/HelpMenu.js +0 -91
  825. package/dist/ui/components/HelpMenu.js.map +0 -1
  826. package/dist/ui/components/InterleavedStream.d.ts +0 -42
  827. package/dist/ui/components/InterleavedStream.d.ts.map +0 -1
  828. package/dist/ui/components/InterleavedStream.js +0 -1500
  829. package/dist/ui/components/InterleavedStream.js.map +0 -1
  830. package/dist/ui/components/ModelSelector.d.ts +0 -81
  831. package/dist/ui/components/ModelSelector.d.ts.map +0 -1
  832. package/dist/ui/components/ModelSelector.js +0 -305
  833. package/dist/ui/components/ModelSelector.js.map +0 -1
  834. package/dist/ui/components/PlanApprovalDialog.d.ts +0 -21
  835. package/dist/ui/components/PlanApprovalDialog.d.ts.map +0 -1
  836. package/dist/ui/components/PlanApprovalDialog.js +0 -189
  837. package/dist/ui/components/PlanApprovalDialog.js.map +0 -1
  838. package/dist/ui/components/PlanExecutionTracker.d.ts +0 -53
  839. package/dist/ui/components/PlanExecutionTracker.d.ts.map +0 -1
  840. package/dist/ui/components/PlanExecutionTracker.js +0 -113
  841. package/dist/ui/components/PlanExecutionTracker.js.map +0 -1
  842. package/dist/ui/components/ProgressIndicator.d.ts +0 -151
  843. package/dist/ui/components/ProgressIndicator.d.ts.map +0 -1
  844. package/dist/ui/components/ProgressIndicator.js +0 -171
  845. package/dist/ui/components/ProgressIndicator.js.map +0 -1
  846. package/dist/ui/components/Prompt.d.ts +0 -47
  847. package/dist/ui/components/Prompt.d.ts.map +0 -1
  848. package/dist/ui/components/Prompt.js +0 -632
  849. package/dist/ui/components/Prompt.js.map +0 -1
  850. package/dist/ui/components/RatingPanel.d.ts +0 -45
  851. package/dist/ui/components/RatingPanel.d.ts.map +0 -1
  852. package/dist/ui/components/RatingPanel.js +0 -119
  853. package/dist/ui/components/RatingPanel.js.map +0 -1
  854. package/dist/ui/components/StatusLine.d.ts +0 -43
  855. package/dist/ui/components/StatusLine.d.ts.map +0 -1
  856. package/dist/ui/components/StatusLine.js +0 -44
  857. package/dist/ui/components/StatusLine.js.map +0 -1
  858. package/dist/ui/components/StreamingResponse.d.ts +0 -45
  859. package/dist/ui/components/StreamingResponse.d.ts.map +0 -1
  860. package/dist/ui/components/StreamingResponse.js +0 -56
  861. package/dist/ui/components/StreamingResponse.js.map +0 -1
  862. package/dist/ui/components/TokenUsage.d.ts +0 -89
  863. package/dist/ui/components/TokenUsage.d.ts.map +0 -1
  864. package/dist/ui/components/TokenUsage.js +0 -99
  865. package/dist/ui/components/TokenUsage.js.map +0 -1
  866. package/dist/ui/components/ToolSummary.d.ts +0 -77
  867. package/dist/ui/components/ToolSummary.d.ts.map +0 -1
  868. package/dist/ui/components/ToolSummary.js +0 -162
  869. package/dist/ui/components/ToolSummary.js.map +0 -1
  870. package/dist/ui/components/UpdateNotification.d.ts +0 -65
  871. package/dist/ui/components/UpdateNotification.d.ts.map +0 -1
  872. package/dist/ui/components/UpdateNotification.js +0 -166
  873. package/dist/ui/components/UpdateNotification.js.map +0 -1
  874. package/dist/ui/diff-renderer.d.ts +0 -18
  875. package/dist/ui/diff-renderer.d.ts.map +0 -1
  876. package/dist/ui/diff-renderer.js +0 -206
  877. package/dist/ui/diff-renderer.js.map +0 -1
  878. package/dist/ui/themes/markdown-theme.d.ts +0 -48
  879. package/dist/ui/themes/markdown-theme.d.ts.map +0 -1
  880. package/dist/ui/themes/markdown-theme.js +0 -79
  881. package/dist/ui/themes/markdown-theme.js.map +0 -1
  882. package/dist/ui/themes/ui-theme.d.ts +0 -301
  883. package/dist/ui/themes/ui-theme.d.ts.map +0 -1
  884. package/dist/ui/themes/ui-theme.js +0 -204
  885. package/dist/ui/themes/ui-theme.js.map +0 -1
  886. package/dist/utils/attachment-handler.d.ts +0 -129
  887. package/dist/utils/attachment-handler.d.ts.map +0 -1
  888. package/dist/utils/attachment-handler.js +0 -280
  889. package/dist/utils/attachment-handler.js.map +0 -1
  890. package/dist/utils/backup-cleanup.d.ts +0 -28
  891. package/dist/utils/backup-cleanup.d.ts.map +0 -1
  892. package/dist/utils/backup-cleanup.js +0 -99
  893. package/dist/utils/backup-cleanup.js.map +0 -1
  894. package/dist/utils/clipboard-handler.d.ts +0 -82
  895. package/dist/utils/clipboard-handler.d.ts.map +0 -1
  896. package/dist/utils/clipboard-handler.js +0 -311
  897. package/dist/utils/clipboard-handler.js.map +0 -1
  898. package/dist/utils/cloud-detection.d.ts +0 -14
  899. package/dist/utils/cloud-detection.d.ts.map +0 -1
  900. package/dist/utils/cloud-detection.js +0 -92
  901. package/dist/utils/cloud-detection.js.map +0 -1
  902. package/dist/utils/command-parser.d.ts +0 -56
  903. package/dist/utils/command-parser.d.ts.map +0 -1
  904. package/dist/utils/command-parser.js +0 -206
  905. package/dist/utils/command-parser.js.map +0 -1
  906. package/dist/utils/console-capture.d.ts +0 -30
  907. package/dist/utils/console-capture.d.ts.map +0 -1
  908. package/dist/utils/console-capture.js +0 -88
  909. package/dist/utils/console-capture.js.map +0 -1
  910. package/dist/utils/cron-parser.d.ts +0 -52
  911. package/dist/utils/cron-parser.d.ts.map +0 -1
  912. package/dist/utils/cron-parser.js +0 -455
  913. package/dist/utils/cron-parser.js.map +0 -1
  914. package/dist/utils/crypto.d.ts +0 -351
  915. package/dist/utils/crypto.d.ts.map +0 -1
  916. package/dist/utils/crypto.js +0 -615
  917. package/dist/utils/crypto.js.map +0 -1
  918. package/dist/utils/diff.d.ts +0 -311
  919. package/dist/utils/diff.d.ts.map +0 -1
  920. package/dist/utils/diff.js +0 -566
  921. package/dist/utils/diff.js.map +0 -1
  922. package/dist/utils/editor.d.ts +0 -12
  923. package/dist/utils/editor.d.ts.map +0 -1
  924. package/dist/utils/editor.js +0 -30
  925. package/dist/utils/editor.js.map +0 -1
  926. package/dist/utils/file-system.d.ts +0 -512
  927. package/dist/utils/file-system.d.ts.map +0 -1
  928. package/dist/utils/file-system.js +0 -798
  929. package/dist/utils/file-system.js.map +0 -1
  930. package/dist/utils/format.d.ts +0 -318
  931. package/dist/utils/format.d.ts.map +0 -1
  932. package/dist/utils/format.js +0 -587
  933. package/dist/utils/format.js.map +0 -1
  934. package/dist/utils/ignore-patterns.d.ts +0 -93
  935. package/dist/utils/ignore-patterns.d.ts.map +0 -1
  936. package/dist/utils/ignore-patterns.js +0 -710
  937. package/dist/utils/ignore-patterns.js.map +0 -1
  938. package/dist/utils/log-cleanup.d.ts +0 -16
  939. package/dist/utils/log-cleanup.d.ts.map +0 -1
  940. package/dist/utils/log-cleanup.js +0 -51
  941. package/dist/utils/log-cleanup.js.map +0 -1
  942. package/dist/utils/logger.d.ts +0 -305
  943. package/dist/utils/logger.d.ts.map +0 -1
  944. package/dist/utils/logger.js +0 -447
  945. package/dist/utils/logger.js.map +0 -1
  946. package/dist/utils/path.d.ts +0 -406
  947. package/dist/utils/path.d.ts.map +0 -1
  948. package/dist/utils/path.js +0 -549
  949. package/dist/utils/path.js.map +0 -1
  950. package/dist/utils/schedule-file.d.ts +0 -63
  951. package/dist/utils/schedule-file.d.ts.map +0 -1
  952. package/dist/utils/schedule-file.js +0 -244
  953. package/dist/utils/schedule-file.js.map +0 -1
  954. package/dist/utils/task-id.d.ts +0 -29
  955. package/dist/utils/task-id.d.ts.map +0 -1
  956. package/dist/utils/task-id.js +0 -53
  957. package/dist/utils/task-id.js.map +0 -1
  958. package/dist/utils/temp-cleanup.d.ts +0 -46
  959. package/dist/utils/temp-cleanup.d.ts.map +0 -1
  960. package/dist/utils/temp-cleanup.js +0 -95
  961. package/dist/utils/temp-cleanup.js.map +0 -1
  962. package/dist/utils/terminal-output.d.ts +0 -34
  963. package/dist/utils/terminal-output.d.ts.map +0 -1
  964. package/dist/utils/terminal-output.js +0 -40
  965. package/dist/utils/terminal-output.js.map +0 -1
  966. package/dist/utils/token-counter.d.ts +0 -224
  967. package/dist/utils/token-counter.d.ts.map +0 -1
  968. package/dist/utils/token-counter.js +0 -332
  969. package/dist/utils/token-counter.js.map +0 -1
  970. package/dist/utils/tool-mapper.d.ts +0 -70
  971. package/dist/utils/tool-mapper.d.ts.map +0 -1
  972. package/dist/utils/tool-mapper.js +0 -234
  973. package/dist/utils/tool-mapper.js.map +0 -1
@@ -1,1026 +0,0 @@
1
- /**
2
- * Slash /mcp command implementation for interactive MCP server management.
3
- *
4
- * This command provides an interactive interface for:
5
- * - Viewing connected MCP servers and their status
6
- * - Authenticating with OAuth-enabled servers
7
- * - Managing server connections
8
- * - Viewing available tools, resources, and prompts
9
- *
10
- * @example
11
- * ```
12
- * /mcp - Show MCP server status overview
13
- * /mcp servers - List all configured servers
14
- * /mcp tools - List all available MCP tools
15
- * /mcp connect - Connect to all configured servers
16
- * /mcp auth - Start authentication for a server
17
- * ```
18
- */
19
- import chalk from 'chalk';
20
- import { exec } from 'child_process';
21
- import { getMCPServerManager } from '../../services/mcp-server-manager.js';
22
- import { getMCPConfigManager } from '../../services/mcp-config-manager.js';
23
- import { getMCPOAuthService, getProviderInfo, getFallbackConfig, checkLocalFigmaServer, } from '../../services/mcp-oauth-service.js';
24
- import { logger } from '../../utils/logger.js';
25
- import { registerSlashCommand, } from '../../core/slash-command-handler.js';
26
- import { isMCPHttpConfig, isMCPSseConfig, isMCPStdioConfig, } from '../../types/mcp.js';
27
- import { getEventEmitter } from '../../core/event-emitter.js';
28
- /**
29
- * Opens a URL in the user's default browser.
30
- * Uses platform-specific commands: start (Windows), open (macOS), xdg-open (Linux)
31
- */
32
- function openInBrowser(url) {
33
- return new Promise((resolve) => {
34
- const platform = process.platform;
35
- let command;
36
- if (platform === 'win32') {
37
- // Windows - use start command, wrap URL in quotes to handle special chars
38
- command = `start "" "${url}"`;
39
- }
40
- else if (platform === 'darwin') {
41
- // macOS
42
- command = `open "${url}"`;
43
- }
44
- else {
45
- // Linux and others
46
- command = `xdg-open "${url}"`;
47
- }
48
- exec(command, (error) => {
49
- if (error) {
50
- logger.debug(`Failed to open browser: ${error.message}`);
51
- resolve(false);
52
- }
53
- else {
54
- resolve(true);
55
- }
56
- });
57
- });
58
- }
59
- /**
60
- * Emits output for the mcp command via the event system
61
- * This allows the UI to capture and display the output in real-time
62
- */
63
- function emitOutput(message, isError = false) {
64
- const eventEmitter = getEventEmitter();
65
- eventEmitter.emit('slash-command-output', {
66
- command: 'mcp',
67
- message,
68
- isError,
69
- });
70
- }
71
- /**
72
- * Formats server type for display.
73
- */
74
- function formatServerType(type) {
75
- switch (type) {
76
- case 'http':
77
- return chalk.cyan('HTTP');
78
- case 'sse':
79
- return chalk.yellow('SSE');
80
- case 'stdio':
81
- return chalk.green('stdio');
82
- default:
83
- return chalk.gray(type);
84
- }
85
- }
86
- /**
87
- * Displays the MCP status overview.
88
- */
89
- async function displayStatus() {
90
- const serverManager = getMCPServerManager();
91
- const states = serverManager.getAllServerStates();
92
- emitOutput('');
93
- emitOutput(chalk.bold('MCP Server Status'));
94
- emitOutput(chalk.dim('─'.repeat(50)));
95
- if (states.length === 0) {
96
- emitOutput('');
97
- emitOutput(chalk.gray('No MCP servers configured.'));
98
- emitOutput('');
99
- emitOutput(chalk.gray('Add servers using:'));
100
- emitOutput(chalk.gray(' compass mcp add --transport http <name> <url>'));
101
- emitOutput('');
102
- return;
103
- }
104
- const connected = states.filter((s) => s.status === 'connected').length;
105
- const total = states.length;
106
- const totalTools = serverManager.getAllTools().length;
107
- const totalResources = serverManager.getAllResources().length;
108
- const totalPrompts = serverManager.getAllPrompts().length;
109
- emitOutput('');
110
- emitOutput(`${chalk.gray('Connected:')} ${connected}/${total} servers`);
111
- emitOutput(`${chalk.gray('Tools:')} ${totalTools}`);
112
- emitOutput(`${chalk.gray('Resources:')} ${totalResources}`);
113
- emitOutput(`${chalk.gray('Prompts:')} ${totalPrompts}`);
114
- emitOutput('');
115
- let hasUnapproved = false;
116
- let hasAuthRequired = false;
117
- let hasErrors = false;
118
- for (const state of states) {
119
- const statusIndicator = state.status === 'connected'
120
- ? chalk.green('●')
121
- : state.status === 'error'
122
- ? chalk.red('●')
123
- : chalk.gray('○');
124
- emitOutput(`${statusIndicator} ${chalk.bold(state.config.name)} ${chalk.gray(`(${formatServerType(state.config.type)})`)}`);
125
- if (state.status === 'connected') {
126
- emitOutput(` ${chalk.gray('Tools:')} ${state.tools.length}, ${chalk.gray('Resources:')} ${state.resources.length}, ${chalk.gray('Prompts:')} ${state.prompts.length}`);
127
- }
128
- else if (state.status === 'error') {
129
- emitOutput(` ${chalk.red(state.error || 'Unknown error')}`);
130
- hasErrors = true;
131
- }
132
- else if (state.error) {
133
- emitOutput(` ${chalk.yellow(state.error)}`);
134
- if (state.error === 'Awaiting approval') {
135
- hasUnapproved = true;
136
- }
137
- if (state.error.includes('Authentication required')) {
138
- hasAuthRequired = true;
139
- }
140
- }
141
- }
142
- emitOutput('');
143
- if (hasErrors) {
144
- emitOutput(chalk.yellow('Tip: Reconnect failed servers with /mcp reconnect <server-name>'));
145
- emitOutput('');
146
- }
147
- if (hasUnapproved) {
148
- emitOutput(chalk.yellow('Tip: Approve project servers with /mcp approve <server-name>'));
149
- emitOutput('');
150
- }
151
- if (hasAuthRequired) {
152
- emitOutput(chalk.yellow('Tip: Authenticate servers with /mcp auth <server-name> <token>'));
153
- emitOutput('');
154
- }
155
- emitOutput(chalk.gray('Commands: /mcp servers | /mcp tools | /mcp connect | /mcp approve'));
156
- emitOutput('');
157
- }
158
- /**
159
- * Lists all configured servers.
160
- */
161
- async function listServers() {
162
- const configManager = getMCPConfigManager();
163
- await configManager.load(process.cwd());
164
- const servers = configManager.getAllServers(process.cwd());
165
- emitOutput('');
166
- emitOutput(chalk.bold('Configured MCP Servers'));
167
- emitOutput(chalk.dim('─'.repeat(50)));
168
- if (servers.length === 0) {
169
- emitOutput(chalk.gray('No servers configured.'));
170
- emitOutput('');
171
- return;
172
- }
173
- for (const server of servers) {
174
- const typeLabel = formatServerType(server.type);
175
- const scopeLabel = chalk.gray(`[${server.scope || 'local'}]`);
176
- emitOutput('');
177
- emitOutput(`${chalk.bold(server.name)} ${typeLabel} ${scopeLabel}`);
178
- if (isMCPHttpConfig(server) || isMCPSseConfig(server)) {
179
- emitOutput(` ${chalk.gray('URL:')} ${server.url}`);
180
- }
181
- else if (isMCPStdioConfig(server)) {
182
- const cmd = server.args
183
- ? `${server.command} ${server.args.join(' ')}`
184
- : server.command;
185
- emitOutput(` ${chalk.gray('Command:')} ${cmd}`);
186
- }
187
- if (server.source === 'plugin') {
188
- emitOutput(` ${chalk.gray('Plugin:')} ${server.pluginName}`);
189
- }
190
- }
191
- emitOutput('');
192
- }
193
- /**
194
- * Lists all available tools from connected servers.
195
- */
196
- async function listTools() {
197
- const serverManager = getMCPServerManager();
198
- const tools = serverManager.getAllTools();
199
- emitOutput('');
200
- emitOutput(chalk.bold('Available MCP Tools'));
201
- emitOutput(chalk.dim('─'.repeat(50)));
202
- if (tools.length === 0) {
203
- emitOutput(chalk.gray('No tools available.'));
204
- emitOutput(chalk.gray('Connect to MCP servers first with /mcp connect'));
205
- emitOutput('');
206
- return;
207
- }
208
- // Group tools by server
209
- const toolsByServer = new Map();
210
- for (const tool of tools) {
211
- const serverName = tool.serverName || 'unknown';
212
- if (!toolsByServer.has(serverName)) {
213
- toolsByServer.set(serverName, []);
214
- }
215
- toolsByServer.get(serverName).push(tool);
216
- }
217
- for (const [serverName, serverTools] of toolsByServer) {
218
- emitOutput('');
219
- emitOutput(chalk.bold.cyan(serverName));
220
- for (const tool of serverTools) {
221
- emitOutput(` ${chalk.white(tool.name)}`);
222
- if (tool.description) {
223
- emitOutput(` ${chalk.gray(tool.description)}`);
224
- }
225
- }
226
- }
227
- emitOutput('');
228
- emitOutput(chalk.gray(`Total: ${tools.length} tool(s)`));
229
- emitOutput('');
230
- }
231
- /**
232
- * Lists all available resources from connected servers.
233
- */
234
- async function listResources() {
235
- const serverManager = getMCPServerManager();
236
- const resources = serverManager.getAllResources();
237
- emitOutput('');
238
- emitOutput(chalk.bold('Available MCP Resources'));
239
- emitOutput(chalk.dim('─'.repeat(50)));
240
- if (resources.length === 0) {
241
- emitOutput(chalk.gray('No resources available.'));
242
- emitOutput('');
243
- return;
244
- }
245
- for (const resource of resources) {
246
- emitOutput(` ${chalk.white(resource.name)} ${chalk.gray(`(${resource.serverName})`)}`);
247
- emitOutput(` ${chalk.gray('URI:')} ${resource.uri}`);
248
- if (resource.description) {
249
- emitOutput(` ${chalk.gray(resource.description)}`);
250
- }
251
- }
252
- emitOutput('');
253
- }
254
- /**
255
- * Lists all available prompts from connected servers.
256
- */
257
- async function listPrompts() {
258
- const serverManager = getMCPServerManager();
259
- const prompts = serverManager.getAllPrompts();
260
- emitOutput('');
261
- emitOutput(chalk.bold('Available MCP Prompts'));
262
- emitOutput(chalk.dim('─'.repeat(50)));
263
- if (prompts.length === 0) {
264
- emitOutput(chalk.gray('No prompts available.'));
265
- emitOutput('');
266
- return;
267
- }
268
- for (const prompt of prompts) {
269
- emitOutput(` ${chalk.white(prompt.name)} ${chalk.gray(`(${prompt.serverName})`)}`);
270
- if (prompt.description) {
271
- emitOutput(` ${chalk.gray(prompt.description)}`);
272
- }
273
- if (prompt.arguments && prompt.arguments.length > 0) {
274
- const argNames = prompt.arguments
275
- .map((a) => (a.required ? a.name : `[${a.name}]`))
276
- .join(', ');
277
- emitOutput(` ${chalk.gray('Args:')} ${argNames}`);
278
- }
279
- }
280
- emitOutput('');
281
- }
282
- /**
283
- * Connects to all configured servers.
284
- */
285
- async function connectServers() {
286
- emitOutput('');
287
- emitOutput(chalk.cyan('Connecting to MCP servers...'));
288
- try {
289
- const serverManager = getMCPServerManager();
290
- await serverManager.initialize(process.cwd());
291
- await serverManager.connectAllServers();
292
- const connected = serverManager.getConnectedCount();
293
- const total = serverManager.getTotalCount();
294
- emitOutput('');
295
- if (connected === total) {
296
- emitOutput(chalk.green(`All ${total} server(s) connected successfully.`));
297
- }
298
- else {
299
- emitOutput(chalk.yellow(`Connected ${connected}/${total} server(s).`));
300
- emitOutput(chalk.gray('Use /mcp to see server status and errors.'));
301
- }
302
- emitOutput('');
303
- }
304
- catch (error) {
305
- const errorMessage = error instanceof Error ? error.message : String(error);
306
- emitOutput(chalk.red(`Failed to connect: ${errorMessage}`));
307
- emitOutput('');
308
- }
309
- }
310
- /**
311
- * Disconnects from all servers.
312
- */
313
- async function disconnectServers() {
314
- emitOutput('');
315
- emitOutput(chalk.cyan('Disconnecting from MCP servers...'));
316
- try {
317
- const serverManager = getMCPServerManager();
318
- await serverManager.disconnectAllServers();
319
- emitOutput(chalk.green('Disconnected from all servers.'));
320
- emitOutput('');
321
- }
322
- catch (error) {
323
- const errorMessage = error instanceof Error ? error.message : String(error);
324
- emitOutput(chalk.red(`Failed to disconnect: ${errorMessage}`));
325
- emitOutput('');
326
- }
327
- }
328
- /**
329
- * Displays fallback server information and setup instructions.
330
- */
331
- async function displayFallbackInfo(serverUrl, serverName) {
332
- const fallback = getFallbackConfig(serverUrl);
333
- const provider = getProviderInfo(serverUrl);
334
- if (!fallback || !provider) {
335
- return;
336
- }
337
- emitOutput('');
338
- emitOutput(chalk.yellow('━'.repeat(50)));
339
- emitOutput(chalk.yellow.bold(`OAuth Restricted: ${provider.name}`));
340
- emitOutput(chalk.yellow('━'.repeat(50)));
341
- emitOutput('');
342
- emitOutput(chalk.white(fallback.reason));
343
- emitOutput('');
344
- if (provider.approvedClients && provider.approvedClients.length > 0) {
345
- emitOutput(chalk.gray('Approved clients: ') + provider.approvedClients.join(', '));
346
- emitOutput('');
347
- }
348
- emitOutput(chalk.cyan.bold(`Alternative: ${fallback.name}`));
349
- emitOutput('');
350
- if (fallback.requirements && fallback.requirements.length > 0) {
351
- emitOutput(chalk.white('Requirements:'));
352
- for (const req of fallback.requirements) {
353
- emitOutput(chalk.gray(` • ${req}`));
354
- }
355
- emitOutput('');
356
- }
357
- if (fallback.setupInstructions && fallback.setupInstructions.length > 0) {
358
- emitOutput(chalk.white('Setup Instructions:'));
359
- for (const instruction of fallback.setupInstructions) {
360
- emitOutput(chalk.gray(` ${instruction}`));
361
- }
362
- emitOutput('');
363
- }
364
- // Check if local Figma server is available
365
- if (provider.name === 'figma') {
366
- emitOutput(chalk.cyan('Checking local Figma server availability...'));
367
- const isAvailable = await checkLocalFigmaServer();
368
- if (isAvailable) {
369
- emitOutput(chalk.green('✓ Local Figma MCP server is running!'));
370
- emitOutput('');
371
- emitOutput(chalk.white('To use it, update your .mcp.json:'));
372
- emitOutput('');
373
- emitOutput(chalk.gray(' {'));
374
- emitOutput(chalk.gray(' "mcpServers": {'));
375
- emitOutput(chalk.gray(` "${serverName}": {`));
376
- emitOutput(chalk.gray(' "type": "http",'));
377
- emitOutput(chalk.gray(' "url": "http://127.0.0.1:3845/mcp",'));
378
- emitOutput(chalk.gray(' "enabled": true'));
379
- emitOutput(chalk.gray(' }'));
380
- emitOutput(chalk.gray(' }'));
381
- emitOutput(chalk.gray(' }'));
382
- emitOutput('');
383
- emitOutput(chalk.cyan('Then run: /mcp connect'));
384
- }
385
- else {
386
- emitOutput(chalk.yellow('✗ Local Figma MCP server not detected.'));
387
- emitOutput(chalk.gray(' Follow the setup instructions above to enable it.'));
388
- }
389
- emitOutput('');
390
- }
391
- emitOutput(chalk.gray('For more information, see: docs/mcp-authentication.md'));
392
- emitOutput('');
393
- }
394
- /**
395
- * Starts authentication for a server.
396
- * Supports both OAuth flow and simple token-based authentication.
397
- *
398
- * @param serverName - The name of the server to authenticate
399
- * @param token - Optional API token for simple token-based authentication
400
- */
401
- async function authenticateServer(serverName, token) {
402
- if (!serverName) {
403
- emitOutput('');
404
- emitOutput(chalk.yellow('Please specify a server name: /mcp auth <server-name> [token]'));
405
- emitOutput('');
406
- emitOutput(chalk.gray('Examples:'));
407
- emitOutput(chalk.gray(' /mcp auth figma - Start OAuth flow (if configured)'));
408
- emitOutput(chalk.gray(' /mcp auth figma figd_abc123... - Set API token directly'));
409
- emitOutput('');
410
- return;
411
- }
412
- // Use server manager to get the server config - it already has all servers loaded
413
- // and handles path normalization correctly
414
- const serverManager = getMCPServerManager();
415
- const serverState = serverManager.getServerState(serverName);
416
- // If server is not in server manager, try the config manager as fallback
417
- let server = serverState?.config;
418
- if (!server) {
419
- const configManager = getMCPConfigManager();
420
- await configManager.load(process.cwd());
421
- server = configManager.getServer(serverName, process.cwd());
422
- }
423
- if (!server) {
424
- emitOutput('');
425
- emitOutput(chalk.red(`Server not found: ${serverName}`));
426
- emitOutput('');
427
- return;
428
- }
429
- const oauthService = await getMCPOAuthService();
430
- // If a token is provided, use simple token-based auth
431
- if (token) {
432
- emitOutput('');
433
- emitOutput(chalk.cyan(`Setting API token for ${serverName}...`));
434
- try {
435
- await oauthService.setApiToken(serverName, token);
436
- emitOutput(chalk.green(`✓ API token stored for '${serverName}'`));
437
- // Try to connect with the new token
438
- emitOutput(chalk.cyan(' Connecting...'));
439
- const serverManager = getMCPServerManager();
440
- const state = await serverManager.connectServer(serverName);
441
- if (state.status === 'connected') {
442
- emitOutput(chalk.green(`✓ Connected - ${state.tools.length} tool(s), ${state.resources.length} resource(s), ${state.prompts.length} prompt(s)`));
443
- }
444
- else if (state.error) {
445
- emitOutput(chalk.yellow(`⚠ Connection issue: ${state.error}`));
446
- if (state.error.includes('Authentication required')) {
447
- emitOutput(chalk.gray(' The token may be invalid or expired. Try with a different token.'));
448
- }
449
- }
450
- emitOutput('');
451
- return;
452
- }
453
- catch (error) {
454
- const errorMessage = error instanceof Error ? error.message : String(error);
455
- emitOutput(chalk.red(`Failed to set token: ${errorMessage}`));
456
- emitOutput('');
457
- return;
458
- }
459
- }
460
- // Get server URL for OAuth discovery (only for HTTP/SSE servers)
461
- let serverUrl;
462
- if (isMCPHttpConfig(server) || isMCPSseConfig(server)) {
463
- serverUrl = server.url;
464
- }
465
- // Check if this is a provider with restricted OAuth (e.g., Figma)
466
- // Show a proactive warning with fallback information
467
- if (serverUrl) {
468
- const provider = getProviderInfo(serverUrl);
469
- if (provider?.oauthRestricted) {
470
- emitOutput('');
471
- emitOutput(chalk.yellow(`Note: ${provider.name} restricts OAuth to approved clients.`));
472
- emitOutput(chalk.gray(`Approved clients: ${provider.approvedClients?.join(', ') || 'Unknown'}`));
473
- emitOutput(chalk.gray(`Kore-CLI may not be able to authenticate with the remote server.`));
474
- emitOutput('');
475
- emitOutput(chalk.cyan('Attempting OAuth flow anyway...'));
476
- }
477
- }
478
- // Check if we have complete OAuth config (with URLs) or partial (just credentials)
479
- const hasCompleteOAuthConfig = server.oauth?.authorizationUrl && server.oauth?.tokenUrl;
480
- const hasPartialOAuthConfig = server.oauth && !hasCompleteOAuthConfig;
481
- // Try OAuth flow - either with pre-configured OAuth or via discovery
482
- emitOutput('');
483
- if (hasCompleteOAuthConfig) {
484
- emitOutput(chalk.cyan(`Starting OAuth authentication for ${serverName}...`));
485
- }
486
- else if (serverUrl) {
487
- if (hasPartialOAuthConfig) {
488
- emitOutput(chalk.cyan(`Discovering OAuth endpoints for ${serverName} (using configured credentials)...`));
489
- }
490
- else {
491
- emitOutput(chalk.cyan(`Discovering OAuth configuration for ${serverName}...`));
492
- }
493
- }
494
- else {
495
- // stdio server without OAuth - must use token
496
- emitOutput(chalk.yellow(`Server '${serverName}' requires authentication.`));
497
- emitOutput('');
498
- emitOutput(chalk.white('To authenticate, provide your API token:'));
499
- emitOutput('');
500
- emitOutput(chalk.cyan(` /mcp auth ${serverName} <your-api-token>`));
501
- emitOutput('');
502
- emitOutput(chalk.gray('You can usually find your API token in the service\'s settings or developer portal.'));
503
- emitOutput('');
504
- return;
505
- }
506
- try {
507
- // Start the OAuth flow - with discovery if needed
508
- let authUrl;
509
- let discoveredConfig;
510
- if (hasCompleteOAuthConfig) {
511
- // Use fully pre-configured OAuth (has URLs)
512
- const result = await oauthService.startAuthFlow(serverName, server.oauth);
513
- if (result.error || !result.authUrl) {
514
- emitOutput('');
515
- emitOutput(chalk.red(`Failed to start auth flow: ${result.error || 'Unknown error'}`));
516
- emitOutput('');
517
- return;
518
- }
519
- authUrl = result.authUrl;
520
- }
521
- else {
522
- // Try OAuth discovery, merging with any partial config (clientId/clientSecret)
523
- const result = await oauthService.startAuthFlowWithDiscovery(serverName, serverUrl, server.oauth);
524
- if (result.error || !result.authUrl) {
525
- // Discovery failed - fall back to token prompt
526
- emitOutput('');
527
- emitOutput(chalk.yellow(`Could not discover OAuth for '${serverName}'.`));
528
- emitOutput('');
529
- emitOutput(chalk.white('To authenticate, provide your API token:'));
530
- emitOutput('');
531
- emitOutput(chalk.cyan(` /mcp auth ${serverName} <your-api-token>`));
532
- emitOutput('');
533
- emitOutput(chalk.gray('You can usually find your API token in the service\'s settings or developer portal.'));
534
- emitOutput('');
535
- // Emit event for UI
536
- const eventEmitter = getEventEmitter();
537
- eventEmitter.emit('mcp-token-required', {
538
- serverName,
539
- message: `Authentication required for '${serverName}'. Provide an API token.`,
540
- });
541
- return;
542
- }
543
- authUrl = result.authUrl;
544
- discoveredConfig = result.discoveredConfig;
545
- }
546
- // Open the auth URL in browser automatically
547
- emitOutput('');
548
- const browserOpened = await openInBrowser(authUrl);
549
- if (browserOpened) {
550
- emitOutput(chalk.green(' ✓ Opening browser for authentication...'));
551
- }
552
- else {
553
- emitOutput(chalk.yellow(' Could not open browser automatically.'));
554
- emitOutput(chalk.white(' Please open this URL manually:'));
555
- emitOutput('');
556
- emitOutput(chalk.cyan(` ${authUrl}`));
557
- }
558
- emitOutput('');
559
- emitOutput(chalk.gray(' Waiting for authentication...'));
560
- // Poll for completion (the callback server stores the code)
561
- const maxWaitMs = 5 * 60 * 1000; // 5 minutes
562
- const pollIntervalMs = 1000;
563
- const startTime = Date.now();
564
- // Use the appropriate OAuth config for completion
565
- const oauthConfigForCompletion = server.oauth || discoveredConfig;
566
- while (Date.now() - startTime < maxWaitMs) {
567
- await new Promise((r) => setTimeout(r, pollIntervalMs));
568
- const result = oauthConfigForCompletion
569
- ? await oauthService.completeAuthFlowWithConfig(serverName, oauthConfigForCompletion)
570
- : { success: false, error: 'No OAuth config available' };
571
- if (result.success) {
572
- emitOutput('');
573
- emitOutput(chalk.green(`✓ Authentication successful for '${serverName}'!`));
574
- // Try to reconnect
575
- emitOutput(chalk.cyan(' Reconnecting...'));
576
- try {
577
- const reconnectManager = getMCPServerManager();
578
- const state = await reconnectManager.connectServer(serverName);
579
- if (state.status === 'connected') {
580
- emitOutput(chalk.green(`✓ Connected - ${state.tools.length} tool(s), ${state.resources.length} resource(s), ${state.prompts.length} prompt(s)`));
581
- }
582
- else if (state.error) {
583
- emitOutput(chalk.yellow(`⚠ ${state.error}`));
584
- // Check if this is a restricted OAuth provider error
585
- if (serverUrl && (state.error.includes('MCP remote server is not enabled') ||
586
- state.error.includes('not enabled') ||
587
- state.error.includes('not authorized'))) {
588
- await displayFallbackInfo(serverUrl, serverName);
589
- }
590
- }
591
- }
592
- catch (connectError) {
593
- logger.warn(`Failed to reconnect to '${serverName}'`, connectError);
594
- emitOutput(chalk.yellow('⚠ Failed to reconnect. Use /mcp connect to retry.'));
595
- }
596
- emitOutput('');
597
- return;
598
- }
599
- // If error is NOT "no pending flow", it's a real error
600
- if (result.error && !result.error.includes('No pending OAuth flow')) {
601
- emitOutput('');
602
- emitOutput(chalk.red(`Authentication failed: ${result.error}`));
603
- // Check if this is a restricted OAuth provider and show fallback
604
- if (serverUrl && (result.error.includes('Forbidden') ||
605
- result.error.includes('not enabled') ||
606
- result.error.includes('not authorized') ||
607
- result.error.includes('client not approved'))) {
608
- await displayFallbackInfo(serverUrl, serverName);
609
- }
610
- emitOutput('');
611
- return;
612
- }
613
- }
614
- emitOutput('');
615
- emitOutput(chalk.red('Authentication timed out after 5 minutes.'));
616
- emitOutput('');
617
- }
618
- catch (error) {
619
- const errorMessage = error instanceof Error ? error.message : String(error);
620
- emitOutput(chalk.red(`Failed to authenticate: ${errorMessage}`));
621
- // Check if this is a restricted OAuth provider and show fallback
622
- if (serverUrl && (errorMessage.includes('Forbidden') ||
623
- errorMessage.includes('not enabled') ||
624
- errorMessage.includes('not authorized'))) {
625
- await displayFallbackInfo(serverUrl, serverName);
626
- }
627
- emitOutput('');
628
- }
629
- }
630
- /**
631
- * Clears authentication for a server.
632
- */
633
- async function clearAuth(serverName) {
634
- if (!serverName) {
635
- emitOutput('');
636
- emitOutput(chalk.yellow('Please specify a server name: /mcp clear-auth <server-name>'));
637
- emitOutput('');
638
- return;
639
- }
640
- try {
641
- const oauthService = await getMCPOAuthService();
642
- await oauthService.clearAuth(serverName);
643
- emitOutput('');
644
- emitOutput(chalk.green(`Cleared authentication for ${serverName}`));
645
- emitOutput('');
646
- }
647
- catch (error) {
648
- const errorMessage = error instanceof Error ? error.message : String(error);
649
- emitOutput(chalk.red(`Failed to clear auth: ${errorMessage}`));
650
- emitOutput('');
651
- }
652
- }
653
- /**
654
- * Refreshes a server's tools/resources/prompts.
655
- */
656
- async function refreshServer(serverName) {
657
- if (!serverName) {
658
- emitOutput('');
659
- emitOutput(chalk.yellow('Please specify a server name: /mcp refresh <server-name>'));
660
- emitOutput('');
661
- return;
662
- }
663
- try {
664
- const serverManager = getMCPServerManager();
665
- await serverManager.refreshServer(serverName);
666
- const state = serverManager.getServerState(serverName);
667
- if (state) {
668
- emitOutput('');
669
- emitOutput(chalk.green(`Refreshed ${serverName}:`));
670
- emitOutput(` ${chalk.gray('Tools:')} ${state.tools.length}`);
671
- emitOutput(` ${chalk.gray('Resources:')} ${state.resources.length}`);
672
- emitOutput(` ${chalk.gray('Prompts:')} ${state.prompts.length}`);
673
- emitOutput('');
674
- }
675
- }
676
- catch (error) {
677
- const errorMessage = error instanceof Error ? error.message : String(error);
678
- emitOutput(chalk.red(`Failed to refresh: ${errorMessage}`));
679
- emitOutput('');
680
- }
681
- }
682
- /**
683
- * Reconnects to a specific server.
684
- * Useful for servers that failed to connect or had a timeout.
685
- */
686
- async function reconnectServer(serverName) {
687
- if (!serverName) {
688
- emitOutput('');
689
- emitOutput(chalk.yellow('Please specify a server name: /mcp reconnect <server-name>'));
690
- emitOutput('');
691
- // Show servers that might need reconnection
692
- const serverManager = getMCPServerManager();
693
- const states = serverManager.getAllServerStates();
694
- const errorServers = states.filter(s => s.status === 'error');
695
- if (errorServers.length > 0) {
696
- emitOutput(chalk.gray('Servers with errors:'));
697
- for (const state of errorServers) {
698
- emitOutput(chalk.gray(` • ${state.config.name}: ${state.error || 'Unknown error'}`));
699
- }
700
- emitOutput('');
701
- }
702
- return;
703
- }
704
- const serverManager = getMCPServerManager();
705
- const existingState = serverManager.getServerState(serverName);
706
- if (!existingState) {
707
- // Server not found in server manager - might need to load config
708
- const configManager = getMCPConfigManager();
709
- await configManager.load(process.cwd());
710
- const server = configManager.getServer(serverName, process.cwd());
711
- if (!server) {
712
- emitOutput('');
713
- emitOutput(chalk.red(`Server not found: ${serverName}`));
714
- emitOutput('');
715
- emitOutput(chalk.gray('Available servers:'));
716
- const states = serverManager.getAllServerStates();
717
- for (const state of states) {
718
- emitOutput(chalk.gray(` • ${state.config.name}`));
719
- }
720
- emitOutput('');
721
- return;
722
- }
723
- }
724
- emitOutput('');
725
- emitOutput(chalk.cyan(`Reconnecting to ${serverName}...`));
726
- // Show helpful message for npx commands
727
- const config = existingState?.config;
728
- if (config && isMCPStdioConfig(config) && config.command === 'npx') {
729
- emitOutput(chalk.gray('First run may take up to 60 seconds to download packages...'));
730
- }
731
- try {
732
- const state = await serverManager.reconnectServer(serverName);
733
- if (state.status === 'connected') {
734
- emitOutput(chalk.green(`✓ Connected - ${state.tools.length} tool(s), ${state.resources.length} resource(s), ${state.prompts.length} prompt(s)`));
735
- }
736
- else if (state.status === 'error') {
737
- emitOutput(chalk.red(`✗ Failed to connect: ${state.error || 'Unknown error'}`));
738
- // Provide helpful hints based on error type
739
- if (state.error?.includes('Port') && state.error?.includes('already in use')) {
740
- emitOutput('');
741
- emitOutput(chalk.yellow('Tip: A previous MCP server process may still be running.'));
742
- emitOutput(chalk.gray(' Try waiting a few minutes for it to timeout, or:'));
743
- emitOutput(chalk.gray(' Windows: netstat -ano | findstr <port> && taskkill /PID <pid> /F'));
744
- emitOutput(chalk.gray(' macOS/Linux: lsof -i :<port> && kill -9 <pid>'));
745
- }
746
- else if (state.error?.includes('timeout')) {
747
- emitOutput('');
748
- emitOutput(chalk.yellow('Tip: The server took too long to respond.'));
749
- emitOutput(chalk.gray(' Check if the remote service is available.'));
750
- emitOutput(chalk.gray(' For npx commands, the first run downloads packages and may be slow.'));
751
- }
752
- else if (state.error?.includes('Authentication')) {
753
- emitOutput('');
754
- emitOutput(chalk.yellow('Tip: Authentication may be required.'));
755
- emitOutput(chalk.gray(` Try: /mcp auth ${serverName}`));
756
- }
757
- }
758
- else if (state.error) {
759
- emitOutput(chalk.yellow(`⚠ ${state.error}`));
760
- }
761
- emitOutput('');
762
- }
763
- catch (error) {
764
- const errorMessage = error instanceof Error ? error.message : String(error);
765
- emitOutput(chalk.red(`Failed to reconnect: ${errorMessage}`));
766
- emitOutput('');
767
- }
768
- }
769
- /**
770
- * Approves a project-scoped MCP server.
771
- */
772
- async function approveServer(serverName) {
773
- if (!serverName) {
774
- emitOutput('');
775
- emitOutput(chalk.yellow('Please specify a server name: /mcp approve <server-name>'));
776
- emitOutput('');
777
- return;
778
- }
779
- try {
780
- const configManager = getMCPConfigManager();
781
- await configManager.load(process.cwd());
782
- const server = configManager.getServer(serverName, process.cwd());
783
- if (!server) {
784
- emitOutput('');
785
- emitOutput(chalk.red(`Server not found: ${serverName}`));
786
- emitOutput('');
787
- return;
788
- }
789
- if (server.scope !== 'project') {
790
- emitOutput('');
791
- emitOutput(chalk.yellow(`Server '${serverName}' is not a project-scoped server and doesn't require approval.`));
792
- emitOutput('');
793
- return;
794
- }
795
- // Generate config hash for change detection
796
- const configHash = configManager.generateConfigHash(server);
797
- await configManager.setProjectServerApproval(process.cwd(), serverName, true, configHash);
798
- emitOutput('');
799
- emitOutput(chalk.green(`Approved server '${serverName}'.`));
800
- // Auto-connect to the server
801
- try {
802
- emitOutput(chalk.cyan('Connecting...'));
803
- // Show helpful message for npx commands
804
- if (isMCPStdioConfig(server) && server.command === 'npx') {
805
- emitOutput(chalk.gray('First run may take up to 60 seconds to download packages...'));
806
- }
807
- const serverManager = getMCPServerManager();
808
- const state = await serverManager.connectServer(serverName);
809
- if (state.status === 'connected') {
810
- emitOutput(chalk.green(`✓ Connected - ${state.tools.length} tool(s), ${state.resources.length} resource(s), ${state.prompts.length} prompt(s)`));
811
- }
812
- else if (state.error) {
813
- emitOutput(chalk.yellow(`⚠ Connection issue: ${state.error}`));
814
- emitOutput(chalk.gray('Use /mcp connect to retry.'));
815
- }
816
- }
817
- catch (connectError) {
818
- logger.warn(`Failed to auto-connect to '${serverName}'`, connectError);
819
- emitOutput(chalk.yellow('⚠ Failed to connect. Use /mcp connect to retry.'));
820
- }
821
- emitOutput('');
822
- }
823
- catch (error) {
824
- const errorMessage = error instanceof Error ? error.message : String(error);
825
- emitOutput(chalk.red(`Failed to approve: ${errorMessage}`));
826
- emitOutput('');
827
- }
828
- }
829
- /**
830
- * Shows fallback information for a server with restricted OAuth.
831
- */
832
- async function showFallback(serverName) {
833
- if (!serverName) {
834
- emitOutput('');
835
- emitOutput(chalk.yellow('Please specify a server name: /mcp fallback <server-name>'));
836
- emitOutput('');
837
- return;
838
- }
839
- // Get server config
840
- const serverManager = getMCPServerManager();
841
- const serverState = serverManager.getServerState(serverName);
842
- let server = serverState?.config;
843
- if (!server) {
844
- const configManager = getMCPConfigManager();
845
- await configManager.load(process.cwd());
846
- server = configManager.getServer(serverName, process.cwd());
847
- }
848
- if (!server) {
849
- emitOutput('');
850
- emitOutput(chalk.red(`Server not found: ${serverName}`));
851
- emitOutput('');
852
- return;
853
- }
854
- // Get server URL
855
- let serverUrl;
856
- if (isMCPHttpConfig(server) || isMCPSseConfig(server)) {
857
- serverUrl = server.url;
858
- }
859
- if (!serverUrl) {
860
- emitOutput('');
861
- emitOutput(chalk.yellow(`Server '${serverName}' is not an HTTP/SSE server.`));
862
- emitOutput(chalk.gray('Fallback information is only available for remote HTTP servers.'));
863
- emitOutput('');
864
- return;
865
- }
866
- const fallback = getFallbackConfig(serverUrl);
867
- if (!fallback) {
868
- emitOutput('');
869
- emitOutput(chalk.green(`Server '${serverName}' does not have known OAuth restrictions.`));
870
- emitOutput(chalk.gray('No fallback configuration is registered for this server.'));
871
- emitOutput('');
872
- return;
873
- }
874
- await displayFallbackInfo(serverUrl, serverName);
875
- }
876
- /**
877
- * Denies a project-scoped MCP server.
878
- */
879
- async function denyServer(serverName) {
880
- if (!serverName) {
881
- emitOutput('');
882
- emitOutput(chalk.yellow('Please specify a server name: /mcp deny <server-name>'));
883
- emitOutput('');
884
- return;
885
- }
886
- try {
887
- const configManager = getMCPConfigManager();
888
- await configManager.load(process.cwd());
889
- const server = configManager.getServer(serverName, process.cwd());
890
- if (!server) {
891
- emitOutput('');
892
- emitOutput(chalk.red(`Server not found: ${serverName}`));
893
- emitOutput('');
894
- return;
895
- }
896
- await configManager.setProjectServerApproval(process.cwd(), serverName, false);
897
- emitOutput('');
898
- emitOutput(chalk.red(`Denied server '${serverName}'.`));
899
- emitOutput(chalk.gray('This server will not be connected.'));
900
- emitOutput('');
901
- }
902
- catch (error) {
903
- const errorMessage = error instanceof Error ? error.message : String(error);
904
- emitOutput(chalk.red(`Failed to deny: ${errorMessage}`));
905
- emitOutput('');
906
- }
907
- }
908
- /**
909
- * Handler function for the /mcp slash command.
910
- */
911
- async function mcpCommandHandler(args) {
912
- try {
913
- const subcommand = args[0]?.toLowerCase();
914
- const subArgs = args.slice(1);
915
- switch (subcommand) {
916
- case 'servers':
917
- case 'list':
918
- await listServers();
919
- break;
920
- case 'tools':
921
- await listTools();
922
- break;
923
- case 'resources':
924
- await listResources();
925
- break;
926
- case 'prompts':
927
- await listPrompts();
928
- break;
929
- case 'connect':
930
- await connectServers();
931
- break;
932
- case 'disconnect':
933
- await disconnectServers();
934
- break;
935
- case 'auth':
936
- case 'authenticate':
937
- // Support: /mcp auth <server-name> [token]
938
- await authenticateServer(subArgs[0], subArgs.slice(1).join(' ') || undefined);
939
- break;
940
- case 'clear-auth':
941
- await clearAuth(subArgs[0]);
942
- break;
943
- case 'refresh':
944
- await refreshServer(subArgs[0]);
945
- break;
946
- case 'reconnect':
947
- case 'retry':
948
- await reconnectServer(subArgs[0]);
949
- break;
950
- case 'approve':
951
- await approveServer(subArgs[0]);
952
- break;
953
- case 'deny':
954
- await denyServer(subArgs[0]);
955
- break;
956
- case 'fallback':
957
- await showFallback(subArgs[0]);
958
- break;
959
- case 'help':
960
- displayHelp();
961
- break;
962
- default:
963
- await displayStatus();
964
- break;
965
- }
966
- }
967
- catch (error) {
968
- const errorMessage = error instanceof Error ? error.message : String(error);
969
- logger.error('MCP command failed', error);
970
- emitOutput('');
971
- emitOutput(chalk.red(`Error: ${errorMessage}`));
972
- emitOutput('');
973
- }
974
- }
975
- /**
976
- * Displays help for the /mcp command.
977
- */
978
- function displayHelp() {
979
- emitOutput('');
980
- emitOutput(chalk.bold('MCP Command Help'));
981
- emitOutput(chalk.dim('─'.repeat(50)));
982
- emitOutput('');
983
- emitOutput(chalk.white('/mcp') + chalk.gray(' - Show server status overview'));
984
- emitOutput(chalk.white('/mcp servers') + chalk.gray(' - List all configured servers'));
985
- emitOutput(chalk.white('/mcp tools') + chalk.gray(' - List available tools'));
986
- emitOutput(chalk.white('/mcp resources') + chalk.gray(' - List available resources'));
987
- emitOutput(chalk.white('/mcp prompts') + chalk.gray(' - List available prompts'));
988
- emitOutput(chalk.white('/mcp connect') + chalk.gray(' - Connect to all servers'));
989
- emitOutput(chalk.white('/mcp reconnect <name>') + chalk.gray(' - Reconnect to a specific server'));
990
- emitOutput(chalk.white('/mcp disconnect') + chalk.gray(' - Disconnect from all servers'));
991
- emitOutput(chalk.white('/mcp auth <name>') + chalk.gray(' - Start OAuth flow (if configured)'));
992
- emitOutput(chalk.white('/mcp auth <name> <token>') + chalk.gray(' - Authenticate with API token'));
993
- emitOutput(chalk.white('/mcp clear-auth <name>') + chalk.gray(' - Clear authentication'));
994
- emitOutput(chalk.white('/mcp refresh <name>') + chalk.gray(' - Refresh server tools/resources'));
995
- emitOutput(chalk.white('/mcp approve <name>') + chalk.gray(' - Approve a project-scoped server'));
996
- emitOutput(chalk.white('/mcp deny <name>') + chalk.gray(' - Deny a project-scoped server'));
997
- emitOutput(chalk.white('/mcp fallback <name>') + chalk.gray(' - Show fallback options for restricted servers'));
998
- emitOutput('');
999
- }
1000
- /**
1001
- * Slash command definition for /mcp.
1002
- */
1003
- export const mcpCommand = {
1004
- name: 'mcp',
1005
- description: 'Manage MCP (Model Context Protocol) servers and view status',
1006
- usage: '/mcp [subcommand]',
1007
- examples: [
1008
- '/mcp - Show server status overview',
1009
- '/mcp servers - List all configured servers',
1010
- '/mcp tools - List all available MCP tools',
1011
- '/mcp connect - Connect to all configured servers',
1012
- '/mcp reconnect clickup - Reconnect to a specific server',
1013
- '/mcp auth figma - Start OAuth flow (if configured)',
1014
- '/mcp auth figma <token> - Authenticate with API token',
1015
- '/mcp fallback figma - Show fallback for restricted OAuth servers',
1016
- ],
1017
- handler: mcpCommandHandler,
1018
- };
1019
- /**
1020
- * Registers the /mcp command with the slash command handler.
1021
- */
1022
- export function registerMCPCommand() {
1023
- registerSlashCommand(mcpCommand);
1024
- }
1025
- export default mcpCommand;
1026
- //# sourceMappingURL=mcp.js.map