erosolar-cli 1.7.413 → 1.7.414

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 (1009) hide show
  1. package/dist/shell/interactiveShell.d.ts +1 -0
  2. package/dist/shell/interactiveShell.d.ts.map +1 -1
  3. package/dist/shell/interactiveShell.js +32 -20
  4. package/dist/shell/interactiveShell.js.map +1 -1
  5. package/package.json +1 -1
  6. package/dist/StringUtils.d.ts +0 -8
  7. package/dist/StringUtils.d.ts.map +0 -1
  8. package/dist/StringUtils.js +0 -11
  9. package/dist/StringUtils.js.map +0 -1
  10. package/dist/adapters/browser/index.d.ts +0 -12
  11. package/dist/adapters/browser/index.d.ts.map +0 -1
  12. package/dist/adapters/browser/index.js +0 -11
  13. package/dist/adapters/browser/index.js.map +0 -1
  14. package/dist/adapters/node/index.d.ts +0 -17
  15. package/dist/adapters/node/index.d.ts.map +0 -1
  16. package/dist/adapters/node/index.js +0 -35
  17. package/dist/adapters/node/index.js.map +0 -1
  18. package/dist/adapters/remote/index.d.ts +0 -13
  19. package/dist/adapters/remote/index.d.ts.map +0 -1
  20. package/dist/adapters/remote/index.js +0 -20
  21. package/dist/adapters/remote/index.js.map +0 -1
  22. package/dist/adapters/types.d.ts +0 -14
  23. package/dist/adapters/types.d.ts.map +0 -1
  24. package/dist/adapters/types.js +0 -2
  25. package/dist/adapters/types.js.map +0 -1
  26. package/dist/bin/erosolar.d.ts +0 -9
  27. package/dist/bin/erosolar.d.ts.map +0 -1
  28. package/dist/bin/erosolar.js +0 -93
  29. package/dist/bin/erosolar.js.map +0 -1
  30. package/dist/bin/selfTest.d.ts +0 -14
  31. package/dist/bin/selfTest.d.ts.map +0 -1
  32. package/dist/bin/selfTest.js +0 -304
  33. package/dist/bin/selfTest.js.map +0 -1
  34. package/dist/browser/BrowserSessionManager.d.ts +0 -307
  35. package/dist/browser/BrowserSessionManager.d.ts.map +0 -1
  36. package/dist/browser/BrowserSessionManager.js +0 -713
  37. package/dist/browser/BrowserSessionManager.js.map +0 -1
  38. package/dist/capabilities/advancedTestGenerationCapability.d.ts +0 -17
  39. package/dist/capabilities/advancedTestGenerationCapability.d.ts.map +0 -1
  40. package/dist/capabilities/advancedTestGenerationCapability.js +0 -28
  41. package/dist/capabilities/advancedTestGenerationCapability.js.map +0 -1
  42. package/dist/capabilities/agentSpawningCapability.d.ts +0 -6
  43. package/dist/capabilities/agentSpawningCapability.d.ts.map +0 -1
  44. package/dist/capabilities/agentSpawningCapability.js +0 -168
  45. package/dist/capabilities/agentSpawningCapability.js.map +0 -1
  46. package/dist/capabilities/askUserCapability.d.ts +0 -21
  47. package/dist/capabilities/askUserCapability.d.ts.map +0 -1
  48. package/dist/capabilities/askUserCapability.js +0 -155
  49. package/dist/capabilities/askUserCapability.js.map +0 -1
  50. package/dist/capabilities/bashCapability.d.ts +0 -13
  51. package/dist/capabilities/bashCapability.d.ts.map +0 -1
  52. package/dist/capabilities/bashCapability.js +0 -24
  53. package/dist/capabilities/bashCapability.js.map +0 -1
  54. package/dist/capabilities/browserAutomationCapability.d.ts +0 -37
  55. package/dist/capabilities/browserAutomationCapability.d.ts.map +0 -1
  56. package/dist/capabilities/browserAutomationCapability.js +0 -49
  57. package/dist/capabilities/browserAutomationCapability.js.map +0 -1
  58. package/dist/capabilities/buildCapability.d.ts +0 -24
  59. package/dist/capabilities/buildCapability.d.ts.map +0 -1
  60. package/dist/capabilities/buildCapability.js +0 -25
  61. package/dist/capabilities/buildCapability.js.map +0 -1
  62. package/dist/capabilities/cloudCapability.d.ts +0 -13
  63. package/dist/capabilities/cloudCapability.d.ts.map +0 -1
  64. package/dist/capabilities/cloudCapability.js +0 -38
  65. package/dist/capabilities/cloudCapability.js.map +0 -1
  66. package/dist/capabilities/codeAnalysisCapability.d.ts +0 -13
  67. package/dist/capabilities/codeAnalysisCapability.d.ts.map +0 -1
  68. package/dist/capabilities/codeAnalysisCapability.js +0 -24
  69. package/dist/capabilities/codeAnalysisCapability.js.map +0 -1
  70. package/dist/capabilities/codeGenerationCapability.d.ts +0 -13
  71. package/dist/capabilities/codeGenerationCapability.d.ts.map +0 -1
  72. package/dist/capabilities/codeGenerationCapability.js +0 -25
  73. package/dist/capabilities/codeGenerationCapability.js.map +0 -1
  74. package/dist/capabilities/codeQualityCapability.d.ts +0 -13
  75. package/dist/capabilities/codeQualityCapability.d.ts.map +0 -1
  76. package/dist/capabilities/codeQualityCapability.js +0 -25
  77. package/dist/capabilities/codeQualityCapability.js.map +0 -1
  78. package/dist/capabilities/dependencySecurityCapability.d.ts +0 -13
  79. package/dist/capabilities/dependencySecurityCapability.d.ts.map +0 -1
  80. package/dist/capabilities/dependencySecurityCapability.js +0 -24
  81. package/dist/capabilities/dependencySecurityCapability.js.map +0 -1
  82. package/dist/capabilities/devCapability.d.ts +0 -13
  83. package/dist/capabilities/devCapability.d.ts.map +0 -1
  84. package/dist/capabilities/devCapability.js +0 -24
  85. package/dist/capabilities/devCapability.js.map +0 -1
  86. package/dist/capabilities/editCapability.d.ts +0 -17
  87. package/dist/capabilities/editCapability.d.ts.map +0 -1
  88. package/dist/capabilities/editCapability.js +0 -27
  89. package/dist/capabilities/editCapability.js.map +0 -1
  90. package/dist/capabilities/emailCapability.d.ts +0 -12
  91. package/dist/capabilities/emailCapability.d.ts.map +0 -1
  92. package/dist/capabilities/emailCapability.js +0 -22
  93. package/dist/capabilities/emailCapability.js.map +0 -1
  94. package/dist/capabilities/enhancedCodeIntelligenceCapability.d.ts +0 -17
  95. package/dist/capabilities/enhancedCodeIntelligenceCapability.d.ts.map +0 -1
  96. package/dist/capabilities/enhancedCodeIntelligenceCapability.js +0 -28
  97. package/dist/capabilities/enhancedCodeIntelligenceCapability.js.map +0 -1
  98. package/dist/capabilities/enhancedDevWorkflowCapability.d.ts +0 -17
  99. package/dist/capabilities/enhancedDevWorkflowCapability.d.ts.map +0 -1
  100. package/dist/capabilities/enhancedDevWorkflowCapability.js +0 -28
  101. package/dist/capabilities/enhancedDevWorkflowCapability.js.map +0 -1
  102. package/dist/capabilities/enhancedGitCapability.d.ts +0 -7
  103. package/dist/capabilities/enhancedGitCapability.d.ts.map +0 -1
  104. package/dist/capabilities/enhancedGitCapability.js +0 -220
  105. package/dist/capabilities/enhancedGitCapability.js.map +0 -1
  106. package/dist/capabilities/filesystemCapability.d.ts +0 -13
  107. package/dist/capabilities/filesystemCapability.d.ts.map +0 -1
  108. package/dist/capabilities/filesystemCapability.js +0 -24
  109. package/dist/capabilities/filesystemCapability.js.map +0 -1
  110. package/dist/capabilities/frontendTestingCapability.d.ts +0 -13
  111. package/dist/capabilities/frontendTestingCapability.d.ts.map +0 -1
  112. package/dist/capabilities/frontendTestingCapability.js +0 -28
  113. package/dist/capabilities/frontendTestingCapability.js.map +0 -1
  114. package/dist/capabilities/globCapability.d.ts +0 -17
  115. package/dist/capabilities/globCapability.d.ts.map +0 -1
  116. package/dist/capabilities/globCapability.js +0 -27
  117. package/dist/capabilities/globCapability.js.map +0 -1
  118. package/dist/capabilities/index.d.ts +0 -26
  119. package/dist/capabilities/index.d.ts.map +0 -1
  120. package/dist/capabilities/index.js +0 -26
  121. package/dist/capabilities/index.js.map +0 -1
  122. package/dist/capabilities/interactionCapability.d.ts +0 -12
  123. package/dist/capabilities/interactionCapability.d.ts.map +0 -1
  124. package/dist/capabilities/interactionCapability.js +0 -22
  125. package/dist/capabilities/interactionCapability.js.map +0 -1
  126. package/dist/capabilities/learnCapability.d.ts +0 -22
  127. package/dist/capabilities/learnCapability.d.ts.map +0 -1
  128. package/dist/capabilities/learnCapability.js +0 -37
  129. package/dist/capabilities/learnCapability.js.map +0 -1
  130. package/dist/capabilities/mcpCapability.d.ts +0 -6
  131. package/dist/capabilities/mcpCapability.d.ts.map +0 -1
  132. package/dist/capabilities/mcpCapability.js +0 -19
  133. package/dist/capabilities/mcpCapability.js.map +0 -1
  134. package/dist/capabilities/notebookCapability.d.ts +0 -17
  135. package/dist/capabilities/notebookCapability.d.ts.map +0 -1
  136. package/dist/capabilities/notebookCapability.js +0 -27
  137. package/dist/capabilities/notebookCapability.js.map +0 -1
  138. package/dist/capabilities/performanceMonitoringCapability.d.ts +0 -108
  139. package/dist/capabilities/performanceMonitoringCapability.d.ts.map +0 -1
  140. package/dist/capabilities/performanceMonitoringCapability.js +0 -176
  141. package/dist/capabilities/performanceMonitoringCapability.js.map +0 -1
  142. package/dist/capabilities/planningCapability.d.ts +0 -16
  143. package/dist/capabilities/planningCapability.d.ts.map +0 -1
  144. package/dist/capabilities/planningCapability.js +0 -26
  145. package/dist/capabilities/planningCapability.js.map +0 -1
  146. package/dist/capabilities/refactoringCapability.d.ts +0 -13
  147. package/dist/capabilities/refactoringCapability.d.ts.map +0 -1
  148. package/dist/capabilities/refactoringCapability.js +0 -25
  149. package/dist/capabilities/refactoringCapability.js.map +0 -1
  150. package/dist/capabilities/repoChecksCapability.d.ts +0 -10
  151. package/dist/capabilities/repoChecksCapability.d.ts.map +0 -1
  152. package/dist/capabilities/repoChecksCapability.js +0 -24
  153. package/dist/capabilities/repoChecksCapability.js.map +0 -1
  154. package/dist/capabilities/searchCapability.d.ts +0 -13
  155. package/dist/capabilities/searchCapability.d.ts.map +0 -1
  156. package/dist/capabilities/searchCapability.js +0 -24
  157. package/dist/capabilities/searchCapability.js.map +0 -1
  158. package/dist/capabilities/skillCapability.d.ts +0 -3
  159. package/dist/capabilities/skillCapability.d.ts.map +0 -1
  160. package/dist/capabilities/skillCapability.js +0 -77
  161. package/dist/capabilities/skillCapability.js.map +0 -1
  162. package/dist/capabilities/taskManagementCapability.d.ts +0 -12
  163. package/dist/capabilities/taskManagementCapability.d.ts.map +0 -1
  164. package/dist/capabilities/taskManagementCapability.js +0 -22
  165. package/dist/capabilities/taskManagementCapability.js.map +0 -1
  166. package/dist/capabilities/testingCapability.d.ts +0 -13
  167. package/dist/capabilities/testingCapability.d.ts.map +0 -1
  168. package/dist/capabilities/testingCapability.js +0 -25
  169. package/dist/capabilities/testingCapability.js.map +0 -1
  170. package/dist/capabilities/todoCapability.d.ts +0 -19
  171. package/dist/capabilities/todoCapability.d.ts.map +0 -1
  172. package/dist/capabilities/todoCapability.js +0 -169
  173. package/dist/capabilities/todoCapability.js.map +0 -1
  174. package/dist/capabilities/toolManifest.d.ts +0 -3
  175. package/dist/capabilities/toolManifest.d.ts.map +0 -1
  176. package/dist/capabilities/toolManifest.js +0 -160
  177. package/dist/capabilities/toolManifest.js.map +0 -1
  178. package/dist/capabilities/toolRegistry.d.ts +0 -24
  179. package/dist/capabilities/toolRegistry.d.ts.map +0 -1
  180. package/dist/capabilities/toolRegistry.js +0 -150
  181. package/dist/capabilities/toolRegistry.js.map +0 -1
  182. package/dist/capabilities/validationCapability.d.ts +0 -13
  183. package/dist/capabilities/validationCapability.d.ts.map +0 -1
  184. package/dist/capabilities/validationCapability.js +0 -24
  185. package/dist/capabilities/validationCapability.js.map +0 -1
  186. package/dist/capabilities/webCapability.d.ts +0 -12
  187. package/dist/capabilities/webCapability.d.ts.map +0 -1
  188. package/dist/capabilities/webCapability.js +0 -22
  189. package/dist/capabilities/webCapability.js.map +0 -1
  190. package/dist/config.d.ts +0 -25
  191. package/dist/config.d.ts.map +0 -1
  192. package/dist/config.js +0 -140
  193. package/dist/config.js.map +0 -1
  194. package/dist/contracts/v1/agent.d.ts +0 -147
  195. package/dist/contracts/v1/agent.d.ts.map +0 -1
  196. package/dist/contracts/v1/agent.js +0 -8
  197. package/dist/contracts/v1/agent.js.map +0 -1
  198. package/dist/contracts/v1/agentProfileManifest.d.ts +0 -60
  199. package/dist/contracts/v1/agentProfileManifest.d.ts.map +0 -1
  200. package/dist/contracts/v1/agentProfileManifest.js +0 -9
  201. package/dist/contracts/v1/agentProfileManifest.js.map +0 -1
  202. package/dist/contracts/v1/agentRules.d.ts +0 -60
  203. package/dist/contracts/v1/agentRules.d.ts.map +0 -1
  204. package/dist/contracts/v1/agentRules.js +0 -10
  205. package/dist/contracts/v1/agentRules.js.map +0 -1
  206. package/dist/contracts/v1/provider.d.ts +0 -149
  207. package/dist/contracts/v1/provider.d.ts.map +0 -1
  208. package/dist/contracts/v1/provider.js +0 -7
  209. package/dist/contracts/v1/provider.js.map +0 -1
  210. package/dist/contracts/v1/tool.d.ts +0 -136
  211. package/dist/contracts/v1/tool.d.ts.map +0 -1
  212. package/dist/contracts/v1/tool.js +0 -7
  213. package/dist/contracts/v1/tool.js.map +0 -1
  214. package/dist/contracts/v1/toolAccess.d.ts +0 -43
  215. package/dist/contracts/v1/toolAccess.d.ts.map +0 -1
  216. package/dist/contracts/v1/toolAccess.js +0 -9
  217. package/dist/contracts/v1/toolAccess.js.map +0 -1
  218. package/dist/core/LazyLoader.d.ts +0 -129
  219. package/dist/core/LazyLoader.d.ts.map +0 -1
  220. package/dist/core/LazyLoader.js +0 -240
  221. package/dist/core/LazyLoader.js.map +0 -1
  222. package/dist/core/agent.d.ts +0 -153
  223. package/dist/core/agent.d.ts.map +0 -1
  224. package/dist/core/agent.js +0 -881
  225. package/dist/core/agent.js.map +0 -1
  226. package/dist/core/agentProfileManifest.d.ts +0 -3
  227. package/dist/core/agentProfileManifest.d.ts.map +0 -1
  228. package/dist/core/agentProfileManifest.js +0 -188
  229. package/dist/core/agentProfileManifest.js.map +0 -1
  230. package/dist/core/agentProfiles.d.ts +0 -22
  231. package/dist/core/agentProfiles.d.ts.map +0 -1
  232. package/dist/core/agentProfiles.js +0 -35
  233. package/dist/core/agentProfiles.js.map +0 -1
  234. package/dist/core/agentRulebook.d.ts +0 -11
  235. package/dist/core/agentRulebook.d.ts.map +0 -1
  236. package/dist/core/agentRulebook.js +0 -136
  237. package/dist/core/agentRulebook.js.map +0 -1
  238. package/dist/core/agentSchemaLoader.d.ts +0 -131
  239. package/dist/core/agentSchemaLoader.d.ts.map +0 -1
  240. package/dist/core/agentSchemaLoader.js +0 -234
  241. package/dist/core/agentSchemaLoader.js.map +0 -1
  242. package/dist/core/aiErrorFixer.d.ts +0 -70
  243. package/dist/core/aiErrorFixer.d.ts.map +0 -1
  244. package/dist/core/aiErrorFixer.js +0 -402
  245. package/dist/core/aiErrorFixer.js.map +0 -1
  246. package/dist/core/alphaZeroEngine.d.ts +0 -269
  247. package/dist/core/alphaZeroEngine.d.ts.map +0 -1
  248. package/dist/core/alphaZeroEngine.js +0 -523
  249. package/dist/core/alphaZeroEngine.js.map +0 -1
  250. package/dist/core/alphaZeroModular.d.ts +0 -186
  251. package/dist/core/alphaZeroModular.d.ts.map +0 -1
  252. package/dist/core/alphaZeroModular.js +0 -755
  253. package/dist/core/alphaZeroModular.js.map +0 -1
  254. package/dist/core/alphaZeroOrchestrator.d.ts +0 -140
  255. package/dist/core/alphaZeroOrchestrator.d.ts.map +0 -1
  256. package/dist/core/alphaZeroOrchestrator.js +0 -418
  257. package/dist/core/alphaZeroOrchestrator.js.map +0 -1
  258. package/dist/core/checkpoint.d.ts +0 -76
  259. package/dist/core/checkpoint.d.ts.map +0 -1
  260. package/dist/core/checkpoint.js +0 -278
  261. package/dist/core/checkpoint.js.map +0 -1
  262. package/dist/core/claudeCodeFeatures.d.ts +0 -64
  263. package/dist/core/claudeCodeFeatures.d.ts.map +0 -1
  264. package/dist/core/claudeCodeFeatures.js +0 -163
  265. package/dist/core/claudeCodeFeatures.js.map +0 -1
  266. package/dist/core/cliTestHarness.d.ts +0 -200
  267. package/dist/core/cliTestHarness.d.ts.map +0 -1
  268. package/dist/core/cliTestHarness.js +0 -549
  269. package/dist/core/cliTestHarness.js.map +0 -1
  270. package/dist/core/contextManager.d.ts +0 -265
  271. package/dist/core/contextManager.d.ts.map +0 -1
  272. package/dist/core/contextManager.js +0 -1060
  273. package/dist/core/contextManager.js.map +0 -1
  274. package/dist/core/contextWindow.d.ts +0 -42
  275. package/dist/core/contextWindow.d.ts.map +0 -1
  276. package/dist/core/contextWindow.js +0 -123
  277. package/dist/core/contextWindow.js.map +0 -1
  278. package/dist/core/costTracker.d.ts +0 -87
  279. package/dist/core/costTracker.d.ts.map +0 -1
  280. package/dist/core/costTracker.js +0 -285
  281. package/dist/core/costTracker.js.map +0 -1
  282. package/dist/core/customCommands.d.ts +0 -19
  283. package/dist/core/customCommands.d.ts.map +0 -1
  284. package/dist/core/customCommands.js +0 -84
  285. package/dist/core/customCommands.js.map +0 -1
  286. package/dist/core/errors/apiKeyErrors.d.ts +0 -11
  287. package/dist/core/errors/apiKeyErrors.d.ts.map +0 -1
  288. package/dist/core/errors/apiKeyErrors.js +0 -159
  289. package/dist/core/errors/apiKeyErrors.js.map +0 -1
  290. package/dist/core/errors/errorTypes.d.ts +0 -111
  291. package/dist/core/errors/errorTypes.d.ts.map +0 -1
  292. package/dist/core/errors/errorTypes.js +0 -348
  293. package/dist/core/errors/errorTypes.js.map +0 -1
  294. package/dist/core/errors/errorUtils.d.ts +0 -87
  295. package/dist/core/errors/errorUtils.d.ts.map +0 -1
  296. package/dist/core/errors/errorUtils.js +0 -158
  297. package/dist/core/errors/errorUtils.js.map +0 -1
  298. package/dist/core/errors/safetyValidator.d.ts +0 -71
  299. package/dist/core/errors/safetyValidator.d.ts.map +0 -1
  300. package/dist/core/errors/safetyValidator.js +0 -302
  301. package/dist/core/errors/safetyValidator.js.map +0 -1
  302. package/dist/core/errors.d.ts +0 -4
  303. package/dist/core/errors.d.ts.map +0 -1
  304. package/dist/core/errors.js +0 -33
  305. package/dist/core/errors.js.map +0 -1
  306. package/dist/core/failureRecovery.d.ts +0 -122
  307. package/dist/core/failureRecovery.d.ts.map +0 -1
  308. package/dist/core/failureRecovery.js +0 -477
  309. package/dist/core/failureRecovery.js.map +0 -1
  310. package/dist/core/hooks.d.ts +0 -113
  311. package/dist/core/hooks.d.ts.map +0 -1
  312. package/dist/core/hooks.js +0 -267
  313. package/dist/core/hooks.js.map +0 -1
  314. package/dist/core/intelligentTestFlows.d.ts +0 -126
  315. package/dist/core/intelligentTestFlows.d.ts.map +0 -1
  316. package/dist/core/intelligentTestFlows.js +0 -678
  317. package/dist/core/intelligentTestFlows.js.map +0 -1
  318. package/dist/core/isolatedVerifier.d.ts +0 -40
  319. package/dist/core/isolatedVerifier.d.ts.map +0 -1
  320. package/dist/core/isolatedVerifier.js +0 -129
  321. package/dist/core/isolatedVerifier.js.map +0 -1
  322. package/dist/core/learningPersistence.d.ts +0 -145
  323. package/dist/core/learningPersistence.d.ts.map +0 -1
  324. package/dist/core/learningPersistence.js +0 -477
  325. package/dist/core/learningPersistence.js.map +0 -1
  326. package/dist/core/memorySystem.d.ts +0 -67
  327. package/dist/core/memorySystem.d.ts.map +0 -1
  328. package/dist/core/memorySystem.js +0 -334
  329. package/dist/core/memorySystem.js.map +0 -1
  330. package/dist/core/metricsTracker.d.ts +0 -157
  331. package/dist/core/metricsTracker.d.ts.map +0 -1
  332. package/dist/core/metricsTracker.js +0 -273
  333. package/dist/core/metricsTracker.js.map +0 -1
  334. package/dist/core/modelDiscovery.d.ts +0 -101
  335. package/dist/core/modelDiscovery.d.ts.map +0 -1
  336. package/dist/core/modelDiscovery.js +0 -780
  337. package/dist/core/modelDiscovery.js.map +0 -1
  338. package/dist/core/multilinePasteHandler.d.ts +0 -35
  339. package/dist/core/multilinePasteHandler.d.ts.map +0 -1
  340. package/dist/core/multilinePasteHandler.js +0 -80
  341. package/dist/core/multilinePasteHandler.js.map +0 -1
  342. package/dist/core/offsecAlphaZero.d.ts +0 -56
  343. package/dist/core/offsecAlphaZero.d.ts.map +0 -1
  344. package/dist/core/offsecAlphaZero.js +0 -395
  345. package/dist/core/offsecAlphaZero.js.map +0 -1
  346. package/dist/core/outputStyles.d.ts +0 -48
  347. package/dist/core/outputStyles.d.ts.map +0 -1
  348. package/dist/core/outputStyles.js +0 -270
  349. package/dist/core/outputStyles.js.map +0 -1
  350. package/dist/core/performanceMonitor.d.ts +0 -124
  351. package/dist/core/performanceMonitor.d.ts.map +0 -1
  352. package/dist/core/performanceMonitor.js +0 -192
  353. package/dist/core/performanceMonitor.js.map +0 -1
  354. package/dist/core/preferences.d.ts +0 -67
  355. package/dist/core/preferences.d.ts.map +0 -1
  356. package/dist/core/preferences.js +0 -314
  357. package/dist/core/preferences.js.map +0 -1
  358. package/dist/core/responseVerifier.d.ts +0 -98
  359. package/dist/core/responseVerifier.d.ts.map +0 -1
  360. package/dist/core/responseVerifier.js +0 -509
  361. package/dist/core/responseVerifier.js.map +0 -1
  362. package/dist/core/resultVerification.d.ts +0 -141
  363. package/dist/core/resultVerification.d.ts.map +0 -1
  364. package/dist/core/resultVerification.js +0 -482
  365. package/dist/core/resultVerification.js.map +0 -1
  366. package/dist/core/schemaValidator.d.ts +0 -44
  367. package/dist/core/schemaValidator.d.ts.map +0 -1
  368. package/dist/core/schemaValidator.js +0 -155
  369. package/dist/core/schemaValidator.js.map +0 -1
  370. package/dist/core/secretStore.d.ts +0 -48
  371. package/dist/core/secretStore.d.ts.map +0 -1
  372. package/dist/core/secretStore.js +0 -367
  373. package/dist/core/secretStore.js.map +0 -1
  374. package/dist/core/securityAssessment.d.ts +0 -91
  375. package/dist/core/securityAssessment.d.ts.map +0 -1
  376. package/dist/core/securityAssessment.js +0 -580
  377. package/dist/core/securityAssessment.js.map +0 -1
  378. package/dist/core/selfEvolution.d.ts +0 -155
  379. package/dist/core/selfEvolution.d.ts.map +0 -1
  380. package/dist/core/selfEvolution.js +0 -1000
  381. package/dist/core/selfEvolution.js.map +0 -1
  382. package/dist/core/selfImprovement.d.ts +0 -141
  383. package/dist/core/selfImprovement.d.ts.map +0 -1
  384. package/dist/core/selfImprovement.js +0 -700
  385. package/dist/core/selfImprovement.js.map +0 -1
  386. package/dist/core/sessionStore.d.ts +0 -35
  387. package/dist/core/sessionStore.d.ts.map +0 -1
  388. package/dist/core/sessionStore.js +0 -189
  389. package/dist/core/sessionStore.js.map +0 -1
  390. package/dist/core/testUtils.d.ts +0 -121
  391. package/dist/core/testUtils.d.ts.map +0 -1
  392. package/dist/core/testUtils.js +0 -235
  393. package/dist/core/testUtils.js.map +0 -1
  394. package/dist/core/toolPreconditions.d.ts +0 -42
  395. package/dist/core/toolPreconditions.d.ts.map +0 -1
  396. package/dist/core/toolPreconditions.js +0 -357
  397. package/dist/core/toolPreconditions.js.map +0 -1
  398. package/dist/core/toolRuntime.d.ts +0 -158
  399. package/dist/core/toolRuntime.d.ts.map +0 -1
  400. package/dist/core/toolRuntime.js +0 -415
  401. package/dist/core/toolRuntime.js.map +0 -1
  402. package/dist/core/toolValidation.d.ts +0 -117
  403. package/dist/core/toolValidation.d.ts.map +0 -1
  404. package/dist/core/toolValidation.js +0 -282
  405. package/dist/core/toolValidation.js.map +0 -1
  406. package/dist/core/types/utilityTypes.d.ts +0 -192
  407. package/dist/core/types/utilityTypes.d.ts.map +0 -1
  408. package/dist/core/types/utilityTypes.js +0 -272
  409. package/dist/core/types/utilityTypes.js.map +0 -1
  410. package/dist/core/types.d.ts +0 -306
  411. package/dist/core/types.d.ts.map +0 -1
  412. package/dist/core/types.js +0 -76
  413. package/dist/core/types.js.map +0 -1
  414. package/dist/core/updateManager.d.ts +0 -62
  415. package/dist/core/updateManager.d.ts.map +0 -1
  416. package/dist/core/updateManager.js +0 -266
  417. package/dist/core/updateManager.js.map +0 -1
  418. package/dist/core/validationRunner.d.ts +0 -106
  419. package/dist/core/validationRunner.d.ts.map +0 -1
  420. package/dist/core/validationRunner.js +0 -888
  421. package/dist/core/validationRunner.js.map +0 -1
  422. package/dist/core/verification.d.ts +0 -137
  423. package/dist/core/verification.d.ts.map +0 -1
  424. package/dist/core/verification.js +0 -323
  425. package/dist/core/verification.js.map +0 -1
  426. package/dist/headless/headlessApp.d.ts +0 -5
  427. package/dist/headless/headlessApp.d.ts.map +0 -1
  428. package/dist/headless/headlessApp.js +0 -210
  429. package/dist/headless/headlessApp.js.map +0 -1
  430. package/dist/intelligence/codeIntelligence.d.ts +0 -118
  431. package/dist/intelligence/codeIntelligence.d.ts.map +0 -1
  432. package/dist/intelligence/codeIntelligence.js +0 -552
  433. package/dist/intelligence/codeIntelligence.js.map +0 -1
  434. package/dist/intelligence/docGenerator.d.ts +0 -86
  435. package/dist/intelligence/docGenerator.d.ts.map +0 -1
  436. package/dist/intelligence/docGenerator.js +0 -564
  437. package/dist/intelligence/docGenerator.js.map +0 -1
  438. package/dist/intelligence/index.d.ts +0 -51
  439. package/dist/intelligence/index.d.ts.map +0 -1
  440. package/dist/intelligence/index.js +0 -253
  441. package/dist/intelligence/index.js.map +0 -1
  442. package/dist/intelligence/refactoring.d.ts +0 -50
  443. package/dist/intelligence/refactoring.d.ts.map +0 -1
  444. package/dist/intelligence/refactoring.js +0 -354
  445. package/dist/intelligence/refactoring.js.map +0 -1
  446. package/dist/intelligence/testGenerator.d.ts +0 -74
  447. package/dist/intelligence/testGenerator.d.ts.map +0 -1
  448. package/dist/intelligence/testGenerator.js +0 -483
  449. package/dist/intelligence/testGenerator.js.map +0 -1
  450. package/dist/mcp/config.d.ts +0 -8
  451. package/dist/mcp/config.d.ts.map +0 -1
  452. package/dist/mcp/config.js +0 -252
  453. package/dist/mcp/config.js.map +0 -1
  454. package/dist/mcp/sseClient.d.ts +0 -34
  455. package/dist/mcp/sseClient.d.ts.map +0 -1
  456. package/dist/mcp/sseClient.js +0 -327
  457. package/dist/mcp/sseClient.js.map +0 -1
  458. package/dist/mcp/stdioClient.d.ts +0 -24
  459. package/dist/mcp/stdioClient.d.ts.map +0 -1
  460. package/dist/mcp/stdioClient.js +0 -179
  461. package/dist/mcp/stdioClient.js.map +0 -1
  462. package/dist/mcp/toolBridge.d.ts +0 -12
  463. package/dist/mcp/toolBridge.d.ts.map +0 -1
  464. package/dist/mcp/toolBridge.js +0 -117
  465. package/dist/mcp/toolBridge.js.map +0 -1
  466. package/dist/mcp/types.d.ts +0 -60
  467. package/dist/mcp/types.d.ts.map +0 -1
  468. package/dist/mcp/types.js +0 -2
  469. package/dist/mcp/types.js.map +0 -1
  470. package/dist/plugins/index.d.ts +0 -49
  471. package/dist/plugins/index.d.ts.map +0 -1
  472. package/dist/plugins/index.js +0 -114
  473. package/dist/plugins/index.js.map +0 -1
  474. package/dist/plugins/providers/anthropic/index.d.ts +0 -11
  475. package/dist/plugins/providers/anthropic/index.d.ts.map +0 -1
  476. package/dist/plugins/providers/anthropic/index.js +0 -38
  477. package/dist/plugins/providers/anthropic/index.js.map +0 -1
  478. package/dist/plugins/providers/deepseek/index.d.ts +0 -11
  479. package/dist/plugins/providers/deepseek/index.d.ts.map +0 -1
  480. package/dist/plugins/providers/deepseek/index.js +0 -52
  481. package/dist/plugins/providers/deepseek/index.js.map +0 -1
  482. package/dist/plugins/providers/google/index.d.ts +0 -11
  483. package/dist/plugins/providers/google/index.d.ts.map +0 -1
  484. package/dist/plugins/providers/google/index.js +0 -40
  485. package/dist/plugins/providers/google/index.js.map +0 -1
  486. package/dist/plugins/providers/index.d.ts +0 -2
  487. package/dist/plugins/providers/index.d.ts.map +0 -1
  488. package/dist/plugins/providers/index.js +0 -20
  489. package/dist/plugins/providers/index.js.map +0 -1
  490. package/dist/plugins/providers/ollama/index.d.ts +0 -21
  491. package/dist/plugins/providers/ollama/index.d.ts.map +0 -1
  492. package/dist/plugins/providers/ollama/index.js +0 -69
  493. package/dist/plugins/providers/ollama/index.js.map +0 -1
  494. package/dist/plugins/providers/openai/index.d.ts +0 -12
  495. package/dist/plugins/providers/openai/index.d.ts.map +0 -1
  496. package/dist/plugins/providers/openai/index.js +0 -39
  497. package/dist/plugins/providers/openai/index.js.map +0 -1
  498. package/dist/plugins/providers/xai/index.d.ts +0 -11
  499. package/dist/plugins/providers/xai/index.d.ts.map +0 -1
  500. package/dist/plugins/providers/xai/index.js +0 -39
  501. package/dist/plugins/providers/xai/index.js.map +0 -1
  502. package/dist/plugins/tools/agentSpawning/agentSpawningPlugin.d.ts +0 -3
  503. package/dist/plugins/tools/agentSpawning/agentSpawningPlugin.d.ts.map +0 -1
  504. package/dist/plugins/tools/agentSpawning/agentSpawningPlugin.js +0 -9
  505. package/dist/plugins/tools/agentSpawning/agentSpawningPlugin.js.map +0 -1
  506. package/dist/plugins/tools/bash/localBashPlugin.d.ts +0 -3
  507. package/dist/plugins/tools/bash/localBashPlugin.d.ts.map +0 -1
  508. package/dist/plugins/tools/bash/localBashPlugin.js +0 -14
  509. package/dist/plugins/tools/bash/localBashPlugin.js.map +0 -1
  510. package/dist/plugins/tools/browser/browserAutomationPlugin.d.ts +0 -14
  511. package/dist/plugins/tools/browser/browserAutomationPlugin.d.ts.map +0 -1
  512. package/dist/plugins/tools/browser/browserAutomationPlugin.js +0 -26
  513. package/dist/plugins/tools/browser/browserAutomationPlugin.js.map +0 -1
  514. package/dist/plugins/tools/checks/localRepoChecksPlugin.d.ts +0 -3
  515. package/dist/plugins/tools/checks/localRepoChecksPlugin.d.ts.map +0 -1
  516. package/dist/plugins/tools/checks/localRepoChecksPlugin.js +0 -14
  517. package/dist/plugins/tools/checks/localRepoChecksPlugin.js.map +0 -1
  518. package/dist/plugins/tools/cloud/cloudPlugin.d.ts +0 -3
  519. package/dist/plugins/tools/cloud/cloudPlugin.d.ts.map +0 -1
  520. package/dist/plugins/tools/cloud/cloudPlugin.js +0 -14
  521. package/dist/plugins/tools/cloud/cloudPlugin.js.map +0 -1
  522. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.d.ts +0 -3
  523. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.d.ts.map +0 -1
  524. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.js +0 -14
  525. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.js.map +0 -1
  526. package/dist/plugins/tools/codeQuality/codeQualityPlugin.d.ts +0 -3
  527. package/dist/plugins/tools/codeQuality/codeQualityPlugin.d.ts.map +0 -1
  528. package/dist/plugins/tools/codeQuality/codeQualityPlugin.js +0 -14
  529. package/dist/plugins/tools/codeQuality/codeQualityPlugin.js.map +0 -1
  530. package/dist/plugins/tools/dependency/dependencyPlugin.d.ts +0 -3
  531. package/dist/plugins/tools/dependency/dependencyPlugin.d.ts.map +0 -1
  532. package/dist/plugins/tools/dependency/dependencyPlugin.js +0 -12
  533. package/dist/plugins/tools/dependency/dependencyPlugin.js.map +0 -1
  534. package/dist/plugins/tools/development/devPlugin.d.ts +0 -3
  535. package/dist/plugins/tools/development/devPlugin.d.ts.map +0 -1
  536. package/dist/plugins/tools/development/devPlugin.js +0 -14
  537. package/dist/plugins/tools/development/devPlugin.js.map +0 -1
  538. package/dist/plugins/tools/edit/editPlugin.d.ts +0 -9
  539. package/dist/plugins/tools/edit/editPlugin.d.ts.map +0 -1
  540. package/dist/plugins/tools/edit/editPlugin.js +0 -15
  541. package/dist/plugins/tools/edit/editPlugin.js.map +0 -1
  542. package/dist/plugins/tools/email/emailPlugin.d.ts +0 -3
  543. package/dist/plugins/tools/email/emailPlugin.d.ts.map +0 -1
  544. package/dist/plugins/tools/email/emailPlugin.js +0 -12
  545. package/dist/plugins/tools/email/emailPlugin.js.map +0 -1
  546. package/dist/plugins/tools/enhancedGit/enhancedGitPlugin.d.ts +0 -3
  547. package/dist/plugins/tools/enhancedGit/enhancedGitPlugin.d.ts.map +0 -1
  548. package/dist/plugins/tools/enhancedGit/enhancedGitPlugin.js +0 -9
  549. package/dist/plugins/tools/enhancedGit/enhancedGitPlugin.js.map +0 -1
  550. package/dist/plugins/tools/filesystem/localFilesystemPlugin.d.ts +0 -3
  551. package/dist/plugins/tools/filesystem/localFilesystemPlugin.d.ts.map +0 -1
  552. package/dist/plugins/tools/filesystem/localFilesystemPlugin.js +0 -14
  553. package/dist/plugins/tools/filesystem/localFilesystemPlugin.js.map +0 -1
  554. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.d.ts +0 -3
  555. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.d.ts.map +0 -1
  556. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.js +0 -14
  557. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.js.map +0 -1
  558. package/dist/plugins/tools/glob/globPlugin.d.ts +0 -9
  559. package/dist/plugins/tools/glob/globPlugin.d.ts.map +0 -1
  560. package/dist/plugins/tools/glob/globPlugin.js +0 -15
  561. package/dist/plugins/tools/glob/globPlugin.js.map +0 -1
  562. package/dist/plugins/tools/index.d.ts +0 -3
  563. package/dist/plugins/tools/index.d.ts.map +0 -1
  564. package/dist/plugins/tools/index.js +0 -3
  565. package/dist/plugins/tools/index.js.map +0 -1
  566. package/dist/plugins/tools/interaction/interactionPlugin.d.ts +0 -3
  567. package/dist/plugins/tools/interaction/interactionPlugin.d.ts.map +0 -1
  568. package/dist/plugins/tools/interaction/interactionPlugin.js +0 -12
  569. package/dist/plugins/tools/interaction/interactionPlugin.js.map +0 -1
  570. package/dist/plugins/tools/learn/learnPlugin.d.ts +0 -3
  571. package/dist/plugins/tools/learn/learnPlugin.d.ts.map +0 -1
  572. package/dist/plugins/tools/learn/learnPlugin.js +0 -14
  573. package/dist/plugins/tools/learn/learnPlugin.js.map +0 -1
  574. package/dist/plugins/tools/mcp/mcpPlugin.d.ts +0 -3
  575. package/dist/plugins/tools/mcp/mcpPlugin.d.ts.map +0 -1
  576. package/dist/plugins/tools/mcp/mcpPlugin.js +0 -9
  577. package/dist/plugins/tools/mcp/mcpPlugin.js.map +0 -1
  578. package/dist/plugins/tools/nodeDefaults.d.ts +0 -2
  579. package/dist/plugins/tools/nodeDefaults.d.ts.map +0 -1
  580. package/dist/plugins/tools/nodeDefaults.js +0 -65
  581. package/dist/plugins/tools/nodeDefaults.js.map +0 -1
  582. package/dist/plugins/tools/notebook/notebookPlugin.d.ts +0 -9
  583. package/dist/plugins/tools/notebook/notebookPlugin.d.ts.map +0 -1
  584. package/dist/plugins/tools/notebook/notebookPlugin.js +0 -15
  585. package/dist/plugins/tools/notebook/notebookPlugin.js.map +0 -1
  586. package/dist/plugins/tools/planning/planningPlugin.d.ts +0 -9
  587. package/dist/plugins/tools/planning/planningPlugin.d.ts.map +0 -1
  588. package/dist/plugins/tools/planning/planningPlugin.js +0 -15
  589. package/dist/plugins/tools/planning/planningPlugin.js.map +0 -1
  590. package/dist/plugins/tools/refactoring/refactoringPlugin.d.ts +0 -3
  591. package/dist/plugins/tools/refactoring/refactoringPlugin.d.ts.map +0 -1
  592. package/dist/plugins/tools/refactoring/refactoringPlugin.js +0 -12
  593. package/dist/plugins/tools/refactoring/refactoringPlugin.js.map +0 -1
  594. package/dist/plugins/tools/registry.d.ts +0 -22
  595. package/dist/plugins/tools/registry.d.ts.map +0 -1
  596. package/dist/plugins/tools/registry.js +0 -58
  597. package/dist/plugins/tools/registry.js.map +0 -1
  598. package/dist/plugins/tools/search/localSearchPlugin.d.ts +0 -3
  599. package/dist/plugins/tools/search/localSearchPlugin.d.ts.map +0 -1
  600. package/dist/plugins/tools/search/localSearchPlugin.js +0 -14
  601. package/dist/plugins/tools/search/localSearchPlugin.js.map +0 -1
  602. package/dist/plugins/tools/skills/skillPlugin.d.ts +0 -3
  603. package/dist/plugins/tools/skills/skillPlugin.d.ts.map +0 -1
  604. package/dist/plugins/tools/skills/skillPlugin.js +0 -9
  605. package/dist/plugins/tools/skills/skillPlugin.js.map +0 -1
  606. package/dist/plugins/tools/taskManagement/taskManagementPlugin.d.ts +0 -3
  607. package/dist/plugins/tools/taskManagement/taskManagementPlugin.d.ts.map +0 -1
  608. package/dist/plugins/tools/taskManagement/taskManagementPlugin.js +0 -12
  609. package/dist/plugins/tools/taskManagement/taskManagementPlugin.js.map +0 -1
  610. package/dist/plugins/tools/testing/testingPlugin.d.ts +0 -3
  611. package/dist/plugins/tools/testing/testingPlugin.d.ts.map +0 -1
  612. package/dist/plugins/tools/testing/testingPlugin.js +0 -12
  613. package/dist/plugins/tools/testing/testingPlugin.js.map +0 -1
  614. package/dist/plugins/tools/validation/validationPlugin.d.ts +0 -3
  615. package/dist/plugins/tools/validation/validationPlugin.d.ts.map +0 -1
  616. package/dist/plugins/tools/validation/validationPlugin.js +0 -14
  617. package/dist/plugins/tools/validation/validationPlugin.js.map +0 -1
  618. package/dist/plugins/tools/web/webPlugin.d.ts +0 -3
  619. package/dist/plugins/tools/web/webPlugin.d.ts.map +0 -1
  620. package/dist/plugins/tools/web/webPlugin.js +0 -12
  621. package/dist/plugins/tools/web/webPlugin.js.map +0 -1
  622. package/dist/providers/anthropicProvider.d.ts +0 -41
  623. package/dist/providers/anthropicProvider.d.ts.map +0 -1
  624. package/dist/providers/anthropicProvider.js +0 -446
  625. package/dist/providers/anthropicProvider.js.map +0 -1
  626. package/dist/providers/googleProvider.d.ts +0 -36
  627. package/dist/providers/googleProvider.d.ts.map +0 -1
  628. package/dist/providers/googleProvider.js +0 -312
  629. package/dist/providers/googleProvider.js.map +0 -1
  630. package/dist/providers/openaiChatCompletionsProvider.d.ts +0 -43
  631. package/dist/providers/openaiChatCompletionsProvider.d.ts.map +0 -1
  632. package/dist/providers/openaiChatCompletionsProvider.js +0 -475
  633. package/dist/providers/openaiChatCompletionsProvider.js.map +0 -1
  634. package/dist/providers/openaiResponsesProvider.d.ts +0 -38
  635. package/dist/providers/openaiResponsesProvider.d.ts.map +0 -1
  636. package/dist/providers/openaiResponsesProvider.js +0 -364
  637. package/dist/providers/openaiResponsesProvider.js.map +0 -1
  638. package/dist/providers/providerFactory.d.ts +0 -18
  639. package/dist/providers/providerFactory.d.ts.map +0 -1
  640. package/dist/providers/providerFactory.js +0 -25
  641. package/dist/providers/providerFactory.js.map +0 -1
  642. package/dist/providers/resilientProvider.d.ts +0 -94
  643. package/dist/providers/resilientProvider.d.ts.map +0 -1
  644. package/dist/providers/resilientProvider.js +0 -370
  645. package/dist/providers/resilientProvider.js.map +0 -1
  646. package/dist/runtime/agentController.d.ts +0 -65
  647. package/dist/runtime/agentController.d.ts.map +0 -1
  648. package/dist/runtime/agentController.js +0 -353
  649. package/dist/runtime/agentController.js.map +0 -1
  650. package/dist/runtime/agentHost.d.ts +0 -61
  651. package/dist/runtime/agentHost.d.ts.map +0 -1
  652. package/dist/runtime/agentHost.js +0 -156
  653. package/dist/runtime/agentHost.js.map +0 -1
  654. package/dist/runtime/agentSession.d.ts +0 -40
  655. package/dist/runtime/agentSession.d.ts.map +0 -1
  656. package/dist/runtime/agentSession.js +0 -205
  657. package/dist/runtime/agentSession.js.map +0 -1
  658. package/dist/runtime/browser.d.ts +0 -7
  659. package/dist/runtime/browser.d.ts.map +0 -1
  660. package/dist/runtime/browser.js +0 -10
  661. package/dist/runtime/browser.js.map +0 -1
  662. package/dist/runtime/cloud.d.ts +0 -7
  663. package/dist/runtime/cloud.d.ts.map +0 -1
  664. package/dist/runtime/cloud.js +0 -10
  665. package/dist/runtime/cloud.js.map +0 -1
  666. package/dist/runtime/node.d.ts +0 -8
  667. package/dist/runtime/node.d.ts.map +0 -1
  668. package/dist/runtime/node.js +0 -11
  669. package/dist/runtime/node.js.map +0 -1
  670. package/dist/runtime/universal.d.ts +0 -21
  671. package/dist/runtime/universal.d.ts.map +0 -1
  672. package/dist/runtime/universal.js +0 -29
  673. package/dist/runtime/universal.js.map +0 -1
  674. package/dist/shell/autoExecutor.d.ts +0 -70
  675. package/dist/shell/autoExecutor.d.ts.map +0 -1
  676. package/dist/shell/autoExecutor.js +0 -288
  677. package/dist/shell/autoExecutor.js.map +0 -1
  678. package/dist/shell/composableMessage.d.ts +0 -183
  679. package/dist/shell/composableMessage.d.ts.map +0 -1
  680. package/dist/shell/composableMessage.js +0 -420
  681. package/dist/shell/composableMessage.js.map +0 -1
  682. package/dist/shell/fileChangeTracker.d.ts +0 -39
  683. package/dist/shell/fileChangeTracker.d.ts.map +0 -1
  684. package/dist/shell/fileChangeTracker.js +0 -64
  685. package/dist/shell/fileChangeTracker.js.map +0 -1
  686. package/dist/shell/keyboardShortcuts.d.ts +0 -53
  687. package/dist/shell/keyboardShortcuts.d.ts.map +0 -1
  688. package/dist/shell/keyboardShortcuts.js +0 -166
  689. package/dist/shell/keyboardShortcuts.js.map +0 -1
  690. package/dist/shell/liveStatus.d.ts +0 -30
  691. package/dist/shell/liveStatus.d.ts.map +0 -1
  692. package/dist/shell/liveStatus.js +0 -102
  693. package/dist/shell/liveStatus.js.map +0 -1
  694. package/dist/shell/shellApp.d.ts +0 -19
  695. package/dist/shell/shellApp.d.ts.map +0 -1
  696. package/dist/shell/shellApp.js +0 -408
  697. package/dist/shell/shellApp.js.map +0 -1
  698. package/dist/shell/systemPrompt.d.ts +0 -3
  699. package/dist/shell/systemPrompt.d.ts.map +0 -1
  700. package/dist/shell/systemPrompt.js +0 -81
  701. package/dist/shell/systemPrompt.js.map +0 -1
  702. package/dist/shell/taskCompletionDetector.d.ts +0 -106
  703. package/dist/shell/taskCompletionDetector.d.ts.map +0 -1
  704. package/dist/shell/taskCompletionDetector.js +0 -402
  705. package/dist/shell/taskCompletionDetector.js.map +0 -1
  706. package/dist/shell/terminalInput.d.ts +0 -617
  707. package/dist/shell/terminalInput.d.ts.map +0 -1
  708. package/dist/shell/terminalInput.js +0 -2633
  709. package/dist/shell/terminalInput.js.map +0 -1
  710. package/dist/shell/terminalInputAdapter.d.ts +0 -263
  711. package/dist/shell/terminalInputAdapter.d.ts.map +0 -1
  712. package/dist/shell/terminalInputAdapter.js +0 -406
  713. package/dist/shell/terminalInputAdapter.js.map +0 -1
  714. package/dist/shell/updateManager.d.ts +0 -3
  715. package/dist/shell/updateManager.d.ts.map +0 -1
  716. package/dist/shell/updateManager.js +0 -120
  717. package/dist/shell/updateManager.js.map +0 -1
  718. package/dist/shell/vimMode.d.ts +0 -66
  719. package/dist/shell/vimMode.d.ts.map +0 -1
  720. package/dist/shell/vimMode.js +0 -434
  721. package/dist/shell/vimMode.js.map +0 -1
  722. package/dist/skills/skillRepository.d.ts +0 -103
  723. package/dist/skills/skillRepository.d.ts.map +0 -1
  724. package/dist/skills/skillRepository.js +0 -237
  725. package/dist/skills/skillRepository.js.map +0 -1
  726. package/dist/skills/types.d.ts +0 -37
  727. package/dist/skills/types.d.ts.map +0 -1
  728. package/dist/skills/types.js +0 -2
  729. package/dist/skills/types.js.map +0 -1
  730. package/dist/subagents/agentConfig.d.ts +0 -27
  731. package/dist/subagents/agentConfig.d.ts.map +0 -1
  732. package/dist/subagents/agentConfig.js +0 -89
  733. package/dist/subagents/agentConfig.js.map +0 -1
  734. package/dist/subagents/agentRegistry.d.ts +0 -33
  735. package/dist/subagents/agentRegistry.d.ts.map +0 -1
  736. package/dist/subagents/agentRegistry.js +0 -162
  737. package/dist/subagents/agentRegistry.js.map +0 -1
  738. package/dist/subagents/parallelAgentManager.d.ts +0 -99
  739. package/dist/subagents/parallelAgentManager.d.ts.map +0 -1
  740. package/dist/subagents/parallelAgentManager.js +0 -248
  741. package/dist/subagents/parallelAgentManager.js.map +0 -1
  742. package/dist/subagents/taskRunner.d.ts +0 -34
  743. package/dist/subagents/taskRunner.d.ts.map +0 -1
  744. package/dist/subagents/taskRunner.js +0 -459
  745. package/dist/subagents/taskRunner.js.map +0 -1
  746. package/dist/tools/advancedTestGenerationTools.d.ts +0 -21
  747. package/dist/tools/advancedTestGenerationTools.d.ts.map +0 -1
  748. package/dist/tools/advancedTestGenerationTools.js +0 -301
  749. package/dist/tools/advancedTestGenerationTools.js.map +0 -1
  750. package/dist/tools/backgroundBashTools.d.ts +0 -21
  751. package/dist/tools/backgroundBashTools.d.ts.map +0 -1
  752. package/dist/tools/backgroundBashTools.js +0 -215
  753. package/dist/tools/backgroundBashTools.js.map +0 -1
  754. package/dist/tools/bashTools.d.ts +0 -8
  755. package/dist/tools/bashTools.d.ts.map +0 -1
  756. package/dist/tools/bashTools.js +0 -251
  757. package/dist/tools/bashTools.js.map +0 -1
  758. package/dist/tools/browserAutomationTools.d.ts +0 -23
  759. package/dist/tools/browserAutomationTools.d.ts.map +0 -1
  760. package/dist/tools/browserAutomationTools.js +0 -916
  761. package/dist/tools/browserAutomationTools.js.map +0 -1
  762. package/dist/tools/buildTools.d.ts +0 -9
  763. package/dist/tools/buildTools.d.ts.map +0 -1
  764. package/dist/tools/buildTools.js +0 -344
  765. package/dist/tools/buildTools.js.map +0 -1
  766. package/dist/tools/cloudTools.d.ts +0 -49
  767. package/dist/tools/cloudTools.d.ts.map +0 -1
  768. package/dist/tools/cloudTools.js +0 -1258
  769. package/dist/tools/cloudTools.js.map +0 -1
  770. package/dist/tools/code-quality-dashboard.d.ts +0 -57
  771. package/dist/tools/code-quality-dashboard.d.ts.map +0 -1
  772. package/dist/tools/code-quality-dashboard.js +0 -218
  773. package/dist/tools/code-quality-dashboard.js.map +0 -1
  774. package/dist/tools/codeAnalysisTools.d.ts +0 -74
  775. package/dist/tools/codeAnalysisTools.d.ts.map +0 -1
  776. package/dist/tools/codeAnalysisTools.js +0 -664
  777. package/dist/tools/codeAnalysisTools.js.map +0 -1
  778. package/dist/tools/codeGenerationTools.d.ts +0 -3
  779. package/dist/tools/codeGenerationTools.d.ts.map +0 -1
  780. package/dist/tools/codeGenerationTools.js +0 -439
  781. package/dist/tools/codeGenerationTools.js.map +0 -1
  782. package/dist/tools/codeQualityTools.d.ts +0 -3
  783. package/dist/tools/codeQualityTools.d.ts.map +0 -1
  784. package/dist/tools/codeQualityTools.js +0 -296
  785. package/dist/tools/codeQualityTools.js.map +0 -1
  786. package/dist/tools/dependencyTools.d.ts +0 -3
  787. package/dist/tools/dependencyTools.d.ts.map +0 -1
  788. package/dist/tools/dependencyTools.js +0 -283
  789. package/dist/tools/dependencyTools.js.map +0 -1
  790. package/dist/tools/devTools.d.ts +0 -10
  791. package/dist/tools/devTools.d.ts.map +0 -1
  792. package/dist/tools/devTools.js +0 -2125
  793. package/dist/tools/devTools.js.map +0 -1
  794. package/dist/tools/diffUtils.d.ts +0 -36
  795. package/dist/tools/diffUtils.d.ts.map +0 -1
  796. package/dist/tools/diffUtils.js +0 -528
  797. package/dist/tools/diffUtils.js.map +0 -1
  798. package/dist/tools/editTools.d.ts +0 -29
  799. package/dist/tools/editTools.d.ts.map +0 -1
  800. package/dist/tools/editTools.js +0 -419
  801. package/dist/tools/editTools.js.map +0 -1
  802. package/dist/tools/emailTools.d.ts +0 -21
  803. package/dist/tools/emailTools.d.ts.map +0 -1
  804. package/dist/tools/emailTools.js +0 -449
  805. package/dist/tools/emailTools.js.map +0 -1
  806. package/dist/tools/enhancedCodeIntelligenceTools.d.ts +0 -27
  807. package/dist/tools/enhancedCodeIntelligenceTools.d.ts.map +0 -1
  808. package/dist/tools/enhancedCodeIntelligenceTools.js +0 -418
  809. package/dist/tools/enhancedCodeIntelligenceTools.js.map +0 -1
  810. package/dist/tools/enhancedDevWorkflowTools.d.ts +0 -15
  811. package/dist/tools/enhancedDevWorkflowTools.d.ts.map +0 -1
  812. package/dist/tools/enhancedDevWorkflowTools.js +0 -303
  813. package/dist/tools/enhancedDevWorkflowTools.js.map +0 -1
  814. package/dist/tools/fileTools.d.ts +0 -3
  815. package/dist/tools/fileTools.d.ts.map +0 -1
  816. package/dist/tools/fileTools.js +0 -334
  817. package/dist/tools/fileTools.js.map +0 -1
  818. package/dist/tools/frontendTestingTools.d.ts +0 -35
  819. package/dist/tools/frontendTestingTools.d.ts.map +0 -1
  820. package/dist/tools/frontendTestingTools.js +0 -1254
  821. package/dist/tools/frontendTestingTools.js.map +0 -1
  822. package/dist/tools/globTools.d.ts +0 -15
  823. package/dist/tools/globTools.d.ts.map +0 -1
  824. package/dist/tools/globTools.js +0 -174
  825. package/dist/tools/globTools.js.map +0 -1
  826. package/dist/tools/grepTools.d.ts +0 -19
  827. package/dist/tools/grepTools.d.ts.map +0 -1
  828. package/dist/tools/grepTools.js +0 -358
  829. package/dist/tools/grepTools.js.map +0 -1
  830. package/dist/tools/interactionTools.d.ts +0 -13
  831. package/dist/tools/interactionTools.d.ts.map +0 -1
  832. package/dist/tools/interactionTools.js +0 -171
  833. package/dist/tools/interactionTools.js.map +0 -1
  834. package/dist/tools/learnTools.d.ts +0 -152
  835. package/dist/tools/learnTools.d.ts.map +0 -1
  836. package/dist/tools/learnTools.js +0 -1942
  837. package/dist/tools/learnTools.js.map +0 -1
  838. package/dist/tools/localExplore.d.ts +0 -225
  839. package/dist/tools/localExplore.d.ts.map +0 -1
  840. package/dist/tools/localExplore.js +0 -1291
  841. package/dist/tools/localExplore.js.map +0 -1
  842. package/dist/tools/notebookEditTools.d.ts +0 -15
  843. package/dist/tools/notebookEditTools.d.ts.map +0 -1
  844. package/dist/tools/notebookEditTools.js +0 -197
  845. package/dist/tools/notebookEditTools.js.map +0 -1
  846. package/dist/tools/planningTools.d.ts +0 -21
  847. package/dist/tools/planningTools.d.ts.map +0 -1
  848. package/dist/tools/planningTools.js +0 -185
  849. package/dist/tools/planningTools.js.map +0 -1
  850. package/dist/tools/refactoringTools.d.ts +0 -3
  851. package/dist/tools/refactoringTools.d.ts.map +0 -1
  852. package/dist/tools/refactoringTools.js +0 -294
  853. package/dist/tools/refactoringTools.js.map +0 -1
  854. package/dist/tools/repoChecksTools.d.ts +0 -3
  855. package/dist/tools/repoChecksTools.d.ts.map +0 -1
  856. package/dist/tools/repoChecksTools.js +0 -161
  857. package/dist/tools/repoChecksTools.js.map +0 -1
  858. package/dist/tools/searchTools.d.ts +0 -3
  859. package/dist/tools/searchTools.d.ts.map +0 -1
  860. package/dist/tools/searchTools.js +0 -207
  861. package/dist/tools/searchTools.js.map +0 -1
  862. package/dist/tools/skillTools.d.ts +0 -8
  863. package/dist/tools/skillTools.d.ts.map +0 -1
  864. package/dist/tools/skillTools.js +0 -178
  865. package/dist/tools/skillTools.js.map +0 -1
  866. package/dist/tools/softwareEngineeringTools.d.ts +0 -7
  867. package/dist/tools/softwareEngineeringTools.d.ts.map +0 -1
  868. package/dist/tools/softwareEngineeringTools.js +0 -338
  869. package/dist/tools/softwareEngineeringTools.js.map +0 -1
  870. package/dist/tools/taskManagementTools.d.ts +0 -10
  871. package/dist/tools/taskManagementTools.d.ts.map +0 -1
  872. package/dist/tools/taskManagementTools.js +0 -157
  873. package/dist/tools/taskManagementTools.js.map +0 -1
  874. package/dist/tools/testingTools.d.ts +0 -3
  875. package/dist/tools/testingTools.d.ts.map +0 -1
  876. package/dist/tools/testingTools.js +0 -233
  877. package/dist/tools/testingTools.js.map +0 -1
  878. package/dist/tools/validationTools.d.ts +0 -7
  879. package/dist/tools/validationTools.d.ts.map +0 -1
  880. package/dist/tools/validationTools.js +0 -344
  881. package/dist/tools/validationTools.js.map +0 -1
  882. package/dist/tools/webTools.d.ts +0 -3
  883. package/dist/tools/webTools.d.ts.map +0 -1
  884. package/dist/tools/webTools.js +0 -502
  885. package/dist/tools/webTools.js.map +0 -1
  886. package/dist/ui/ShellUIAdapter.d.ts +0 -194
  887. package/dist/ui/ShellUIAdapter.d.ts.map +0 -1
  888. package/dist/ui/ShellUIAdapter.js +0 -1069
  889. package/dist/ui/ShellUIAdapter.js.map +0 -1
  890. package/dist/ui/UnifiedUIController.d.ts +0 -70
  891. package/dist/ui/UnifiedUIController.d.ts.map +0 -1
  892. package/dist/ui/UnifiedUIController.js +0 -190
  893. package/dist/ui/UnifiedUIController.js.map +0 -1
  894. package/dist/ui/animation/AnimationScheduler.d.ts +0 -192
  895. package/dist/ui/animation/AnimationScheduler.d.ts.map +0 -1
  896. package/dist/ui/animation/AnimationScheduler.js +0 -432
  897. package/dist/ui/animation/AnimationScheduler.js.map +0 -1
  898. package/dist/ui/codeHighlighter.d.ts +0 -6
  899. package/dist/ui/codeHighlighter.d.ts.map +0 -1
  900. package/dist/ui/codeHighlighter.js +0 -855
  901. package/dist/ui/codeHighlighter.js.map +0 -1
  902. package/dist/ui/compactRenderer.d.ts +0 -139
  903. package/dist/ui/compactRenderer.d.ts.map +0 -1
  904. package/dist/ui/compactRenderer.js +0 -398
  905. package/dist/ui/compactRenderer.js.map +0 -1
  906. package/dist/ui/designSystem.d.ts +0 -26
  907. package/dist/ui/designSystem.d.ts.map +0 -1
  908. package/dist/ui/designSystem.js +0 -122
  909. package/dist/ui/designSystem.js.map +0 -1
  910. package/dist/ui/display.d.ts +0 -324
  911. package/dist/ui/display.d.ts.map +0 -1
  912. package/dist/ui/display.js +0 -1328
  913. package/dist/ui/display.js.map +0 -1
  914. package/dist/ui/errorFormatter.d.ts +0 -54
  915. package/dist/ui/errorFormatter.d.ts.map +0 -1
  916. package/dist/ui/errorFormatter.js +0 -251
  917. package/dist/ui/errorFormatter.js.map +0 -1
  918. package/dist/ui/globalWriteLock.d.ts +0 -38
  919. package/dist/ui/globalWriteLock.d.ts.map +0 -1
  920. package/dist/ui/globalWriteLock.js +0 -54
  921. package/dist/ui/globalWriteLock.js.map +0 -1
  922. package/dist/ui/inPlaceUpdater.d.ts +0 -181
  923. package/dist/ui/inPlaceUpdater.d.ts.map +0 -1
  924. package/dist/ui/inPlaceUpdater.js +0 -515
  925. package/dist/ui/inPlaceUpdater.js.map +0 -1
  926. package/dist/ui/interrupts/InterruptManager.d.ts +0 -142
  927. package/dist/ui/interrupts/InterruptManager.d.ts.map +0 -1
  928. package/dist/ui/interrupts/InterruptManager.js +0 -439
  929. package/dist/ui/interrupts/InterruptManager.js.map +0 -1
  930. package/dist/ui/layout.d.ts +0 -17
  931. package/dist/ui/layout.d.ts.map +0 -1
  932. package/dist/ui/layout.js +0 -140
  933. package/dist/ui/layout.js.map +0 -1
  934. package/dist/ui/orchestration/StatusOrchestrator.d.ts +0 -156
  935. package/dist/ui/orchestration/StatusOrchestrator.d.ts.map +0 -1
  936. package/dist/ui/orchestration/StatusOrchestrator.js +0 -406
  937. package/dist/ui/orchestration/StatusOrchestrator.js.map +0 -1
  938. package/dist/ui/orchestration/UIUpdateCoordinator.d.ts +0 -77
  939. package/dist/ui/orchestration/UIUpdateCoordinator.d.ts.map +0 -1
  940. package/dist/ui/orchestration/UIUpdateCoordinator.js +0 -265
  941. package/dist/ui/orchestration/UIUpdateCoordinator.js.map +0 -1
  942. package/dist/ui/outputMode.d.ts +0 -22
  943. package/dist/ui/outputMode.d.ts.map +0 -1
  944. package/dist/ui/outputMode.js +0 -40
  945. package/dist/ui/outputMode.js.map +0 -1
  946. package/dist/ui/richText.d.ts +0 -6
  947. package/dist/ui/richText.d.ts.map +0 -1
  948. package/dist/ui/richText.js +0 -391
  949. package/dist/ui/richText.js.map +0 -1
  950. package/dist/ui/shortcutsHelp.d.ts +0 -39
  951. package/dist/ui/shortcutsHelp.d.ts.map +0 -1
  952. package/dist/ui/shortcutsHelp.js +0 -152
  953. package/dist/ui/shortcutsHelp.js.map +0 -1
  954. package/dist/ui/streamingFormatter.d.ts +0 -20
  955. package/dist/ui/streamingFormatter.d.ts.map +0 -1
  956. package/dist/ui/streamingFormatter.js +0 -92
  957. package/dist/ui/streamingFormatter.js.map +0 -1
  958. package/dist/ui/telemetry/UITelemetry.d.ts +0 -181
  959. package/dist/ui/telemetry/UITelemetry.d.ts.map +0 -1
  960. package/dist/ui/telemetry/UITelemetry.js +0 -446
  961. package/dist/ui/telemetry/UITelemetry.js.map +0 -1
  962. package/dist/ui/textHighlighter.d.ts +0 -83
  963. package/dist/ui/textHighlighter.d.ts.map +0 -1
  964. package/dist/ui/textHighlighter.js +0 -267
  965. package/dist/ui/textHighlighter.js.map +0 -1
  966. package/dist/ui/theme.d.ts +0 -208
  967. package/dist/ui/theme.d.ts.map +0 -1
  968. package/dist/ui/theme.js +0 -249
  969. package/dist/ui/theme.js.map +0 -1
  970. package/dist/ui/toolDisplay.d.ts +0 -195
  971. package/dist/ui/toolDisplay.d.ts.map +0 -1
  972. package/dist/ui/toolDisplay.js +0 -1527
  973. package/dist/ui/toolDisplay.js.map +0 -1
  974. package/dist/ui/unified/index.d.ts +0 -50
  975. package/dist/ui/unified/index.d.ts.map +0 -1
  976. package/dist/ui/unified/index.js +0 -77
  977. package/dist/ui/unified/index.js.map +0 -1
  978. package/dist/ui/unified/layout.d.ts +0 -12
  979. package/dist/ui/unified/layout.d.ts.map +0 -1
  980. package/dist/ui/unified/layout.js +0 -96
  981. package/dist/ui/unified/layout.js.map +0 -1
  982. package/dist/ui/writeLock.d.ts +0 -65
  983. package/dist/ui/writeLock.d.ts.map +0 -1
  984. package/dist/ui/writeLock.js +0 -114
  985. package/dist/ui/writeLock.js.map +0 -1
  986. package/dist/utils/asyncUtils.d.ts +0 -95
  987. package/dist/utils/asyncUtils.d.ts.map +0 -1
  988. package/dist/utils/asyncUtils.js +0 -286
  989. package/dist/utils/asyncUtils.js.map +0 -1
  990. package/dist/utils/errorUtils.d.ts +0 -16
  991. package/dist/utils/errorUtils.d.ts.map +0 -1
  992. package/dist/utils/errorUtils.js +0 -66
  993. package/dist/utils/errorUtils.js.map +0 -1
  994. package/dist/utils/frontmatter.d.ts +0 -10
  995. package/dist/utils/frontmatter.d.ts.map +0 -1
  996. package/dist/utils/frontmatter.js +0 -78
  997. package/dist/utils/frontmatter.js.map +0 -1
  998. package/dist/utils/planFormatter.d.ts +0 -34
  999. package/dist/utils/planFormatter.d.ts.map +0 -1
  1000. package/dist/utils/planFormatter.js +0 -140
  1001. package/dist/utils/planFormatter.js.map +0 -1
  1002. package/dist/workspace.d.ts +0 -8
  1003. package/dist/workspace.d.ts.map +0 -1
  1004. package/dist/workspace.js +0 -107
  1005. package/dist/workspace.js.map +0 -1
  1006. package/dist/workspace.validator.d.ts +0 -49
  1007. package/dist/workspace.validator.d.ts.map +0 -1
  1008. package/dist/workspace.validator.js +0 -214
  1009. package/dist/workspace.validator.js.map +0 -1
