erosolar-cli 1.7.194 → 1.7.195

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 (1089) hide show
  1. package/package.json +1 -1
  2. package/dist/StringUtils.d.ts +0 -8
  3. package/dist/StringUtils.d.ts.map +0 -1
  4. package/dist/StringUtils.js +0 -11
  5. package/dist/StringUtils.js.map +0 -1
  6. package/dist/adapters/browser/index.d.ts +0 -12
  7. package/dist/adapters/browser/index.d.ts.map +0 -1
  8. package/dist/adapters/browser/index.js +0 -11
  9. package/dist/adapters/browser/index.js.map +0 -1
  10. package/dist/adapters/node/index.d.ts +0 -17
  11. package/dist/adapters/node/index.d.ts.map +0 -1
  12. package/dist/adapters/node/index.js +0 -35
  13. package/dist/adapters/node/index.js.map +0 -1
  14. package/dist/adapters/remote/index.d.ts +0 -13
  15. package/dist/adapters/remote/index.d.ts.map +0 -1
  16. package/dist/adapters/remote/index.js +0 -20
  17. package/dist/adapters/remote/index.js.map +0 -1
  18. package/dist/adapters/types.d.ts +0 -14
  19. package/dist/adapters/types.d.ts.map +0 -1
  20. package/dist/adapters/types.js +0 -2
  21. package/dist/adapters/types.js.map +0 -1
  22. package/dist/alpha-zero/agentWrapper.d.ts +0 -84
  23. package/dist/alpha-zero/agentWrapper.d.ts.map +0 -1
  24. package/dist/alpha-zero/agentWrapper.js +0 -171
  25. package/dist/alpha-zero/agentWrapper.js.map +0 -1
  26. package/dist/alpha-zero/codeEvaluator.d.ts +0 -25
  27. package/dist/alpha-zero/codeEvaluator.d.ts.map +0 -1
  28. package/dist/alpha-zero/codeEvaluator.js +0 -273
  29. package/dist/alpha-zero/codeEvaluator.js.map +0 -1
  30. package/dist/alpha-zero/competitiveRunner.d.ts +0 -66
  31. package/dist/alpha-zero/competitiveRunner.d.ts.map +0 -1
  32. package/dist/alpha-zero/competitiveRunner.js +0 -224
  33. package/dist/alpha-zero/competitiveRunner.js.map +0 -1
  34. package/dist/alpha-zero/index.d.ts +0 -67
  35. package/dist/alpha-zero/index.d.ts.map +0 -1
  36. package/dist/alpha-zero/index.js +0 -99
  37. package/dist/alpha-zero/index.js.map +0 -1
  38. package/dist/alpha-zero/introspection.d.ts +0 -128
  39. package/dist/alpha-zero/introspection.d.ts.map +0 -1
  40. package/dist/alpha-zero/introspection.js +0 -300
  41. package/dist/alpha-zero/introspection.js.map +0 -1
  42. package/dist/alpha-zero/metricsTracker.d.ts +0 -71
  43. package/dist/alpha-zero/metricsTracker.d.ts.map +0 -1
  44. package/dist/alpha-zero/metricsTracker.js +0 -209
  45. package/dist/alpha-zero/metricsTracker.js.map +0 -1
  46. package/dist/alpha-zero/security/core.d.ts +0 -125
  47. package/dist/alpha-zero/security/core.d.ts.map +0 -1
  48. package/dist/alpha-zero/security/core.js +0 -271
  49. package/dist/alpha-zero/security/core.js.map +0 -1
  50. package/dist/alpha-zero/security/google.d.ts +0 -125
  51. package/dist/alpha-zero/security/google.d.ts.map +0 -1
  52. package/dist/alpha-zero/security/google.js +0 -311
  53. package/dist/alpha-zero/security/google.js.map +0 -1
  54. package/dist/alpha-zero/security/googleLoader.d.ts +0 -17
  55. package/dist/alpha-zero/security/googleLoader.d.ts.map +0 -1
  56. package/dist/alpha-zero/security/googleLoader.js +0 -41
  57. package/dist/alpha-zero/security/googleLoader.js.map +0 -1
  58. package/dist/alpha-zero/security/index.d.ts +0 -29
  59. package/dist/alpha-zero/security/index.d.ts.map +0 -1
  60. package/dist/alpha-zero/security/index.js +0 -32
  61. package/dist/alpha-zero/security/index.js.map +0 -1
  62. package/dist/alpha-zero/security/simulation.d.ts +0 -124
  63. package/dist/alpha-zero/security/simulation.d.ts.map +0 -1
  64. package/dist/alpha-zero/security/simulation.js +0 -277
  65. package/dist/alpha-zero/security/simulation.js.map +0 -1
  66. package/dist/alpha-zero/selfModification.d.ts +0 -109
  67. package/dist/alpha-zero/selfModification.d.ts.map +0 -1
  68. package/dist/alpha-zero/selfModification.js +0 -233
  69. package/dist/alpha-zero/selfModification.js.map +0 -1
  70. package/dist/alpha-zero/types.d.ts +0 -170
  71. package/dist/alpha-zero/types.d.ts.map +0 -1
  72. package/dist/alpha-zero/types.js +0 -31
  73. package/dist/alpha-zero/types.js.map +0 -1
  74. package/dist/bin/erosolar.d.ts +0 -9
  75. package/dist/bin/erosolar.d.ts.map +0 -1
  76. package/dist/bin/erosolar.js +0 -88
  77. package/dist/bin/erosolar.js.map +0 -1
  78. package/dist/bin/selfTest.d.ts +0 -14
  79. package/dist/bin/selfTest.d.ts.map +0 -1
  80. package/dist/bin/selfTest.js +0 -304
  81. package/dist/bin/selfTest.js.map +0 -1
  82. package/dist/browser/BrowserSessionManager.d.ts +0 -307
  83. package/dist/browser/BrowserSessionManager.d.ts.map +0 -1
  84. package/dist/browser/BrowserSessionManager.js +0 -713
  85. package/dist/browser/BrowserSessionManager.js.map +0 -1
  86. package/dist/capabilities/advancedTestGenerationCapability.d.ts +0 -17
  87. package/dist/capabilities/advancedTestGenerationCapability.d.ts.map +0 -1
  88. package/dist/capabilities/advancedTestGenerationCapability.js +0 -28
  89. package/dist/capabilities/advancedTestGenerationCapability.js.map +0 -1
  90. package/dist/capabilities/agentSpawningCapability.d.ts +0 -6
  91. package/dist/capabilities/agentSpawningCapability.d.ts.map +0 -1
  92. package/dist/capabilities/agentSpawningCapability.js +0 -115
  93. package/dist/capabilities/agentSpawningCapability.js.map +0 -1
  94. package/dist/capabilities/askUserCapability.d.ts +0 -21
  95. package/dist/capabilities/askUserCapability.d.ts.map +0 -1
  96. package/dist/capabilities/askUserCapability.js +0 -155
  97. package/dist/capabilities/askUserCapability.js.map +0 -1
  98. package/dist/capabilities/bashCapability.d.ts +0 -13
  99. package/dist/capabilities/bashCapability.d.ts.map +0 -1
  100. package/dist/capabilities/bashCapability.js +0 -24
  101. package/dist/capabilities/bashCapability.js.map +0 -1
  102. package/dist/capabilities/browserAutomationCapability.d.ts +0 -37
  103. package/dist/capabilities/browserAutomationCapability.d.ts.map +0 -1
  104. package/dist/capabilities/browserAutomationCapability.js +0 -49
  105. package/dist/capabilities/browserAutomationCapability.js.map +0 -1
  106. package/dist/capabilities/cloudCapability.d.ts +0 -13
  107. package/dist/capabilities/cloudCapability.d.ts.map +0 -1
  108. package/dist/capabilities/cloudCapability.js +0 -38
  109. package/dist/capabilities/cloudCapability.js.map +0 -1
  110. package/dist/capabilities/codeAnalysisCapability.d.ts +0 -13
  111. package/dist/capabilities/codeAnalysisCapability.d.ts.map +0 -1
  112. package/dist/capabilities/codeAnalysisCapability.js +0 -24
  113. package/dist/capabilities/codeAnalysisCapability.js.map +0 -1
  114. package/dist/capabilities/codeGenerationCapability.d.ts +0 -13
  115. package/dist/capabilities/codeGenerationCapability.d.ts.map +0 -1
  116. package/dist/capabilities/codeGenerationCapability.js +0 -25
  117. package/dist/capabilities/codeGenerationCapability.js.map +0 -1
  118. package/dist/capabilities/codeQualityCapability.d.ts +0 -13
  119. package/dist/capabilities/codeQualityCapability.d.ts.map +0 -1
  120. package/dist/capabilities/codeQualityCapability.js +0 -25
  121. package/dist/capabilities/codeQualityCapability.js.map +0 -1
  122. package/dist/capabilities/dependencySecurityCapability.d.ts +0 -13
  123. package/dist/capabilities/dependencySecurityCapability.d.ts.map +0 -1
  124. package/dist/capabilities/dependencySecurityCapability.js +0 -24
  125. package/dist/capabilities/dependencySecurityCapability.js.map +0 -1
  126. package/dist/capabilities/devCapability.d.ts +0 -13
  127. package/dist/capabilities/devCapability.d.ts.map +0 -1
  128. package/dist/capabilities/devCapability.js +0 -24
  129. package/dist/capabilities/devCapability.js.map +0 -1
  130. package/dist/capabilities/editCapability.d.ts +0 -17
  131. package/dist/capabilities/editCapability.d.ts.map +0 -1
  132. package/dist/capabilities/editCapability.js +0 -27
  133. package/dist/capabilities/editCapability.js.map +0 -1
  134. package/dist/capabilities/emailCapability.d.ts +0 -12
  135. package/dist/capabilities/emailCapability.d.ts.map +0 -1
  136. package/dist/capabilities/emailCapability.js +0 -22
  137. package/dist/capabilities/emailCapability.js.map +0 -1
  138. package/dist/capabilities/enhancedCodeIntelligenceCapability.d.ts +0 -17
  139. package/dist/capabilities/enhancedCodeIntelligenceCapability.d.ts.map +0 -1
  140. package/dist/capabilities/enhancedCodeIntelligenceCapability.js +0 -28
  141. package/dist/capabilities/enhancedCodeIntelligenceCapability.js.map +0 -1
  142. package/dist/capabilities/enhancedDevWorkflowCapability.d.ts +0 -17
  143. package/dist/capabilities/enhancedDevWorkflowCapability.d.ts.map +0 -1
  144. package/dist/capabilities/enhancedDevWorkflowCapability.js +0 -28
  145. package/dist/capabilities/enhancedDevWorkflowCapability.js.map +0 -1
  146. package/dist/capabilities/enhancedGitCapability.d.ts +0 -7
  147. package/dist/capabilities/enhancedGitCapability.d.ts.map +0 -1
  148. package/dist/capabilities/enhancedGitCapability.js +0 -220
  149. package/dist/capabilities/enhancedGitCapability.js.map +0 -1
  150. package/dist/capabilities/filesystemCapability.d.ts +0 -13
  151. package/dist/capabilities/filesystemCapability.d.ts.map +0 -1
  152. package/dist/capabilities/filesystemCapability.js +0 -24
  153. package/dist/capabilities/filesystemCapability.js.map +0 -1
  154. package/dist/capabilities/frontendTestingCapability.d.ts +0 -13
  155. package/dist/capabilities/frontendTestingCapability.d.ts.map +0 -1
  156. package/dist/capabilities/frontendTestingCapability.js +0 -28
  157. package/dist/capabilities/frontendTestingCapability.js.map +0 -1
  158. package/dist/capabilities/globCapability.d.ts +0 -17
  159. package/dist/capabilities/globCapability.d.ts.map +0 -1
  160. package/dist/capabilities/globCapability.js +0 -27
  161. package/dist/capabilities/globCapability.js.map +0 -1
  162. package/dist/capabilities/index.d.ts +0 -25
  163. package/dist/capabilities/index.d.ts.map +0 -1
  164. package/dist/capabilities/index.js +0 -25
  165. package/dist/capabilities/index.js.map +0 -1
  166. package/dist/capabilities/interactionCapability.d.ts +0 -12
  167. package/dist/capabilities/interactionCapability.d.ts.map +0 -1
  168. package/dist/capabilities/interactionCapability.js +0 -22
  169. package/dist/capabilities/interactionCapability.js.map +0 -1
  170. package/dist/capabilities/learnCapability.d.ts +0 -13
  171. package/dist/capabilities/learnCapability.d.ts.map +0 -1
  172. package/dist/capabilities/learnCapability.js +0 -24
  173. package/dist/capabilities/learnCapability.js.map +0 -1
  174. package/dist/capabilities/mcpCapability.d.ts +0 -6
  175. package/dist/capabilities/mcpCapability.d.ts.map +0 -1
  176. package/dist/capabilities/mcpCapability.js +0 -19
  177. package/dist/capabilities/mcpCapability.js.map +0 -1
  178. package/dist/capabilities/notebookCapability.d.ts +0 -17
  179. package/dist/capabilities/notebookCapability.d.ts.map +0 -1
  180. package/dist/capabilities/notebookCapability.js +0 -27
  181. package/dist/capabilities/notebookCapability.js.map +0 -1
  182. package/dist/capabilities/performanceMonitoringCapability.d.ts +0 -108
  183. package/dist/capabilities/performanceMonitoringCapability.d.ts.map +0 -1
  184. package/dist/capabilities/performanceMonitoringCapability.js +0 -176
  185. package/dist/capabilities/performanceMonitoringCapability.js.map +0 -1
  186. package/dist/capabilities/planningCapability.d.ts +0 -16
  187. package/dist/capabilities/planningCapability.d.ts.map +0 -1
  188. package/dist/capabilities/planningCapability.js +0 -26
  189. package/dist/capabilities/planningCapability.js.map +0 -1
  190. package/dist/capabilities/refactoringCapability.d.ts +0 -13
  191. package/dist/capabilities/refactoringCapability.d.ts.map +0 -1
  192. package/dist/capabilities/refactoringCapability.js +0 -25
  193. package/dist/capabilities/refactoringCapability.js.map +0 -1
  194. package/dist/capabilities/repoChecksCapability.d.ts +0 -10
  195. package/dist/capabilities/repoChecksCapability.d.ts.map +0 -1
  196. package/dist/capabilities/repoChecksCapability.js +0 -24
  197. package/dist/capabilities/repoChecksCapability.js.map +0 -1
  198. package/dist/capabilities/searchCapability.d.ts +0 -13
  199. package/dist/capabilities/searchCapability.d.ts.map +0 -1
  200. package/dist/capabilities/searchCapability.js +0 -24
  201. package/dist/capabilities/searchCapability.js.map +0 -1
  202. package/dist/capabilities/skillCapability.d.ts +0 -3
  203. package/dist/capabilities/skillCapability.d.ts.map +0 -1
  204. package/dist/capabilities/skillCapability.js +0 -77
  205. package/dist/capabilities/skillCapability.js.map +0 -1
  206. package/dist/capabilities/taskManagementCapability.d.ts +0 -12
  207. package/dist/capabilities/taskManagementCapability.d.ts.map +0 -1
  208. package/dist/capabilities/taskManagementCapability.js +0 -22
  209. package/dist/capabilities/taskManagementCapability.js.map +0 -1
  210. package/dist/capabilities/testingCapability.d.ts +0 -13
  211. package/dist/capabilities/testingCapability.d.ts.map +0 -1
  212. package/dist/capabilities/testingCapability.js +0 -25
  213. package/dist/capabilities/testingCapability.js.map +0 -1
  214. package/dist/capabilities/todoCapability.d.ts +0 -19
  215. package/dist/capabilities/todoCapability.d.ts.map +0 -1
  216. package/dist/capabilities/todoCapability.js +0 -169
  217. package/dist/capabilities/todoCapability.js.map +0 -1
  218. package/dist/capabilities/toolManifest.d.ts +0 -3
  219. package/dist/capabilities/toolManifest.d.ts.map +0 -1
  220. package/dist/capabilities/toolManifest.js +0 -160
  221. package/dist/capabilities/toolManifest.js.map +0 -1
  222. package/dist/capabilities/toolRegistry.d.ts +0 -22
  223. package/dist/capabilities/toolRegistry.d.ts.map +0 -1
  224. package/dist/capabilities/toolRegistry.js +0 -115
  225. package/dist/capabilities/toolRegistry.js.map +0 -1
  226. package/dist/capabilities/validationCapability.d.ts +0 -13
  227. package/dist/capabilities/validationCapability.d.ts.map +0 -1
  228. package/dist/capabilities/validationCapability.js +0 -24
  229. package/dist/capabilities/validationCapability.js.map +0 -1
  230. package/dist/capabilities/webCapability.d.ts +0 -12
  231. package/dist/capabilities/webCapability.d.ts.map +0 -1
  232. package/dist/capabilities/webCapability.js +0 -22
  233. package/dist/capabilities/webCapability.js.map +0 -1
  234. package/dist/config.d.ts +0 -25
  235. package/dist/config.d.ts.map +0 -1
  236. package/dist/config.js +0 -140
  237. package/dist/config.js.map +0 -1
  238. package/dist/contracts/v1/agent.d.ts +0 -147
  239. package/dist/contracts/v1/agent.d.ts.map +0 -1
  240. package/dist/contracts/v1/agent.js +0 -8
  241. package/dist/contracts/v1/agent.js.map +0 -1
  242. package/dist/contracts/v1/agentProfileManifest.d.ts +0 -60
  243. package/dist/contracts/v1/agentProfileManifest.d.ts.map +0 -1
  244. package/dist/contracts/v1/agentProfileManifest.js +0 -9
  245. package/dist/contracts/v1/agentProfileManifest.js.map +0 -1
  246. package/dist/contracts/v1/agentRules.d.ts +0 -60
  247. package/dist/contracts/v1/agentRules.d.ts.map +0 -1
  248. package/dist/contracts/v1/agentRules.js +0 -10
  249. package/dist/contracts/v1/agentRules.js.map +0 -1
  250. package/dist/contracts/v1/provider.d.ts +0 -149
  251. package/dist/contracts/v1/provider.d.ts.map +0 -1
  252. package/dist/contracts/v1/provider.js +0 -7
  253. package/dist/contracts/v1/provider.js.map +0 -1
  254. package/dist/contracts/v1/tool.d.ts +0 -136
  255. package/dist/contracts/v1/tool.d.ts.map +0 -1
  256. package/dist/contracts/v1/tool.js +0 -7
  257. package/dist/contracts/v1/tool.js.map +0 -1
  258. package/dist/contracts/v1/toolAccess.d.ts +0 -43
  259. package/dist/contracts/v1/toolAccess.d.ts.map +0 -1
  260. package/dist/contracts/v1/toolAccess.js +0 -9
  261. package/dist/contracts/v1/toolAccess.js.map +0 -1
  262. package/dist/core/LazyLoader.d.ts +0 -129
  263. package/dist/core/LazyLoader.d.ts.map +0 -1
  264. package/dist/core/LazyLoader.js +0 -240
  265. package/dist/core/LazyLoader.js.map +0 -1
  266. package/dist/core/agent.d.ts +0 -144
  267. package/dist/core/agent.d.ts.map +0 -1
  268. package/dist/core/agent.js +0 -780
  269. package/dist/core/agent.js.map +0 -1
  270. package/dist/core/agentProfileManifest.d.ts +0 -3
  271. package/dist/core/agentProfileManifest.d.ts.map +0 -1
  272. package/dist/core/agentProfileManifest.js +0 -188
  273. package/dist/core/agentProfileManifest.js.map +0 -1
  274. package/dist/core/agentProfiles.d.ts +0 -22
  275. package/dist/core/agentProfiles.d.ts.map +0 -1
  276. package/dist/core/agentProfiles.js +0 -35
  277. package/dist/core/agentProfiles.js.map +0 -1
  278. package/dist/core/agentRulebook.d.ts +0 -11
  279. package/dist/core/agentRulebook.d.ts.map +0 -1
  280. package/dist/core/agentRulebook.js +0 -136
  281. package/dist/core/agentRulebook.js.map +0 -1
  282. package/dist/core/agentSchemaLoader.d.ts +0 -131
  283. package/dist/core/agentSchemaLoader.d.ts.map +0 -1
  284. package/dist/core/agentSchemaLoader.js +0 -234
  285. package/dist/core/agentSchemaLoader.js.map +0 -1
  286. package/dist/core/cliTestHarness.d.ts +0 -200
  287. package/dist/core/cliTestHarness.d.ts.map +0 -1
  288. package/dist/core/cliTestHarness.js +0 -549
  289. package/dist/core/cliTestHarness.js.map +0 -1
  290. package/dist/core/contextManager.d.ts +0 -259
  291. package/dist/core/contextManager.d.ts.map +0 -1
  292. package/dist/core/contextManager.js +0 -1057
  293. package/dist/core/contextManager.js.map +0 -1
  294. package/dist/core/contextWindow.d.ts +0 -42
  295. package/dist/core/contextWindow.d.ts.map +0 -1
  296. package/dist/core/contextWindow.js +0 -123
  297. package/dist/core/contextWindow.js.map +0 -1
  298. package/dist/core/customCommands.d.ts +0 -18
  299. package/dist/core/customCommands.d.ts.map +0 -1
  300. package/dist/core/customCommands.js +0 -81
  301. package/dist/core/customCommands.js.map +0 -1
  302. package/dist/core/errors/apiKeyErrors.d.ts +0 -11
  303. package/dist/core/errors/apiKeyErrors.d.ts.map +0 -1
  304. package/dist/core/errors/apiKeyErrors.js +0 -159
  305. package/dist/core/errors/apiKeyErrors.js.map +0 -1
  306. package/dist/core/errors/errorTypes.d.ts +0 -111
  307. package/dist/core/errors/errorTypes.d.ts.map +0 -1
  308. package/dist/core/errors/errorTypes.js +0 -348
  309. package/dist/core/errors/errorTypes.js.map +0 -1
  310. package/dist/core/errors/safetyValidator.d.ts +0 -71
  311. package/dist/core/errors/safetyValidator.d.ts.map +0 -1
  312. package/dist/core/errors/safetyValidator.js +0 -302
  313. package/dist/core/errors/safetyValidator.js.map +0 -1
  314. package/dist/core/errors.d.ts +0 -4
  315. package/dist/core/errors.d.ts.map +0 -1
  316. package/dist/core/errors.js +0 -33
  317. package/dist/core/errors.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/modelDiscovery.d.ts +0 -101
  323. package/dist/core/modelDiscovery.d.ts.map +0 -1
  324. package/dist/core/modelDiscovery.js +0 -780
  325. package/dist/core/modelDiscovery.js.map +0 -1
  326. package/dist/core/multilinePasteHandler.d.ts +0 -35
  327. package/dist/core/multilinePasteHandler.d.ts.map +0 -1
  328. package/dist/core/multilinePasteHandler.js +0 -80
  329. package/dist/core/multilinePasteHandler.js.map +0 -1
  330. package/dist/core/performanceMonitor.d.ts +0 -124
  331. package/dist/core/performanceMonitor.d.ts.map +0 -1
  332. package/dist/core/performanceMonitor.js +0 -195
  333. package/dist/core/performanceMonitor.js.map +0 -1
  334. package/dist/core/preferences.d.ts +0 -31
  335. package/dist/core/preferences.d.ts.map +0 -1
  336. package/dist/core/preferences.js +0 -232
  337. package/dist/core/preferences.js.map +0 -1
  338. package/dist/core/responseVerifier.d.ts +0 -98
  339. package/dist/core/responseVerifier.d.ts.map +0 -1
  340. package/dist/core/responseVerifier.js +0 -509
  341. package/dist/core/responseVerifier.js.map +0 -1
  342. package/dist/core/resultVerification.d.ts +0 -141
  343. package/dist/core/resultVerification.d.ts.map +0 -1
  344. package/dist/core/resultVerification.js +0 -482
  345. package/dist/core/resultVerification.js.map +0 -1
  346. package/dist/core/schemaValidator.d.ts +0 -44
  347. package/dist/core/schemaValidator.d.ts.map +0 -1
  348. package/dist/core/schemaValidator.js +0 -155
  349. package/dist/core/schemaValidator.js.map +0 -1
  350. package/dist/core/secretStore.d.ts +0 -47
  351. package/dist/core/secretStore.d.ts.map +0 -1
  352. package/dist/core/secretStore.js +0 -364
  353. package/dist/core/secretStore.js.map +0 -1
  354. package/dist/core/sessionStore.d.ts +0 -33
  355. package/dist/core/sessionStore.d.ts.map +0 -1
  356. package/dist/core/sessionStore.js +0 -188
  357. package/dist/core/sessionStore.js.map +0 -1
  358. package/dist/core/testUtils.d.ts +0 -121
  359. package/dist/core/testUtils.d.ts.map +0 -1
  360. package/dist/core/testUtils.js +0 -235
  361. package/dist/core/testUtils.js.map +0 -1
  362. package/dist/core/toolPreconditions.d.ts +0 -41
  363. package/dist/core/toolPreconditions.d.ts.map +0 -1
  364. package/dist/core/toolPreconditions.js +0 -319
  365. package/dist/core/toolPreconditions.js.map +0 -1
  366. package/dist/core/toolRuntime.d.ts +0 -137
  367. package/dist/core/toolRuntime.d.ts.map +0 -1
  368. package/dist/core/toolRuntime.js +0 -375
  369. package/dist/core/toolRuntime.js.map +0 -1
  370. package/dist/core/types.d.ts +0 -306
  371. package/dist/core/types.d.ts.map +0 -1
  372. package/dist/core/types.js +0 -76
  373. package/dist/core/types.js.map +0 -1
  374. package/dist/core/unified/errors.d.ts +0 -189
  375. package/dist/core/unified/errors.d.ts.map +0 -1
  376. package/dist/core/unified/errors.js +0 -497
  377. package/dist/core/unified/errors.js.map +0 -1
  378. package/dist/core/unified/index.d.ts +0 -19
  379. package/dist/core/unified/index.d.ts.map +0 -1
  380. package/dist/core/unified/index.js +0 -68
  381. package/dist/core/unified/index.js.map +0 -1
  382. package/dist/core/unified/schema.d.ts +0 -101
  383. package/dist/core/unified/schema.d.ts.map +0 -1
  384. package/dist/core/unified/schema.js +0 -350
  385. package/dist/core/unified/schema.js.map +0 -1
  386. package/dist/core/unified/toolRuntime.d.ts +0 -179
  387. package/dist/core/unified/toolRuntime.d.ts.map +0 -1
  388. package/dist/core/unified/toolRuntime.js +0 -517
  389. package/dist/core/unified/toolRuntime.js.map +0 -1
  390. package/dist/core/unified/tools.d.ts +0 -127
  391. package/dist/core/unified/tools.d.ts.map +0 -1
  392. package/dist/core/unified/tools.js +0 -1333
  393. package/dist/core/unified/tools.js.map +0 -1
  394. package/dist/core/unified/types.d.ts +0 -352
  395. package/dist/core/unified/types.d.ts.map +0 -1
  396. package/dist/core/unified/types.js +0 -12
  397. package/dist/core/unified/types.js.map +0 -1
  398. package/dist/core/unified/version.d.ts +0 -209
  399. package/dist/core/unified/version.d.ts.map +0 -1
  400. package/dist/core/unified/version.js +0 -454
  401. package/dist/core/unified/version.js.map +0 -1
  402. package/dist/core/validationRunner.d.ts +0 -93
  403. package/dist/core/validationRunner.d.ts.map +0 -1
  404. package/dist/core/validationRunner.js +0 -740
  405. package/dist/core/validationRunner.js.map +0 -1
  406. package/dist/headless/headlessApp.d.ts +0 -5
  407. package/dist/headless/headlessApp.d.ts.map +0 -1
  408. package/dist/headless/headlessApp.js +0 -189
  409. package/dist/headless/headlessApp.js.map +0 -1
  410. package/dist/intelligence/codeIntelligence.d.ts +0 -84
  411. package/dist/intelligence/codeIntelligence.d.ts.map +0 -1
  412. package/dist/intelligence/codeIntelligence.js +0 -493
  413. package/dist/intelligence/codeIntelligence.js.map +0 -1
  414. package/dist/intelligence/docGenerator.d.ts +0 -86
  415. package/dist/intelligence/docGenerator.d.ts.map +0 -1
  416. package/dist/intelligence/docGenerator.js +0 -564
  417. package/dist/intelligence/docGenerator.js.map +0 -1
  418. package/dist/intelligence/index.d.ts +0 -51
  419. package/dist/intelligence/index.d.ts.map +0 -1
  420. package/dist/intelligence/index.js +0 -253
  421. package/dist/intelligence/index.js.map +0 -1
  422. package/dist/intelligence/refactoring.d.ts +0 -50
  423. package/dist/intelligence/refactoring.d.ts.map +0 -1
  424. package/dist/intelligence/refactoring.js +0 -354
  425. package/dist/intelligence/refactoring.js.map +0 -1
  426. package/dist/intelligence/testGenerator.d.ts +0 -74
  427. package/dist/intelligence/testGenerator.d.ts.map +0 -1
  428. package/dist/intelligence/testGenerator.js +0 -483
  429. package/dist/intelligence/testGenerator.js.map +0 -1
  430. package/dist/mcp/config.d.ts +0 -8
  431. package/dist/mcp/config.d.ts.map +0 -1
  432. package/dist/mcp/config.js +0 -252
  433. package/dist/mcp/config.js.map +0 -1
  434. package/dist/mcp/sseClient.d.ts +0 -34
  435. package/dist/mcp/sseClient.d.ts.map +0 -1
  436. package/dist/mcp/sseClient.js +0 -299
  437. package/dist/mcp/sseClient.js.map +0 -1
  438. package/dist/mcp/stdioClient.d.ts +0 -24
  439. package/dist/mcp/stdioClient.d.ts.map +0 -1
  440. package/dist/mcp/stdioClient.js +0 -179
  441. package/dist/mcp/stdioClient.js.map +0 -1
  442. package/dist/mcp/toolBridge.d.ts +0 -12
  443. package/dist/mcp/toolBridge.d.ts.map +0 -1
  444. package/dist/mcp/toolBridge.js +0 -117
  445. package/dist/mcp/toolBridge.js.map +0 -1
  446. package/dist/mcp/types.d.ts +0 -60
  447. package/dist/mcp/types.d.ts.map +0 -1
  448. package/dist/mcp/types.js +0 -2
  449. package/dist/mcp/types.js.map +0 -1
  450. package/dist/plugins/index.d.ts +0 -49
  451. package/dist/plugins/index.d.ts.map +0 -1
  452. package/dist/plugins/index.js +0 -114
  453. package/dist/plugins/index.js.map +0 -1
  454. package/dist/plugins/providers/anthropic/index.d.ts +0 -11
  455. package/dist/plugins/providers/anthropic/index.d.ts.map +0 -1
  456. package/dist/plugins/providers/anthropic/index.js +0 -38
  457. package/dist/plugins/providers/anthropic/index.js.map +0 -1
  458. package/dist/plugins/providers/deepseek/index.d.ts +0 -11
  459. package/dist/plugins/providers/deepseek/index.d.ts.map +0 -1
  460. package/dist/plugins/providers/deepseek/index.js +0 -52
  461. package/dist/plugins/providers/deepseek/index.js.map +0 -1
  462. package/dist/plugins/providers/google/index.d.ts +0 -11
  463. package/dist/plugins/providers/google/index.d.ts.map +0 -1
  464. package/dist/plugins/providers/google/index.js +0 -40
  465. package/dist/plugins/providers/google/index.js.map +0 -1
  466. package/dist/plugins/providers/index.d.ts +0 -2
  467. package/dist/plugins/providers/index.d.ts.map +0 -1
  468. package/dist/plugins/providers/index.js +0 -20
  469. package/dist/plugins/providers/index.js.map +0 -1
  470. package/dist/plugins/providers/ollama/index.d.ts +0 -21
  471. package/dist/plugins/providers/ollama/index.d.ts.map +0 -1
  472. package/dist/plugins/providers/ollama/index.js +0 -69
  473. package/dist/plugins/providers/ollama/index.js.map +0 -1
  474. package/dist/plugins/providers/openai/index.d.ts +0 -12
  475. package/dist/plugins/providers/openai/index.d.ts.map +0 -1
  476. package/dist/plugins/providers/openai/index.js +0 -39
  477. package/dist/plugins/providers/openai/index.js.map +0 -1
  478. package/dist/plugins/providers/xai/index.d.ts +0 -11
  479. package/dist/plugins/providers/xai/index.d.ts.map +0 -1
  480. package/dist/plugins/providers/xai/index.js +0 -39
  481. package/dist/plugins/providers/xai/index.js.map +0 -1
  482. package/dist/plugins/tools/agentSpawning/agentSpawningPlugin.d.ts +0 -3
  483. package/dist/plugins/tools/agentSpawning/agentSpawningPlugin.d.ts.map +0 -1
  484. package/dist/plugins/tools/agentSpawning/agentSpawningPlugin.js +0 -9
  485. package/dist/plugins/tools/agentSpawning/agentSpawningPlugin.js.map +0 -1
  486. package/dist/plugins/tools/bash/localBashPlugin.d.ts +0 -3
  487. package/dist/plugins/tools/bash/localBashPlugin.d.ts.map +0 -1
  488. package/dist/plugins/tools/bash/localBashPlugin.js +0 -14
  489. package/dist/plugins/tools/bash/localBashPlugin.js.map +0 -1
  490. package/dist/plugins/tools/browser/browserAutomationPlugin.d.ts +0 -14
  491. package/dist/plugins/tools/browser/browserAutomationPlugin.d.ts.map +0 -1
  492. package/dist/plugins/tools/browser/browserAutomationPlugin.js +0 -26
  493. package/dist/plugins/tools/browser/browserAutomationPlugin.js.map +0 -1
  494. package/dist/plugins/tools/checks/localRepoChecksPlugin.d.ts +0 -3
  495. package/dist/plugins/tools/checks/localRepoChecksPlugin.d.ts.map +0 -1
  496. package/dist/plugins/tools/checks/localRepoChecksPlugin.js +0 -14
  497. package/dist/plugins/tools/checks/localRepoChecksPlugin.js.map +0 -1
  498. package/dist/plugins/tools/cloud/cloudPlugin.d.ts +0 -3
  499. package/dist/plugins/tools/cloud/cloudPlugin.d.ts.map +0 -1
  500. package/dist/plugins/tools/cloud/cloudPlugin.js +0 -14
  501. package/dist/plugins/tools/cloud/cloudPlugin.js.map +0 -1
  502. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.d.ts +0 -3
  503. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.d.ts.map +0 -1
  504. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.js +0 -14
  505. package/dist/plugins/tools/codeAnalysis/codeAnalysisPlugin.js.map +0 -1
  506. package/dist/plugins/tools/codeQuality/codeQualityPlugin.d.ts +0 -3
  507. package/dist/plugins/tools/codeQuality/codeQualityPlugin.d.ts.map +0 -1
  508. package/dist/plugins/tools/codeQuality/codeQualityPlugin.js +0 -14
  509. package/dist/plugins/tools/codeQuality/codeQualityPlugin.js.map +0 -1
  510. package/dist/plugins/tools/dependency/dependencyPlugin.d.ts +0 -3
  511. package/dist/plugins/tools/dependency/dependencyPlugin.d.ts.map +0 -1
  512. package/dist/plugins/tools/dependency/dependencyPlugin.js +0 -12
  513. package/dist/plugins/tools/dependency/dependencyPlugin.js.map +0 -1
  514. package/dist/plugins/tools/development/devPlugin.d.ts +0 -3
  515. package/dist/plugins/tools/development/devPlugin.d.ts.map +0 -1
  516. package/dist/plugins/tools/development/devPlugin.js +0 -14
  517. package/dist/plugins/tools/development/devPlugin.js.map +0 -1
  518. package/dist/plugins/tools/edit/editPlugin.d.ts +0 -9
  519. package/dist/plugins/tools/edit/editPlugin.d.ts.map +0 -1
  520. package/dist/plugins/tools/edit/editPlugin.js +0 -15
  521. package/dist/plugins/tools/edit/editPlugin.js.map +0 -1
  522. package/dist/plugins/tools/email/emailPlugin.d.ts +0 -3
  523. package/dist/plugins/tools/email/emailPlugin.d.ts.map +0 -1
  524. package/dist/plugins/tools/email/emailPlugin.js +0 -12
  525. package/dist/plugins/tools/email/emailPlugin.js.map +0 -1
  526. package/dist/plugins/tools/enhancedGit/enhancedGitPlugin.d.ts +0 -3
  527. package/dist/plugins/tools/enhancedGit/enhancedGitPlugin.d.ts.map +0 -1
  528. package/dist/plugins/tools/enhancedGit/enhancedGitPlugin.js +0 -9
  529. package/dist/plugins/tools/enhancedGit/enhancedGitPlugin.js.map +0 -1
  530. package/dist/plugins/tools/filesystem/localFilesystemPlugin.d.ts +0 -3
  531. package/dist/plugins/tools/filesystem/localFilesystemPlugin.d.ts.map +0 -1
  532. package/dist/plugins/tools/filesystem/localFilesystemPlugin.js +0 -14
  533. package/dist/plugins/tools/filesystem/localFilesystemPlugin.js.map +0 -1
  534. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.d.ts +0 -3
  535. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.d.ts.map +0 -1
  536. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.js +0 -14
  537. package/dist/plugins/tools/frontendTesting/frontendTestingPlugin.js.map +0 -1
  538. package/dist/plugins/tools/glob/globPlugin.d.ts +0 -9
  539. package/dist/plugins/tools/glob/globPlugin.d.ts.map +0 -1
  540. package/dist/plugins/tools/glob/globPlugin.js +0 -15
  541. package/dist/plugins/tools/glob/globPlugin.js.map +0 -1
  542. package/dist/plugins/tools/index.d.ts +0 -3
  543. package/dist/plugins/tools/index.d.ts.map +0 -1
  544. package/dist/plugins/tools/index.js +0 -3
  545. package/dist/plugins/tools/index.js.map +0 -1
  546. package/dist/plugins/tools/interaction/interactionPlugin.d.ts +0 -3
  547. package/dist/plugins/tools/interaction/interactionPlugin.d.ts.map +0 -1
  548. package/dist/plugins/tools/interaction/interactionPlugin.js +0 -12
  549. package/dist/plugins/tools/interaction/interactionPlugin.js.map +0 -1
  550. package/dist/plugins/tools/learn/learnPlugin.d.ts +0 -3
  551. package/dist/plugins/tools/learn/learnPlugin.d.ts.map +0 -1
  552. package/dist/plugins/tools/learn/learnPlugin.js +0 -14
  553. package/dist/plugins/tools/learn/learnPlugin.js.map +0 -1
  554. package/dist/plugins/tools/mcp/mcpPlugin.d.ts +0 -3
  555. package/dist/plugins/tools/mcp/mcpPlugin.d.ts.map +0 -1
  556. package/dist/plugins/tools/mcp/mcpPlugin.js +0 -9
  557. package/dist/plugins/tools/mcp/mcpPlugin.js.map +0 -1
  558. package/dist/plugins/tools/nodeDefaults.d.ts +0 -2
  559. package/dist/plugins/tools/nodeDefaults.d.ts.map +0 -1
  560. package/dist/plugins/tools/nodeDefaults.js +0 -63
  561. package/dist/plugins/tools/nodeDefaults.js.map +0 -1
  562. package/dist/plugins/tools/notebook/notebookPlugin.d.ts +0 -9
  563. package/dist/plugins/tools/notebook/notebookPlugin.d.ts.map +0 -1
  564. package/dist/plugins/tools/notebook/notebookPlugin.js +0 -15
  565. package/dist/plugins/tools/notebook/notebookPlugin.js.map +0 -1
  566. package/dist/plugins/tools/planning/planningPlugin.d.ts +0 -9
  567. package/dist/plugins/tools/planning/planningPlugin.d.ts.map +0 -1
  568. package/dist/plugins/tools/planning/planningPlugin.js +0 -15
  569. package/dist/plugins/tools/planning/planningPlugin.js.map +0 -1
  570. package/dist/plugins/tools/refactoring/refactoringPlugin.d.ts +0 -3
  571. package/dist/plugins/tools/refactoring/refactoringPlugin.d.ts.map +0 -1
  572. package/dist/plugins/tools/refactoring/refactoringPlugin.js +0 -12
  573. package/dist/plugins/tools/refactoring/refactoringPlugin.js.map +0 -1
  574. package/dist/plugins/tools/registry.d.ts +0 -22
  575. package/dist/plugins/tools/registry.d.ts.map +0 -1
  576. package/dist/plugins/tools/registry.js +0 -58
  577. package/dist/plugins/tools/registry.js.map +0 -1
  578. package/dist/plugins/tools/search/localSearchPlugin.d.ts +0 -3
  579. package/dist/plugins/tools/search/localSearchPlugin.d.ts.map +0 -1
  580. package/dist/plugins/tools/search/localSearchPlugin.js +0 -14
  581. package/dist/plugins/tools/search/localSearchPlugin.js.map +0 -1
  582. package/dist/plugins/tools/skills/skillPlugin.d.ts +0 -3
  583. package/dist/plugins/tools/skills/skillPlugin.d.ts.map +0 -1
  584. package/dist/plugins/tools/skills/skillPlugin.js +0 -9
  585. package/dist/plugins/tools/skills/skillPlugin.js.map +0 -1
  586. package/dist/plugins/tools/taskManagement/taskManagementPlugin.d.ts +0 -3
  587. package/dist/plugins/tools/taskManagement/taskManagementPlugin.d.ts.map +0 -1
  588. package/dist/plugins/tools/taskManagement/taskManagementPlugin.js +0 -12
  589. package/dist/plugins/tools/taskManagement/taskManagementPlugin.js.map +0 -1
  590. package/dist/plugins/tools/testing/testingPlugin.d.ts +0 -3
  591. package/dist/plugins/tools/testing/testingPlugin.d.ts.map +0 -1
  592. package/dist/plugins/tools/testing/testingPlugin.js +0 -12
  593. package/dist/plugins/tools/testing/testingPlugin.js.map +0 -1
  594. package/dist/plugins/tools/validation/validationPlugin.d.ts +0 -3
  595. package/dist/plugins/tools/validation/validationPlugin.d.ts.map +0 -1
  596. package/dist/plugins/tools/validation/validationPlugin.js +0 -14
  597. package/dist/plugins/tools/validation/validationPlugin.js.map +0 -1
  598. package/dist/plugins/tools/web/webPlugin.d.ts +0 -3
  599. package/dist/plugins/tools/web/webPlugin.d.ts.map +0 -1
  600. package/dist/plugins/tools/web/webPlugin.js +0 -12
  601. package/dist/plugins/tools/web/webPlugin.js.map +0 -1
  602. package/dist/providers/anthropicProvider.d.ts +0 -41
  603. package/dist/providers/anthropicProvider.d.ts.map +0 -1
  604. package/dist/providers/anthropicProvider.js +0 -446
  605. package/dist/providers/anthropicProvider.js.map +0 -1
  606. package/dist/providers/googleProvider.d.ts +0 -36
  607. package/dist/providers/googleProvider.d.ts.map +0 -1
  608. package/dist/providers/googleProvider.js +0 -312
  609. package/dist/providers/googleProvider.js.map +0 -1
  610. package/dist/providers/openaiChatCompletionsProvider.d.ts +0 -43
  611. package/dist/providers/openaiChatCompletionsProvider.d.ts.map +0 -1
  612. package/dist/providers/openaiChatCompletionsProvider.js +0 -468
  613. package/dist/providers/openaiChatCompletionsProvider.js.map +0 -1
  614. package/dist/providers/openaiResponsesProvider.d.ts +0 -38
  615. package/dist/providers/openaiResponsesProvider.d.ts.map +0 -1
  616. package/dist/providers/openaiResponsesProvider.js +0 -364
  617. package/dist/providers/openaiResponsesProvider.js.map +0 -1
  618. package/dist/providers/providerFactory.d.ts +0 -18
  619. package/dist/providers/providerFactory.d.ts.map +0 -1
  620. package/dist/providers/providerFactory.js +0 -25
  621. package/dist/providers/providerFactory.js.map +0 -1
  622. package/dist/providers/resilientProvider.d.ts +0 -94
  623. package/dist/providers/resilientProvider.d.ts.map +0 -1
  624. package/dist/providers/resilientProvider.js +0 -370
  625. package/dist/providers/resilientProvider.js.map +0 -1
  626. package/dist/runtime/agentController.d.ts +0 -65
  627. package/dist/runtime/agentController.d.ts.map +0 -1
  628. package/dist/runtime/agentController.js +0 -353
  629. package/dist/runtime/agentController.js.map +0 -1
  630. package/dist/runtime/agentHost.d.ts +0 -61
  631. package/dist/runtime/agentHost.d.ts.map +0 -1
  632. package/dist/runtime/agentHost.js +0 -156
  633. package/dist/runtime/agentHost.js.map +0 -1
  634. package/dist/runtime/agentSession.d.ts +0 -40
  635. package/dist/runtime/agentSession.d.ts.map +0 -1
  636. package/dist/runtime/agentSession.js +0 -206
  637. package/dist/runtime/agentSession.js.map +0 -1
  638. package/dist/runtime/browser.d.ts +0 -7
  639. package/dist/runtime/browser.d.ts.map +0 -1
  640. package/dist/runtime/browser.js +0 -10
  641. package/dist/runtime/browser.js.map +0 -1
  642. package/dist/runtime/cloud.d.ts +0 -7
  643. package/dist/runtime/cloud.d.ts.map +0 -1
  644. package/dist/runtime/cloud.js +0 -10
  645. package/dist/runtime/cloud.js.map +0 -1
  646. package/dist/runtime/node.d.ts +0 -8
  647. package/dist/runtime/node.d.ts.map +0 -1
  648. package/dist/runtime/node.js +0 -11
  649. package/dist/runtime/node.js.map +0 -1
  650. package/dist/runtime/universal.d.ts +0 -21
  651. package/dist/runtime/universal.d.ts.map +0 -1
  652. package/dist/runtime/universal.js +0 -29
  653. package/dist/runtime/universal.js.map +0 -1
  654. package/dist/security/active-stack-security.d.ts +0 -112
  655. package/dist/security/active-stack-security.d.ts.map +0 -1
  656. package/dist/security/active-stack-security.js +0 -296
  657. package/dist/security/active-stack-security.js.map +0 -1
  658. package/dist/security/advanced-persistence-research.d.ts +0 -92
  659. package/dist/security/advanced-persistence-research.d.ts.map +0 -1
  660. package/dist/security/advanced-persistence-research.js +0 -195
  661. package/dist/security/advanced-persistence-research.js.map +0 -1
  662. package/dist/security/advanced-targeting.d.ts +0 -119
  663. package/dist/security/advanced-targeting.d.ts.map +0 -1
  664. package/dist/security/advanced-targeting.js +0 -233
  665. package/dist/security/advanced-targeting.js.map +0 -1
  666. package/dist/security/assessment/vulnerabilityAssessment.d.ts +0 -104
  667. package/dist/security/assessment/vulnerabilityAssessment.d.ts.map +0 -1
  668. package/dist/security/assessment/vulnerabilityAssessment.js +0 -315
  669. package/dist/security/assessment/vulnerabilityAssessment.js.map +0 -1
  670. package/dist/security/authorization/securityAuthorization.d.ts +0 -88
  671. package/dist/security/authorization/securityAuthorization.d.ts.map +0 -1
  672. package/dist/security/authorization/securityAuthorization.js +0 -172
  673. package/dist/security/authorization/securityAuthorization.js.map +0 -1
  674. package/dist/security/comprehensive-targeting.d.ts +0 -85
  675. package/dist/security/comprehensive-targeting.d.ts.map +0 -1
  676. package/dist/security/comprehensive-targeting.js +0 -438
  677. package/dist/security/comprehensive-targeting.js.map +0 -1
  678. package/dist/security/global-security-integration.d.ts +0 -91
  679. package/dist/security/global-security-integration.d.ts.map +0 -1
  680. package/dist/security/global-security-integration.js +0 -218
  681. package/dist/security/global-security-integration.js.map +0 -1
  682. package/dist/security/index.d.ts +0 -38
  683. package/dist/security/index.d.ts.map +0 -1
  684. package/dist/security/index.js +0 -47
  685. package/dist/security/index.js.map +0 -1
  686. package/dist/security/persistence-analyzer.d.ts +0 -56
  687. package/dist/security/persistence-analyzer.d.ts.map +0 -1
  688. package/dist/security/persistence-analyzer.js +0 -187
  689. package/dist/security/persistence-analyzer.js.map +0 -1
  690. package/dist/security/persistence-cli.d.ts +0 -36
  691. package/dist/security/persistence-cli.d.ts.map +0 -1
  692. package/dist/security/persistence-cli.js +0 -160
  693. package/dist/security/persistence-cli.js.map +0 -1
  694. package/dist/security/persistence-research.d.ts +0 -92
  695. package/dist/security/persistence-research.d.ts.map +0 -1
  696. package/dist/security/persistence-research.js +0 -364
  697. package/dist/security/persistence-research.js.map +0 -1
  698. package/dist/security/research/persistenceResearch.d.ts +0 -97
  699. package/dist/security/research/persistenceResearch.d.ts.map +0 -1
  700. package/dist/security/research/persistenceResearch.js +0 -282
  701. package/dist/security/research/persistenceResearch.js.map +0 -1
  702. package/dist/security/security-integration.d.ts +0 -74
  703. package/dist/security/security-integration.d.ts.map +0 -1
  704. package/dist/security/security-integration.js +0 -137
  705. package/dist/security/security-integration.js.map +0 -1
  706. package/dist/security/security-testing-framework.d.ts +0 -112
  707. package/dist/security/security-testing-framework.d.ts.map +0 -1
  708. package/dist/security/security-testing-framework.js +0 -364
  709. package/dist/security/security-testing-framework.js.map +0 -1
  710. package/dist/security/simulation/attackSimulation.d.ts +0 -93
  711. package/dist/security/simulation/attackSimulation.d.ts.map +0 -1
  712. package/dist/security/simulation/attackSimulation.js +0 -341
  713. package/dist/security/simulation/attackSimulation.js.map +0 -1
  714. package/dist/security/strategic-operations.d.ts +0 -100
  715. package/dist/security/strategic-operations.d.ts.map +0 -1
  716. package/dist/security/strategic-operations.js +0 -276
  717. package/dist/security/strategic-operations.js.map +0 -1
  718. package/dist/security/tool-security-wrapper.d.ts +0 -58
  719. package/dist/security/tool-security-wrapper.d.ts.map +0 -1
  720. package/dist/security/tool-security-wrapper.js +0 -156
  721. package/dist/security/tool-security-wrapper.js.map +0 -1
  722. package/dist/shell/autoExecutor.d.ts +0 -70
  723. package/dist/shell/autoExecutor.d.ts.map +0 -1
  724. package/dist/shell/autoExecutor.js +0 -288
  725. package/dist/shell/autoExecutor.js.map +0 -1
  726. package/dist/shell/bracketedPasteManager.d.ts +0 -128
  727. package/dist/shell/bracketedPasteManager.d.ts.map +0 -1
  728. package/dist/shell/bracketedPasteManager.enhanced.d.ts +0 -2
  729. package/dist/shell/bracketedPasteManager.enhanced.d.ts.map +0 -1
  730. package/dist/shell/bracketedPasteManager.enhanced.js +0 -4
  731. package/dist/shell/bracketedPasteManager.enhanced.js.map +0 -1
  732. package/dist/shell/bracketedPasteManager.js +0 -372
  733. package/dist/shell/bracketedPasteManager.js.map +0 -1
  734. package/dist/shell/chatBox.d.ts +0 -228
  735. package/dist/shell/chatBox.d.ts.map +0 -1
  736. package/dist/shell/chatBox.js +0 -811
  737. package/dist/shell/chatBox.js.map +0 -1
  738. package/dist/shell/claudeCodeStreamHandler.d.ts +0 -145
  739. package/dist/shell/claudeCodeStreamHandler.d.ts.map +0 -1
  740. package/dist/shell/claudeCodeStreamHandler.js +0 -312
  741. package/dist/shell/claudeCodeStreamHandler.js.map +0 -1
  742. package/dist/shell/composableMessage.d.ts +0 -183
  743. package/dist/shell/composableMessage.d.ts.map +0 -1
  744. package/dist/shell/composableMessage.js +0 -420
  745. package/dist/shell/composableMessage.js.map +0 -1
  746. package/dist/shell/fileChangeTracker.d.ts +0 -39
  747. package/dist/shell/fileChangeTracker.d.ts.map +0 -1
  748. package/dist/shell/fileChangeTracker.js +0 -64
  749. package/dist/shell/fileChangeTracker.js.map +0 -1
  750. package/dist/shell/inputQueueManager.d.ts +0 -144
  751. package/dist/shell/inputQueueManager.d.ts.map +0 -1
  752. package/dist/shell/inputQueueManager.js +0 -290
  753. package/dist/shell/inputQueueManager.js.map +0 -1
  754. package/dist/shell/interactiveShell.d.ts +0 -312
  755. package/dist/shell/interactiveShell.d.ts.map +0 -1
  756. package/dist/shell/interactiveShell.js +0 -3271
  757. package/dist/shell/interactiveShell.js.map +0 -1
  758. package/dist/shell/liveStatus.d.ts +0 -29
  759. package/dist/shell/liveStatus.d.ts.map +0 -1
  760. package/dist/shell/liveStatus.js +0 -77
  761. package/dist/shell/liveStatus.js.map +0 -1
  762. package/dist/shell/shellApp.d.ts +0 -19
  763. package/dist/shell/shellApp.d.ts.map +0 -1
  764. package/dist/shell/shellApp.js +0 -364
  765. package/dist/shell/shellApp.js.map +0 -1
  766. package/dist/shell/streamingOutputManager.d.ts +0 -114
  767. package/dist/shell/streamingOutputManager.d.ts.map +0 -1
  768. package/dist/shell/streamingOutputManager.js +0 -213
  769. package/dist/shell/streamingOutputManager.js.map +0 -1
  770. package/dist/shell/systemPrompt.d.ts +0 -3
  771. package/dist/shell/systemPrompt.d.ts.map +0 -1
  772. package/dist/shell/systemPrompt.js +0 -73
  773. package/dist/shell/systemPrompt.js.map +0 -1
  774. package/dist/shell/taskCompletionDetector.d.ts +0 -106
  775. package/dist/shell/taskCompletionDetector.d.ts.map +0 -1
  776. package/dist/shell/taskCompletionDetector.js +0 -402
  777. package/dist/shell/taskCompletionDetector.js.map +0 -1
  778. package/dist/shell/terminalInput.d.ts +0 -221
  779. package/dist/shell/terminalInput.d.ts.map +0 -1
  780. package/dist/shell/terminalInput.js +0 -1082
  781. package/dist/shell/terminalInput.js.map +0 -1
  782. package/dist/shell/terminalInputAdapter.d.ts +0 -117
  783. package/dist/shell/terminalInputAdapter.d.ts.map +0 -1
  784. package/dist/shell/terminalInputAdapter.js +0 -217
  785. package/dist/shell/terminalInputAdapter.js.map +0 -1
  786. package/dist/shell/unifiedChatBox.d.ts +0 -194
  787. package/dist/shell/unifiedChatBox.d.ts.map +0 -1
  788. package/dist/shell/unifiedChatBox.js +0 -585
  789. package/dist/shell/unifiedChatBox.js.map +0 -1
  790. package/dist/shell/updateManager.d.ts +0 -2
  791. package/dist/shell/updateManager.d.ts.map +0 -1
  792. package/dist/shell/updateManager.js +0 -111
  793. package/dist/shell/updateManager.js.map +0 -1
  794. package/dist/skills/skillRepository.d.ts +0 -103
  795. package/dist/skills/skillRepository.d.ts.map +0 -1
  796. package/dist/skills/skillRepository.js +0 -237
  797. package/dist/skills/skillRepository.js.map +0 -1
  798. package/dist/skills/types.d.ts +0 -37
  799. package/dist/skills/types.d.ts.map +0 -1
  800. package/dist/skills/types.js +0 -2
  801. package/dist/skills/types.js.map +0 -1
  802. package/dist/subagents/taskRunner.d.ts +0 -23
  803. package/dist/subagents/taskRunner.d.ts.map +0 -1
  804. package/dist/subagents/taskRunner.js +0 -271
  805. package/dist/subagents/taskRunner.js.map +0 -1
  806. package/dist/tools/advancedTestGenerationTools.d.ts +0 -21
  807. package/dist/tools/advancedTestGenerationTools.d.ts.map +0 -1
  808. package/dist/tools/advancedTestGenerationTools.js +0 -301
  809. package/dist/tools/advancedTestGenerationTools.js.map +0 -1
  810. package/dist/tools/backgroundBashTools.d.ts +0 -21
  811. package/dist/tools/backgroundBashTools.d.ts.map +0 -1
  812. package/dist/tools/backgroundBashTools.js +0 -215
  813. package/dist/tools/backgroundBashTools.js.map +0 -1
  814. package/dist/tools/bashTools.d.ts +0 -8
  815. package/dist/tools/bashTools.d.ts.map +0 -1
  816. package/dist/tools/bashTools.js +0 -227
  817. package/dist/tools/bashTools.js.map +0 -1
  818. package/dist/tools/browserAutomationTools.d.ts +0 -23
  819. package/dist/tools/browserAutomationTools.d.ts.map +0 -1
  820. package/dist/tools/browserAutomationTools.js +0 -916
  821. package/dist/tools/browserAutomationTools.js.map +0 -1
  822. package/dist/tools/cloudTools.d.ts +0 -49
  823. package/dist/tools/cloudTools.d.ts.map +0 -1
  824. package/dist/tools/cloudTools.js +0 -1258
  825. package/dist/tools/cloudTools.js.map +0 -1
  826. package/dist/tools/code-quality-dashboard.d.ts +0 -57
  827. package/dist/tools/code-quality-dashboard.d.ts.map +0 -1
  828. package/dist/tools/code-quality-dashboard.js +0 -218
  829. package/dist/tools/code-quality-dashboard.js.map +0 -1
  830. package/dist/tools/codeAnalysisTools.d.ts +0 -74
  831. package/dist/tools/codeAnalysisTools.d.ts.map +0 -1
  832. package/dist/tools/codeAnalysisTools.js +0 -664
  833. package/dist/tools/codeAnalysisTools.js.map +0 -1
  834. package/dist/tools/codeGenerationTools.d.ts +0 -3
  835. package/dist/tools/codeGenerationTools.d.ts.map +0 -1
  836. package/dist/tools/codeGenerationTools.js +0 -439
  837. package/dist/tools/codeGenerationTools.js.map +0 -1
  838. package/dist/tools/codeQualityTools.d.ts +0 -3
  839. package/dist/tools/codeQualityTools.d.ts.map +0 -1
  840. package/dist/tools/codeQualityTools.js +0 -296
  841. package/dist/tools/codeQualityTools.js.map +0 -1
  842. package/dist/tools/dependencyTools.d.ts +0 -3
  843. package/dist/tools/dependencyTools.d.ts.map +0 -1
  844. package/dist/tools/dependencyTools.js +0 -283
  845. package/dist/tools/dependencyTools.js.map +0 -1
  846. package/dist/tools/devTools.d.ts +0 -10
  847. package/dist/tools/devTools.d.ts.map +0 -1
  848. package/dist/tools/devTools.js +0 -2305
  849. package/dist/tools/devTools.js.map +0 -1
  850. package/dist/tools/diffUtils.d.ts +0 -36
  851. package/dist/tools/diffUtils.d.ts.map +0 -1
  852. package/dist/tools/diffUtils.js +0 -528
  853. package/dist/tools/diffUtils.js.map +0 -1
  854. package/dist/tools/editTools.d.ts +0 -29
  855. package/dist/tools/editTools.d.ts.map +0 -1
  856. package/dist/tools/editTools.js +0 -419
  857. package/dist/tools/editTools.js.map +0 -1
  858. package/dist/tools/emailTools.d.ts +0 -21
  859. package/dist/tools/emailTools.d.ts.map +0 -1
  860. package/dist/tools/emailTools.js +0 -449
  861. package/dist/tools/emailTools.js.map +0 -1
  862. package/dist/tools/enhancedCodeIntelligenceTools.d.ts +0 -27
  863. package/dist/tools/enhancedCodeIntelligenceTools.d.ts.map +0 -1
  864. package/dist/tools/enhancedCodeIntelligenceTools.js +0 -418
  865. package/dist/tools/enhancedCodeIntelligenceTools.js.map +0 -1
  866. package/dist/tools/enhancedDevWorkflowTools.d.ts +0 -15
  867. package/dist/tools/enhancedDevWorkflowTools.d.ts.map +0 -1
  868. package/dist/tools/enhancedDevWorkflowTools.js +0 -303
  869. package/dist/tools/enhancedDevWorkflowTools.js.map +0 -1
  870. package/dist/tools/fileTools.d.ts +0 -3
  871. package/dist/tools/fileTools.d.ts.map +0 -1
  872. package/dist/tools/fileTools.js +0 -252
  873. package/dist/tools/fileTools.js.map +0 -1
  874. package/dist/tools/frontendTestingTools.d.ts +0 -35
  875. package/dist/tools/frontendTestingTools.d.ts.map +0 -1
  876. package/dist/tools/frontendTestingTools.js +0 -1254
  877. package/dist/tools/frontendTestingTools.js.map +0 -1
  878. package/dist/tools/globTools.d.ts +0 -15
  879. package/dist/tools/globTools.d.ts.map +0 -1
  880. package/dist/tools/globTools.js +0 -174
  881. package/dist/tools/globTools.js.map +0 -1
  882. package/dist/tools/grepTools.d.ts +0 -19
  883. package/dist/tools/grepTools.d.ts.map +0 -1
  884. package/dist/tools/grepTools.js +0 -339
  885. package/dist/tools/grepTools.js.map +0 -1
  886. package/dist/tools/interactionTools.d.ts +0 -13
  887. package/dist/tools/interactionTools.d.ts.map +0 -1
  888. package/dist/tools/interactionTools.js +0 -171
  889. package/dist/tools/interactionTools.js.map +0 -1
  890. package/dist/tools/learnTools.d.ts +0 -152
  891. package/dist/tools/learnTools.d.ts.map +0 -1
  892. package/dist/tools/learnTools.js +0 -1819
  893. package/dist/tools/learnTools.js.map +0 -1
  894. package/dist/tools/notebookEditTools.d.ts +0 -15
  895. package/dist/tools/notebookEditTools.d.ts.map +0 -1
  896. package/dist/tools/notebookEditTools.js +0 -197
  897. package/dist/tools/notebookEditTools.js.map +0 -1
  898. package/dist/tools/planningTools.d.ts +0 -11
  899. package/dist/tools/planningTools.d.ts.map +0 -1
  900. package/dist/tools/planningTools.js +0 -47
  901. package/dist/tools/planningTools.js.map +0 -1
  902. package/dist/tools/refactoringTools.d.ts +0 -3
  903. package/dist/tools/refactoringTools.d.ts.map +0 -1
  904. package/dist/tools/refactoringTools.js +0 -294
  905. package/dist/tools/refactoringTools.js.map +0 -1
  906. package/dist/tools/repoChecksTools.d.ts +0 -3
  907. package/dist/tools/repoChecksTools.d.ts.map +0 -1
  908. package/dist/tools/repoChecksTools.js +0 -161
  909. package/dist/tools/repoChecksTools.js.map +0 -1
  910. package/dist/tools/searchTools.d.ts +0 -3
  911. package/dist/tools/searchTools.d.ts.map +0 -1
  912. package/dist/tools/searchTools.js +0 -207
  913. package/dist/tools/searchTools.js.map +0 -1
  914. package/dist/tools/skillTools.d.ts +0 -8
  915. package/dist/tools/skillTools.d.ts.map +0 -1
  916. package/dist/tools/skillTools.js +0 -178
  917. package/dist/tools/skillTools.js.map +0 -1
  918. package/dist/tools/softwareEngineeringTools.d.ts +0 -7
  919. package/dist/tools/softwareEngineeringTools.d.ts.map +0 -1
  920. package/dist/tools/softwareEngineeringTools.js +0 -338
  921. package/dist/tools/softwareEngineeringTools.js.map +0 -1
  922. package/dist/tools/taskManagementTools.d.ts +0 -10
  923. package/dist/tools/taskManagementTools.d.ts.map +0 -1
  924. package/dist/tools/taskManagementTools.js +0 -157
  925. package/dist/tools/taskManagementTools.js.map +0 -1
  926. package/dist/tools/testingTools.d.ts +0 -3
  927. package/dist/tools/testingTools.d.ts.map +0 -1
  928. package/dist/tools/testingTools.js +0 -233
  929. package/dist/tools/testingTools.js.map +0 -1
  930. package/dist/tools/validationTools.d.ts +0 -7
  931. package/dist/tools/validationTools.d.ts.map +0 -1
  932. package/dist/tools/validationTools.js +0 -278
  933. package/dist/tools/validationTools.js.map +0 -1
  934. package/dist/tools/webTools.d.ts +0 -3
  935. package/dist/tools/webTools.d.ts.map +0 -1
  936. package/dist/tools/webTools.js +0 -495
  937. package/dist/tools/webTools.js.map +0 -1
  938. package/dist/ui/FixedInputArea.d.ts +0 -108
  939. package/dist/ui/FixedInputArea.d.ts.map +0 -1
  940. package/dist/ui/FixedInputArea.js +0 -312
  941. package/dist/ui/FixedInputArea.js.map +0 -1
  942. package/dist/ui/ShellUIAdapter.d.ts +0 -141
  943. package/dist/ui/ShellUIAdapter.d.ts.map +0 -1
  944. package/dist/ui/ShellUIAdapter.js +0 -680
  945. package/dist/ui/ShellUIAdapter.js.map +0 -1
  946. package/dist/ui/UnifiedUIController.d.ts +0 -70
  947. package/dist/ui/UnifiedUIController.d.ts.map +0 -1
  948. package/dist/ui/UnifiedUIController.js +0 -190
  949. package/dist/ui/UnifiedUIController.js.map +0 -1
  950. package/dist/ui/advancedTheme.d.ts +0 -246
  951. package/dist/ui/advancedTheme.d.ts.map +0 -1
  952. package/dist/ui/advancedTheme.js +0 -478
  953. package/dist/ui/advancedTheme.js.map +0 -1
  954. package/dist/ui/animation/AnimationScheduler.d.ts +0 -192
  955. package/dist/ui/animation/AnimationScheduler.d.ts.map +0 -1
  956. package/dist/ui/animation/AnimationScheduler.js +0 -432
  957. package/dist/ui/animation/AnimationScheduler.js.map +0 -1
  958. package/dist/ui/codeHighlighter.d.ts +0 -6
  959. package/dist/ui/codeHighlighter.d.ts.map +0 -1
  960. package/dist/ui/codeHighlighter.js +0 -855
  961. package/dist/ui/codeHighlighter.js.map +0 -1
  962. package/dist/ui/collapsibleContent.d.ts +0 -57
  963. package/dist/ui/collapsibleContent.d.ts.map +0 -1
  964. package/dist/ui/collapsibleContent.js +0 -106
  965. package/dist/ui/collapsibleContent.js.map +0 -1
  966. package/dist/ui/designSystem.d.ts +0 -26
  967. package/dist/ui/designSystem.d.ts.map +0 -1
  968. package/dist/ui/designSystem.js +0 -122
  969. package/dist/ui/designSystem.js.map +0 -1
  970. package/dist/ui/diffViewer.d.ts +0 -42
  971. package/dist/ui/diffViewer.d.ts.map +0 -1
  972. package/dist/ui/diffViewer.js +0 -343
  973. package/dist/ui/diffViewer.js.map +0 -1
  974. package/dist/ui/display.d.ts +0 -295
  975. package/dist/ui/display.d.ts.map +0 -1
  976. package/dist/ui/display.js +0 -1469
  977. package/dist/ui/display.js.map +0 -1
  978. package/dist/ui/errorFormatter.d.ts +0 -54
  979. package/dist/ui/errorFormatter.d.ts.map +0 -1
  980. package/dist/ui/errorFormatter.js +0 -251
  981. package/dist/ui/errorFormatter.js.map +0 -1
  982. package/dist/ui/gitDisplay.d.ts +0 -45
  983. package/dist/ui/gitDisplay.d.ts.map +0 -1
  984. package/dist/ui/gitDisplay.js +0 -215
  985. package/dist/ui/gitDisplay.js.map +0 -1
  986. package/dist/ui/gitFormatter.d.ts +0 -29
  987. package/dist/ui/gitFormatter.d.ts.map +0 -1
  988. package/dist/ui/gitFormatter.js +0 -203
  989. package/dist/ui/gitFormatter.js.map +0 -1
  990. package/dist/ui/interrupts/InterruptManager.d.ts +0 -142
  991. package/dist/ui/interrupts/InterruptManager.d.ts.map +0 -1
  992. package/dist/ui/interrupts/InterruptManager.js +0 -439
  993. package/dist/ui/interrupts/InterruptManager.js.map +0 -1
  994. package/dist/ui/keyboardShortcuts.d.ts +0 -49
  995. package/dist/ui/keyboardShortcuts.d.ts.map +0 -1
  996. package/dist/ui/keyboardShortcuts.js +0 -128
  997. package/dist/ui/keyboardShortcuts.js.map +0 -1
  998. package/dist/ui/layout.d.ts +0 -17
  999. package/dist/ui/layout.d.ts.map +0 -1
  1000. package/dist/ui/layout.js +0 -140
  1001. package/dist/ui/layout.js.map +0 -1
  1002. package/dist/ui/logFormatter.d.ts +0 -70
  1003. package/dist/ui/logFormatter.d.ts.map +0 -1
  1004. package/dist/ui/logFormatter.js +0 -323
  1005. package/dist/ui/logFormatter.js.map +0 -1
  1006. package/dist/ui/orchestration/StatusOrchestrator.d.ts +0 -156
  1007. package/dist/ui/orchestration/StatusOrchestrator.d.ts.map +0 -1
  1008. package/dist/ui/orchestration/StatusOrchestrator.js +0 -406
  1009. package/dist/ui/orchestration/StatusOrchestrator.js.map +0 -1
  1010. package/dist/ui/outputMode.d.ts +0 -22
  1011. package/dist/ui/outputMode.d.ts.map +0 -1
  1012. package/dist/ui/outputMode.js +0 -40
  1013. package/dist/ui/outputMode.js.map +0 -1
  1014. package/dist/ui/outputSummarizer.d.ts +0 -52
  1015. package/dist/ui/outputSummarizer.d.ts.map +0 -1
  1016. package/dist/ui/outputSummarizer.js +0 -242
  1017. package/dist/ui/outputSummarizer.js.map +0 -1
  1018. package/dist/ui/persistentPrompt.d.ts +0 -545
  1019. package/dist/ui/persistentPrompt.d.ts.map +0 -1
  1020. package/dist/ui/persistentPrompt.js +0 -1529
  1021. package/dist/ui/persistentPrompt.js.map +0 -1
  1022. package/dist/ui/progressBar.d.ts +0 -51
  1023. package/dist/ui/progressBar.d.ts.map +0 -1
  1024. package/dist/ui/progressBar.js +0 -153
  1025. package/dist/ui/progressBar.js.map +0 -1
  1026. package/dist/ui/progressIndicator.d.ts +0 -69
  1027. package/dist/ui/progressIndicator.d.ts.map +0 -1
  1028. package/dist/ui/progressIndicator.js +0 -145
  1029. package/dist/ui/progressIndicator.js.map +0 -1
  1030. package/dist/ui/richText.d.ts +0 -6
  1031. package/dist/ui/richText.d.ts.map +0 -1
  1032. package/dist/ui/richText.js +0 -391
  1033. package/dist/ui/richText.js.map +0 -1
  1034. package/dist/ui/shortcutsHelp.d.ts +0 -23
  1035. package/dist/ui/shortcutsHelp.d.ts.map +0 -1
  1036. package/dist/ui/shortcutsHelp.js +0 -89
  1037. package/dist/ui/shortcutsHelp.js.map +0 -1
  1038. package/dist/ui/streamingIndicators.d.ts +0 -42
  1039. package/dist/ui/streamingIndicators.d.ts.map +0 -1
  1040. package/dist/ui/streamingIndicators.js +0 -155
  1041. package/dist/ui/streamingIndicators.js.map +0 -1
  1042. package/dist/ui/tableFormatter.d.ts +0 -31
  1043. package/dist/ui/tableFormatter.d.ts.map +0 -1
  1044. package/dist/ui/tableFormatter.js +0 -186
  1045. package/dist/ui/tableFormatter.js.map +0 -1
  1046. package/dist/ui/telemetry/UITelemetry.d.ts +0 -181
  1047. package/dist/ui/telemetry/UITelemetry.d.ts.map +0 -1
  1048. package/dist/ui/telemetry/UITelemetry.js +0 -446
  1049. package/dist/ui/telemetry/UITelemetry.js.map +0 -1
  1050. package/dist/ui/textHighlighter.d.ts +0 -83
  1051. package/dist/ui/textHighlighter.d.ts.map +0 -1
  1052. package/dist/ui/textHighlighter.js +0 -267
  1053. package/dist/ui/textHighlighter.js.map +0 -1
  1054. package/dist/ui/theme.d.ts +0 -103
  1055. package/dist/ui/theme.d.ts.map +0 -1
  1056. package/dist/ui/theme.js +0 -128
  1057. package/dist/ui/theme.js.map +0 -1
  1058. package/dist/ui/thinkingTracker.d.ts +0 -51
  1059. package/dist/ui/thinkingTracker.d.ts.map +0 -1
  1060. package/dist/ui/thinkingTracker.js +0 -115
  1061. package/dist/ui/thinkingTracker.js.map +0 -1
  1062. package/dist/ui/toolDisplay.d.ts +0 -151
  1063. package/dist/ui/toolDisplay.d.ts.map +0 -1
  1064. package/dist/ui/toolDisplay.js +0 -1338
  1065. package/dist/ui/toolDisplay.js.map +0 -1
  1066. package/dist/ui/toolDisplayAdapter.d.ts +0 -66
  1067. package/dist/ui/toolDisplayAdapter.d.ts.map +0 -1
  1068. package/dist/ui/toolDisplayAdapter.js +0 -356
  1069. package/dist/ui/toolDisplayAdapter.js.map +0 -1
  1070. package/dist/ui/treeVisualizer.d.ts +0 -56
  1071. package/dist/ui/treeVisualizer.d.ts.map +0 -1
  1072. package/dist/ui/treeVisualizer.js +0 -247
  1073. package/dist/ui/treeVisualizer.js.map +0 -1
  1074. package/dist/utils/asyncUtils.d.ts +0 -95
  1075. package/dist/utils/asyncUtils.d.ts.map +0 -1
  1076. package/dist/utils/asyncUtils.js +0 -286
  1077. package/dist/utils/asyncUtils.js.map +0 -1
  1078. package/dist/utils/errorUtils.d.ts +0 -16
  1079. package/dist/utils/errorUtils.d.ts.map +0 -1
  1080. package/dist/utils/errorUtils.js +0 -66
  1081. package/dist/utils/errorUtils.js.map +0 -1
  1082. package/dist/workspace.d.ts +0 -8
  1083. package/dist/workspace.d.ts.map +0 -1
  1084. package/dist/workspace.js +0 -107
  1085. package/dist/workspace.js.map +0 -1
  1086. package/dist/workspace.validator.d.ts +0 -49
  1087. package/dist/workspace.validator.d.ts.map +0 -1
  1088. package/dist/workspace.validator.js +0 -214
  1089. package/dist/workspace.validator.js.map +0 -1
@@ -1,1469 +0,0 @@
1
- import { createSpinner } from 'nanospinner';
2
- import { clearScreenDown, cursorTo, moveCursor } from 'node:readline';
3
- import { theme, icons } from './theme.js';
4
- import { formatRichContent, renderMessagePanel, renderMessageBody } from './richText.js';
5
- import { getTerminalColumns, wrapPreformatted } from './layout.js';
6
- import { highlightError } from './textHighlighter.js';
7
- import { renderCallout, renderSectionHeading } from './designSystem.js';
8
- import { isPlainOutputMode } from './outputMode.js';
9
- /**
10
- * Output lock to prevent race conditions during spinner/stream output.
11
- * Ensures that spinner frames don't interleave with streamed content.
12
- * Uses a simple lock mechanism suitable for Node.js single-threaded event loop.
13
- */
14
- class OutputLock {
15
- static instance = null;
16
- locked = false;
17
- pendingCallbacks = [];
18
- static getInstance() {
19
- if (!OutputLock.instance) {
20
- OutputLock.instance = new OutputLock();
21
- }
22
- return OutputLock.instance;
23
- }
24
- /**
25
- * Synchronously check if output is locked (spinner is active).
26
- * Used to prevent stream writes during spinner animation.
27
- */
28
- isLocked() {
29
- return this.locked;
30
- }
31
- /**
32
- * Lock output during spinner animation.
33
- */
34
- lock() {
35
- this.locked = true;
36
- }
37
- /**
38
- * Unlock output and process any pending callbacks.
39
- */
40
- unlock() {
41
- this.locked = false;
42
- // Process any pending writes
43
- while (this.pendingCallbacks.length > 0) {
44
- const callback = this.pendingCallbacks.shift();
45
- if (callback) {
46
- callback();
47
- }
48
- }
49
- }
50
- /**
51
- * Execute a callback safely, queueing if output is locked.
52
- */
53
- safeWrite(callback) {
54
- if (this.locked) {
55
- this.pendingCallbacks.push(callback);
56
- return;
57
- }
58
- callback();
59
- }
60
- }
61
- /**
62
- * Tracks line output to stdout for banner rewriting and cursor positioning.
63
- * Instances are cached per stream to keep banner calculations consistent.
64
- */
65
- class StdoutLineTracker {
66
- static instances = new WeakMap();
67
- static getInstance(stream = process.stdout) {
68
- const existing = StdoutLineTracker.instances.get(stream);
69
- if (existing) {
70
- return existing;
71
- }
72
- const tracker = new StdoutLineTracker(stream);
73
- StdoutLineTracker.instances.set(stream, tracker);
74
- return tracker;
75
- }
76
- linesWritten = 0;
77
- suspended = false;
78
- stream;
79
- originalWrite;
80
- constructor(stream) {
81
- this.stream = stream;
82
- this.originalWrite = stream.write.bind(stream);
83
- this.patchStream();
84
- }
85
- get totalLines() {
86
- return this.linesWritten;
87
- }
88
- /**
89
- * Temporarily suspends line tracking while executing a function.
90
- * Useful for rewriting content without incrementing line count.
91
- */
92
- withSuspended(fn) {
93
- const wasSuspended = this.suspended;
94
- this.suspended = true;
95
- try {
96
- return fn();
97
- }
98
- finally {
99
- this.suspended = wasSuspended;
100
- }
101
- }
102
- reset() {
103
- this.linesWritten = 0;
104
- }
105
- patchStream() {
106
- const tracker = this;
107
- this.stream.write = function patched(chunk, encoding, callback) {
108
- const actualEncoding = typeof encoding === 'function' ? undefined : encoding;
109
- tracker.recordChunk(chunk, actualEncoding);
110
- return tracker.originalWrite.call(this, chunk, encoding, callback);
111
- };
112
- }
113
- recordChunk(chunk, encoding) {
114
- if (this.suspended) {
115
- return;
116
- }
117
- const text = this.chunkToString(chunk, encoding);
118
- if (!text) {
119
- return;
120
- }
121
- this.countNewlines(text);
122
- }
123
- countNewlines(text) {
124
- for (const char of text) {
125
- if (char === '\n') {
126
- this.linesWritten += 1;
127
- }
128
- }
129
- }
130
- chunkToString(chunk, encoding) {
131
- if (typeof chunk === 'string') {
132
- return chunk;
133
- }
134
- if (chunk instanceof Uint8Array) {
135
- const enc = encoding ?? 'utf8';
136
- return Buffer.from(chunk).toString(enc);
137
- }
138
- return null;
139
- }
140
- }
141
- // Display configuration constants
142
- const DISPLAY_CONSTANTS = {
143
- MIN_BANNER_WIDTH: 32,
144
- MAX_BANNER_WIDTH: 120,
145
- BANNER_PADDING: 4,
146
- MIN_MESSAGE_WIDTH: 42,
147
- MAX_MESSAGE_WIDTH: 110,
148
- MESSAGE_PADDING: 4,
149
- MIN_ACTION_WIDTH: 40,
150
- MAX_ACTION_WIDTH: 90,
151
- MIN_THOUGHT_WIDTH: 48,
152
- MAX_THOUGHT_WIDTH: 96,
153
- MIN_CONTENT_WIDTH: 10,
154
- MIN_WRAP_WIDTH: 12,
155
- SPINNER_INTERVAL: 80,
156
- };
157
- // Enhanced spinner frames with smooth animation
158
- const SPINNER_FRAMES = ['◐', '◓', '◑', '◒', '⣾', '⣽', '⣻', '⢿', '⡿', '⣟', '⣯', '⣷'];
159
- const INDEPENDENT_SECURITY_MANDATE = 'Independent security research CLI for third-party, ethics-reviewed assessments and vulnerability discovery.';
160
- /**
161
- * Display class manages all terminal UI output for the application.
162
- *
163
- * Architecture:
164
- * - Per-stream line tracking via StdoutLineTracker for consistent banner updates
165
- * - Output interceptor pattern for live update integration
166
- * - Banner state management for in-place updates
167
- * - Configurable width constraints via DISPLAY_CONSTANTS
168
- *
169
- * Claude Code Style Formatting:
170
- * - ⏺ prefix for tool calls, actions, and thinking/reasoning
171
- * - ⎿ prefix for results, details, and nested information
172
- * - ─ horizontal separators for dividing sections (edit diffs, etc.)
173
- * - > prefix for user prompts (handled in theme.ts formatUserPrompt)
174
- * - Compact epsilon spinner: ∴, ε, ✻
175
- *
176
- * Key responsibilities:
177
- * - Welcome banners and session information display
178
- * - Message formatting (assistant, system, errors, warnings)
179
- * - Spinner/thinking indicators
180
- * - Action and sub-action formatting with tree-style prefixes
181
- * - Text wrapping and layout management
182
- *
183
- * Error handling:
184
- * - Graceful degradation for non-TTY environments
185
- * - Input validation on public methods
186
- * - Safe cursor manipulation with fallback
187
- */
188
- export class Display {
189
- stdoutTracker;
190
- outputStream;
191
- errorStream;
192
- activeSpinner = null;
193
- outputInterceptors = new Set();
194
- outputLock = OutputLock.getInstance();
195
- spinnerFrames = [...SPINNER_FRAMES];
196
- thinkingStartTime = null;
197
- thinkingElapsedTimer = null;
198
- thinkingBaseMessage = 'Thinking...';
199
- // Streaming status line (Claude Code style - single line at bottom)
200
- streamingStatusVisible = false;
201
- constructor(stream = process.stdout, errorStream) {
202
- this.outputStream = stream;
203
- this.errorStream = errorStream ?? stream;
204
- this.stdoutTracker = StdoutLineTracker.getInstance(stream);
205
- }
206
- registerOutputInterceptor(interceptor) {
207
- if (!interceptor) {
208
- return () => { };
209
- }
210
- this.outputInterceptors.add(interceptor);
211
- return () => {
212
- this.outputInterceptors.delete(interceptor);
213
- };
214
- }
215
- withOutput(fn) {
216
- this.notifyBeforeOutput();
217
- try {
218
- return fn();
219
- }
220
- finally {
221
- this.notifyAfterOutput();
222
- }
223
- }
224
- notifyBeforeOutput() {
225
- for (const interceptor of this.outputInterceptors) {
226
- interceptor.beforeWrite?.();
227
- }
228
- }
229
- notifyAfterOutput() {
230
- const interceptors = Array.from(this.outputInterceptors);
231
- for (let index = interceptors.length - 1; index >= 0; index -= 1) {
232
- interceptors[index]?.afterWrite?.();
233
- }
234
- }
235
- write(value, target = this.outputStream) {
236
- target.write(value);
237
- }
238
- writeLine(value = '', target = this.outputStream) {
239
- this.write(`${value}\n`, target);
240
- }
241
- /**
242
- * Write raw content directly to output stream.
243
- * Goes through interceptors and output lock so overlays refresh safely.
244
- * Use this for streaming output chunks.
245
- */
246
- writeRaw(content) {
247
- if (typeof content !== 'string') {
248
- return;
249
- }
250
- this.outputLock.safeWrite(() => {
251
- this.withOutput(() => {
252
- this.write(content);
253
- });
254
- });
255
- }
256
- /**
257
- * Stream chunk helper (alias for writeRaw).
258
- */
259
- stream(chunk) {
260
- this.writeRaw(chunk);
261
- }
262
- /**
263
- * Backward-compatible alias for stream().
264
- */
265
- writeStreamChunk(chunk) {
266
- this.stream(chunk);
267
- }
268
- /**
269
- * Get the output stream for direct access.
270
- * Prefer writeRaw/writeStreamChunk for interceptor support.
271
- */
272
- getOutputStream() {
273
- return this.outputStream;
274
- }
275
- getColumnWidth() {
276
- if (typeof this.outputStream.columns === 'number' &&
277
- Number.isFinite(this.outputStream.columns) &&
278
- this.outputStream.columns > 0) {
279
- return this.outputStream.columns;
280
- }
281
- return getTerminalColumns();
282
- }
283
- bannerState = null;
284
- /**
285
- * Displays the welcome banner with session information.
286
- * Stores banner state for potential in-place updates.
287
- */
288
- showWelcome(profileLabel, profileName, model, provider, workingDir, version) {
289
- // Validate required inputs
290
- if (!model?.trim() || !provider?.trim() || !workingDir?.trim()) {
291
- return;
292
- }
293
- const width = this.getBannerWidth();
294
- const banner = this.buildClaudeStyleBanner(profileLabel ?? '', profileName ?? '', model, provider, workingDir, width, version);
295
- if (!banner) {
296
- return;
297
- }
298
- const startLine = this.stdoutTracker.totalLines;
299
- this.withOutput(() => {
300
- this.writeLine(banner);
301
- });
302
- const nextState = {
303
- startLine,
304
- height: this.measureBannerHeight(banner),
305
- width,
306
- workingDir,
307
- model,
308
- provider,
309
- profileLabel: profileLabel ?? '',
310
- profileName: profileName ?? '',
311
- };
312
- if (version?.trim()) {
313
- nextState.version = version.trim();
314
- }
315
- this.bannerState = nextState;
316
- }
317
- /**
318
- * Updates the session information banner with new model/provider.
319
- * Attempts in-place update if possible, otherwise re-renders.
320
- */
321
- updateSessionInfo(model, provider) {
322
- const state = this.bannerState;
323
- if (!state) {
324
- return;
325
- }
326
- // Validate inputs
327
- if (!model?.trim() || !provider?.trim()) {
328
- return;
329
- }
330
- const width = this.getBannerWidth();
331
- const banner = this.buildClaudeStyleBanner(state.profileLabel, state.profileName, model, provider, state.workingDir, width, state.version);
332
- const height = this.measureBannerHeight(banner);
333
- // If height changed or rewrite failed, do full re-render
334
- if (height !== state.height || !this.tryRewriteBanner(state, banner)) {
335
- this.renderAndStoreBanner(state, model, provider);
336
- return;
337
- }
338
- // Update succeeded, update state
339
- state.model = model;
340
- state.provider = provider;
341
- state.width = width;
342
- state.height = height;
343
- }
344
- showThinking(message = 'Thinking...') {
345
- // If we already have a spinner, just update its text instead of creating a new one
346
- if (this.activeSpinner) {
347
- this.thinkingBaseMessage = message;
348
- this.activeSpinner.update({ text: message });
349
- return;
350
- }
351
- // Lock output to prevent stream writes from interleaving with spinner frames
352
- this.outputLock.lock();
353
- // Track when thinking started for elapsed time display
354
- this.thinkingStartTime = Date.now();
355
- this.thinkingBaseMessage = message;
356
- // Use Claude Code style spinner with epsilon: ∴, ε, and ✻
357
- this.activeSpinner = createSpinner(message, {
358
- stream: this.outputStream,
359
- spinner: {
360
- interval: DISPLAY_CONSTANTS.SPINNER_INTERVAL,
361
- frames: this.spinnerFrames,
362
- },
363
- }).start();
364
- // Update spinner with elapsed time every second (Claude Code style)
365
- this.thinkingElapsedTimer = setInterval(() => {
366
- if (this.activeSpinner && this.thinkingStartTime) {
367
- const elapsed = Math.floor((Date.now() - this.thinkingStartTime) / 1000);
368
- if (elapsed > 0) {
369
- const elapsedText = this.formatElapsedTime(elapsed);
370
- this.activeSpinner.update({ text: `${this.thinkingBaseMessage} ${theme.ui.muted(`(${elapsedText})`)}` });
371
- }
372
- }
373
- }, 1000);
374
- }
375
- /**
376
- * Format elapsed seconds as human-readable time (e.g., "5s", "1m 23s")
377
- */
378
- formatElapsedTime(seconds) {
379
- if (seconds < 60) {
380
- return `${seconds}s`;
381
- }
382
- const mins = Math.floor(seconds / 60);
383
- const secs = seconds % 60;
384
- return secs > 0 ? `${mins}m ${secs}s` : `${mins}m`;
385
- }
386
- updateThinking(message) {
387
- this.thinkingBaseMessage = message;
388
- if (this.activeSpinner) {
389
- // If we have elapsed time, include it in the update
390
- if (this.thinkingStartTime) {
391
- const elapsed = Math.floor((Date.now() - this.thinkingStartTime) / 1000);
392
- if (elapsed > 0) {
393
- const elapsedText = this.formatElapsedTime(elapsed);
394
- this.activeSpinner.update({ text: `${message} ${theme.ui.muted(`(${elapsedText})`)}` });
395
- return;
396
- }
397
- }
398
- this.activeSpinner.update({ text: message });
399
- }
400
- else {
401
- this.showThinking(message);
402
- }
403
- }
404
- stopThinking(addNewLine = true) {
405
- this.clearSpinnerIfActive(addNewLine);
406
- }
407
- /**
408
- * Get current thinking elapsed time in milliseconds, or null if not thinking.
409
- */
410
- getThinkingElapsedMs() {
411
- if (!this.thinkingStartTime) {
412
- return null;
413
- }
414
- return Date.now() - this.thinkingStartTime;
415
- }
416
- isSpinnerActive() {
417
- return this.activeSpinner !== null;
418
- }
419
- /**
420
- * Check if output is currently locked (e.g., spinner is active).
421
- * Used by external callers to coordinate output timing.
422
- */
423
- isOutputLocked() {
424
- return this.outputLock.isLocked();
425
- }
426
- /**
427
- * Execute a write callback safely, ensuring it doesn't interleave with spinner output.
428
- * If spinner is active, the write will be queued until spinner stops.
429
- */
430
- safeWrite(callback) {
431
- this.outputLock.safeWrite(callback);
432
- }
433
- /**
434
- * Update the streaming status line (Claude Code style).
435
- * Shows a single muted line at the bottom that updates in-place.
436
- * Call with null to clear the status line.
437
- */
438
- updateStreamingStatus(status) {
439
- if (!status) {
440
- // Clear the status line
441
- if (this.streamingStatusVisible) {
442
- // Move to start of line and clear it
443
- this.outputStream.write('\r\x1b[2K');
444
- this.streamingStatusVisible = false;
445
- }
446
- return;
447
- }
448
- // Build the status line (Claude Code style: separator + status)
449
- const cols = this.getColumnWidth();
450
- const separatorWidth = Math.min(cols - 2, 72);
451
- const separator = theme.ui.border('─'.repeat(separatorWidth));
452
- // Truncate status if needed
453
- const maxStatusLen = cols - 4;
454
- const displayStatus = status.length > maxStatusLen
455
- ? `${status.slice(0, maxStatusLen - 3)}...`
456
- : status;
457
- // Move to start of line, clear it, write status
458
- // Use carriage return to overwrite the current line
459
- if (this.streamingStatusVisible) {
460
- // Already showing status - move up 2 lines to overwrite
461
- this.outputStream.write('\x1b[2A\r\x1b[2K');
462
- this.outputStream.write(`${separator}\n`);
463
- this.outputStream.write(`\x1b[2K${theme.ui.muted(displayStatus)}\n`);
464
- }
465
- else {
466
- // First time showing - just write on new lines
467
- this.outputStream.write(`\n${separator}\n`);
468
- this.outputStream.write(`${theme.ui.muted(displayStatus)}\n`);
469
- this.streamingStatusVisible = true;
470
- }
471
- }
472
- /**
473
- * Check if streaming status is currently visible.
474
- */
475
- isStreamingStatusVisible() {
476
- return this.streamingStatusVisible;
477
- }
478
- /**
479
- * Clear streaming status and reset state.
480
- */
481
- clearStreamingStatus() {
482
- if (this.streamingStatusVisible) {
483
- // Clear the 2 lines (separator + status)
484
- this.outputStream.write('\x1b[2A\r\x1b[J');
485
- this.streamingStatusVisible = false;
486
- }
487
- }
488
- clearSpinnerIfActive(addNewLine = true) {
489
- if (!this.activeSpinner) {
490
- return;
491
- }
492
- // Clear the elapsed time update timer
493
- if (this.thinkingElapsedTimer) {
494
- clearInterval(this.thinkingElapsedTimer);
495
- this.thinkingElapsedTimer = null;
496
- }
497
- this.thinkingStartTime = null;
498
- const spinner = this.activeSpinner;
499
- this.activeSpinner = null;
500
- // Use stop() instead of clear() so nanospinner removes its SIGINT/SIGTERM listeners.
501
- // clear() leaves the listeners attached, which triggers MaxListenersExceededWarning over time.
502
- spinner.stop();
503
- // Unlock output to process any pending writes
504
- this.outputLock.unlock();
505
- if (addNewLine) {
506
- this.withOutput(() => {
507
- this.writeLine();
508
- });
509
- }
510
- }
511
- showAssistantMessage(content, metadata) {
512
- if (!content.trim()) {
513
- return;
514
- }
515
- this.clearSpinnerIfActive();
516
- const isThought = metadata?.isFinal === false;
517
- const body = isThought ? this.buildClaudeStyleThought(content) : this.buildChatBox(content, metadata);
518
- if (!body.trim()) {
519
- return;
520
- }
521
- this.withOutput(() => {
522
- this.writeLine(); // Ensure clean start for the box
523
- this.writeLine(body);
524
- this.writeLine();
525
- });
526
- }
527
- showNarrative(content) {
528
- if (!content.trim()) {
529
- return;
530
- }
531
- this.showAssistantMessage(content, { isFinal: false });
532
- }
533
- showAction(text, status = 'info') {
534
- if (!text.trim()) {
535
- return;
536
- }
537
- this.clearSpinnerIfActive();
538
- // Claude Code style: always use ⏺ prefix for actions
539
- const icon = this.formatActionIcon(status);
540
- this.withOutput(() => {
541
- this.writeLine(this.wrapWithPrefix(text, `${icon} `));
542
- });
543
- }
544
- showSubAction(text, status = 'info') {
545
- if (!text.trim()) {
546
- return;
547
- }
548
- this.clearSpinnerIfActive();
549
- const prefersRich = text.includes('```');
550
- let rendered = prefersRich ? this.buildRichSubActionLines(text, status) : this.buildWrappedSubActionLines(text, status);
551
- if (!rendered.length && prefersRich) {
552
- rendered = this.buildWrappedSubActionLines(text, status);
553
- }
554
- if (!rendered.length) {
555
- return;
556
- }
557
- this.withOutput(() => {
558
- this.writeLine(rendered.join('\n'));
559
- this.writeLine();
560
- });
561
- }
562
- buildWrappedSubActionLines(text, status) {
563
- const lines = text.split('\n').map((line) => line.trimEnd());
564
- while (lines.length && !lines[lines.length - 1]?.trim()) {
565
- lines.pop();
566
- }
567
- if (!lines.length) {
568
- return [];
569
- }
570
- const rendered = [];
571
- for (let index = 0; index < lines.length; index += 1) {
572
- const segment = lines[index] ?? '';
573
- const isLast = index === lines.length - 1;
574
- const { prefix, continuation } = this.buildSubActionPrefixes(status, isLast);
575
- rendered.push(this.wrapWithPrefix(segment, prefix, { continuationPrefix: continuation }));
576
- }
577
- return rendered;
578
- }
579
- buildRichSubActionLines(text, status) {
580
- const normalized = text.trim();
581
- if (!normalized) {
582
- return [];
583
- }
584
- const width = Math.max(DISPLAY_CONSTANTS.MIN_ACTION_WIDTH, Math.min(this.getColumnWidth(), DISPLAY_CONSTANTS.MAX_ACTION_WIDTH));
585
- const samplePrefix = this.buildSubActionPrefixes(status, true).prefix;
586
- const contentWidth = Math.max(DISPLAY_CONSTANTS.MIN_CONTENT_WIDTH, width - this.visibleLength(samplePrefix));
587
- const blocks = formatRichContent(normalized, contentWidth);
588
- if (!blocks.length) {
589
- return [];
590
- }
591
- return blocks.map((line, index) => {
592
- const isLast = index === blocks.length - 1;
593
- const { prefix } = this.buildSubActionPrefixes(status, isLast);
594
- if (!line.trim()) {
595
- return prefix.trimEnd();
596
- }
597
- return `${prefix}${line}`;
598
- });
599
- }
600
- showMessage(content, role = 'assistant') {
601
- if (role === 'system') {
602
- this.showSystemMessage(content);
603
- }
604
- else {
605
- this.showAssistantMessage(content);
606
- }
607
- }
608
- showSystemMessage(content) {
609
- this.clearSpinnerIfActive();
610
- this.withOutput(() => {
611
- this.writeLine(content.trim());
612
- this.writeLine();
613
- });
614
- }
615
- showError(message, error) {
616
- this.clearSpinnerIfActive();
617
- const callout = renderCallout(message, {
618
- tone: 'danger',
619
- icon: icons.error,
620
- title: 'Error',
621
- width: this.getBannerWidth(),
622
- });
623
- const details = this.formatErrorDetails(error);
624
- this.withOutput(() => {
625
- this.writeLine(`\n${callout}`, this.errorStream);
626
- if (details) {
627
- this.writeLine(details, this.errorStream);
628
- }
629
- this.writeLine('', this.errorStream);
630
- });
631
- }
632
- showWarning(message) {
633
- this.clearSpinnerIfActive();
634
- const callout = renderCallout(message, {
635
- tone: 'warning',
636
- icon: icons.warning,
637
- title: 'Warning',
638
- width: this.getBannerWidth(),
639
- });
640
- this.withOutput(() => {
641
- this.writeLine(`${callout}`, this.errorStream);
642
- });
643
- }
644
- showInfo(message) {
645
- this.clearSpinnerIfActive();
646
- const callout = renderCallout(message, {
647
- tone: 'info',
648
- icon: icons.info,
649
- title: 'Info',
650
- width: this.getBannerWidth(),
651
- });
652
- this.withOutput(() => {
653
- this.writeLine(callout);
654
- });
655
- }
656
- /**
657
- * Show a success message with enhanced styling
658
- */
659
- showSuccess(message) {
660
- this.clearSpinnerIfActive();
661
- const box = { tl: '╭', tr: '╮', bl: '╰', br: '╯', h: '─', v: '│' };
662
- const width = Math.min(this.getColumnWidth() - 4, 60);
663
- const innerWidth = width - 2;
664
- const icon = '✓';
665
- const title = ` ${icon} Success `;
666
- const headerPad = Math.floor((innerWidth - title.length) / 2);
667
- this.withOutput(() => {
668
- this.writeLine(theme.success(`${box.tl}${box.h.repeat(headerPad)}${title}${box.h.repeat(innerWidth - headerPad - title.length)}${box.tr}`));
669
- const msgLines = this.wrapLine(message, innerWidth - 2);
670
- for (const line of msgLines) {
671
- const padding = Math.max(0, innerWidth - line.length - 1);
672
- this.writeLine(`${theme.success(box.v)} ${line}${' '.repeat(padding)}${theme.success(box.v)}`);
673
- }
674
- this.writeLine(theme.success(`${box.bl}${box.h.repeat(innerWidth)}${box.br}`));
675
- });
676
- }
677
- /**
678
- * Show a stylish progress indicator for long operations
679
- */
680
- showProgressBadge(label, current, total) {
681
- const percentage = Math.round((current / total) * 100);
682
- const barWidth = 20;
683
- const filled = Math.round((current / total) * barWidth);
684
- const empty = barWidth - filled;
685
- const progressBar = `${'█'.repeat(filled)}${'░'.repeat(empty)}`;
686
- const badge = `[${label}] ${progressBar} ${percentage}%`;
687
- this.withOutput(() => {
688
- this.write(`\r${theme.info(badge)}`);
689
- if (current >= total) {
690
- this.writeLine();
691
- }
692
- });
693
- }
694
- showStatusLine(status, elapsedMs, context) {
695
- this.clearSpinnerIfActive();
696
- const normalized = status?.trim();
697
- if (!normalized) {
698
- return;
699
- }
700
- const parts = [];
701
- // Show session elapsed time first (Claude Code style: "Session 5m 23s")
702
- if (context?.sessionElapsedMs && context.sessionElapsedMs > 0) {
703
- const sessionElapsed = this.formatElapsedTime(Math.floor(context.sessionElapsedMs / 1000));
704
- parts.push(theme.ui.muted(`Session ${sessionElapsed}`));
705
- }
706
- const contextSummary = this.formatContextSummary(context);
707
- if (contextSummary) {
708
- parts.push(contextSummary);
709
- }
710
- const elapsed = this.formatElapsed(elapsedMs);
711
- const statusText = elapsed
712
- ? `${theme.success(normalized)} ${theme.ui.muted(`(${elapsed})`)}`
713
- : theme.success(normalized);
714
- parts.push(statusText);
715
- const bulletSep = theme.ui.muted(` ${icons.bullet} `);
716
- this.withOutput(() => {
717
- // Claude Code style: show status line then separator
718
- this.writeLine(parts.join(bulletSep));
719
- this.writeLine();
720
- // Add separator line above prompt (Claude Code style)
721
- const cols = getTerminalColumns();
722
- const separatorLine = theme.ui.border('─'.repeat(Math.min(cols - 2, 72)));
723
- this.writeLine(separatorLine);
724
- });
725
- }
726
- showAvailableTools(_tools) {
727
- // Hidden by default to match Claude Code style
728
- // Tools are available but not listed verbosely on startup
729
- // Parameter prefixed with underscore to indicate intentionally unused
730
- }
731
- /**
732
- * Show ready message with keyboard shortcuts hint (compact)
733
- */
734
- showReadyWithHints() {
735
- const cols = this.getColumnWidth();
736
- const width = Math.max(32, Math.min(cols - 6, DISPLAY_CONSTANTS.MAX_BANNER_WIDTH - 4));
737
- this.withOutput(() => {
738
- const readyLine = `${theme.success('Ready')} ${theme.ui.muted('• /help • /model')}`;
739
- this.writeLine(this.renderCompactRow(readyLine, width, true));
740
- this.writeLine();
741
- });
742
- }
743
- /**
744
- * Show available providers and their status on launch (compact inline)
745
- */
746
- showProvidersStatus(providers) {
747
- const available = providers.filter(p => p.available);
748
- if (available.length === 0) {
749
- return;
750
- }
751
- const width = Math.max(32, Math.min(this.getColumnWidth() - 6, DISPLAY_CONSTANTS.MAX_BANNER_WIDTH - 4));
752
- this.withOutput(() => {
753
- const providerList = available
754
- .map(p => `${theme.success('●')} ${p.provider} ${theme.ui.muted(`(${this.truncateModel(p.latestModel)})`)}`)
755
- .join(theme.ui.muted(' │ '));
756
- const line = `${theme.ui.muted('models')} ${providerList}`;
757
- this.writeLine(this.renderCompactRow(line, width));
758
- this.writeLine();
759
- });
760
- }
761
- /**
762
- * Truncate model name for compact display
763
- */
764
- truncateModel(model) {
765
- if (model.length <= 20)
766
- return model;
767
- // Extract the meaningful part of model names
768
- const parts = model.split('-');
769
- if (parts.length > 2) {
770
- return `${parts[0]}-${parts[1]}...`;
771
- }
772
- return `${model.slice(0, 17)}...`;
773
- }
774
- /**
775
- * Show unified status bar - Claude Code style
776
- *
777
- * Format:
778
- * ▌ models ● anthropic (claude-opus...) │ ● openai (gpt-5.1-codex)
779
- * ▌ Ready • /help • /model
780
- *
781
- * Called both at startup and after streaming ends to provide consistent UI.
782
- */
783
- showUnifiedStatusBar(providers) {
784
- const cols = this.getColumnWidth();
785
- const width = Math.max(32, Math.min(cols - 6, DISPLAY_CONSTANTS.MAX_BANNER_WIDTH - 4));
786
- this.withOutput(() => {
787
- // Show providers line if available
788
- if (providers && providers.length > 0) {
789
- const available = providers.filter(p => p.available);
790
- if (available.length > 0) {
791
- const providerList = available
792
- .map(p => `${theme.success('●')} ${p.provider} ${theme.ui.muted(`(${this.truncateModel(p.latestModel)})`)}`)
793
- .join(theme.ui.muted(' │ '));
794
- const providerLine = `${theme.ui.muted('models')} ${providerList}`;
795
- this.writeLine(this.renderCompactRow(providerLine, width));
796
- this.writeLine();
797
- }
798
- }
799
- const readyLine = `${theme.success('Ready')} ${theme.ui.muted('• /help • /model')}`;
800
- this.writeLine(this.renderCompactRow(readyLine, width, true));
801
- this.writeLine();
802
- });
803
- }
804
- /**
805
- * Show streaming header - Claude Code style
806
- *
807
- * Displays a unified streaming status bar before AI response starts.
808
- * This provides visual consistency with the startup Ready bar.
809
- *
810
- * Format:
811
- * ▌ ● Responding...
812
- */
813
- showStreamingHeader() {
814
- const cols = this.getColumnWidth();
815
- const width = Math.max(32, Math.min(cols - 6, DISPLAY_CONSTANTS.MAX_BANNER_WIDTH - 4));
816
- this.withOutput(() => {
817
- const indicator = `${theme.info('●')} ${theme.ui.muted('Responding...')}`;
818
- this.writeLine(this.renderCompactRow(indicator, width, true));
819
- });
820
- }
821
- /**
822
- * Show model commands help
823
- */
824
- showModelCommands() {
825
- this.withOutput(() => {
826
- this.writeLine(theme.ui.muted(`${icons.info} Model commands:`));
827
- this.writeLine(theme.ui.muted(' /model <name> - Switch to a specific model'));
828
- this.writeLine(theme.ui.muted(' /model - Show current model'));
829
- this.writeLine(theme.ui.muted(' /providers - List all available providers'));
830
- this.writeLine(theme.ui.muted(' /discover - Discover models from provider APIs'));
831
- this.writeLine();
832
- });
833
- }
834
- formatErrorDetails(error) {
835
- if (!error) {
836
- return null;
837
- }
838
- if (error instanceof Error) {
839
- if (error.stack) {
840
- return highlightError(error.stack);
841
- }
842
- return highlightError(error.message);
843
- }
844
- if (typeof error === 'string') {
845
- return highlightError(error);
846
- }
847
- try {
848
- return highlightError(JSON.stringify(error, null, 2));
849
- }
850
- catch {
851
- return null;
852
- }
853
- }
854
- showPlanningStep(step, index, total) {
855
- // Validate inputs
856
- if (!step?.trim()) {
857
- return;
858
- }
859
- if (index < 1 || total < 1 || index > total) {
860
- return;
861
- }
862
- const width = Math.max(DISPLAY_CONSTANTS.MIN_THOUGHT_WIDTH, Math.min(this.getColumnWidth(), DISPLAY_CONSTANTS.MAX_MESSAGE_WIDTH));
863
- const heading = renderSectionHeading(`Plan ${index}/${total}`, {
864
- subtitle: step,
865
- icon: icons.arrow,
866
- tone: 'info',
867
- width,
868
- });
869
- this.withOutput(() => {
870
- this.writeLine(heading);
871
- });
872
- }
873
- clear() {
874
- this.withOutput(() => {
875
- try {
876
- cursorTo(this.outputStream, 0, 0);
877
- clearScreenDown(this.outputStream);
878
- }
879
- catch {
880
- this.write('\x1Bc');
881
- }
882
- });
883
- this.stdoutTracker.reset();
884
- if (this.bannerState) {
885
- this.renderAndStoreBanner(this.bannerState, this.bannerState.model, this.bannerState.provider);
886
- }
887
- }
888
- newLine() {
889
- this.withOutput(() => {
890
- this.writeLine();
891
- });
892
- }
893
- getBannerWidth() {
894
- const availableColumns = this.getColumnWidth();
895
- const effectiveWidth = Math.max(DISPLAY_CONSTANTS.MIN_BANNER_WIDTH, availableColumns - DISPLAY_CONSTANTS.BANNER_PADDING);
896
- return Math.min(Math.max(effectiveWidth, DISPLAY_CONSTANTS.MIN_BANNER_WIDTH), DISPLAY_CONSTANTS.MAX_BANNER_WIDTH);
897
- }
898
- measureBannerHeight(banner) {
899
- if (!banner) {
900
- return 0;
901
- }
902
- const lines = banner.split('\n').length;
903
- return lines;
904
- }
905
- /**
906
- * Attempts to rewrite the banner in place using terminal cursor manipulation.
907
- * Returns true if successful, false if rewrite is not possible.
908
- */
909
- tryRewriteBanner(state, banner) {
910
- // Validate TTY availability
911
- if (!this.outputStream.isTTY) {
912
- return false;
913
- }
914
- // Validate banner state
915
- if (!banner || state.height <= 0) {
916
- return false;
917
- }
918
- const linesWritten = this.stdoutTracker.totalLines;
919
- const linesAfterBanner = linesWritten - (state.startLine + state.height);
920
- // Cannot rewrite if banner position is invalid
921
- if (linesAfterBanner < 0) {
922
- return false;
923
- }
924
- const totalOffset = linesAfterBanner + state.height;
925
- const maxRows = this.outputStream.rows;
926
- // Cannot rewrite if offset exceeds terminal height
927
- if (typeof maxRows === 'number' && maxRows > 0 && totalOffset > maxRows) {
928
- return false;
929
- }
930
- try {
931
- this.withOutput(() => {
932
- // Move cursor up to banner start
933
- moveCursor(this.outputStream, 0, -totalOffset);
934
- cursorTo(this.outputStream, 0);
935
- // Write new banner without tracking
936
- this.stdoutTracker.withSuspended(() => {
937
- this.outputStream.write(`${banner}\n`);
938
- });
939
- // Restore cursor position
940
- if (linesAfterBanner > 0) {
941
- moveCursor(this.outputStream, 0, linesAfterBanner);
942
- }
943
- cursorTo(this.outputStream, 0);
944
- });
945
- return true;
946
- }
947
- catch (error) {
948
- // Cursor manipulation failed (e.g., terminal doesn't support it)
949
- if (error instanceof Error) {
950
- // Could log error in debug mode if needed
951
- }
952
- return false;
953
- }
954
- }
955
- renderAndStoreBanner(state, model, provider) {
956
- const width = this.getBannerWidth();
957
- const banner = this.buildClaudeStyleBanner(state.profileLabel, state.profileName, model, provider, state.workingDir, width, state.version);
958
- const startLine = this.stdoutTracker.totalLines;
959
- this.withOutput(() => {
960
- this.writeLine(banner);
961
- });
962
- state.startLine = startLine;
963
- state.height = this.measureBannerHeight(banner);
964
- state.width = width;
965
- state.model = model;
966
- state.provider = provider;
967
- }
968
- formatModelLabel(model) {
969
- if (/gpt-5\.1-?codex/i.test(model)) {
970
- return model;
971
- }
972
- if (/sonnet-4[-.]?5/i.test(model)) {
973
- return 'Sonnet 4.5';
974
- }
975
- if (/opus-4[-.]?1/i.test(model)) {
976
- return 'Opus 4.1';
977
- }
978
- if (/haiku-4[-.]?5/i.test(model)) {
979
- return 'Haiku 4.5';
980
- }
981
- if (/gpt-5\.1/i.test(model)) {
982
- return 'GPT-5.1';
983
- }
984
- if (/gpt-5-?pro/i.test(model)) {
985
- return 'GPT-5 Pro';
986
- }
987
- if (/gpt-5-?mini/i.test(model)) {
988
- return 'GPT-5 Mini';
989
- }
990
- if (/gpt-5-?nano/i.test(model)) {
991
- return 'GPT-5 Nano';
992
- }
993
- return model;
994
- }
995
- buildChatBox(content, metadata) {
996
- const normalized = content.trim();
997
- if (!normalized) {
998
- return '';
999
- }
1000
- if (isPlainOutputMode()) {
1001
- const body = renderMessageBody(normalized, this.resolveMessageWidth());
1002
- const telemetry = this.formatTelemetryLine(metadata);
1003
- return telemetry ? `${body}\n${telemetry}` : body;
1004
- }
1005
- const width = this.resolveMessageWidth();
1006
- const panel = renderMessagePanel(normalized, {
1007
- width,
1008
- title: 'Assistant',
1009
- icon: icons.assistant,
1010
- accentColor: theme.assistant ?? theme.primary,
1011
- borderColor: theme.ui.border,
1012
- });
1013
- const telemetry = this.formatTelemetryLine(metadata);
1014
- if (!telemetry) {
1015
- return panel;
1016
- }
1017
- return `${panel}\n${telemetry}`;
1018
- }
1019
- resolveMessageWidth() {
1020
- const columns = this.getColumnWidth();
1021
- return Math.max(DISPLAY_CONSTANTS.MIN_MESSAGE_WIDTH, Math.min(columns - DISPLAY_CONSTANTS.MESSAGE_PADDING, DISPLAY_CONSTANTS.MAX_MESSAGE_WIDTH));
1022
- }
1023
- /**
1024
- * Legacy method for appending thought blocks with tree-like formatting.
1025
- * Kept for backwards compatibility but not actively used.
1026
- * @deprecated Use buildClaudeStyleThought instead
1027
- */
1028
- // @ts-expect-error - Legacy method kept for backwards compatibility
1029
- _appendThoughtBlock(block, format, output) {
1030
- const rawLines = block.split('\n');
1031
- const indices = rawLines
1032
- .map((line, index) => (line.trim().length ? index : -1))
1033
- .filter((index) => index >= 0);
1034
- if (!indices.length) {
1035
- return;
1036
- }
1037
- const lastIndex = indices[indices.length - 1];
1038
- let usedFirst = false;
1039
- for (let index = 0; index < rawLines.length; index += 1) {
1040
- const rawLine = rawLines[index] ?? '';
1041
- if (!rawLine.trim()) {
1042
- continue;
1043
- }
1044
- const segments = this.wrapThoughtLine(rawLine, format.available);
1045
- if (!segments.length) {
1046
- continue;
1047
- }
1048
- const isLastLine = index === lastIndex;
1049
- segments.forEach((segment, segmentIndex) => {
1050
- const prefix = this.resolveThoughtPrefix({
1051
- usedFirst,
1052
- segmentIndex,
1053
- isLastLine,
1054
- format,
1055
- });
1056
- output.push(`${prefix}${segment}`);
1057
- });
1058
- usedFirst = true;
1059
- }
1060
- }
1061
- resolveThoughtPrefix(options) {
1062
- if (!options.usedFirst) {
1063
- return options.segmentIndex === 0 ? options.format.bullet : options.format.spacer;
1064
- }
1065
- if (options.segmentIndex === 0) {
1066
- return options.isLastLine ? options.format.last : options.format.branch;
1067
- }
1068
- return options.format.spacer;
1069
- }
1070
- /**
1071
- * Legacy method for generating thought formatting configuration.
1072
- * Kept for backwards compatibility but not actively used.
1073
- * @deprecated Use buildClaudeStyleThought instead
1074
- */
1075
- // @ts-expect-error - Legacy method kept for backwards compatibility
1076
- _getThoughtFormat() {
1077
- const totalWidth = Math.max(DISPLAY_CONSTANTS.MIN_THOUGHT_WIDTH, Math.min(this.getColumnWidth(), DISPLAY_CONSTANTS.MAX_THOUGHT_WIDTH));
1078
- const prefixWidth = Math.max(3, this.visibleLength(`${icons.bullet} `));
1079
- const available = Math.max(DISPLAY_CONSTANTS.MIN_WRAP_WIDTH, totalWidth - prefixWidth);
1080
- return {
1081
- totalWidth,
1082
- prefixWidth,
1083
- available,
1084
- bullet: theme.secondary(this.padPrefix(`${icons.bullet} `, prefixWidth)),
1085
- branch: theme.ui.muted(this.padPrefix('│ ', prefixWidth)),
1086
- last: theme.ui.muted(this.padPrefix('└ ', prefixWidth)),
1087
- spacer: ' '.repeat(prefixWidth),
1088
- };
1089
- }
1090
- wrapThoughtLine(line, width) {
1091
- const preserveIndentation = /^\s/.test(line);
1092
- const normalized = preserveIndentation ? line.replace(/\s+$/, '') : line.trim();
1093
- if (!normalized) {
1094
- return [];
1095
- }
1096
- if (preserveIndentation) {
1097
- return wrapPreformatted(normalized, width);
1098
- }
1099
- return this.wrapLine(normalized, width);
1100
- }
1101
- formatTelemetryLine(metadata) {
1102
- if (!metadata) {
1103
- return '';
1104
- }
1105
- const parts = [];
1106
- const elapsed = this.formatElapsed(metadata.elapsedMs);
1107
- if (elapsed) {
1108
- const elapsedLabel = theme.metrics?.elapsedLabel ?? theme.accent;
1109
- const elapsedValue = theme.metrics?.elapsedValue ?? theme.secondary;
1110
- parts.push(`${elapsedLabel('elapsed')} ${elapsedValue(elapsed)}`);
1111
- }
1112
- if (!parts.length) {
1113
- return '';
1114
- }
1115
- const separator = theme.ui.muted(' • ');
1116
- return ` ${parts.join(separator)}`;
1117
- }
1118
- formatContextSummary(context) {
1119
- if (!context) {
1120
- return null;
1121
- }
1122
- const hasPercentage = typeof context.percentage === 'number' && Number.isFinite(context.percentage);
1123
- const hasTokens = typeof context.tokens === 'number' && Number.isFinite(context.tokens);
1124
- if (!hasPercentage && !hasTokens) {
1125
- return null;
1126
- }
1127
- if (hasPercentage) {
1128
- const normalizedPercent = Math.max(0, Math.min(100, Math.round(context.percentage)));
1129
- const tokenDetails = hasTokens ? ` (${context.tokens} tokens)` : '';
1130
- return `${theme.info('Context')} ${theme.ui.muted(`${normalizedPercent}% used${tokenDetails}`)}`;
1131
- }
1132
- return theme.ui.muted(`${context.tokens} tokens`);
1133
- }
1134
- formatElapsed(elapsedMs) {
1135
- if (typeof elapsedMs !== 'number' || !Number.isFinite(elapsedMs) || elapsedMs < 0) {
1136
- return null;
1137
- }
1138
- const totalSeconds = Math.max(0, Math.round(elapsedMs / 1000));
1139
- const minutes = Math.floor(totalSeconds / 60);
1140
- const seconds = totalSeconds % 60;
1141
- if (minutes > 0) {
1142
- return `${minutes}m ${seconds.toString().padStart(2, '0')}s`;
1143
- }
1144
- return `${seconds}s`;
1145
- }
1146
- buildClaudeStyleBanner(profileLabel, profileName, model, provider, workingDir, width, version) {
1147
- const effectiveWidth = Math.min(Math.max(width, 52), DISPLAY_CONSTANTS.MAX_BANNER_WIDTH);
1148
- const contentWidth = Math.max(32, effectiveWidth - 6);
1149
- const normalizedProfile = profileName?.trim();
1150
- const agentLabel = profileLabel?.trim() || normalizedProfile || 'Active agent';
1151
- const headerSegments = [
1152
- `${theme.gradient.cool('Erosolar CLI')}${version ? theme.ui.muted(` v${version}`) : ''}`,
1153
- `${theme.success('●')} ${this.formatModelLabel(model)}`,
1154
- `${theme.ui.muted('via')} ${provider}`,
1155
- `${theme.ui.muted('agent')} ${agentLabel}`,
1156
- ];
1157
- const detailSegments = [
1158
- `${theme.ui.muted('workspace')} ${this.abbreviatePath(workingDir, contentWidth - 12)}`,
1159
- `${theme.ui.muted('mandate')} ${this.buildMandateSnippet(contentWidth)}`,
1160
- ];
1161
- const rows = [
1162
- ...this.buildSegmentRows(headerSegments, contentWidth),
1163
- ...this.buildSegmentRows(detailSegments, contentWidth),
1164
- ];
1165
- if (!rows.length) {
1166
- return '';
1167
- }
1168
- const renderedRows = rows.map((row, index) => this.renderCompactRow(row, contentWidth, index === 0));
1169
- const availableColumns = Math.max(0, this.getColumnWidth() - 2);
1170
- const dividerWidth = Math.max(0, Math.min(effectiveWidth, availableColumns));
1171
- const divider = !dividerWidth || isPlainOutputMode()
1172
- ? ''
1173
- : theme.ui.border('─'.repeat(Math.max(24, dividerWidth)));
1174
- return divider ? `${renderedRows.join('\n')}\n${divider}` : renderedRows.join('\n');
1175
- }
1176
- buildSegmentRows(segments, width) {
1177
- const separator = theme.ui.muted(' │ ');
1178
- const rows = [];
1179
- let current = '';
1180
- for (const segment of segments) {
1181
- if (!segment?.trim()) {
1182
- continue;
1183
- }
1184
- const candidate = current ? `${current}${separator}${segment}` : segment;
1185
- if (this.visibleLength(candidate) > width && current) {
1186
- rows.push(current);
1187
- current = segment;
1188
- }
1189
- else {
1190
- current = candidate;
1191
- }
1192
- }
1193
- if (current) {
1194
- rows.push(current);
1195
- }
1196
- return rows;
1197
- }
1198
- renderCompactRow(line, width, highlight = false) {
1199
- const padded = this.padLine(line, width);
1200
- if (isPlainOutputMode()) {
1201
- return padded;
1202
- }
1203
- const prefix = highlight ? theme.accent('▌') : theme.ui.border('▌');
1204
- const body = theme.ui.background(theme.ui.text(` ${padded} `));
1205
- return `${prefix}${body}`;
1206
- }
1207
- buildMandateSnippet(width) {
1208
- const maxLen = Math.max(28, width - 20);
1209
- return this.truncateVisible(INDEPENDENT_SECURITY_MANDATE, maxLen);
1210
- }
1211
- abbreviatePath(path, maxLen) {
1212
- if (path.length <= maxLen)
1213
- return path;
1214
- const parts = path.split('/');
1215
- if (parts.length <= 2)
1216
- return path;
1217
- return `${parts[0]}/.../${parts[parts.length - 1]}`;
1218
- }
1219
- padLine(text, width) {
1220
- const visible = this.visibleLength(text);
1221
- if (visible >= width) {
1222
- return this.truncateVisible(text, width);
1223
- }
1224
- const padding = Math.max(0, width - visible);
1225
- return `${text}${' '.repeat(padding)}`;
1226
- }
1227
- /**
1228
- * Wraps text with a prefix on the first line and optional continuation prefix.
1229
- * Handles multi-line text and word wrapping intelligently.
1230
- */
1231
- wrapWithPrefix(text, prefix, options) {
1232
- if (!text) {
1233
- return prefix.trimEnd();
1234
- }
1235
- const width = Math.max(DISPLAY_CONSTANTS.MIN_ACTION_WIDTH, Math.min(this.getColumnWidth(), DISPLAY_CONSTANTS.MAX_ACTION_WIDTH));
1236
- const prefixWidth = this.visibleLength(prefix);
1237
- const available = Math.max(DISPLAY_CONSTANTS.MIN_CONTENT_WIDTH, width - prefixWidth);
1238
- const indent = typeof options?.continuationPrefix === 'string'
1239
- ? options.continuationPrefix
1240
- : ' '.repeat(Math.max(0, prefixWidth));
1241
- const segments = text.split('\n');
1242
- const lines = [];
1243
- let usedPrefix = false;
1244
- for (const segment of segments) {
1245
- if (!segment.trim()) {
1246
- if (usedPrefix) {
1247
- lines.push(indent);
1248
- }
1249
- else {
1250
- lines.push(prefix.trimEnd());
1251
- usedPrefix = true;
1252
- }
1253
- continue;
1254
- }
1255
- const wrapped = this.wrapLine(segment.trim(), available);
1256
- for (const line of wrapped) {
1257
- lines.push(!usedPrefix ? `${prefix}${line}` : `${indent}${line}`);
1258
- usedPrefix = true;
1259
- }
1260
- }
1261
- return lines.join('\n');
1262
- }
1263
- resolveStatusColor(status) {
1264
- switch (status) {
1265
- case 'success':
1266
- return theme.success;
1267
- case 'error':
1268
- return theme.error;
1269
- case 'warning':
1270
- return theme.warning;
1271
- case 'pending':
1272
- return theme.info;
1273
- default:
1274
- return theme.secondary;
1275
- }
1276
- }
1277
- formatActionIcon(status) {
1278
- const colorize = this.resolveStatusColor(status);
1279
- return colorize(`${icons.action}`);
1280
- }
1281
- buildClaudeStyleThought(content) {
1282
- // Rich thinking block display with box frame
1283
- const thinkingStyle = theme.thinking || {
1284
- icon: theme.info,
1285
- text: theme.ui.muted,
1286
- border: theme.ui.border,
1287
- label: theme.info,
1288
- };
1289
- const width = Math.min(this.getColumnWidth() - 4, 70);
1290
- const innerWidth = width - 2;
1291
- const lines = [];
1292
- // Header with thinking icon
1293
- const header = ' 💭 Thinking ';
1294
- const headerPad = Math.floor((innerWidth - header.length) / 2);
1295
- lines.push(thinkingStyle.border(`╭${'─'.repeat(headerPad)}${thinkingStyle.label(header)}${'─'.repeat(innerWidth - headerPad - header.length)}╮`));
1296
- // Parse and format the thinking content
1297
- const contentLines = content.split('\n').filter(line => line.trim());
1298
- for (const line of contentLines) {
1299
- // Wrap each line to fit
1300
- const wrapped = this.wrapLine(line.trim(), innerWidth - 2);
1301
- for (const wrappedLine of wrapped) {
1302
- const padding = Math.max(0, innerWidth - wrappedLine.length - 1);
1303
- lines.push(`${thinkingStyle.border('│')} ${thinkingStyle.text(wrappedLine)}${' '.repeat(padding)}${thinkingStyle.border('│')}`);
1304
- }
1305
- }
1306
- // Bottom border
1307
- lines.push(thinkingStyle.border(`╰${'─'.repeat(innerWidth)}╯`));
1308
- return lines.join('\n');
1309
- }
1310
- /**
1311
- * Show a thinking block with rich formatting (public method for external use)
1312
- */
1313
- showThinkingBlock(content) {
1314
- this.clearSpinnerIfActive();
1315
- const block = this.buildClaudeStyleThought(content);
1316
- this.withOutput(() => {
1317
- this.writeLine();
1318
- this.writeLine(block);
1319
- this.writeLine();
1320
- });
1321
- }
1322
- // @ts-ignore - Legacy method kept for compatibility
1323
- // Keep legacy method to avoid breaking changes
1324
- buildSubActionPrefixes(status, isLast) {
1325
- if (isLast) {
1326
- const colorize = this.resolveStatusColor(status);
1327
- // Claude Code style: use ⎿ for sub-action result/detail prefix
1328
- return {
1329
- prefix: ` ${colorize(icons.subaction)} `,
1330
- continuation: ' ',
1331
- };
1332
- }
1333
- const branch = theme.ui.muted('│');
1334
- return {
1335
- prefix: ` ${branch} `,
1336
- continuation: ` ${branch} `,
1337
- };
1338
- }
1339
- /**
1340
- * Wraps a single line of text to fit within the specified width.
1341
- * Intelligently handles word breaking and preserves spaces.
1342
- */
1343
- wrapLine(text, width) {
1344
- // Handle edge cases
1345
- if (width <= 0) {
1346
- return [text];
1347
- }
1348
- if (!text) {
1349
- return [''];
1350
- }
1351
- if (text.length <= width) {
1352
- return [text];
1353
- }
1354
- const words = text.split(/\s+/).filter(Boolean);
1355
- // If no words, chunk the entire text
1356
- if (!words.length) {
1357
- return this.chunkWord(text, width);
1358
- }
1359
- const lines = [];
1360
- let current = '';
1361
- for (const word of words) {
1362
- const appendResult = this.tryAppendWord(current, word, width);
1363
- if (appendResult.shouldFlush) {
1364
- lines.push(current);
1365
- }
1366
- if (appendResult.chunks.length > 0) {
1367
- // Word was too long and was chunked
1368
- lines.push(...appendResult.chunks.slice(0, -1));
1369
- current = appendResult.chunks[appendResult.chunks.length - 1] ?? '';
1370
- }
1371
- else {
1372
- current = appendResult.newCurrent;
1373
- }
1374
- }
1375
- if (current) {
1376
- lines.push(current);
1377
- }
1378
- return lines.length ? lines : [''];
1379
- }
1380
- /**
1381
- * Attempts to append a word to the current line.
1382
- * Returns instructions on how to handle the word.
1383
- */
1384
- tryAppendWord(current, word, width) {
1385
- if (!word) {
1386
- return { shouldFlush: false, newCurrent: current, chunks: [] };
1387
- }
1388
- // Empty current line - start new line with word
1389
- if (!current) {
1390
- if (word.length <= width) {
1391
- return { shouldFlush: false, newCurrent: word, chunks: [] };
1392
- }
1393
- // Word too long, need to chunk it
1394
- return { shouldFlush: false, newCurrent: '', chunks: this.chunkWord(word, width) };
1395
- }
1396
- // Word fits on current line with space
1397
- if (current.length + 1 + word.length <= width) {
1398
- return { shouldFlush: false, newCurrent: `${current} ${word}`, chunks: [] };
1399
- }
1400
- // Word doesn't fit - flush current and start new line
1401
- if (word.length <= width) {
1402
- return { shouldFlush: true, newCurrent: word, chunks: [] };
1403
- }
1404
- // Word doesn't fit and is too long - flush current and chunk word
1405
- return { shouldFlush: true, newCurrent: '', chunks: this.chunkWord(word, width) };
1406
- }
1407
- /**
1408
- * Splits a long word into chunks that fit within the specified width.
1409
- * Used when a single word is too long to fit on one line.
1410
- */
1411
- chunkWord(word, width) {
1412
- if (width <= 0 || !word) {
1413
- return word ? [word] : [''];
1414
- }
1415
- const chunks = [];
1416
- for (let i = 0; i < word.length; i += width) {
1417
- chunks.push(word.slice(i, i + width));
1418
- }
1419
- return chunks.length > 0 ? chunks : [''];
1420
- }
1421
- /**
1422
- * Pads a prefix string to the specified width with spaces.
1423
- */
1424
- padPrefix(value, width) {
1425
- if (!value || value.length >= width || width <= 0) {
1426
- return value;
1427
- }
1428
- return value.padEnd(width, ' ');
1429
- }
1430
- /**
1431
- * Truncates a string to fit within the specified width,
1432
- * accounting for ANSI color codes and adding ellipsis.
1433
- */
1434
- truncateVisible(value, width) {
1435
- if (width <= 0) {
1436
- return '';
1437
- }
1438
- if (!value) {
1439
- return '';
1440
- }
1441
- const plain = this.stripAnsi(value);
1442
- if (plain.length <= width) {
1443
- return value;
1444
- }
1445
- const slice = plain.slice(0, Math.max(1, width - 1));
1446
- return `${slice}…`;
1447
- }
1448
- /**
1449
- * Returns the visible length of a string, excluding ANSI escape codes.
1450
- */
1451
- visibleLength(value) {
1452
- if (!value) {
1453
- return 0;
1454
- }
1455
- return this.stripAnsi(value).length;
1456
- }
1457
- /**
1458
- * Removes ANSI escape codes from a string to get the visible text.
1459
- * Uses the standard ANSI escape sequence pattern.
1460
- */
1461
- stripAnsi(value) {
1462
- if (!value) {
1463
- return '';
1464
- }
1465
- return value.replace(/\u001B\[[0-?]*[ -/]*[@-~]/g, '');
1466
- }
1467
- }
1468
- export const display = new Display();
1469
- //# sourceMappingURL=display.js.map