@@ -1,1527 +0,0 @@
1
- /**
2
- * Tool Display Formatter - Claude Code style
3
- *
4
- * Implements the clean, informative tool execution display that Claude Code uses:
5
- * - Tool call indicators with inline args
6
- * - Result summaries with status indicators
7
- * - Expandable content with previews
8
- * - Diff formatting with colors
9
- * - Advanced progress indicators
10
- * - Compact same-line displays
11
- */
12
- import { formatPlan, normalizePlanItems, resolvePlanWidth, wrapPlanText } from '../utils/planFormatter.js';
13
- import { theme, icons, progressChars } from './theme.js';
14
- /**
15
- * Format tool call display (Claude Code style)
16
- *
17
- * Example output:
18
- * ⏺ Read(src/core/agent.ts)
19
- * ⏺ Search(pattern: "TODO|FIXME", output_mode: "content", head_limit: 15)
20
- */
21
- export function formatToolCall(call, options = {}) {
22
- const includePrefix = options.includePrefix ?? true;
23
- const symbol = includePrefix ? `${theme.info('⏺')} ` : '';
24
- const toolName = theme.tool(call.name);
25
- // Format args inline (only show relevant ones)
26
- const argsDisplay = formatInlineArgs(call.args);
27
- return `${symbol}${toolName}${argsDisplay}`;
28
- }
29
- /**
30
- * Format tool result display (Claude Code style)
31
- *
32
- * Example output:
33
- * ⎿ Read 340 lines
34
- * ⎿ Found 15 lines
35
- * ⎿ Completed
36
- */
37
- export function formatToolResult(result, options = {}) {
38
- const includePrefix = options.includePrefix ?? true;
39
- const prefix = includePrefix
40
- ? result.status === 'error'
41
- ? `${theme.error('⎿')} `
42
- : `${theme.success('⎿')} `
43
- : '';
44
- let output = `${prefix}${result.summary}`;
45
- return output;
46
- }
47
- /**
48
- * Format inline args for tool call display
49
- * Keeps it concise, shows only non-default values
50
- * Prioritizes important args like paths, patterns, commands
51
- */
52
- function formatInlineArgs(args) {
53
- // Priority order for different argument types
54
- const priorityArgs = [
55
- 'file_path', 'path', 'pattern', 'command', 'query', 'url',
56
- 'output_mode', 'glob', 'type', 'head_limit', 'offset',
57
- ];
58
- // Special handling for specific args
59
- const skipDefaults = new Set([
60
- 'dangerouslyDisableSandbox',
61
- 'run_in_background',
62
- 'description',
63
- ]);
64
- const formattedArgs = [];
65
- for (const [key, value] of Object.entries(args)) {
66
- // Skip empty/null/undefined
67
- if (value === null || value === undefined || value === '')
68
- continue;
69
- // Skip common defaults
70
- if (skipDefaults.has(key))
71
- continue;
72
- if (key === 'path' && value === '.')
73
- continue;
74
- if (key === 'format' && value === 'plain')
75
- continue;
76
- if (key === 'output_mode' && value === 'files_with_matches')
77
- continue;
78
- // Determine priority
79
- const priority = priorityArgs.indexOf(key);
80
- const actualPriority = priority === -1 ? 999 : priority;
81
- // Format value
82
- let formatted;
83
- if (typeof value === 'string') {
84
- // Smart truncation for paths
85
- if (key === 'file_path' || key === 'path') {
86
- formatted = truncatePathForDisplay(value, 60);
87
- }
88
- else if (key === 'pattern' || key === 'query') {
89
- // Show patterns/queries more prominently
90
- if (value.length > 40) {
91
- formatted = `"${value.slice(0, 37)}..."`;
92
- }
93
- else {
94
- formatted = `"${value}"`;
95
- }
96
- }
97
- else if (key === 'command') {
98
- // Truncate commands intelligently
99
- if (value.length > 60) {
100
- formatted = `"${value.slice(0, 57)}..."`;
101
- }
102
- else {
103
- formatted = `"${value}"`;
104
- }
105
- }
106
- else {
107
- // Regular string truncation
108
- if (value.length > 50) {
109
- formatted = `"${value.slice(0, 47)}..."`;
110
- }
111
- else {
112
- formatted = `"${value}"`;
113
- }
114
- }
115
- }
116
- else if (typeof value === 'boolean') {
117
- // Only show boolean if true (false is usually default)
118
- if (!value)
119
- continue;
120
- formatted = 'true';
121
- }
122
- else if (typeof value === 'number') {
123
- formatted = String(value);
124
- }
125
- else if (Array.isArray(value)) {
126
- // Show array length
127
- formatted = `[${value.length} items]`;
128
- }
129
- else {
130
- formatted = JSON.stringify(value);
131
- }
132
- formattedArgs.push({ key, value: formatted, priority: actualPriority });
133
- }
134
- // Sort by priority and limit to most important args
135
- formattedArgs.sort((a, b) => a.priority - b.priority);
136
- const displayArgs = formattedArgs.slice(0, 5); // Show max 5 args
137
- if (displayArgs.length === 0) {
138
- return '';
139
- }
140
- // Format as inline args
141
- const argStrings = displayArgs.map(arg => {
142
- // For primary args (path, pattern, command), show value directly
143
- if (['file_path', 'path', 'pattern', 'command', 'query', 'url'].includes(arg.key)) {
144
- return arg.value;
145
- }
146
- // For others, show key: value
147
- return `${arg.key}: ${arg.value}`;
148
- });
149
- return `(${argStrings.join(', ')})`;
150
- }
151
- /**
152
- * Truncate path intelligently for display
153
- * Keeps filename and important parent dirs
154
- */
155
- function truncatePathForDisplay(path, maxLength) {
156
- if (path.length <= maxLength)
157
- return path;
158
- const parts = path.split('/').filter(p => p);
159
- if (parts.length <= 2) {
160
- // Short path, just truncate
161
- return `${path.slice(0, maxLength - 3)}...`;
162
- }
163
- // Keep filename and truncate middle
164
- const filename = parts[parts.length - 1];
165
- if (!filename) {
166
- return `${path.slice(0, maxLength - 3)}...`;
167
- }
168
- const firstPart = parts.slice(0, 2).join('/');
169
- if (firstPart.length + filename.length + 4 <= maxLength) {
170
- return `${firstPart}/.../${filename}`;
171
- }
172
- // Just show filename if still too long
173
- if (filename.length <= maxLength - 3) {
174
- return `.../${filename}`;
175
- }
176
- return `${filename.slice(0, maxLength - 3)}...`;
177
- }
178
- /**
179
- * Format expandable content preview
180
- *
181
- * Example:
182
- * import { foo } from 'bar';
183
- * … +312 lines
184
- */
185
- export function formatExpandablePreview(content, maxLines = 5) {
186
- const lines = content.split('\n');
187
- const totalLines = lines.length;
188
- if (totalLines <= maxLines) {
189
- return {
190
- preview: content,
191
- isExpanded: true,
192
- totalLines,
193
- };
194
- }
195
- // Show first N lines
196
- const previewLines = lines.slice(0, maxLines);
197
- const remainingLines = totalLines - maxLines;
198
- const ellipsis = theme.ui.muted(`… +${remainingLines} lines`);
199
- previewLines.push(`${ellipsis}`);
200
- return {
201
- preview: previewLines.join('\n'),
202
- isExpanded: false,
203
- totalLines,
204
- };
205
- }
206
- /**
207
- * Format diff output (Claude Code style)
208
- *
209
- * Example:
210
- * Update(src/core/agent.ts)
211
- * ⎿ Updated src/core/agent.ts with 2 additions and 1 removal
212
- * 75 private async processConversation(): Promise<string> {
213
- * 76 while (true) {
214
- * 77 - this.pruneMessagesIfNeeded();
215
- * 77 + await this.pruneMessagesIfNeeded();
216
- * 78
217
- */
218
- export function formatDiff(diff) {
219
- const lines = [];
220
- for (const line of diff) {
221
- let formatted;
222
- switch (line.type) {
223
- case 'add':
224
- // Green + with line number
225
- const addNum = line.lineNumber ? theme.ui.muted(String(line.lineNumber).padStart(6)) : ' ';
226
- const addSymbol = theme.diff.added('+');
227
- const addContent = theme.diff.added(line.content);
228
- formatted = `${addNum} ${addSymbol} ${addContent}`;
229
- break;
230
- case 'remove':
231
- // Red - with line number
232
- const remNum = line.lineNumber ? theme.ui.muted(String(line.lineNumber).padStart(6)) : ' ';
233
- const remSymbol = theme.diff.removed('-');
234
- const remContent = theme.diff.removed(line.content);
235
- formatted = `${remNum} ${remSymbol} ${remContent}`;
236
- break;
237
- case 'context':
238
- // Gray line number, regular content
239
- const ctxNum = line.lineNumber ? theme.ui.muted(String(line.lineNumber).padStart(6)) : ' ';
240
- formatted = `${ctxNum} ${line.content}`;
241
- break;
242
- case 'info':
243
- // Special info line (file headers, etc.)
244
- formatted = theme.diff.header(line.content);
245
- break;
246
- }
247
- lines.push(formatted);
248
- }
249
- return lines.join('\n');
250
- }
251
- /**
252
- * Format diff summary
253
- * Example: "Updated src/core/agent.ts with 2 additions and 1 removal"
254
- */
255
- export function formatDiffSummary(file, additions, removals) {
256
- const parts = ['Updated', file, 'with'];
257
- if (additions > 0) {
258
- parts.push(theme.diff.added(`${additions} addition${additions === 1 ? '' : 's'}`));
259
- }
260
- if (removals > 0) {
261
- if (additions > 0) {
262
- parts.push('and');
263
- }
264
- parts.push(theme.diff.removed(`${removals} removal${removals === 1 ? '' : 's'}`));
265
- }
266
- return parts.join(' ');
267
- }
268
- /**
269
- * Format multiline content with indentation (Claude Code style)
270
- *
271
- * Adds proper indentation and line wrapping
272
- */
273
- export function formatIndentedContent(content, indent = 4) {
274
- const lines = content.split('\n');
275
- const indentStr = ' '.repeat(indent);
276
- return lines.map(line => `${indentStr}${line}`).join('\n');
277
- }
278
- /**
279
- * Format token usage indicator
280
- * Example: "• Context 5% used (7.2k tokens)"
281
- */
282
- export function formatTokenUsage(percentage, tokens) {
283
- const bullet = theme.info('•');
284
- let pct;
285
- if (percentage >= 90) {
286
- pct = theme.error(`${percentage}%`);
287
- }
288
- else if (percentage >= 70) {
289
- pct = theme.warning(`${percentage}%`);
290
- }
291
- else {
292
- pct = theme.success(`${percentage}%`);
293
- }
294
- const tokensStr = tokens ? ` (${formatTokenCount(tokens)} tokens)` : '';
295
- return `${bullet} Context ${pct} used${tokensStr}`;
296
- }
297
- /**
298
- * Format token count with k/M suffixes
299
- */
300
- function formatTokenCount(tokens) {
301
- if (tokens >= 1000000) {
302
- return `${(tokens / 1000000).toFixed(1)}M`;
303
- }
304
- if (tokens >= 1000) {
305
- return `${(tokens / 1000).toFixed(1)}k`;
306
- }
307
- return String(tokens);
308
- }
309
- /**
310
- * Format timing information
311
- * Example: "(1m 43s)" or "(250ms)"
312
- */
313
- export function formatDuration(ms) {
314
- if (ms < 1000) {
315
- return `${Math.round(ms)}ms`;
316
- }
317
- const seconds = Math.floor(ms / 1000);
318
- const minutes = Math.floor(seconds / 60);
319
- const remainingSeconds = seconds % 60;
320
- if (minutes > 0) {
321
- return `${minutes}m ${remainingSeconds}s`;
322
- }
323
- return `${seconds}s`;
324
- }
325
- /**
326
- * Create a "thinking" indicator
327
- * Example: "∴ Thinking…" or "∴ Thought for 2s"
328
- */
329
- export function formatThinking(durationMs, hasContent = false) {
330
- const symbol = theme.info('∴');
331
- if (durationMs === undefined) {
332
- return `${symbol} Thinking…`;
333
- }
334
- const duration = formatDuration(durationMs);
335
- return `${symbol} Thought for ${duration}`;
336
- }
337
- /**
338
- * Format status line at bottom
339
- * Example: "• Ready for prompts (250ms)"
340
- */
341
- export function formatStatusLine(message, durationMs, tokenUsage) {
342
- const parts = [];
343
- // Add token usage first if available
344
- if (tokenUsage) {
345
- parts.push(formatTokenUsage(tokenUsage.percentage, tokenUsage.tokens));
346
- }
347
- // Add message with duration
348
- const duration = durationMs ? ` (${formatDuration(durationMs)})` : '';
349
- parts.push(message + duration);
350
- return parts.join(' · ');
351
- }
352
- /**
353
- * Smart truncate for shell commands
354
- * Preserves important parts like command name and key flags
355
- */
356
- export function truncateCommand(command, maxLength = 60) {
357
- if (command.length <= maxLength)
358
- return command;
359
- // Try to keep command name and first few args
360
- const parts = command.split(/\s+/).filter(p => p);
361
- if (parts.length === 0 || !parts[0]) {
362
- return `${command.slice(0, maxLength - 3)}...`;
363
- }
364
- if (parts.length === 1) {
365
- // Single long command/path
366
- return `${command.slice(0, maxLength - 3)}...`;
367
- }
368
- // Keep first part (command) and truncate rest
369
- const cmdName = parts[0];
370
- const rest = parts.slice(1).join(' ');
371
- if (cmdName.length + 7 > maxLength) {
372
- return `${cmdName.slice(0, maxLength - 3)}...`;
373
- }
374
- const availableSpace = maxLength - cmdName.length - 4; // -4 for " ..."
375
- if (rest.length <= availableSpace) {
376
- return command;
377
- }
378
- return `${cmdName} ${rest.slice(0, availableSpace)}...`;
379
- }
380
- /**
381
- * Format file size in human-readable format
382
- */
383
- export function formatFileSize(bytes) {
384
- if (bytes < 1024)
385
- return `${bytes}B`;
386
- if (bytes < 1024 * 1024)
387
- return `${(bytes / 1024).toFixed(1)}KB`;
388
- if (bytes < 1024 * 1024 * 1024)
389
- return `${(bytes / (1024 * 1024)).toFixed(1)}MB`;
390
- return `${(bytes / (1024 * 1024 * 1024)).toFixed(1)}GB`;
391
- }
392
- /**
393
- * Format JSON output with syntax highlighting
394
- */
395
- export function formatJSON(data, compact = false) {
396
- const json = JSON.stringify(data, null, compact ? 0 : 2);
397
- // Add basic syntax highlighting
398
- return json
399
- .replace(/"([^"]+)":/g, (_, key) => `${theme.info(`"${key}"`)}: `) // Keys in blue
400
- .replace(/: "([^"]*)"/g, (_, value) => `: ${theme.success(`"${value}"`)}`) // String values in green
401
- .replace(/: (\d+\.?\d*)/g, (_, num) => `: ${theme.warning(num)}`) // Numbers in amber
402
- .replace(/: (true|false|null)/g, (_, bool) => `: ${theme.secondary(bool)}`); // Booleans in purple
403
- }
404
- /**
405
- * Format a list of items (Claude Code style)
406
- * Example:
407
- * • Item 1
408
- * • Item 2
409
- * • Item 3
410
- */
411
- export function formatList(items, bullet = '•') {
412
- return items.map(item => ` ${theme.info(bullet)} ${item}`).join('\n');
413
- }
414
- /**
415
- * Format a key-value pair (Claude Code style)
416
- */
417
- export function formatKeyValue(key, value) {
418
- return `${theme.ui.muted(key)}: ${value}`;
419
- }
420
- /**
421
- * Format a tool result summary for display in the terminal.
422
- * This is the central function for displaying ALL tool results.
423
- *
424
- * To add support for a new tool:
425
- * 1. Add a case in the switch statement below
426
- * 2. Create a format function for that tool type
427
- *
428
- * @returns Formatted string to display, or null if no display needed
429
- */
430
- export function formatToolResultSummary(input) {
431
- const { toolName, args, output, success, durationMs } = input;
432
- // Determine tool category and format accordingly
433
- switch (toolName) {
434
- // === FILE OPERATIONS ===
435
- case 'Edit':
436
- case 'edit_file':
437
- // These already return formatted diff output from editTools.ts
438
- return output;
439
- // === BASH/COMMAND EXECUTION ===
440
- case 'Bash':
441
- case 'bash':
442
- case 'execute_bash':
443
- case 'execute_bash_stream':
444
- case 'execute_command':
445
- return formatBashResult(args, output, success, durationMs);
446
- // === BACKGROUND BASH ===
447
- case 'BashOutput':
448
- return formatBashOutputResult(args, output, success);
449
- case 'KillShell':
450
- return formatKillShellResult(args, output, success);
451
- // === FILE READING ===
452
- case 'Read':
453
- case 'read_file':
454
- return formatReadResult(args, output, success);
455
- // === SEARCH OPERATIONS ===
456
- case 'Grep':
457
- case 'grep':
458
- case 'grep_search':
459
- case 'search_text':
460
- case 'search_files':
461
- return formatGrepResult(args, output, success);
462
- case 'Glob':
463
- case 'glob':
464
- case 'list_files':
465
- return formatGlobResult(args, output, success);
466
- case 'find_definition':
467
- return formatFindDefinitionResult(args, output, success);
468
- // === WEB OPERATIONS ===
469
- case 'WebFetch':
470
- case 'web_fetch':
471
- return formatWebFetchResult(args, output, success);
472
- case 'WebSearch':
473
- case 'web_search':
474
- return formatWebSearchResult(args, output, success);
475
- case 'WebExtract':
476
- return formatWebExtractResult(args, output, success);
477
- // === TASK/AGENT OPERATIONS ===
478
- case 'Task':
479
- case 'task':
480
- return formatTaskResult(args, output, success);
481
- // === TODO OPERATIONS ===
482
- case 'TodoWrite':
483
- case 'todo_write':
484
- return formatTodoResult(args, output, success);
485
- // === NOTEBOOK OPERATIONS ===
486
- case 'NotebookEdit':
487
- case 'notebook_edit':
488
- return formatNotebookResult(args, output, success);
489
- // === USER INTERACTION ===
490
- case 'AskUserQuestion':
491
- return formatAskUserResult(args, output, success);
492
- // === DEV TOOLS ===
493
- case 'run_tests':
494
- return formatTestResult(args, output, success, durationMs);
495
- case 'run_build':
496
- return formatBuildResult(args, output, success, durationMs);
497
- case 'install_dependencies':
498
- return formatInstallResult(args, output, success, durationMs);
499
- case 'check_package_info':
500
- return formatPackageInfoResult(args, output, success);
501
- // === GIT OPERATIONS ===
502
- case 'git_release':
503
- case 'git_sync':
504
- case 'git_cleanup':
505
- return formatGitResult(toolName, args, output, success);
506
- // === DOCKER ===
507
- case 'docker_build':
508
- case 'docker_compose':
509
- return formatDockerResult(toolName, args, output, success, durationMs);
510
- // === CODE ANALYSIS ===
511
- case 'analyze_code_structure':
512
- case 'find_dependencies':
513
- case 'check_code_complexity':
514
- case 'advanced_ast_analysis':
515
- case 'analyze_code_complexity':
516
- case 'suggest_refactoring':
517
- case 'generate_code_quality_report':
518
- return formatCodeAnalysisResult(toolName, args, output, success);
519
- // === TESTING TOOLS ===
520
- case 'generate_test_templates':
521
- case 'run_coverage_analysis':
522
- case 'summarize_coverage_report':
523
- case 'analyze_test_coverage':
524
- case 'generate_comprehensive_tests':
525
- return formatTestingToolResult(toolName, args, output, success);
526
- // === LINT/QUALITY ===
527
- case 'run_lint_checks':
528
- case 'inspect_code_quality':
529
- case 'list_lint_rules':
530
- return formatLintResult(toolName, args, output, success);
531
- // === CLOUD DEPLOY ===
532
- case 'cloud_status':
533
- case 'cloud_deploy':
534
- case 'cloud_init':
535
- case 'cloud_login':
536
- case 'firebase_deploy':
537
- case 'aliyun_deploy':
538
- return formatCloudResult(toolName, args, output, success);
539
- // === BROWSER AUTOMATION ===
540
- case 'browser_create_session':
541
- case 'browser_navigate':
542
- case 'browser_click':
543
- case 'browser_type':
544
- case 'browser_screenshot':
545
- case 'browser_close_session':
546
- return formatBrowserResult(toolName, args, output, success);
547
- // === EMAIL ===
548
- case 'send_email':
549
- case 'send_batch_emails':
550
- case 'verify_email_config':
551
- return formatEmailResult(toolName, args, output, success);
552
- // === SKILLS ===
553
- case 'ListSkills':
554
- case 'Skill':
555
- return formatSkillResult(toolName, args, output, success);
556
- // === PLANNING ===
557
- case 'UpdatePlan':
558
- return formatPlanUpdateResult(args, output, success);
559
- case 'ExitPlanMode':
560
- return formatPlanModeResult(args, output, success);
561
- // === REPO CHECKS ===
562
- case 'run_repo_checks':
563
- return formatRepoChecksResult(args, output, success);
564
- // === LEARNING & EXPLORATION ===
565
- case 'learn_codebase':
566
- case 'learn_file':
567
- case 'learn_topic':
568
- case 'learn_summary':
569
- case 'explore':
570
- case 'explore_index':
571
- return formatLearnResult(toolName, args, output, success);
572
- // === DEFAULT: Unknown tools ===
573
- default:
574
- // For unknown tools, show a generic summary if output is non-empty
575
- return formatGenericToolResult(toolName, output, success, durationMs);
576
- }
577
- }
578
- /**
579
- * Format Bash command result
580
- * Shows: command executed, exit status, and output preview
581
- */
582
- function formatBashResult(args, output, success, durationMs) {
583
- const command = args['command'] || '';
584
- const description = args['description'];
585
- const lines = [];
586
- // Header with command
587
- const statusIcon = success ? theme.success('✓') : theme.error('✗');
588
- const cmdDisplay = truncateCommand(command, 50);
589
- const durationStr = durationMs ? ` ${theme.ui.muted(`(${formatDuration(durationMs)})`)}` : '';
590
- if (description) {
591
- lines.push(`${statusIcon} ${description}${durationStr}`);
592
- lines.push(` ${theme.ui.muted('$')} ${theme.dim(cmdDisplay)}`);
593
- }
594
- else {
595
- lines.push(`${statusIcon} ${theme.ui.muted('$')} ${cmdDisplay}${durationStr}`);
596
- }
597
- // Output preview (max 5 lines)
598
- if (output && output.trim()) {
599
- const outputLines = output.trim().split('\n');
600
- const maxPreviewLines = 5;
601
- const previewLines = outputLines.slice(0, maxPreviewLines);
602
- const lineFormatter = success ? theme.dim : theme.error;
603
- for (const line of previewLines) {
604
- // Truncate long lines
605
- const truncatedLine = line.length > 80 ? `${line.slice(0, 77)}...` : line;
606
- lines.push(` ${lineFormatter(truncatedLine)}`);
607
- }
608
- if (outputLines.length > maxPreviewLines) {
609
- const remaining = outputLines.length - maxPreviewLines;
610
- lines.push(` ${theme.ui.muted(`... +${remaining} more line${remaining === 1 ? '' : 's'}`)}`);
611
- }
612
- }
613
- return lines.join('\n');
614
- }
615
- /**
616
- * Format Read file result
617
- * Shows: file path and line count
618
- */
619
- function formatReadResult(args, output, success) {
620
- const filePath = (args['file_path'] || args['path']) || '';
621
- const displayPath = truncatePathForDisplay(filePath, 50);
622
- if (!success) {
623
- return `${theme.error('✗')} Failed to read ${displayPath}`;
624
- }
625
- const lineCount = output.split('\n').length;
626
- return `${theme.success('✓')} Read ${theme.info(displayPath)} ${theme.ui.muted(`(${lineCount} lines)`)}`;
627
- }
628
- /**
629
- * Format Grep search result
630
- * Shows: pattern, matches found, and file list preview
631
- */
632
- function formatGrepResult(args, output, success) {
633
- const pattern = args['pattern'] || '';
634
- const patternDisplay = pattern.length > 30 ? `${pattern.slice(0, 27)}...` : pattern;
635
- const lines = [];
636
- if (!success || !output.trim()) {
637
- lines.push(`${theme.warning('○')} No matches for "${patternDisplay}"`);
638
- return lines.join('\n');
639
- }
640
- // Count matches/files
641
- const outputLines = output.trim().split('\n').filter(l => l.trim());
642
- const matchCount = outputLines.length;
643
- lines.push(`${theme.success('✓')} Found ${theme.info(String(matchCount))} match${matchCount === 1 ? '' : 'es'} for "${patternDisplay}"`);
644
- // Show first few matches
645
- const maxPreview = 3;
646
- for (let i = 0; i < Math.min(maxPreview, outputLines.length); i++) {
647
- const line = outputLines[i] || '';
648
- const truncated = line.length > 70 ? `${line.slice(0, 67)}...` : line;
649
- lines.push(` ${theme.dim(truncated)}`);
650
- }
651
- if (matchCount > maxPreview) {
652
- lines.push(` ${theme.ui.muted(`... +${matchCount - maxPreview} more`)}`);
653
- }
654
- return lines.join('\n');
655
- }
656
- /**
657
- * Format Glob file search result
658
- * Shows: pattern and files found
659
- */
660
- function formatGlobResult(args, output, success) {
661
- const pattern = args['pattern'] || '*';
662
- const lines = [];
663
- if (!success || !output.trim()) {
664
- lines.push(`${theme.warning('○')} No files matching "${pattern}"`);
665
- return lines.join('\n');
666
- }
667
- const files = output.trim().split('\n').filter(f => f.trim());
668
- const fileCount = files.length;
669
- lines.push(`${theme.success('✓')} Found ${theme.info(String(fileCount))} file${fileCount === 1 ? '' : 's'} matching "${pattern}"`);
670
- // Show first few files
671
- const maxPreview = 4;
672
- for (let i = 0; i < Math.min(maxPreview, files.length); i++) {
673
- const file = files[i] || '';
674
- lines.push(` ${theme.dim(truncatePathForDisplay(file, 60))}`);
675
- }
676
- if (fileCount > maxPreview) {
677
- lines.push(` ${theme.ui.muted(`... +${fileCount - maxPreview} more`)}`);
678
- }
679
- return lines.join('\n');
680
- }
681
- /**
682
- * Format WebFetch result
683
- * Shows: URL and content summary
684
- */
685
- function formatWebFetchResult(args, output, success) {
686
- const url = args['url'] || '';
687
- let hostname = url;
688
- try {
689
- hostname = new URL(url).hostname;
690
- }
691
- catch {
692
- // Keep original URL if parsing fails
693
- }
694
- if (!success) {
695
- return `${theme.error('✗')} Failed to fetch ${hostname}`;
696
- }
697
- const contentLength = output.length;
698
- const sizeStr = formatFileSize(contentLength);
699
- return `${theme.success('✓')} Fetched ${theme.info(hostname)} ${theme.ui.muted(`(${sizeStr})`)}`;
700
- }
701
- /**
702
- * Format WebSearch result
703
- * Shows: query and result count
704
- */
705
- function formatWebSearchResult(args, output, success) {
706
- const query = args['query'] || '';
707
- const queryDisplay = query.length > 40 ? `${query.slice(0, 37)}...` : query;
708
- if (!success) {
709
- return `${theme.error('✗')} Search failed for "${queryDisplay}"`;
710
- }
711
- // Try to count results from output
712
- const resultMatches = output.match(/^\d+\./gm);
713
- const resultCount = resultMatches ? resultMatches.length : 'multiple';
714
- return `${theme.success('✓')} Found ${theme.info(String(resultCount))} results for "${queryDisplay}"`;
715
- }
716
- /**
717
- * Format Task/Agent result
718
- * Shows: task description and completion status
719
- */
720
- function formatTaskResult(args, _output, success) {
721
- const description = args['description'] || 'Task';
722
- const truncatedDesc = description.length > 50 ? `${description.slice(0, 47)}...` : description;
723
- if (!success) {
724
- return `${theme.error('✗')} Task failed: ${truncatedDesc}`;
725
- }
726
- return `${theme.success('✓')} Completed: ${truncatedDesc}`;
727
- }
728
- /**
729
- * Format TodoWrite result
730
- * Shows: todo list update summary
731
- */
732
- function formatTodoResult(args, _output, success) {
733
- const todos = args['todos'];
734
- if (!success) {
735
- return `${theme.error('✗')} Failed to update todo list`;
736
- }
737
- if (!todos || !Array.isArray(todos)) {
738
- return `${theme.success('✓')} Todo list updated`;
739
- }
740
- const completed = todos.filter(t => t.status === 'completed').length;
741
- const inProgress = todos.filter(t => t.status === 'in_progress').length;
742
- const pending = todos.filter(t => t.status === 'pending').length;
743
- const parts = [`${theme.success('✓')} Todos:`];
744
- if (completed > 0)
745
- parts.push(theme.success(`${completed} done`));
746
- if (inProgress > 0)
747
- parts.push(theme.warning(`${inProgress} active`));
748
- if (pending > 0)
749
- parts.push(theme.dim(`${pending} pending`));
750
- return parts.join(' ');
751
- }
752
- /**
753
- * Format NotebookEdit result
754
- * Shows: notebook and cell info
755
- */
756
- function formatNotebookResult(args, _output, success) {
757
- const notebookPath = args['notebook_path'] || '';
758
- const editMode = args['edit_mode'] || 'replace';
759
- const displayPath = truncatePathForDisplay(notebookPath, 40);
760
- if (!success) {
761
- return `${theme.error('✗')} Failed to edit notebook ${displayPath}`;
762
- }
763
- const action = editMode === 'insert' ? 'Inserted cell in' : editMode === 'delete' ? 'Deleted cell from' : 'Updated';
764
- return `${theme.success('✓')} ${action} ${theme.info(displayPath)}`;
765
- }
766
- /**
767
- * Format generic/unknown tool result
768
- * Provides a basic summary for tools not explicitly handled
769
- */
770
- function formatGenericToolResult(toolName, output, success, durationMs) {
771
- const statusIcon = success ? theme.success('✓') : theme.error('✗');
772
- const durationStr = durationMs ? ` ${theme.ui.muted(`(${formatDuration(durationMs)})`)}` : '';
773
- if (!output || !output.trim()) {
774
- return `${statusIcon} ${toolName} completed${durationStr}`;
775
- }
776
- const lineCount = output.split('\n').length;
777
- return `${statusIcon} ${toolName} completed ${theme.ui.muted(`(${lineCount} lines)`)}${durationStr}`;
778
- }
779
- // ============================================================================
780
- // ADDITIONAL TOOL FORMATTERS
781
- // ============================================================================
782
- /**
783
- * Format BashOutput (background shell) result
784
- */
785
- function formatBashOutputResult(args, output, success) {
786
- const shellId = (args['bash_id'] || args['shell_id']) || '';
787
- const lines = [];
788
- if (!success) {
789
- return `${theme.error('✗')} Failed to get output from shell ${shellId}`;
790
- }
791
- const outputLines = output.trim().split('\n').filter(l => l);
792
- const lineCount = outputLines.length;
793
- lines.push(`${theme.success('✓')} Shell ${theme.info(shellId)} ${theme.ui.muted(`(${lineCount} lines)`)}`);
794
- // Show preview
795
- const maxPreview = 3;
796
- for (let i = 0; i < Math.min(maxPreview, outputLines.length); i++) {
797
- const line = outputLines[i] || '';
798
- const truncated = line.length > 70 ? `${line.slice(0, 67)}...` : line;
799
- lines.push(` ${theme.dim(truncated)}`);
800
- }
801
- if (lineCount > maxPreview) {
802
- lines.push(` ${theme.ui.muted(`... +${lineCount - maxPreview} more`)}`);
803
- }
804
- return lines.join('\n');
805
- }
806
- /**
807
- * Format KillShell result
808
- */
809
- function formatKillShellResult(args, _output, success) {
810
- const shellId = (args['shell_id']) || '';
811
- if (!success) {
812
- return `${theme.error('✗')} Failed to kill shell ${shellId}`;
813
- }
814
- return `${theme.success('✓')} Killed shell ${theme.info(shellId)}`;
815
- }
816
- /**
817
- * Format find_definition result
818
- */
819
- function formatFindDefinitionResult(args, output, success) {
820
- const symbol = (args['symbol'] || args['name']) || '';
821
- if (!success || !output.trim()) {
822
- return `${theme.warning('○')} Definition not found: ${symbol}`;
823
- }
824
- const locations = output.trim().split('\n').filter(l => l);
825
- return `${theme.success('✓')} Found ${theme.info(String(locations.length))} definition${locations.length === 1 ? '' : 's'} for "${symbol}"`;
826
- }
827
- /**
828
- * Format WebExtract result
829
- */
830
- function formatWebExtractResult(args, output, success) {
831
- const url = args['url'] || '';
832
- let hostname = url;
833
- try {
834
- hostname = new URL(url).hostname;
835
- }
836
- catch {
837
- // Keep original
838
- }
839
- if (!success) {
840
- return `${theme.error('✗')} Failed to extract from ${hostname}`;
841
- }
842
- const contentLength = output.length;
843
- return `${theme.success('✓')} Extracted from ${theme.info(hostname)} ${theme.ui.muted(`(${formatFileSize(contentLength)})`)}`;
844
- }
845
- /**
846
- * Format AskUserQuestion result
847
- */
848
- function formatAskUserResult(args, output, success) {
849
- const questions = args['questions'];
850
- const questionCount = questions?.length || 1;
851
- if (!success) {
852
- return `${theme.error('✗')} Failed to ask user`;
853
- }
854
- if (output.includes('answer') || output.includes('response')) {
855
- return `${theme.success('✓')} User responded`;
856
- }
857
- return `${theme.info('?')} Asked ${questionCount} question${questionCount === 1 ? '' : 's'}`;
858
- }
859
- /**
860
- * Format test run result
861
- */
862
- function formatTestResult(args, output, success, durationMs) {
863
- const testPattern = (args['pattern'] || args['filter']);
864
- const lines = [];
865
- const durationStr = durationMs ? ` ${theme.ui.muted(`(${formatDuration(durationMs)})`)}` : '';
866
- // Try to extract test counts from output
867
- const passMatch = output.match(/(\d+)\s*(?:passing|passed|✓)/i);
868
- const failMatch = output.match(/(\d+)\s*(?:failing|failed|✗)/i);
869
- const skipMatch = output.match(/(\d+)\s*(?:skipped|pending)/i);
870
- const passed = passMatch ? parseInt(passMatch[1] || '0', 10) : 0;
871
- const failed = failMatch ? parseInt(failMatch[1] || '0', 10) : 0;
872
- const skipped = skipMatch ? parseInt(skipMatch[1] || '0', 10) : 0;
873
- const statusIcon = success && failed === 0 ? theme.success('✓') : theme.error('✗');
874
- let summary = `${statusIcon} Tests`;
875
- if (testPattern) {
876
- summary += ` "${testPattern}"`;
877
- }
878
- summary += durationStr;
879
- lines.push(summary);
880
- // Show counts
881
- const counts = [];
882
- if (passed > 0)
883
- counts.push(theme.success(`${passed} passed`));
884
- if (failed > 0)
885
- counts.push(theme.error(`${failed} failed`));
886
- if (skipped > 0)
887
- counts.push(theme.warning(`${skipped} skipped`));
888
- if (counts.length > 0) {
889
- lines.push(` ${counts.join(', ')}`);
890
- }
891
- // Show first error if failed
892
- if (!success && failed > 0) {
893
- const errorMatch = output.match(/(?:Error|FAIL|✗).*?:(.*?)(?:\n|$)/i);
894
- if (errorMatch && errorMatch[1]) {
895
- const errorMsg = errorMatch[1].trim().slice(0, 60);
896
- lines.push(` ${theme.error(errorMsg)}`);
897
- }
898
- }
899
- return lines.join('\n');
900
- }
901
- /**
902
- * Format build result
903
- */
904
- function formatBuildResult(args, output, success, durationMs) {
905
- const target = (args['target'] || args['script']);
906
- const durationStr = durationMs ? ` ${theme.ui.muted(`(${formatDuration(durationMs)})`)}` : '';
907
- if (!success) {
908
- // Try to extract error count
909
- const errorMatches = output.match(/error/gi);
910
- const errorCount = errorMatches ? errorMatches.length : 0;
911
- if (errorCount > 0) {
912
- return `${theme.error('✗')} Build failed with ${errorCount} error${errorCount === 1 ? '' : 's'}${durationStr}`;
913
- }
914
- return `${theme.error('✗')} Build failed${durationStr}`;
915
- }
916
- const label = target ? `Build "${target}"` : 'Build';
917
- return `${theme.success('✓')} ${label} succeeded${durationStr}`;
918
- }
919
- /**
920
- * Format install dependencies result
921
- */
922
- function formatInstallResult(args, output, success, durationMs) {
923
- const packages = args['packages'];
924
- const durationStr = durationMs ? ` ${theme.ui.muted(`(${formatDuration(durationMs)})`)}` : '';
925
- if (!success) {
926
- return `${theme.error('✗')} Install failed${durationStr}`;
927
- }
928
- // Try to extract package count from output
929
- const addedMatch = output.match(/added\s+(\d+)\s+packages?/i);
930
- const packageCount = addedMatch ? addedMatch[1] : null;
931
- let summary = `${theme.success('✓')} Dependencies installed`;
932
- if (packageCount) {
933
- summary += ` ${theme.ui.muted(`(${packageCount} packages)`)}`;
934
- }
935
- else if (packages) {
936
- const pkgList = Array.isArray(packages) ? packages : [packages];
937
- summary += ` ${theme.ui.muted(`(${pkgList.length} packages)`)}`;
938
- }
939
- summary += durationStr;
940
- return summary;
941
- }
942
- /**
943
- * Format package info result
944
- */
945
- function formatPackageInfoResult(args, output, success) {
946
- const packageName = (args['package'] || args['name']) || '';
947
- if (!success) {
948
- return `${theme.error('✗')} Package info failed for ${packageName}`;
949
- }
950
- // Try to extract version
951
- const versionMatch = output.match(/version[:\s]+["']?([^"'\s\n]+)/i);
952
- const version = versionMatch ? versionMatch[1] : null;
953
- if (version) {
954
- return `${theme.success('✓')} ${theme.info(packageName)}@${version}`;
955
- }
956
- return `${theme.success('✓')} Package info: ${theme.info(packageName)}`;
957
- }
958
- /**
959
- * Format git operation result
960
- */
961
- function formatGitResult(toolName, args, output, success) {
962
- const action = toolName.replace('git_', '');
963
- if (!success) {
964
- return `${theme.error('✗')} Git ${action} failed`;
965
- }
966
- switch (toolName) {
967
- case 'git_release': {
968
- const version = (args['version'] || args['tag']);
969
- if (version) {
970
- return `${theme.success('✓')} Released ${theme.info(version)}`;
971
- }
972
- return `${theme.success('✓')} Release created`;
973
- }
974
- case 'git_sync': {
975
- // Try to extract ahead/behind from output
976
- const aheadMatch = output.match(/(\d+)\s+commit.*ahead/i);
977
- const behindMatch = output.match(/(\d+)\s+commit.*behind/i);
978
- const parts = [];
979
- if (aheadMatch)
980
- parts.push(`${aheadMatch[1]} ahead`);
981
- if (behindMatch)
982
- parts.push(`${behindMatch[1]} behind`);
983
- if (parts.length > 0) {
984
- return `${theme.success('✓')} Synced ${theme.ui.muted(`(${parts.join(', ')})`)}`;
985
- }
986
- return `${theme.success('✓')} Git synced`;
987
- }
988
- case 'git_cleanup': {
989
- const branchMatch = output.match(/deleted.*?(\d+)/i);
990
- if (branchMatch) {
991
- return `${theme.success('✓')} Cleaned up ${branchMatch[1]} branches`;
992
- }
993
- return `${theme.success('✓')} Git cleanup completed`;
994
- }
995
- default:
996
- return `${theme.success('✓')} Git ${action} completed`;
997
- }
998
- }
999
- /**
1000
- * Format docker result
1001
- */
1002
- function formatDockerResult(toolName, args, output, success, durationMs) {
1003
- const durationStr = durationMs ? ` ${theme.ui.muted(`(${formatDuration(durationMs)})`)}` : '';
1004
- if (!success) {
1005
- return `${theme.error('✗')} Docker ${toolName.replace('docker_', '')} failed${durationStr}`;
1006
- }
1007
- switch (toolName) {
1008
- case 'docker_build': {
1009
- const tag = (args['tag'] || args['image']);
1010
- // Try to extract image ID from output
1011
- const imageMatch = output.match(/(?:Successfully built|sha256:)\s*([a-f0-9]{12})/i);
1012
- if (tag) {
1013
- return `${theme.success('✓')} Built image ${theme.info(tag)}${durationStr}`;
1014
- }
1015
- if (imageMatch) {
1016
- return `${theme.success('✓')} Built image ${theme.info(imageMatch[1] || '')}${durationStr}`;
1017
- }
1018
- return `${theme.success('✓')} Docker build completed${durationStr}`;
1019
- }
1020
- case 'docker_compose': {
1021
- const action = (args['action'] || args['command']) || 'up';
1022
- return `${theme.success('✓')} Docker compose ${action}${durationStr}`;
1023
- }
1024
- default:
1025
- return `${theme.success('✓')} Docker operation completed${durationStr}`;
1026
- }
1027
- }
1028
- /**
1029
- * Format code analysis result
1030
- */
1031
- function formatCodeAnalysisResult(toolName, args, output, success) {
1032
- const filePath = (args['file_path'] || args['path'] || args['file']);
1033
- const displayPath = filePath ? truncatePathForDisplay(filePath, 40) : '';
1034
- if (!success) {
1035
- return `${theme.error('✗')} Analysis failed${displayPath ? ` for ${displayPath}` : ''}`;
1036
- }
1037
- const toolLabels = {
1038
- 'analyze_code_structure': 'Structure analyzed',
1039
- 'find_dependencies': 'Dependencies found',
1040
- 'check_code_complexity': 'Complexity checked',
1041
- 'advanced_ast_analysis': 'AST analyzed',
1042
- 'analyze_code_complexity': 'Complexity analyzed',
1043
- 'suggest_refactoring': 'Refactoring suggestions',
1044
- 'generate_code_quality_report': 'Quality report generated',
1045
- };
1046
- const label = toolLabels[toolName] || 'Analysis completed';
1047
- // Try to extract counts from output
1048
- const issueMatch = output.match(/(\d+)\s*(?:issue|warning|suggestion)/i);
1049
- if (issueMatch) {
1050
- return `${theme.success('✓')} ${label}: ${issueMatch[1]} items${displayPath ? ` in ${displayPath}` : ''}`;
1051
- }
1052
- return `${theme.success('✓')} ${label}${displayPath ? ` for ${displayPath}` : ''}`;
1053
- }
1054
- /**
1055
- * Format testing tool result
1056
- */
1057
- function formatTestingToolResult(toolName, args, output, success) {
1058
- const filePath = (args['file_path'] || args['path']);
1059
- const displayPath = filePath ? truncatePathForDisplay(filePath, 40) : '';
1060
- if (!success) {
1061
- return `${theme.error('✗')} ${toolName.replace(/_/g, ' ')} failed`;
1062
- }
1063
- switch (toolName) {
1064
- case 'generate_test_templates': {
1065
- const countMatch = output.match(/(\d+)\s*(?:test|template)/i);
1066
- if (countMatch) {
1067
- return `${theme.success('✓')} Generated ${countMatch[1]} test templates`;
1068
- }
1069
- return `${theme.success('✓')} Test templates generated`;
1070
- }
1071
- case 'run_coverage_analysis':
1072
- case 'summarize_coverage_report': {
1073
- const coverageMatch = output.match(/(\d+(?:\.\d+)?)\s*%/);
1074
- if (coverageMatch) {
1075
- const pct = parseFloat(coverageMatch[1] || '0');
1076
- const color = pct >= 80 ? theme.success : pct >= 60 ? theme.warning : theme.error;
1077
- return `${theme.success('✓')} Coverage: ${color(`${pct}%`)}${displayPath ? ` for ${displayPath}` : ''}`;
1078
- }
1079
- return `${theme.success('✓')} Coverage analyzed${displayPath ? ` for ${displayPath}` : ''}`;
1080
- }
1081
- case 'analyze_test_coverage': {
1082
- const coverageMatch = output.match(/(\d+(?:\.\d+)?)\s*%/);
1083
- if (coverageMatch) {
1084
- return `${theme.success('✓')} Test coverage: ${coverageMatch[1]}%`;
1085
- }
1086
- return `${theme.success('✓')} Test coverage analyzed`;
1087
- }
1088
- case 'generate_comprehensive_tests': {
1089
- return `${theme.success('✓')} Comprehensive tests generated${displayPath ? ` for ${displayPath}` : ''}`;
1090
- }
1091
- default:
1092
- return `${theme.success('✓')} Testing tool completed`;
1093
- }
1094
- }
1095
- /**
1096
- * Format lint result
1097
- */
1098
- function formatLintResult(toolName, args, output, success) {
1099
- const filePath = (args['file_path'] || args['path']);
1100
- const displayPath = filePath ? truncatePathForDisplay(filePath, 40) : '';
1101
- // Try to extract error/warning counts
1102
- const errorMatch = output.match(/(\d+)\s*error/i);
1103
- const warnMatch = output.match(/(\d+)\s*warning/i);
1104
- const errors = errorMatch ? parseInt(errorMatch[1] || '0', 10) : 0;
1105
- const warnings = warnMatch ? parseInt(warnMatch[1] || '0', 10) : 0;
1106
- const statusIcon = errors === 0 ? theme.success('✓') : theme.error('✗');
1107
- switch (toolName) {
1108
- case 'run_lint_checks': {
1109
- let summary = `${statusIcon} Lint`;
1110
- if (displayPath)
1111
- summary += ` ${displayPath}`;
1112
- const counts = [];
1113
- if (errors > 0)
1114
- counts.push(theme.error(`${errors} errors`));
1115
- if (warnings > 0)
1116
- counts.push(theme.warning(`${warnings} warnings`));
1117
- if (counts.length > 0) {
1118
- summary += `: ${counts.join(', ')}`;
1119
- }
1120
- else if (success) {
1121
- summary += ': clean';
1122
- }
1123
- return summary;
1124
- }
1125
- case 'inspect_code_quality': {
1126
- return `${statusIcon} Code quality inspected${displayPath ? ` for ${displayPath}` : ''}`;
1127
- }
1128
- case 'list_lint_rules': {
1129
- const ruleMatch = output.match(/(\d+)\s*rule/i);
1130
- if (ruleMatch) {
1131
- return `${theme.success('✓')} Found ${ruleMatch[1]} lint rules`;
1132
- }
1133
- return `${theme.success('✓')} Lint rules listed`;
1134
- }
1135
- default:
1136
- return `${statusIcon} Lint completed`;
1137
- }
1138
- }
1139
- /**
1140
- * Format cloud deployment result
1141
- */
1142
- function formatCloudResult(toolName, args, output, success) {
1143
- const provider = (args['provider'] || args['platform']);
1144
- if (!success) {
1145
- return `${theme.error('✗')} ${toolName.replace(/_/g, ' ')} failed`;
1146
- }
1147
- switch (toolName) {
1148
- case 'cloud_status': {
1149
- return `${theme.success('✓')} Cloud status checked${provider ? ` (${provider})` : ''}`;
1150
- }
1151
- case 'cloud_deploy':
1152
- case 'firebase_deploy':
1153
- case 'aliyun_deploy': {
1154
- // Try to extract URL from output
1155
- const urlMatch = output.match(/https?:\/\/[^\s]+/);
1156
- if (urlMatch) {
1157
- return `${theme.success('✓')} Deployed to ${theme.info(urlMatch[0])}`;
1158
- }
1159
- return `${theme.success('✓')} Deployment successful${provider ? ` (${provider})` : ''}`;
1160
- }
1161
- case 'cloud_init': {
1162
- return `${theme.success('✓')} Cloud project initialized${provider ? ` (${provider})` : ''}`;
1163
- }
1164
- case 'cloud_login': {
1165
- return `${theme.success('✓')} Logged in${provider ? ` to ${provider}` : ''}`;
1166
- }
1167
- default:
1168
- return `${theme.success('✓')} Cloud operation completed`;
1169
- }
1170
- }
1171
- /**
1172
- * Format browser automation result
1173
- */
1174
- function formatBrowserResult(toolName, args, output, success) {
1175
- if (!success) {
1176
- return `${theme.error('✗')} Browser ${toolName.replace('browser_', '')} failed`;
1177
- }
1178
- switch (toolName) {
1179
- case 'browser_create_session': {
1180
- const sessionMatch = output.match(/session[:\s]+["']?([^"'\s\n]+)/i);
1181
- if (sessionMatch) {
1182
- return `${theme.success('✓')} Browser session created: ${theme.info(sessionMatch[1] || '')}`;
1183
- }
1184
- return `${theme.success('✓')} Browser session created`;
1185
- }
1186
- case 'browser_navigate': {
1187
- const url = (args['url']);
1188
- if (url) {
1189
- try {
1190
- const hostname = new URL(url).hostname;
1191
- return `${theme.success('✓')} Navigated to ${theme.info(hostname)}`;
1192
- }
1193
- catch {
1194
- return `${theme.success('✓')} Navigated to page`;
1195
- }
1196
- }
1197
- return `${theme.success('✓')} Navigated`;
1198
- }
1199
- case 'browser_click': {
1200
- const selector = (args['selector']);
1201
- return `${theme.success('✓')} Clicked ${selector ? theme.dim(selector) : 'element'}`;
1202
- }
1203
- case 'browser_type': {
1204
- const selector = (args['selector']);
1205
- return `${theme.success('✓')} Typed text ${selector ? `in ${theme.dim(selector)}` : ''}`;
1206
- }
1207
- case 'browser_screenshot': {
1208
- const path = (args['path'] || args['file_path']);
1209
- if (path) {
1210
- return `${theme.success('✓')} Screenshot saved: ${truncatePathForDisplay(path, 40)}`;
1211
- }
1212
- return `${theme.success('✓')} Screenshot captured`;
1213
- }
1214
- case 'browser_close_session': {
1215
- return `${theme.success('✓')} Browser session closed`;
1216
- }
1217
- default:
1218
- return `${theme.success('✓')} Browser action completed`;
1219
- }
1220
- }
1221
- /**
1222
- * Format email result
1223
- */
1224
- function formatEmailResult(toolName, args, _output, success) {
1225
- if (!success) {
1226
- return `${theme.error('✗')} ${toolName.replace(/_/g, ' ')} failed`;
1227
- }
1228
- switch (toolName) {
1229
- case 'send_email': {
1230
- const to = (args['to']);
1231
- const recipients = Array.isArray(to) ? to.length : (to ? 1 : 0);
1232
- return `${theme.success('✓')} Email sent${recipients ? ` to ${recipients} recipient${recipients === 1 ? '' : 's'}` : ''}`;
1233
- }
1234
- case 'send_batch_emails': {
1235
- const emails = (args['emails']);
1236
- const count = emails?.length || 0;
1237
- return `${theme.success('✓')} Sent ${count} email${count === 1 ? '' : 's'}`;
1238
- }
1239
- case 'verify_email_config': {
1240
- return `${theme.success('✓')} Email config verified`;
1241
- }
1242
- default:
1243
- return `${theme.success('✓')} Email operation completed`;
1244
- }
1245
- }
1246
- /**
1247
- * Format skill result
1248
- */
1249
- function formatSkillResult(toolName, args, output, success) {
1250
- if (!success) {
1251
- return `${theme.error('✗')} Skill operation failed`;
1252
- }
1253
- switch (toolName) {
1254
- case 'ListSkills': {
1255
- const skillMatch = output.match(/(\d+)\s*skill/i);
1256
- if (skillMatch) {
1257
- return `${theme.success('✓')} Found ${skillMatch[1]} skills`;
1258
- }
1259
- return `${theme.success('✓')} Skills listed`;
1260
- }
1261
- case 'Skill': {
1262
- const skillName = (args['skill'] || args['name']);
1263
- if (skillName) {
1264
- return `${theme.success('✓')} Skill "${skillName}" executed`;
1265
- }
1266
- return `${theme.success('✓')} Skill executed`;
1267
- }
1268
- default:
1269
- return `${theme.success('✓')} Skill completed`;
1270
- }
1271
- }
1272
- function formatPlanUpdateResult(args, _output, success) {
1273
- if (!success) {
1274
- return `${theme.error('✗')} Plan update failed`;
1275
- }
1276
- const plan = normalizePlanItems(args['plan']);
1277
- const explanation = typeof args['explanation'] === 'string' ? args['explanation'].trim() : '';
1278
- const width = resolvePlanWidth();
1279
- const body = formatPlan(plan, { width, heading: 'Updated Plan' });
1280
- if (!explanation) {
1281
- return body;
1282
- }
1283
- const wrappedNote = wrapPlanText(explanation, ' ', width);
1284
- return `${body}\n${wrappedNote.join('\n')}`;
1285
- }
1286
- /**
1287
- * Format plan mode result
1288
- */
1289
- function formatPlanModeResult(_args, _output, success) {
1290
- if (!success) {
1291
- return `${theme.error('✗')} Failed to exit plan mode`;
1292
- }
1293
- return `${theme.success('✓')} Exited plan mode`;
1294
- }
1295
- /**
1296
- * Format repo checks result
1297
- */
1298
- function formatRepoChecksResult(args, output, success) {
1299
- const checks = (args['checks']);
1300
- const checkCount = checks?.length || 0;
1301
- // Try to extract pass/fail counts
1302
- const passMatch = output.match(/(\d+)\s*pass/i);
1303
- const failMatch = output.match(/(\d+)\s*fail/i);
1304
- const passed = passMatch ? parseInt(passMatch[1] || '0', 10) : 0;
1305
- const failed = failMatch ? parseInt(failMatch[1] || '0', 10) : 0;
1306
- const statusIcon = success && failed === 0 ? theme.success('✓') : theme.error('✗');
1307
- if (passed > 0 || failed > 0) {
1308
- const counts = [];
1309
- if (passed > 0)
1310
- counts.push(theme.success(`${passed} passed`));
1311
- if (failed > 0)
1312
- counts.push(theme.error(`${failed} failed`));
1313
- return `${statusIcon} Repo checks: ${counts.join(', ')}`;
1314
- }
1315
- return `${statusIcon} Repo checks${checkCount > 0 ? ` (${checkCount} checks)` : ''} ${success ? 'passed' : 'failed'}`;
1316
- }
1317
- /**
1318
- * Format learn tool result
1319
- */
1320
- function formatLearnResult(toolName, args, output, success) {
1321
- if (!success) {
1322
- return `${theme.error('✗')} Learning failed`;
1323
- }
1324
- switch (toolName) {
1325
- case 'learn_codebase': {
1326
- const fileMatch = output.match(/(\d+)\s*file/i);
1327
- if (fileMatch) {
1328
- return `${theme.success('✓')} Learned codebase: ${fileMatch[1]} files analyzed`;
1329
- }
1330
- return `${theme.success('✓')} Codebase learned`;
1331
- }
1332
- case 'learn_file': {
1333
- const filePath = (args['file_path'] || args['path']);
1334
- if (filePath) {
1335
- return `${theme.success('✓')} Learned: ${truncatePathForDisplay(filePath, 40)}`;
1336
- }
1337
- return `${theme.success('✓')} File learned`;
1338
- }
1339
- case 'learn_topic': {
1340
- const topic = (args['topic']);
1341
- if (topic) {
1342
- return `${theme.success('✓')} Learned topic: ${topic}`;
1343
- }
1344
- return `${theme.success('✓')} Topic learned`;
1345
- }
1346
- case 'learn_summary': {
1347
- return `${theme.success('✓')} Summary generated`;
1348
- }
1349
- case 'explore': {
1350
- const query = (args['query']);
1351
- const filesMatch = output.match(/Found\s+(\d+)\s+(?:file|relevant)/i);
1352
- const symbolsMatch = output.match(/Found\s+(\d+)\s+symbol/i);
1353
- const filesCount = filesMatch ? filesMatch[1] : null;
1354
- const symbolsCount = symbolsMatch ? symbolsMatch[1] : null;
1355
- if (filesCount || symbolsCount) {
1356
- const parts = [];
1357
- if (filesCount)
1358
- parts.push(`${filesCount} files`);
1359
- if (symbolsCount)
1360
- parts.push(`${symbolsCount} symbols`);
1361
- return `${theme.success('✓')} Explored: ${parts.join(', ')}`;
1362
- }
1363
- if (query) {
1364
- return `${theme.success('✓')} Explored: "${query.slice(0, 30)}${query.length > 30 ? '...' : ''}"`;
1365
- }
1366
- return `${theme.success('✓')} Exploration complete`;
1367
- }
1368
- case 'explore_index': {
1369
- const action = (args['action']);
1370
- const indexMatch = output.match(/(\d+)\s*files/i);
1371
- if (action === 'rebuild' && indexMatch) {
1372
- return `${theme.success('✓')} Index rebuilt: ${indexMatch[1]} files`;
1373
- }
1374
- if (action === 'status' && indexMatch) {
1375
- return `${theme.info('ℹ')} Index: ${indexMatch[1]} files`;
1376
- }
1377
- return `${theme.success('✓')} Index ${action || 'managed'}`;
1378
- }
1379
- default:
1380
- return `${theme.success('✓')} Learning completed`;
1381
- }
1382
- }
1383
- // ============================================================================
1384
- // ADVANCED PROGRESS INDICATORS
1385
- // ============================================================================
1386
- /**
1387
- * Format a compact progress bar
1388
- */
1389
- export function formatCompactProgressBar(current, total, options = {}) {
1390
- const { width = 15, style = 'bar' } = options;
1391
- const percentage = Math.min(100, Math.max(0, Math.round((current / total) * 100)));
1392
- const filled = Math.round((current / total) * width);
1393
- const empty = width - filled;
1394
- let bar;
1395
- switch (style) {
1396
- case 'braille': {
1397
- // Smooth braille progress (8 states per character)
1398
- const fullBlocks = Math.floor((current / total) * width);
1399
- const remainder = ((current / total) * width) - fullBlocks;
1400
- const partials = [' ', '⡀', '⡄', '⡆', '⡇', '⣇', '⣧', '⣷', '⣿'];
1401
- const partialIndex = Math.floor(remainder * 8);
1402
- bar = '⣿'.repeat(fullBlocks);
1403
- if (fullBlocks < width) {
1404
- bar += partials[partialIndex] ?? ' ';
1405
- bar += ' '.repeat(width - fullBlocks - 1);
1406
- }
1407
- bar = theme.progress?.bar?.(bar) ?? theme.info(bar);
1408
- break;
1409
- }
1410
- case 'dots':
1411
- bar = theme.success('●').repeat(filled) + theme.ui.muted('○').repeat(empty);
1412
- break;
1413
- case 'bar':
1414
- default:
1415
- bar = (theme.progress?.bar ?? theme.info)(progressChars.filled.repeat(filled)) +
1416
- (theme.progress?.empty ?? theme.ui.muted)(progressChars.empty.repeat(empty));
1417
- }
1418
- return `[${bar}] ${(theme.progress?.percentage ?? theme.warning)(`${percentage}%`)}`;
1419
- }
1420
- /**
1421
- * Format a micro progress indicator (fits in status line)
1422
- */
1423
- export function formatMicroProgress(current, total) {
1424
- const percentage = Math.min(100, Math.max(0, Math.round((current / total) * 100)));
1425
- // Use single-char block progress
1426
- const blocks = ['░', '▒', '▓', '█'];
1427
- const blockIndex = Math.min(3, Math.floor(percentage / 25));
1428
- const block = blocks[blockIndex] ?? '░';
1429
- return `${theme.info(block)}${percentage}%`;
1430
- }
1431
- /**
1432
- * Format a spinner with elapsed time
1433
- */
1434
- export function formatSpinnerWithTime(frame, label, elapsedMs) {
1435
- const elapsed = formatDuration(elapsedMs);
1436
- return `${theme.info(frame)} ${label} ${theme.ui.muted(`(${elapsed})`)}`;
1437
- }
1438
- /**
1439
- * Format multiple tool operations on a single line
1440
- */
1441
- export function formatCompactToolLine(operations, options = {}) {
1442
- const { separator = ' · ', maxWidth = 80 } = options;
1443
- const badges = [];
1444
- let currentLength = 0;
1445
- for (const op of operations) {
1446
- const icon = op.status === 'success' ? icons.success :
1447
- op.status === 'error' ? icons.error : icons.running;
1448
- const color = op.status === 'success' ? theme.success :
1449
- op.status === 'error' ? theme.error : theme.info;
1450
- let badge = `${color(icon)} ${theme.tool(op.name)}`;
1451
- if (op.summary) {
1452
- badge += ` ${theme.ui.muted(op.summary)}`;
1453
- }
1454
- const badgeLength = badge.replace(/\u001B\[[0-9;]*m/g, '').length;
1455
- const sepLength = badges.length > 0 ? separator.replace(/\u001B\[[0-9;]*m/g, '').length : 0;
1456
- if (currentLength + sepLength + badgeLength > maxWidth - 5) {
1457
- const remaining = operations.length - badges.length;
1458
- if (remaining > 0) {
1459
- badges.push(theme.ui.muted(`+${remaining} more`));
1460
- }
1461
- break;
1462
- }
1463
- badges.push(badge);
1464
- currentLength += sepLength + badgeLength;
1465
- }
1466
- return badges.join(theme.ui.muted(separator));
1467
- }
1468
- /**
1469
- * Format a file operation summary with additions/removals
1470
- */
1471
- export function formatFileOpSummary(path, type, stats) {
1472
- const shortPath = truncatePathForDisplay(path, 40);
1473
- const icon = type === 'read' ? icons.success :
1474
- type === 'edit' ? icons.success : icons.success;
1475
- const color = theme.success;
1476
- const parts = [
1477
- `${color(icon)} ${theme.file?.path?.(shortPath) ?? theme.info(shortPath)}`,
1478
- ];
1479
- if (stats) {
1480
- const details = [];
1481
- if (stats.lines !== undefined) {
1482
- details.push(`${stats.lines} lines`);
1483
- }
1484
- if (stats.additions !== undefined && stats.additions > 0) {
1485
- details.push((theme.file?.additions ?? theme.success)(`+${stats.additions}`));
1486
- }
1487
- if (stats.removals !== undefined && stats.removals > 0) {
1488
- details.push((theme.file?.removals ?? theme.error)(`-${stats.removals}`));
1489
- }
1490
- if (details.length > 0) {
1491
- parts.push(theme.ui.muted(`(${details.join(', ')})`));
1492
- }
1493
- }
1494
- return parts.join(' ');
1495
- }
1496
- /**
1497
- * Format a search result summary
1498
- */
1499
- export function formatSearchOpSummary(pattern, matchCount, fileCount, durationMs) {
1500
- const truncPattern = pattern.length > 25 ? `${pattern.slice(0, 22)}...` : pattern;
1501
- if (matchCount === 0) {
1502
- return `${theme.warning(icons.pending)} No matches for "${truncPattern}"`;
1503
- }
1504
- const parts = [
1505
- `${theme.success(icons.success)} Found`,
1506
- theme.info(`${matchCount}`),
1507
- matchCount === 1 ? 'match' : 'matches',
1508
- ];
1509
- if (fileCount && fileCount > 0) {
1510
- parts.push('in', theme.info(`${fileCount}`), fileCount === 1 ? 'file' : 'files');
1511
- }
1512
- parts.push(theme.ui.muted(`for "${truncPattern}"`));
1513
- if (durationMs) {
1514
- parts.push(theme.ui.muted(`(${formatDuration(durationMs)})`));
1515
- }
1516
- return parts.join(' ');
1517
- }
1518
- /**
1519
- * Format a context usage badge
1520
- */
1521
- export function formatContextBadge(usedPercentage) {
1522
- const remaining = 100 - usedPercentage;
1523
- const color = usedPercentage > 80 ? theme.error :
1524
- usedPercentage > 60 ? theme.warning : theme.success;
1525
- return `${color(icons.context)}${remaining}%`;
1526
- }
1527
- //# sourceMappingURL=toolDisplay.js.map