@evalops/maestro 0.10.51 → 0.10.53

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 (1502) hide show
  1. package/README.md +1 -3
  2. package/dist/agent/agent.d.ts.map +1 -1
  3. package/dist/agent/agent.js.map +1 -1
  4. package/dist/agent/compaction.d.ts.map +1 -1
  5. package/dist/agent/compaction.js +1 -1
  6. package/dist/agent/compaction.js.map +1 -1
  7. package/dist/agent/context-handoff.d.ts.map +1 -1
  8. package/dist/agent/context-handoff.js +2 -1
  9. package/dist/agent/context-handoff.js.map +1 -1
  10. package/dist/agent/index.d.ts +8 -1
  11. package/dist/agent/index.d.ts.map +1 -1
  12. package/dist/agent/index.js +8 -1
  13. package/dist/agent/index.js.map +1 -1
  14. package/dist/agent/modes.d.ts +1 -1
  15. package/dist/agent/modes.d.ts.map +1 -1
  16. package/dist/agent/modes.js +56 -0
  17. package/dist/agent/modes.js.map +1 -1
  18. package/dist/agent/oracle-consultation-policy.d.ts +22 -0
  19. package/dist/agent/oracle-consultation-policy.d.ts.map +1 -0
  20. package/dist/agent/oracle-consultation-policy.js +72 -0
  21. package/dist/agent/oracle-consultation-policy.js.map +1 -0
  22. package/dist/agent/oracle-policy-experiment.d.ts +27 -0
  23. package/dist/agent/oracle-policy-experiment.d.ts.map +1 -0
  24. package/dist/agent/oracle-policy-experiment.js +59 -0
  25. package/dist/agent/oracle-policy-experiment.js.map +1 -0
  26. package/dist/agent/oracle-policy-rollout.d.ts +42 -0
  27. package/dist/agent/oracle-policy-rollout.d.ts.map +1 -0
  28. package/dist/agent/oracle-policy-rollout.js +80 -0
  29. package/dist/agent/oracle-policy-rollout.js.map +1 -0
  30. package/dist/agent/plugin-agent-api.d.ts +13 -0
  31. package/dist/agent/plugin-agent-api.d.ts.map +1 -0
  32. package/dist/agent/plugin-agent-api.js +11 -0
  33. package/dist/agent/plugin-agent-api.js.map +1 -0
  34. package/dist/agent/plugin-agent-loader.d.ts +17 -0
  35. package/dist/agent/plugin-agent-loader.d.ts.map +1 -0
  36. package/dist/agent/plugin-agent-loader.js +81 -0
  37. package/dist/agent/plugin-agent-loader.js.map +1 -0
  38. package/dist/agent/plugin-agent-registry.d.ts +62 -0
  39. package/dist/agent/plugin-agent-registry.d.ts.map +1 -0
  40. package/dist/agent/plugin-agent-registry.js +109 -0
  41. package/dist/agent/plugin-agent-registry.js.map +1 -0
  42. package/dist/agent/profile-loader.d.ts +7 -0
  43. package/dist/agent/profile-loader.d.ts.map +1 -0
  44. package/dist/agent/profile-loader.js +115 -0
  45. package/dist/agent/profile-loader.js.map +1 -0
  46. package/dist/agent/profiles.d.ts +30 -0
  47. package/dist/agent/profiles.d.ts.map +1 -0
  48. package/dist/agent/profiles.js +146 -0
  49. package/dist/agent/profiles.js.map +1 -0
  50. package/dist/agent/prompt-cache.d.ts +0 -4
  51. package/dist/agent/prompt-cache.d.ts.map +1 -1
  52. package/dist/agent/prompt-cache.js +1 -7
  53. package/dist/agent/prompt-cache.js.map +1 -1
  54. package/dist/agent/providers/google-gemini-cli.js +1 -0
  55. package/dist/agent/providers/google.js +1 -0
  56. package/dist/agent/providers/vertex.js +1 -0
  57. package/dist/agent/routing-receipt.d.ts +34 -0
  58. package/dist/agent/routing-receipt.d.ts.map +1 -0
  59. package/dist/agent/routing-receipt.js +55 -0
  60. package/dist/agent/routing-receipt.js.map +1 -0
  61. package/dist/{skills/artifact-metadata.d.ts → agent/skill-artifact-metadata.d.ts} +2 -4
  62. package/dist/agent/skill-artifact-metadata.d.ts.map +1 -0
  63. package/dist/{skills/artifact-metadata.js → agent/skill-artifact-metadata.js} +1 -38
  64. package/dist/agent/skill-artifact-metadata.js.map +1 -0
  65. package/dist/agent/subagent-specs.d.ts +1 -1
  66. package/dist/agent/subagent-specs.js +2 -2
  67. package/dist/agent/subagent-specs.js.map +1 -1
  68. package/dist/agent/token-counter.d.ts +40 -0
  69. package/dist/agent/token-counter.d.ts.map +1 -0
  70. package/dist/agent/token-counter.js +74 -0
  71. package/dist/agent/token-counter.js.map +1 -0
  72. package/dist/agent/transport/events.d.ts +1 -1
  73. package/dist/agent/transport/events.d.ts.map +1 -1
  74. package/dist/agent/transport/events.js +1 -1
  75. package/dist/agent/transport/events.js.map +1 -1
  76. package/dist/agent/types.d.ts +4 -2
  77. package/dist/agent/types.d.ts.map +1 -1
  78. package/dist/agent/types.js.map +1 -1
  79. package/dist/app-server/plugin-bundle-api.d.ts.map +1 -1
  80. package/dist/app-server/plugin-bundle-api.js +1 -0
  81. package/dist/app-server/plugin-bundle-api.js.map +1 -1
  82. package/dist/app-server/session-api.d.ts.map +1 -1
  83. package/dist/app-server/session-api.js +15 -2
  84. package/dist/app-server/session-api.js.map +1 -1
  85. package/dist/audit/logger.d.ts +5 -5
  86. package/dist/cli/args.d.ts +2 -0
  87. package/dist/cli/args.d.ts.map +1 -1
  88. package/dist/cli/args.js +18 -1
  89. package/dist/cli/args.js.map +1 -1
  90. package/dist/cli/direct-runtime-command.d.ts +1 -0
  91. package/dist/cli/direct-runtime-command.d.ts.map +1 -1
  92. package/dist/cli/direct-runtime-command.js +25 -3
  93. package/dist/cli/direct-runtime-command.js.map +1 -1
  94. package/dist/cli/headless.d.ts +3 -19
  95. package/dist/cli/headless.d.ts.map +1 -1
  96. package/dist/cli/headless.js +8 -619
  97. package/dist/cli/headless.js.map +1 -1
  98. package/dist/cli/help.d.ts.map +1 -1
  99. package/dist/cli/help.js +3 -0
  100. package/dist/cli/help.js.map +1 -1
  101. package/dist/cli/native-tui-launcher.d.ts +126 -0
  102. package/dist/cli/native-tui-launcher.d.ts.map +1 -0
  103. package/dist/cli/native-tui-launcher.js +425 -0
  104. package/dist/cli/native-tui-launcher.js.map +1 -0
  105. package/dist/cli/rpc-mode.d.ts +3 -27
  106. package/dist/cli/rpc-mode.d.ts.map +1 -1
  107. package/dist/cli/rpc-mode.js +8 -177
  108. package/dist/cli/rpc-mode.js.map +1 -1
  109. package/dist/cli/session.d.ts +11 -19
  110. package/dist/cli/session.d.ts.map +1 -1
  111. package/dist/cli/session.js +6 -64
  112. package/dist/cli/session.js.map +1 -1
  113. package/dist/cli-command-runtime.d.ts.map +1 -1
  114. package/dist/cli-command-runtime.js +26 -24
  115. package/dist/cli-command-runtime.js.map +1 -1
  116. package/dist/cli-runtime.js +52529 -137615
  117. package/dist/config/env-vars.d.ts +12 -0
  118. package/dist/config/env-vars.d.ts.map +1 -1
  119. package/dist/config/env-vars.js +12 -0
  120. package/dist/config/env-vars.js.map +1 -1
  121. package/dist/{cli-tui → config}/ui-state.d.ts +6 -1
  122. package/dist/config/ui-state.d.ts.map +1 -0
  123. package/dist/{cli-tui → config}/ui-state.js +1 -1
  124. package/dist/config/ui-state.js.map +1 -0
  125. package/dist/context/repo-map.d.ts.map +1 -1
  126. package/dist/context/repo-map.js +1 -7
  127. package/dist/context/repo-map.js.map +1 -1
  128. package/dist/context/token-optimizer.d.ts.map +1 -1
  129. package/dist/context/token-optimizer.js +1 -8
  130. package/dist/context/token-optimizer.js.map +1 -1
  131. package/dist/db/schema.d.ts +2 -2
  132. package/dist/hooks/notification-hooks.d.ts +1 -1
  133. package/dist/hooks/notification-hooks.d.ts.map +1 -1
  134. package/dist/hooks/notification-hooks.js.map +1 -1
  135. package/dist/hooks/tui-surface.d.ts +35 -0
  136. package/dist/hooks/tui-surface.d.ts.map +1 -0
  137. package/dist/hooks/tui-surface.js +11 -0
  138. package/dist/hooks/tui-surface.js.map +1 -0
  139. package/dist/hooks/types.d.ts +2 -1
  140. package/dist/hooks/types.d.ts.map +1 -1
  141. package/dist/hooks/types.js.map +1 -1
  142. package/dist/hooks/typescript-loader.d.ts.map +1 -1
  143. package/dist/hooks/typescript-loader.js.map +1 -1
  144. package/dist/hooks/ui-context.d.ts.map +1 -1
  145. package/dist/hooks/ui-context.js.map +1 -1
  146. package/dist/main.d.ts.map +1 -1
  147. package/dist/main.js +154 -882
  148. package/dist/main.js.map +1 -1
  149. package/dist/models/config-loader.d.ts +5 -5
  150. package/dist/node_modules/@evalops/contracts/dist/index.d.ts +45 -0
  151. package/dist/node_modules/@evalops/contracts/dist/index.d.ts.map +1 -1
  152. package/dist/node_modules/@evalops/contracts/dist/index.js +2 -0
  153. package/dist/node_modules/@evalops/contracts/dist/index.js.map +1 -1
  154. package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts +284 -0
  155. package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts.map +1 -1
  156. package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.js +41 -0
  157. package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.js.map +1 -1
  158. package/dist/node_modules/@evalops/contracts/dist/schemas.d.ts +986 -0
  159. package/dist/node_modules/@evalops/contracts/dist/schemas.d.ts.map +1 -1
  160. package/dist/node_modules/@evalops/contracts/dist/schemas.js +49 -0
  161. package/dist/node_modules/@evalops/contracts/dist/schemas.js.map +1 -1
  162. package/dist/node_modules/@evalops/contracts/dist/token-estimation.d.ts +56 -0
  163. package/dist/node_modules/@evalops/contracts/dist/token-estimation.d.ts.map +1 -0
  164. package/dist/node_modules/@evalops/contracts/dist/token-estimation.js +86 -0
  165. package/dist/node_modules/@evalops/contracts/dist/token-estimation.js.map +1 -0
  166. package/dist/node_modules/@evalops/contracts/package.json +1 -1
  167. package/dist/packages/discovery.d.ts.map +1 -1
  168. package/dist/packages/discovery.js +1 -0
  169. package/dist/packages/discovery.js.map +1 -1
  170. package/dist/packages/inspection.d.ts.map +1 -1
  171. package/dist/packages/inspection.js +7 -1
  172. package/dist/packages/inspection.js.map +1 -1
  173. package/dist/packages/loader.d.ts.map +1 -1
  174. package/dist/packages/loader.js +8 -1
  175. package/dist/packages/loader.js.map +1 -1
  176. package/dist/packages/runtime.d.ts +1 -0
  177. package/dist/packages/runtime.d.ts.map +1 -1
  178. package/dist/packages/runtime.js +9 -1
  179. package/dist/packages/runtime.js.map +1 -1
  180. package/dist/packages/types.d.ts +6 -0
  181. package/dist/packages/types.d.ts.map +1 -1
  182. package/dist/packages/types.js.map +1 -1
  183. package/dist/runtime/agent-runtime.d.ts +22 -6
  184. package/dist/runtime/agent-runtime.d.ts.map +1 -1
  185. package/dist/runtime/agent-runtime.js +1 -1
  186. package/dist/runtime/agent-runtime.js.map +1 -1
  187. package/dist/runtime/env.d.ts +1 -0
  188. package/dist/runtime/env.d.ts.map +1 -1
  189. package/dist/runtime/env.js +1 -0
  190. package/dist/runtime/env.js.map +1 -1
  191. package/dist/{cli-tui → runtime}/prompt-queue.d.ts.map +1 -1
  192. package/dist/{cli-tui → runtime}/prompt-queue.js.map +1 -1
  193. package/dist/server/handlers/chat-ws.d.ts +2 -1
  194. package/dist/server/handlers/chat-ws.d.ts.map +1 -1
  195. package/dist/server/handlers/chat-ws.js +150 -5
  196. package/dist/server/handlers/chat-ws.js.map +1 -1
  197. package/dist/server/handlers/chat.d.ts.map +1 -1
  198. package/dist/server/handlers/chat.js +78 -5
  199. package/dist/server/handlers/chat.js.map +1 -1
  200. package/dist/server/handlers/package.d.ts.map +1 -1
  201. package/dist/server/handlers/package.js +1 -0
  202. package/dist/server/handlers/package.js.map +1 -1
  203. package/dist/server/handlers/queue.js +1 -1
  204. package/dist/server/handlers/queue.js.map +1 -1
  205. package/dist/server/handlers/ui.js +1 -1
  206. package/dist/server/handlers/ui.js.map +1 -1
  207. package/dist/server/handlers/zen.js +1 -1
  208. package/dist/server/handlers/zen.js.map +1 -1
  209. package/dist/server/hosted-session-manager.d.ts +3 -0
  210. package/dist/server/hosted-session-manager.d.ts.map +1 -1
  211. package/dist/server/hosted-session-manager.js +26 -0
  212. package/dist/server/hosted-session-manager.js.map +1 -1
  213. package/dist/server/model-selection.d.ts +1 -0
  214. package/dist/server/model-selection.d.ts.map +1 -1
  215. package/dist/server/model-selection.js +4 -0
  216. package/dist/server/model-selection.js.map +1 -1
  217. package/dist/server/session-serialization.d.ts.map +1 -1
  218. package/dist/server/session-serialization.js +3 -0
  219. package/dist/server/session-serialization.js.map +1 -1
  220. package/dist/server/session-timeline.d.ts.map +1 -1
  221. package/dist/server/session-timeline.js +1 -1
  222. package/dist/server/session-timeline.js.map +1 -1
  223. package/dist/server/sse-session.d.ts +2 -0
  224. package/dist/server/sse-session.d.ts.map +1 -1
  225. package/dist/server/sse-session.js +3 -0
  226. package/dist/server/sse-session.js.map +1 -1
  227. package/dist/server/stores/ui-store.d.ts +1 -1
  228. package/dist/server/stores/ui-store.d.ts.map +1 -1
  229. package/dist/server/stores/ui-store.js.map +1 -1
  230. package/dist/server/utils/token-estimator.d.ts +2 -2
  231. package/dist/server/utils/token-estimator.d.ts.map +1 -1
  232. package/dist/server/utils/token-estimator.js +2 -12
  233. package/dist/server/utils/token-estimator.js.map +1 -1
  234. package/dist/server/validation.d.ts +54 -0
  235. package/dist/server/validation.d.ts.map +1 -1
  236. package/dist/services/image-providers/cost.d.ts +70 -0
  237. package/dist/services/image-providers/cost.d.ts.map +1 -0
  238. package/dist/services/image-providers/cost.js +164 -0
  239. package/dist/services/image-providers/cost.js.map +1 -0
  240. package/dist/services/image-providers/flux.d.ts +40 -0
  241. package/dist/services/image-providers/flux.d.ts.map +1 -0
  242. package/dist/services/image-providers/flux.js +99 -0
  243. package/dist/services/image-providers/flux.js.map +1 -0
  244. package/dist/services/image-providers/index.d.ts +24 -0
  245. package/dist/services/image-providers/index.d.ts.map +1 -0
  246. package/dist/services/image-providers/index.js +27 -0
  247. package/dist/services/image-providers/index.js.map +1 -0
  248. package/dist/services/image-providers/masks.d.ts +51 -0
  249. package/dist/services/image-providers/masks.d.ts.map +1 -0
  250. package/dist/services/image-providers/masks.js +132 -0
  251. package/dist/services/image-providers/masks.js.map +1 -0
  252. package/dist/services/image-providers/openai.d.ts +35 -0
  253. package/dist/services/image-providers/openai.d.ts.map +1 -0
  254. package/dist/services/image-providers/openai.js +93 -0
  255. package/dist/services/image-providers/openai.js.map +1 -0
  256. package/dist/services/image-providers/types.d.ts +61 -0
  257. package/dist/services/image-providers/types.d.ts.map +1 -0
  258. package/dist/services/image-providers/types.js +17 -0
  259. package/dist/services/image-providers/types.js.map +1 -0
  260. package/dist/services/intelligent-router/index.d.ts +1 -0
  261. package/dist/services/intelligent-router/index.d.ts.map +1 -1
  262. package/dist/services/intelligent-router/index.js +1 -0
  263. package/dist/services/intelligent-router/index.js.map +1 -1
  264. package/dist/services/intelligent-router/normalize.d.ts +1 -0
  265. package/dist/services/intelligent-router/normalize.d.ts.map +1 -1
  266. package/dist/services/intelligent-router/normalize.js +17 -0
  267. package/dist/services/intelligent-router/normalize.js.map +1 -1
  268. package/dist/services/intelligent-router/outcome.d.ts +19 -0
  269. package/dist/services/intelligent-router/outcome.d.ts.map +1 -0
  270. package/dist/services/intelligent-router/outcome.js +51 -0
  271. package/dist/services/intelligent-router/outcome.js.map +1 -0
  272. package/dist/services/intelligent-router/recorder.d.ts +2 -0
  273. package/dist/services/intelligent-router/recorder.d.ts.map +1 -1
  274. package/dist/services/intelligent-router/recorder.js +72 -1
  275. package/dist/services/intelligent-router/recorder.js.map +1 -1
  276. package/dist/services/intelligent-router/service.d.ts +1 -0
  277. package/dist/services/intelligent-router/service.d.ts.map +1 -1
  278. package/dist/services/intelligent-router/service.js +60 -11
  279. package/dist/services/intelligent-router/service.js.map +1 -1
  280. package/dist/services/intelligent-router/types.d.ts +18 -0
  281. package/dist/services/intelligent-router/types.d.ts.map +1 -1
  282. package/dist/services/intelligent-router/types.js.map +1 -1
  283. package/dist/services/workspace-config/middleware.d.ts +2 -0
  284. package/dist/services/workspace-config/middleware.d.ts.map +1 -1
  285. package/dist/services/workspace-config/middleware.js +25 -28
  286. package/dist/services/workspace-config/middleware.js.map +1 -1
  287. package/dist/session/agent-lineage-projection.d.ts +30 -0
  288. package/dist/session/agent-lineage-projection.d.ts.map +1 -0
  289. package/dist/session/agent-lineage-projection.js +109 -0
  290. package/dist/session/agent-lineage-projection.js.map +1 -0
  291. package/dist/session/manager.d.ts +3 -0
  292. package/dist/session/manager.d.ts.map +1 -1
  293. package/dist/session/manager.js +24 -0
  294. package/dist/session/manager.js.map +1 -1
  295. package/dist/session/session-graph-projection.d.ts +11 -0
  296. package/dist/session/session-graph-projection.d.ts.map +1 -1
  297. package/dist/session/session-graph-projection.js +28 -0
  298. package/dist/session/session-graph-projection.js.map +1 -1
  299. package/dist/session/types.d.ts +2 -0
  300. package/dist/session/types.d.ts.map +1 -1
  301. package/dist/session/types.js.map +1 -1
  302. package/dist/telemetry/maestro-event-bus.d.ts +1 -1
  303. package/dist/telemetry/maestro-event-bus.d.ts.map +1 -1
  304. package/dist/telemetry/maestro-event-bus.js.map +1 -1
  305. package/dist/telemetry/maestro-publisher-conformance-fixture.js.map +1 -1
  306. package/dist/telemetry/oracle-policy.d.ts +6 -0
  307. package/dist/telemetry/oracle-policy.d.ts.map +1 -0
  308. package/dist/telemetry/oracle-policy.js +17 -0
  309. package/dist/telemetry/oracle-policy.js.map +1 -0
  310. package/dist/telemetry/wide-events.d.ts +1 -1
  311. package/dist/telemetry/wide-events.d.ts.map +1 -1
  312. package/dist/telemetry/wide-events.js.map +1 -1
  313. package/dist/theme/theme.d.ts +2 -8
  314. package/dist/theme/theme.d.ts.map +1 -1
  315. package/dist/theme/theme.js +7 -0
  316. package/dist/theme/theme.js.map +1 -1
  317. package/dist/theme/tui-theme-helpers.d.ts +2 -1
  318. package/dist/theme/tui-theme-helpers.d.ts.map +1 -1
  319. package/dist/theme/tui-theme-helpers.js.map +1 -1
  320. package/dist/theme/tui-theme-types.d.ts +39 -0
  321. package/dist/theme/tui-theme-types.d.ts.map +1 -0
  322. package/dist/theme/tui-theme-types.js +10 -0
  323. package/dist/theme/tui-theme-types.js.map +1 -0
  324. package/dist/tools/index.d.ts +199 -160
  325. package/dist/tools/index.d.ts.map +1 -1
  326. package/dist/tools/index.js +4 -0
  327. package/dist/tools/index.js.map +1 -1
  328. package/dist/tools/lazy-registry.d.ts.map +1 -1
  329. package/dist/tools/lazy-registry.js +1 -0
  330. package/dist/tools/lazy-registry.js.map +1 -1
  331. package/dist/tools/oracle.d.ts +9 -0
  332. package/dist/tools/oracle.d.ts.map +1 -1
  333. package/dist/tools/oracle.js +26 -24
  334. package/dist/tools/oracle.js.map +1 -1
  335. package/dist/tools/painter.d.ts +73 -0
  336. package/dist/tools/painter.d.ts.map +1 -0
  337. package/dist/tools/painter.js +283 -0
  338. package/dist/tools/painter.js.map +1 -0
  339. package/dist/tools/typebox-tool.d.ts.map +1 -1
  340. package/dist/tools/typebox-tool.js +1 -1
  341. package/dist/tools/typebox-tool.js.map +1 -1
  342. package/dist/utils/terminal-image.d.ts +52 -0
  343. package/dist/utils/terminal-image.d.ts.map +1 -0
  344. package/dist/utils/terminal-image.js +95 -0
  345. package/dist/utils/terminal-image.js.map +1 -0
  346. package/dist/utils/terminal-text.d.ts +11 -0
  347. package/dist/utils/terminal-text.d.ts.map +1 -0
  348. package/dist/utils/terminal-text.js +21 -0
  349. package/dist/utils/terminal-text.js.map +1 -0
  350. package/dist/version.json +2 -2
  351. package/dist/web-server.d.ts.map +1 -1
  352. package/dist/web-server.js +24 -2
  353. package/dist/web-server.js.map +1 -1
  354. package/package.json +13 -11
  355. package/skills/incident-triage/SKILL.md +4 -3
  356. package/dist/cli/commands/agents.d.ts +0 -24
  357. package/dist/cli/commands/agents.d.ts.map +0 -1
  358. package/dist/cli/commands/agents.js +0 -429
  359. package/dist/cli/commands/agents.js.map +0 -1
  360. package/dist/cli/commands/anthropic.d.ts +0 -2
  361. package/dist/cli/commands/anthropic.d.ts.map +0 -1
  362. package/dist/cli/commands/anthropic.js +0 -6
  363. package/dist/cli/commands/anthropic.js.map +0 -1
  364. package/dist/cli/commands/cost.d.ts +0 -13
  365. package/dist/cli/commands/cost.d.ts.map +0 -1
  366. package/dist/cli/commands/cost.js +0 -143
  367. package/dist/cli/commands/cost.js.map +0 -1
  368. package/dist/cli/commands/exec-constants.d.ts +0 -3
  369. package/dist/cli/commands/exec-constants.d.ts.map +0 -1
  370. package/dist/cli/commands/exec-constants.js +0 -3
  371. package/dist/cli/commands/exec-constants.js.map +0 -1
  372. package/dist/cli/commands/exec.d.ts +0 -19
  373. package/dist/cli/commands/exec.d.ts.map +0 -1
  374. package/dist/cli/commands/exec.js +0 -207
  375. package/dist/cli/commands/exec.js.map +0 -1
  376. package/dist/cli/commands/hooks.d.ts +0 -2
  377. package/dist/cli/commands/hooks.d.ts.map +0 -1
  378. package/dist/cli/commands/hooks.js +0 -25
  379. package/dist/cli/commands/hooks.js.map +0 -1
  380. package/dist/cli/commands/hosted-runner.d.ts +0 -25
  381. package/dist/cli/commands/hosted-runner.d.ts.map +0 -1
  382. package/dist/cli/commands/hosted-runner.js +0 -278
  383. package/dist/cli/commands/hosted-runner.js.map +0 -1
  384. package/dist/cli/commands/memory.d.ts +0 -2
  385. package/dist/cli/commands/memory.d.ts.map +0 -1
  386. package/dist/cli/commands/memory.js +0 -208
  387. package/dist/cli/commands/memory.js.map +0 -1
  388. package/dist/cli/commands/models.d.ts +0 -3
  389. package/dist/cli/commands/models.d.ts.map +0 -1
  390. package/dist/cli/commands/models.js +0 -154
  391. package/dist/cli/commands/models.js.map +0 -1
  392. package/dist/cli/commands/modes.d.ts +0 -8
  393. package/dist/cli/commands/modes.d.ts.map +0 -1
  394. package/dist/cli/commands/modes.js +0 -151
  395. package/dist/cli/commands/modes.js.map +0 -1
  396. package/dist/cli/commands/openai.d.ts +0 -2
  397. package/dist/cli/commands/openai.d.ts.map +0 -1
  398. package/dist/cli/commands/openai.js +0 -116
  399. package/dist/cli/commands/openai.js.map +0 -1
  400. package/dist/cli/commands/session-transfer.d.ts +0 -5
  401. package/dist/cli/commands/session-transfer.d.ts.map +0 -1
  402. package/dist/cli/commands/session-transfer.js +0 -43
  403. package/dist/cli/commands/session-transfer.js.map +0 -1
  404. package/dist/cli/commands/sessions.d.ts +0 -8
  405. package/dist/cli/commands/sessions.d.ts.map +0 -1
  406. package/dist/cli/commands/sessions.js +0 -152
  407. package/dist/cli/commands/sessions.js.map +0 -1
  408. package/dist/cli/commands/skill.d.ts +0 -10
  409. package/dist/cli/commands/skill.d.ts.map +0 -1
  410. package/dist/cli/commands/skill.js +0 -303
  411. package/dist/cli/commands/skill.js.map +0 -1
  412. package/dist/cli/commands/stats.d.ts +0 -7
  413. package/dist/cli/commands/stats.d.ts.map +0 -1
  414. package/dist/cli/commands/stats.js +0 -167
  415. package/dist/cli/commands/stats.js.map +0 -1
  416. package/dist/cli/commands/status.d.ts +0 -2
  417. package/dist/cli/commands/status.d.ts.map +0 -1
  418. package/dist/cli/commands/status.js +0 -11
  419. package/dist/cli/commands/status.js.map +0 -1
  420. package/dist/cli/commands/update.d.ts +0 -12
  421. package/dist/cli/commands/update.d.ts.map +0 -1
  422. package/dist/cli/commands/update.js +0 -148
  423. package/dist/cli/commands/update.js.map +0 -1
  424. package/dist/cli-tui/about-view.d.ts +0 -48
  425. package/dist/cli-tui/about-view.d.ts.map +0 -1
  426. package/dist/cli-tui/about-view.js +0 -206
  427. package/dist/cli-tui/about-view.js.map +0 -1
  428. package/dist/cli-tui/agent-event-router.d.ts +0 -28
  429. package/dist/cli-tui/agent-event-router.d.ts.map +0 -1
  430. package/dist/cli-tui/agent-event-router.js +0 -126
  431. package/dist/cli-tui/agent-event-router.js.map +0 -1
  432. package/dist/cli-tui/approval/approval-controller.d.ts +0 -28
  433. package/dist/cli-tui/approval/approval-controller.d.ts.map +0 -1
  434. package/dist/cli-tui/approval/approval-controller.js +0 -99
  435. package/dist/cli-tui/approval/approval-controller.js.map +0 -1
  436. package/dist/cli-tui/approval/approval-modal.d.ts +0 -26
  437. package/dist/cli-tui/approval/approval-modal.d.ts.map +0 -1
  438. package/dist/cli-tui/approval/approval-modal.js +0 -143
  439. package/dist/cli-tui/approval/approval-modal.js.map +0 -1
  440. package/dist/cli-tui/assistant-message.d.ts +0 -41
  441. package/dist/cli-tui/assistant-message.d.ts.map +0 -1
  442. package/dist/cli-tui/assistant-message.js +0 -236
  443. package/dist/cli-tui/assistant-message.js.map +0 -1
  444. package/dist/cli-tui/auth-state.d.ts +0 -7
  445. package/dist/cli-tui/auth-state.d.ts.map +0 -1
  446. package/dist/cli-tui/auth-state.js +0 -46
  447. package/dist/cli-tui/auth-state.js.map +0 -1
  448. package/dist/cli-tui/background/background-tasks-controller.d.ts +0 -31
  449. package/dist/cli-tui/background/background-tasks-controller.d.ts.map +0 -1
  450. package/dist/cli-tui/background/background-tasks-controller.js +0 -84
  451. package/dist/cli-tui/background/background-tasks-controller.js.map +0 -1
  452. package/dist/cli-tui/base-view.d.ts +0 -111
  453. package/dist/cli-tui/base-view.d.ts.map +0 -1
  454. package/dist/cli-tui/base-view.js +0 -145
  455. package/dist/cli-tui/base-view.js.map +0 -1
  456. package/dist/cli-tui/bash/background-launcher.d.ts +0 -14
  457. package/dist/cli-tui/bash/background-launcher.d.ts.map +0 -1
  458. package/dist/cli-tui/bash/background-launcher.js +0 -50
  459. package/dist/cli-tui/bash/background-launcher.js.map +0 -1
  460. package/dist/cli-tui/bash/bash-autocomplete.d.ts +0 -40
  461. package/dist/cli-tui/bash/bash-autocomplete.d.ts.map +0 -1
  462. package/dist/cli-tui/bash/bash-autocomplete.js +0 -347
  463. package/dist/cli-tui/bash/bash-autocomplete.js.map +0 -1
  464. package/dist/cli-tui/bash/bash-history.d.ts +0 -21
  465. package/dist/cli-tui/bash/bash-history.d.ts.map +0 -1
  466. package/dist/cli-tui/bash/bash-history.js +0 -72
  467. package/dist/cli-tui/bash/bash-history.js.map +0 -1
  468. package/dist/cli-tui/bash/bash-syntax.d.ts +0 -5
  469. package/dist/cli-tui/bash/bash-syntax.d.ts.map +0 -1
  470. package/dist/cli-tui/bash/bash-syntax.js +0 -176
  471. package/dist/cli-tui/bash/bash-syntax.js.map +0 -1
  472. package/dist/cli-tui/bash/index.d.ts +0 -4
  473. package/dist/cli-tui/bash/index.d.ts.map +0 -1
  474. package/dist/cli-tui/bash/index.js +0 -4
  475. package/dist/cli-tui/bash/index.js.map +0 -1
  476. package/dist/cli-tui/bash-mode-view.d.ts +0 -86
  477. package/dist/cli-tui/bash-mode-view.d.ts.map +0 -1
  478. package/dist/cli-tui/bash-mode-view.js +0 -560
  479. package/dist/cli-tui/bash-mode-view.js.map +0 -1
  480. package/dist/cli-tui/bash-shell-block.d.ts +0 -50
  481. package/dist/cli-tui/bash-shell-block.d.ts.map +0 -1
  482. package/dist/cli-tui/bash-shell-block.js +0 -119
  483. package/dist/cli-tui/bash-shell-block.js.map +0 -1
  484. package/dist/cli-tui/changelog-view.d.ts +0 -13
  485. package/dist/cli-tui/changelog-view.d.ts.map +0 -1
  486. package/dist/cli-tui/changelog-view.js +0 -34
  487. package/dist/cli-tui/changelog-view.js.map +0 -1
  488. package/dist/cli-tui/clean-mode.d.ts +0 -13
  489. package/dist/cli-tui/clean-mode.d.ts.map +0 -1
  490. package/dist/cli-tui/clean-mode.js +0 -32
  491. package/dist/cli-tui/clean-mode.js.map +0 -1
  492. package/dist/cli-tui/client-tools/client-tool-controller.d.ts +0 -41
  493. package/dist/cli-tui/client-tools/client-tool-controller.d.ts.map +0 -1
  494. package/dist/cli-tui/client-tools/client-tool-controller.js +0 -860
  495. package/dist/cli-tui/client-tools/client-tool-controller.js.map +0 -1
  496. package/dist/cli-tui/client-tools/local-client-tool-service.d.ts +0 -33
  497. package/dist/cli-tui/client-tools/local-client-tool-service.d.ts.map +0 -1
  498. package/dist/cli-tui/client-tools/local-client-tool-service.js +0 -94
  499. package/dist/cli-tui/client-tools/local-client-tool-service.js.map +0 -1
  500. package/dist/cli-tui/commands/a2a-handlers.d.ts +0 -7
  501. package/dist/cli-tui/commands/a2a-handlers.d.ts.map +0 -1
  502. package/dist/cli-tui/commands/a2a-handlers.js +0 -215
  503. package/dist/cli-tui/commands/a2a-handlers.js.map +0 -1
  504. package/dist/cli-tui/commands/access-command.d.ts +0 -3
  505. package/dist/cli-tui/commands/access-command.d.ts.map +0 -1
  506. package/dist/cli-tui/commands/access-command.js +0 -89
  507. package/dist/cli-tui/commands/access-command.js.map +0 -1
  508. package/dist/cli-tui/commands/argument-parser.d.ts +0 -12
  509. package/dist/cli-tui/commands/argument-parser.d.ts.map +0 -1
  510. package/dist/cli-tui/commands/argument-parser.js +0 -135
  511. package/dist/cli-tui/commands/argument-parser.js.map +0 -1
  512. package/dist/cli-tui/commands/audit-command.d.ts +0 -5
  513. package/dist/cli-tui/commands/audit-command.d.ts.map +0 -1
  514. package/dist/cli-tui/commands/audit-command.js +0 -35
  515. package/dist/cli-tui/commands/audit-command.js.map +0 -1
  516. package/dist/cli-tui/commands/background-handlers.d.ts +0 -14
  517. package/dist/cli-tui/commands/background-handlers.d.ts.map +0 -1
  518. package/dist/cli-tui/commands/background-handlers.js +0 -115
  519. package/dist/cli-tui/commands/background-handlers.js.map +0 -1
  520. package/dist/cli-tui/commands/command-catalog.d.ts +0 -29
  521. package/dist/cli-tui/commands/command-catalog.d.ts.map +0 -1
  522. package/dist/cli-tui/commands/command-catalog.js +0 -666
  523. package/dist/cli-tui/commands/command-catalog.js.map +0 -1
  524. package/dist/cli-tui/commands/command-registry-adapter.d.ts +0 -12
  525. package/dist/cli-tui/commands/command-registry-adapter.d.ts.map +0 -1
  526. package/dist/cli-tui/commands/command-registry-adapter.js +0 -129
  527. package/dist/cli-tui/commands/command-registry-adapter.js.map +0 -1
  528. package/dist/cli-tui/commands/command-suite-catalog.d.ts +0 -14
  529. package/dist/cli-tui/commands/command-suite-catalog.d.ts.map +0 -1
  530. package/dist/cli-tui/commands/command-suite-catalog.js +0 -147
  531. package/dist/cli-tui/commands/command-suite-catalog.js.map +0 -1
  532. package/dist/cli-tui/commands/command-suite-handlers.d.ts +0 -111
  533. package/dist/cli-tui/commands/command-suite-handlers.d.ts.map +0 -1
  534. package/dist/cli-tui/commands/command-suite-handlers.js +0 -110
  535. package/dist/cli-tui/commands/command-suite-handlers.js.map +0 -1
  536. package/dist/cli-tui/commands/composer-handlers.d.ts +0 -8
  537. package/dist/cli-tui/commands/composer-handlers.d.ts.map +0 -1
  538. package/dist/cli-tui/commands/composer-handlers.js +0 -90
  539. package/dist/cli-tui/commands/composer-handlers.js.map +0 -1
  540. package/dist/cli-tui/commands/framework-handlers.d.ts +0 -18
  541. package/dist/cli-tui/commands/framework-handlers.d.ts.map +0 -1
  542. package/dist/cli-tui/commands/framework-handlers.js +0 -57
  543. package/dist/cli-tui/commands/framework-handlers.js.map +0 -1
  544. package/dist/cli-tui/commands/guardian-handlers.d.ts +0 -20
  545. package/dist/cli-tui/commands/guardian-handlers.d.ts.map +0 -1
  546. package/dist/cli-tui/commands/guardian-handlers.js +0 -48
  547. package/dist/cli-tui/commands/guardian-handlers.js.map +0 -1
  548. package/dist/cli-tui/commands/handlers/mode-handler.d.ts +0 -32
  549. package/dist/cli-tui/commands/handlers/mode-handler.d.ts.map +0 -1
  550. package/dist/cli-tui/commands/handlers/mode-handler.js +0 -153
  551. package/dist/cli-tui/commands/handlers/mode-handler.js.map +0 -1
  552. package/dist/cli-tui/commands/hotkeys-command.d.ts +0 -8
  553. package/dist/cli-tui/commands/hotkeys-command.d.ts.map +0 -1
  554. package/dist/cli-tui/commands/hotkeys-command.js +0 -61
  555. package/dist/cli-tui/commands/hotkeys-command.js.map +0 -1
  556. package/dist/cli-tui/commands/limits-command.d.ts +0 -3
  557. package/dist/cli-tui/commands/limits-command.d.ts.map +0 -1
  558. package/dist/cli-tui/commands/limits-command.js +0 -88
  559. package/dist/cli-tui/commands/limits-command.js.map +0 -1
  560. package/dist/cli-tui/commands/mcp-handlers.d.ts +0 -12
  561. package/dist/cli-tui/commands/mcp-handlers.d.ts.map +0 -1
  562. package/dist/cli-tui/commands/mcp-handlers.js +0 -1306
  563. package/dist/cli-tui/commands/mcp-handlers.js.map +0 -1
  564. package/dist/cli-tui/commands/memory-handlers.d.ts +0 -28
  565. package/dist/cli-tui/commands/memory-handlers.d.ts.map +0 -1
  566. package/dist/cli-tui/commands/memory-handlers.js +0 -414
  567. package/dist/cli-tui/commands/memory-handlers.js.map +0 -1
  568. package/dist/cli-tui/commands/otel-handlers.d.ts +0 -11
  569. package/dist/cli-tui/commands/otel-handlers.d.ts.map +0 -1
  570. package/dist/cli-tui/commands/otel-handlers.js +0 -20
  571. package/dist/cli-tui/commands/otel-handlers.js.map +0 -1
  572. package/dist/cli-tui/commands/package-handlers.d.ts +0 -30
  573. package/dist/cli-tui/commands/package-handlers.d.ts.map +0 -1
  574. package/dist/cli-tui/commands/package-handlers.js +0 -499
  575. package/dist/cli-tui/commands/package-handlers.js.map +0 -1
  576. package/dist/cli-tui/commands/pii-command.d.ts +0 -3
  577. package/dist/cli-tui/commands/pii-command.d.ts.map +0 -1
  578. package/dist/cli-tui/commands/pii-command.js +0 -54
  579. package/dist/cli-tui/commands/pii-command.js.map +0 -1
  580. package/dist/cli-tui/commands/registry.d.ts +0 -3
  581. package/dist/cli-tui/commands/registry.d.ts.map +0 -1
  582. package/dist/cli-tui/commands/registry.js +0 -36
  583. package/dist/cli-tui/commands/registry.js.map +0 -1
  584. package/dist/cli-tui/commands/safety-handlers.d.ts +0 -36
  585. package/dist/cli-tui/commands/safety-handlers.d.ts.map +0 -1
  586. package/dist/cli-tui/commands/safety-handlers.js +0 -62
  587. package/dist/cli-tui/commands/safety-handlers.js.map +0 -1
  588. package/dist/cli-tui/commands/subcommands/auth-commands.d.ts +0 -26
  589. package/dist/cli-tui/commands/subcommands/auth-commands.d.ts.map +0 -1
  590. package/dist/cli-tui/commands/subcommands/auth-commands.js +0 -79
  591. package/dist/cli-tui/commands/subcommands/auth-commands.js.map +0 -1
  592. package/dist/cli-tui/commands/subcommands/config-commands.d.ts +0 -23
  593. package/dist/cli-tui/commands/subcommands/config-commands.d.ts.map +0 -1
  594. package/dist/cli-tui/commands/subcommands/config-commands.js +0 -61
  595. package/dist/cli-tui/commands/subcommands/config-commands.js.map +0 -1
  596. package/dist/cli-tui/commands/subcommands/diag-commands.d.ts +0 -46
  597. package/dist/cli-tui/commands/subcommands/diag-commands.d.ts.map +0 -1
  598. package/dist/cli-tui/commands/subcommands/diag-commands.js +0 -163
  599. package/dist/cli-tui/commands/subcommands/diag-commands.js.map +0 -1
  600. package/dist/cli-tui/commands/subcommands/git-commands.d.ts +0 -18
  601. package/dist/cli-tui/commands/subcommands/git-commands.d.ts.map +0 -1
  602. package/dist/cli-tui/commands/subcommands/git-commands.js +0 -50
  603. package/dist/cli-tui/commands/subcommands/git-commands.js.map +0 -1
  604. package/dist/cli-tui/commands/subcommands/index.d.ts +0 -18
  605. package/dist/cli-tui/commands/subcommands/index.d.ts.map +0 -1
  606. package/dist/cli-tui/commands/subcommands/index.js +0 -18
  607. package/dist/cli-tui/commands/subcommands/index.js.map +0 -1
  608. package/dist/cli-tui/commands/subcommands/safety-commands.d.ts +0 -26
  609. package/dist/cli-tui/commands/subcommands/safety-commands.d.ts.map +0 -1
  610. package/dist/cli-tui/commands/subcommands/safety-commands.js +0 -149
  611. package/dist/cli-tui/commands/subcommands/safety-commands.js.map +0 -1
  612. package/dist/cli-tui/commands/subcommands/session-commands.d.ts +0 -36
  613. package/dist/cli-tui/commands/subcommands/session-commands.d.ts.map +0 -1
  614. package/dist/cli-tui/commands/subcommands/session-commands.js +0 -112
  615. package/dist/cli-tui/commands/subcommands/session-commands.js.map +0 -1
  616. package/dist/cli-tui/commands/subcommands/tools-commands.d.ts +0 -27
  617. package/dist/cli-tui/commands/subcommands/tools-commands.d.ts.map +0 -1
  618. package/dist/cli-tui/commands/subcommands/tools-commands.js +0 -80
  619. package/dist/cli-tui/commands/subcommands/tools-commands.js.map +0 -1
  620. package/dist/cli-tui/commands/subcommands/ui-commands.d.ts +0 -30
  621. package/dist/cli-tui/commands/subcommands/ui-commands.d.ts.map +0 -1
  622. package/dist/cli-tui/commands/subcommands/ui-commands.js +0 -74
  623. package/dist/cli-tui/commands/subcommands/ui-commands.js.map +0 -1
  624. package/dist/cli-tui/commands/subcommands/undo-commands.d.ts +0 -25
  625. package/dist/cli-tui/commands/subcommands/undo-commands.d.ts.map +0 -1
  626. package/dist/cli-tui/commands/subcommands/undo-commands.js +0 -74
  627. package/dist/cli-tui/commands/subcommands/undo-commands.js.map +0 -1
  628. package/dist/cli-tui/commands/subcommands/usage-commands.d.ts +0 -19
  629. package/dist/cli-tui/commands/subcommands/usage-commands.d.ts.map +0 -1
  630. package/dist/cli-tui/commands/subcommands/usage-commands.js +0 -63
  631. package/dist/cli-tui/commands/subcommands/usage-commands.js.map +0 -1
  632. package/dist/cli-tui/commands/subcommands/utils.d.ts +0 -127
  633. package/dist/cli-tui/commands/subcommands/utils.d.ts.map +0 -1
  634. package/dist/cli-tui/commands/subcommands/utils.js +0 -395
  635. package/dist/cli-tui/commands/subcommands/utils.js.map +0 -1
  636. package/dist/cli-tui/commands/types.d.ts +0 -105
  637. package/dist/cli-tui/commands/types.d.ts.map +0 -1
  638. package/dist/cli-tui/commands/types.js +0 -2
  639. package/dist/cli-tui/commands/types.js.map +0 -1
  640. package/dist/cli-tui/commands/undo-handlers.d.ts +0 -29
  641. package/dist/cli-tui/commands/undo-handlers.d.ts.map +0 -1
  642. package/dist/cli-tui/commands/undo-handlers.js +0 -305
  643. package/dist/cli-tui/commands/undo-handlers.js.map +0 -1
  644. package/dist/cli-tui/commands/utility-handlers.d.ts +0 -55
  645. package/dist/cli-tui/commands/utility-handlers.d.ts.map +0 -1
  646. package/dist/cli-tui/commands/utility-handlers.js +0 -137
  647. package/dist/cli-tui/commands/utility-handlers.js.map +0 -1
  648. package/dist/cli-tui/commands/workflow-handlers.d.ts +0 -22
  649. package/dist/cli-tui/commands/workflow-handlers.d.ts.map +0 -1
  650. package/dist/cli-tui/commands/workflow-handlers.js +0 -227
  651. package/dist/cli-tui/commands/workflow-handlers.js.map +0 -1
  652. package/dist/cli-tui/compact-boundary-message.d.ts +0 -9
  653. package/dist/cli-tui/compact-boundary-message.d.ts.map +0 -1
  654. package/dist/cli-tui/compact-boundary-message.js +0 -18
  655. package/dist/cli-tui/compact-boundary-message.js.map +0 -1
  656. package/dist/cli-tui/compaction-recovery.d.ts +0 -6
  657. package/dist/cli-tui/compaction-recovery.d.ts.map +0 -1
  658. package/dist/cli-tui/compaction-recovery.js +0 -13
  659. package/dist/cli-tui/compaction-recovery.js.map +0 -1
  660. package/dist/cli-tui/config-view.d.ts +0 -30
  661. package/dist/cli-tui/config-view.d.ts.map +0 -1
  662. package/dist/cli-tui/config-view.js +0 -255
  663. package/dist/cli-tui/config-view.js.map +0 -1
  664. package/dist/cli-tui/context-view.d.ts +0 -20
  665. package/dist/cli-tui/context-view.d.ts.map +0 -1
  666. package/dist/cli-tui/context-view.js +0 -191
  667. package/dist/cli-tui/context-view.js.map +0 -1
  668. package/dist/cli-tui/custom-editor.d.ts +0 -25
  669. package/dist/cli-tui/custom-editor.d.ts.map +0 -1
  670. package/dist/cli-tui/custom-editor.js +0 -241
  671. package/dist/cli-tui/custom-editor.js.map +0 -1
  672. package/dist/cli-tui/editor-view.d.ts +0 -34
  673. package/dist/cli-tui/editor-view.d.ts.map +0 -1
  674. package/dist/cli-tui/editor-view.js +0 -102
  675. package/dist/cli-tui/editor-view.js.map +0 -1
  676. package/dist/cli-tui/feedback-view.d.ts +0 -35
  677. package/dist/cli-tui/feedback-view.d.ts.map +0 -1
  678. package/dist/cli-tui/feedback-view.js +0 -271
  679. package/dist/cli-tui/feedback-view.js.map +0 -1
  680. package/dist/cli-tui/footer.d.ts +0 -56
  681. package/dist/cli-tui/footer.d.ts.map +0 -1
  682. package/dist/cli-tui/footer.js +0 -228
  683. package/dist/cli-tui/footer.js.map +0 -1
  684. package/dist/cli-tui/git/commit-modal.d.ts +0 -14
  685. package/dist/cli-tui/git/commit-modal.d.ts.map +0 -1
  686. package/dist/cli-tui/git/commit-modal.js +0 -56
  687. package/dist/cli-tui/git/commit-modal.js.map +0 -1
  688. package/dist/cli-tui/git/git-preview-modal.d.ts +0 -40
  689. package/dist/cli-tui/git/git-preview-modal.d.ts.map +0 -1
  690. package/dist/cli-tui/git/git-preview-modal.js +0 -123
  691. package/dist/cli-tui/git/git-preview-modal.js.map +0 -1
  692. package/dist/cli-tui/git/git-view.d.ts +0 -65
  693. package/dist/cli-tui/git/git-view.d.ts.map +0 -1
  694. package/dist/cli-tui/git/git-view.js +0 -529
  695. package/dist/cli-tui/git/git-view.js.map +0 -1
  696. package/dist/cli-tui/history/history-config.d.ts +0 -7
  697. package/dist/cli-tui/history/history-config.d.ts.map +0 -1
  698. package/dist/cli-tui/history/history-config.js +0 -49
  699. package/dist/cli-tui/history/history-config.js.map +0 -1
  700. package/dist/cli-tui/history/prompt-history.d.ts +0 -33
  701. package/dist/cli-tui/history/prompt-history.d.ts.map +0 -1
  702. package/dist/cli-tui/history/prompt-history.js +0 -185
  703. package/dist/cli-tui/history/prompt-history.js.map +0 -1
  704. package/dist/cli-tui/history/tool-history.d.ts +0 -50
  705. package/dist/cli-tui/history/tool-history.d.ts.map +0 -1
  706. package/dist/cli-tui/history/tool-history.js +0 -253
  707. package/dist/cli-tui/history/tool-history.js.map +0 -1
  708. package/dist/cli-tui/hook-message.d.ts +0 -13
  709. package/dist/cli-tui/hook-message.d.ts.map +0 -1
  710. package/dist/cli-tui/hook-message.js +0 -56
  711. package/dist/cli-tui/hook-message.js.map +0 -1
  712. package/dist/cli-tui/hooks/hook-input-modal.d.ts +0 -22
  713. package/dist/cli-tui/hooks/hook-input-modal.d.ts.map +0 -1
  714. package/dist/cli-tui/hooks/hook-input-modal.js +0 -63
  715. package/dist/cli-tui/hooks/hook-input-modal.js.map +0 -1
  716. package/dist/cli-tui/hotkeys-view.d.ts +0 -13
  717. package/dist/cli-tui/hotkeys-view.d.ts.map +0 -1
  718. package/dist/cli-tui/hotkeys-view.js +0 -96
  719. package/dist/cli-tui/hotkeys-view.js.map +0 -1
  720. package/dist/cli-tui/import-view.d.ts +0 -28
  721. package/dist/cli-tui/import-view.d.ts.map +0 -1
  722. package/dist/cli-tui/import-view.js +0 -184
  723. package/dist/cli-tui/import-view.js.map +0 -1
  724. package/dist/cli-tui/info-view.d.ts +0 -18
  725. package/dist/cli-tui/info-view.d.ts.map +0 -1
  726. package/dist/cli-tui/info-view.js +0 -107
  727. package/dist/cli-tui/info-view.js.map +0 -1
  728. package/dist/cli-tui/instruction-panel.d.ts +0 -11
  729. package/dist/cli-tui/instruction-panel.d.ts.map +0 -1
  730. package/dist/cli-tui/instruction-panel.js +0 -86
  731. package/dist/cli-tui/instruction-panel.js.map +0 -1
  732. package/dist/cli-tui/interrupt-controller.d.ts +0 -78
  733. package/dist/cli-tui/interrupt-controller.d.ts.map +0 -1
  734. package/dist/cli-tui/interrupt-controller.js +0 -104
  735. package/dist/cli-tui/interrupt-controller.js.map +0 -1
  736. package/dist/cli-tui/keybindings-config.d.ts +0 -27
  737. package/dist/cli-tui/keybindings-config.d.ts.map +0 -1
  738. package/dist/cli-tui/keybindings-config.js +0 -372
  739. package/dist/cli-tui/keybindings-config.js.map +0 -1
  740. package/dist/cli-tui/keybindings-watcher.d.ts +0 -8
  741. package/dist/cli-tui/keybindings-watcher.d.ts.map +0 -1
  742. package/dist/cli-tui/keybindings-watcher.js +0 -56
  743. package/dist/cli-tui/keybindings-watcher.js.map +0 -1
  744. package/dist/cli-tui/keybindings.d.ts +0 -13
  745. package/dist/cli-tui/keybindings.d.ts.map +0 -1
  746. package/dist/cli-tui/keybindings.js +0 -223
  747. package/dist/cli-tui/keybindings.js.map +0 -1
  748. package/dist/cli-tui/loader/loader-stage-manager.d.ts +0 -43
  749. package/dist/cli-tui/loader/loader-stage-manager.d.ts.map +0 -1
  750. package/dist/cli-tui/loader/loader-stage-manager.js +0 -241
  751. package/dist/cli-tui/loader/loader-stage-manager.js.map +0 -1
  752. package/dist/cli-tui/loader/loader-stage-telemetry.d.ts +0 -14
  753. package/dist/cli-tui/loader/loader-stage-telemetry.d.ts.map +0 -1
  754. package/dist/cli-tui/loader/loader-stage-telemetry.js +0 -34
  755. package/dist/cli-tui/loader/loader-stage-telemetry.js.map +0 -1
  756. package/dist/cli-tui/loader/loader-view.d.ts +0 -41
  757. package/dist/cli-tui/loader/loader-view.d.ts.map +0 -1
  758. package/dist/cli-tui/loader/loader-view.js +0 -162
  759. package/dist/cli-tui/loader/loader-view.js.map +0 -1
  760. package/dist/cli-tui/lsp-view.d.ts +0 -21
  761. package/dist/cli-tui/lsp-view.d.ts.map +0 -1
  762. package/dist/cli-tui/lsp-view.js +0 -183
  763. package/dist/cli-tui/lsp-view.js.map +0 -1
  764. package/dist/cli-tui/mermaid-renderer.d.ts +0 -2
  765. package/dist/cli-tui/mermaid-renderer.d.ts.map +0 -1
  766. package/dist/cli-tui/mermaid-renderer.js +0 -391
  767. package/dist/cli-tui/mermaid-renderer.js.map +0 -1
  768. package/dist/cli-tui/message-view.d.ts +0 -27
  769. package/dist/cli-tui/message-view.d.ts.map +0 -1
  770. package/dist/cli-tui/message-view.js +0 -169
  771. package/dist/cli-tui/message-view.js.map +0 -1
  772. package/dist/cli-tui/modal-manager.d.ts +0 -77
  773. package/dist/cli-tui/modal-manager.d.ts.map +0 -1
  774. package/dist/cli-tui/modal-manager.js +0 -131
  775. package/dist/cli-tui/modal-manager.js.map +0 -1
  776. package/dist/cli-tui/notification-view.d.ts +0 -16
  777. package/dist/cli-tui/notification-view.d.ts.map +0 -1
  778. package/dist/cli-tui/notification-view.js +0 -53
  779. package/dist/cli-tui/notification-view.js.map +0 -1
  780. package/dist/cli-tui/oauth/index.d.ts +0 -2
  781. package/dist/cli-tui/oauth/index.d.ts.map +0 -1
  782. package/dist/cli-tui/oauth/index.js +0 -2
  783. package/dist/cli-tui/oauth/index.js.map +0 -1
  784. package/dist/cli-tui/oauth/oauth-flow-controller.d.ts +0 -65
  785. package/dist/cli-tui/oauth/oauth-flow-controller.d.ts.map +0 -1
  786. package/dist/cli-tui/oauth/oauth-flow-controller.js +0 -400
  787. package/dist/cli-tui/oauth/oauth-flow-controller.js.map +0 -1
  788. package/dist/cli-tui/ollama-view.d.ts +0 -38
  789. package/dist/cli-tui/ollama-view.d.ts.map +0 -1
  790. package/dist/cli-tui/ollama-view.js +0 -395
  791. package/dist/cli-tui/ollama-view.js.map +0 -1
  792. package/dist/cli-tui/paste/index.d.ts +0 -2
  793. package/dist/cli-tui/paste/index.d.ts.map +0 -1
  794. package/dist/cli-tui/paste/index.js +0 -2
  795. package/dist/cli-tui/paste/index.js.map +0 -1
  796. package/dist/cli-tui/paste/paste-handler.d.ts +0 -54
  797. package/dist/cli-tui/paste/paste-handler.d.ts.map +0 -1
  798. package/dist/cli-tui/paste/paste-handler.js +0 -128
  799. package/dist/cli-tui/paste/paste-handler.js.map +0 -1
  800. package/dist/cli-tui/plan/plan-controller.d.ts +0 -28
  801. package/dist/cli-tui/plan/plan-controller.d.ts.map +0 -1
  802. package/dist/cli-tui/plan/plan-controller.js +0 -66
  803. package/dist/cli-tui/plan/plan-controller.js.map +0 -1
  804. package/dist/cli-tui/plan-panel-modal.d.ts +0 -28
  805. package/dist/cli-tui/plan-panel-modal.d.ts.map +0 -1
  806. package/dist/cli-tui/plan-panel-modal.js +0 -193
  807. package/dist/cli-tui/plan-panel-modal.js.map +0 -1
  808. package/dist/cli-tui/plan-view.d.ts +0 -57
  809. package/dist/cli-tui/plan-view.d.ts.map +0 -1
  810. package/dist/cli-tui/plan-view.js +0 -404
  811. package/dist/cli-tui/plan-view.js.map +0 -1
  812. package/dist/cli-tui/queue/follow-up-shortcut.d.ts +0 -6
  813. package/dist/cli-tui/queue/follow-up-shortcut.d.ts.map +0 -1
  814. package/dist/cli-tui/queue/follow-up-shortcut.js +0 -12
  815. package/dist/cli-tui/queue/follow-up-shortcut.js.map +0 -1
  816. package/dist/cli-tui/queue/index.d.ts +0 -3
  817. package/dist/cli-tui/queue/index.d.ts.map +0 -1
  818. package/dist/cli-tui/queue/index.js +0 -3
  819. package/dist/cli-tui/queue/index.js.map +0 -1
  820. package/dist/cli-tui/queue/queue-controller.d.ts +0 -109
  821. package/dist/cli-tui/queue/queue-controller.d.ts.map +0 -1
  822. package/dist/cli-tui/queue/queue-controller.js +0 -327
  823. package/dist/cli-tui/queue/queue-controller.js.map +0 -1
  824. package/dist/cli-tui/queue/queue-panel-controller.d.ts +0 -34
  825. package/dist/cli-tui/queue/queue-panel-controller.d.ts.map +0 -1
  826. package/dist/cli-tui/queue/queue-panel-controller.js +0 -163
  827. package/dist/cli-tui/queue/queue-panel-controller.js.map +0 -1
  828. package/dist/cli-tui/queue/queued-follow-up-edit-binding.d.ts +0 -7
  829. package/dist/cli-tui/queue/queued-follow-up-edit-binding.d.ts.map +0 -1
  830. package/dist/cli-tui/queue/queued-follow-up-edit-binding.js +0 -14
  831. package/dist/cli-tui/queue/queued-follow-up-edit-binding.js.map +0 -1
  832. package/dist/cli-tui/queue-panel-modal.d.ts +0 -26
  833. package/dist/cli-tui/queue-panel-modal.d.ts.map +0 -1
  834. package/dist/cli-tui/queue-panel-modal.js +0 -159
  835. package/dist/cli-tui/queue-panel-modal.js.map +0 -1
  836. package/dist/cli-tui/run/run-command-view.d.ts +0 -17
  837. package/dist/cli-tui/run/run-command-view.d.ts.map +0 -1
  838. package/dist/cli-tui/run/run-command-view.js +0 -62
  839. package/dist/cli-tui/run/run-command-view.js.map +0 -1
  840. package/dist/cli-tui/run/run-controller.d.ts +0 -24
  841. package/dist/cli-tui/run/run-controller.d.ts.map +0 -1
  842. package/dist/cli-tui/run/run-controller.js +0 -38
  843. package/dist/cli-tui/run/run-controller.js.map +0 -1
  844. package/dist/cli-tui/run/run-shell-command.d.ts +0 -13
  845. package/dist/cli-tui/run/run-shell-command.d.ts.map +0 -1
  846. package/dist/cli-tui/run/run-shell-command.js +0 -51
  847. package/dist/cli-tui/run/run-shell-command.js.map +0 -1
  848. package/dist/cli-tui/run/streaming-shell-command.d.ts +0 -19
  849. package/dist/cli-tui/run/streaming-shell-command.d.ts.map +0 -1
  850. package/dist/cli-tui/run/streaming-shell-command.js +0 -107
  851. package/dist/cli-tui/run/streaming-shell-command.js.map +0 -1
  852. package/dist/cli-tui/search/file-search-view.d.ts +0 -22
  853. package/dist/cli-tui/search/file-search-view.d.ts.map +0 -1
  854. package/dist/cli-tui/search/file-search-view.js +0 -68
  855. package/dist/cli-tui/search/file-search-view.js.map +0 -1
  856. package/dist/cli-tui/search/file-search.d.ts +0 -13
  857. package/dist/cli-tui/search/file-search.d.ts.map +0 -1
  858. package/dist/cli-tui/search/file-search.js +0 -52
  859. package/dist/cli-tui/search/file-search.js.map +0 -1
  860. package/dist/cli-tui/security-status.d.ts +0 -83
  861. package/dist/cli-tui/security-status.d.ts.map +0 -1
  862. package/dist/cli-tui/security-status.js +0 -214
  863. package/dist/cli-tui/security-status.js.map +0 -1
  864. package/dist/cli-tui/selectors/base-selector.d.ts +0 -27
  865. package/dist/cli-tui/selectors/base-selector.d.ts.map +0 -1
  866. package/dist/cli-tui/selectors/base-selector.js +0 -47
  867. package/dist/cli-tui/selectors/base-selector.js.map +0 -1
  868. package/dist/cli-tui/selectors/branch-summary-modal.d.ts +0 -18
  869. package/dist/cli-tui/selectors/branch-summary-modal.d.ts.map +0 -1
  870. package/dist/cli-tui/selectors/branch-summary-modal.js +0 -24
  871. package/dist/cli-tui/selectors/branch-summary-modal.js.map +0 -1
  872. package/dist/cli-tui/selectors/model-selector-view.d.ts +0 -22
  873. package/dist/cli-tui/selectors/model-selector-view.d.ts.map +0 -1
  874. package/dist/cli-tui/selectors/model-selector-view.js +0 -31
  875. package/dist/cli-tui/selectors/model-selector-view.js.map +0 -1
  876. package/dist/cli-tui/selectors/model-selector.d.ts +0 -30
  877. package/dist/cli-tui/selectors/model-selector.d.ts.map +0 -1
  878. package/dist/cli-tui/selectors/model-selector.js +0 -218
  879. package/dist/cli-tui/selectors/model-selector.js.map +0 -1
  880. package/dist/cli-tui/selectors/oauth-selector-view.d.ts +0 -20
  881. package/dist/cli-tui/selectors/oauth-selector-view.d.ts.map +0 -1
  882. package/dist/cli-tui/selectors/oauth-selector-view.js +0 -28
  883. package/dist/cli-tui/selectors/oauth-selector-view.js.map +0 -1
  884. package/dist/cli-tui/selectors/oauth-selector.d.ts +0 -19
  885. package/dist/cli-tui/selectors/oauth-selector.d.ts.map +0 -1
  886. package/dist/cli-tui/selectors/oauth-selector.js +0 -120
  887. package/dist/cli-tui/selectors/oauth-selector.js.map +0 -1
  888. package/dist/cli-tui/selectors/queue-mode-selector-view.d.ts +0 -19
  889. package/dist/cli-tui/selectors/queue-mode-selector-view.d.ts.map +0 -1
  890. package/dist/cli-tui/selectors/queue-mode-selector-view.js +0 -29
  891. package/dist/cli-tui/selectors/queue-mode-selector-view.js.map +0 -1
  892. package/dist/cli-tui/selectors/queue-mode-selector.d.ts +0 -5
  893. package/dist/cli-tui/selectors/queue-mode-selector.d.ts.map +0 -1
  894. package/dist/cli-tui/selectors/queue-mode-selector.js +0 -34
  895. package/dist/cli-tui/selectors/queue-mode-selector.js.map +0 -1
  896. package/dist/cli-tui/selectors/report-selector-view.d.ts +0 -17
  897. package/dist/cli-tui/selectors/report-selector-view.d.ts.map +0 -1
  898. package/dist/cli-tui/selectors/report-selector-view.js +0 -29
  899. package/dist/cli-tui/selectors/report-selector-view.js.map +0 -1
  900. package/dist/cli-tui/selectors/report-selector.d.ts +0 -7
  901. package/dist/cli-tui/selectors/report-selector.d.ts.map +0 -1
  902. package/dist/cli-tui/selectors/report-selector.js +0 -31
  903. package/dist/cli-tui/selectors/report-selector.js.map +0 -1
  904. package/dist/cli-tui/selectors/theme-selector-view.d.ts +0 -19
  905. package/dist/cli-tui/selectors/theme-selector-view.d.ts.map +0 -1
  906. package/dist/cli-tui/selectors/theme-selector-view.js +0 -41
  907. package/dist/cli-tui/selectors/theme-selector-view.js.map +0 -1
  908. package/dist/cli-tui/selectors/theme-selector.d.ts +0 -14
  909. package/dist/cli-tui/selectors/theme-selector.d.ts.map +0 -1
  910. package/dist/cli-tui/selectors/theme-selector.js +0 -46
  911. package/dist/cli-tui/selectors/theme-selector.js.map +0 -1
  912. package/dist/cli-tui/selectors/thinking-selector-view.d.ts +0 -20
  913. package/dist/cli-tui/selectors/thinking-selector-view.d.ts.map +0 -1
  914. package/dist/cli-tui/selectors/thinking-selector-view.js +0 -31
  915. package/dist/cli-tui/selectors/thinking-selector-view.js.map +0 -1
  916. package/dist/cli-tui/selectors/thinking-selector.d.ts +0 -9
  917. package/dist/cli-tui/selectors/thinking-selector.d.ts.map +0 -1
  918. package/dist/cli-tui/selectors/thinking-selector.js +0 -47
  919. package/dist/cli-tui/selectors/thinking-selector.js.map +0 -1
  920. package/dist/cli-tui/selectors/tree-selector-view.d.ts +0 -32
  921. package/dist/cli-tui/selectors/tree-selector-view.d.ts.map +0 -1
  922. package/dist/cli-tui/selectors/tree-selector-view.js +0 -407
  923. package/dist/cli-tui/selectors/tree-selector-view.js.map +0 -1
  924. package/dist/cli-tui/selectors/tree-selector.d.ts +0 -27
  925. package/dist/cli-tui/selectors/tree-selector.d.ts.map +0 -1
  926. package/dist/cli-tui/selectors/tree-selector.js +0 -194
  927. package/dist/cli-tui/selectors/tree-selector.js.map +0 -1
  928. package/dist/cli-tui/selectors/user-message-selector-view.d.ts +0 -25
  929. package/dist/cli-tui/selectors/user-message-selector-view.d.ts.map +0 -1
  930. package/dist/cli-tui/selectors/user-message-selector-view.js +0 -101
  931. package/dist/cli-tui/selectors/user-message-selector-view.js.map +0 -1
  932. package/dist/cli-tui/selectors/user-message-selector.d.ts +0 -30
  933. package/dist/cli-tui/selectors/user-message-selector.d.ts.map +0 -1
  934. package/dist/cli-tui/selectors/user-message-selector.js +0 -114
  935. package/dist/cli-tui/selectors/user-message-selector.js.map +0 -1
  936. package/dist/cli-tui/session/branch-controller.d.ts +0 -65
  937. package/dist/cli-tui/session/branch-controller.d.ts.map +0 -1
  938. package/dist/cli-tui/session/branch-controller.js +0 -125
  939. package/dist/cli-tui/session/branch-controller.js.map +0 -1
  940. package/dist/cli-tui/session/conversation-compactor.d.ts +0 -64
  941. package/dist/cli-tui/session/conversation-compactor.d.ts.map +0 -1
  942. package/dist/cli-tui/session/conversation-compactor.js +0 -77
  943. package/dist/cli-tui/session/conversation-compactor.js.map +0 -1
  944. package/dist/cli-tui/session/session-context.d.ts +0 -59
  945. package/dist/cli-tui/session/session-context.d.ts.map +0 -1
  946. package/dist/cli-tui/session/session-context.js +0 -79
  947. package/dist/cli-tui/session/session-context.js.map +0 -1
  948. package/dist/cli-tui/session/session-data-provider.d.ts +0 -23
  949. package/dist/cli-tui/session/session-data-provider.d.ts.map +0 -1
  950. package/dist/cli-tui/session/session-data-provider.js +0 -22
  951. package/dist/cli-tui/session/session-data-provider.js.map +0 -1
  952. package/dist/cli-tui/session/session-list.d.ts +0 -18
  953. package/dist/cli-tui/session/session-list.d.ts.map +0 -1
  954. package/dist/cli-tui/session/session-list.js +0 -103
  955. package/dist/cli-tui/session/session-list.js.map +0 -1
  956. package/dist/cli-tui/session/session-selector.d.ts +0 -12
  957. package/dist/cli-tui/session/session-selector.d.ts.map +0 -1
  958. package/dist/cli-tui/session/session-selector.js +0 -37
  959. package/dist/cli-tui/session/session-selector.js.map +0 -1
  960. package/dist/cli-tui/session/session-summary-controller.d.ts +0 -24
  961. package/dist/cli-tui/session/session-summary-controller.d.ts.map +0 -1
  962. package/dist/cli-tui/session/session-summary-controller.js +0 -96
  963. package/dist/cli-tui/session/session-summary-controller.js.map +0 -1
  964. package/dist/cli-tui/session/session-switcher-view.d.ts +0 -20
  965. package/dist/cli-tui/session/session-switcher-view.d.ts.map +0 -1
  966. package/dist/cli-tui/session/session-switcher-view.js +0 -43
  967. package/dist/cli-tui/session/session-switcher-view.js.map +0 -1
  968. package/dist/cli-tui/session/session-switcher.d.ts +0 -38
  969. package/dist/cli-tui/session/session-switcher.d.ts.map +0 -1
  970. package/dist/cli-tui/session/session-switcher.js +0 -204
  971. package/dist/cli-tui/session/session-switcher.js.map +0 -1
  972. package/dist/cli-tui/session/session-view.d.ts +0 -46
  973. package/dist/cli-tui/session/session-view.d.ts.map +0 -1
  974. package/dist/cli-tui/session/session-view.js +0 -311
  975. package/dist/cli-tui/session/session-view.js.map +0 -1
  976. package/dist/cli-tui/slash/index.d.ts +0 -2
  977. package/dist/cli-tui/slash/index.d.ts.map +0 -1
  978. package/dist/cli-tui/slash/index.js +0 -2
  979. package/dist/cli-tui/slash/index.js.map +0 -1
  980. package/dist/cli-tui/slash/slash-command-matcher.d.ts +0 -55
  981. package/dist/cli-tui/slash/slash-command-matcher.d.ts.map +0 -1
  982. package/dist/cli-tui/slash/slash-command-matcher.js +0 -113
  983. package/dist/cli-tui/slash/slash-command-matcher.js.map +0 -1
  984. package/dist/cli-tui/smart-autocomplete-provider.d.ts +0 -5
  985. package/dist/cli-tui/smart-autocomplete-provider.d.ts.map +0 -1
  986. package/dist/cli-tui/smart-autocomplete-provider.js +0 -44
  987. package/dist/cli-tui/smart-autocomplete-provider.js.map +0 -1
  988. package/dist/cli-tui/startup-announcements.d.ts +0 -15
  989. package/dist/cli-tui/startup-announcements.d.ts.map +0 -1
  990. package/dist/cli-tui/startup-announcements.js +0 -75
  991. package/dist/cli-tui/startup-announcements.js.map +0 -1
  992. package/dist/cli-tui/status/cost-view.d.ts +0 -27
  993. package/dist/cli-tui/status/cost-view.d.ts.map +0 -1
  994. package/dist/cli-tui/status/cost-view.js +0 -212
  995. package/dist/cli-tui/status/cost-view.js.map +0 -1
  996. package/dist/cli-tui/status/diagnostics-templates.d.ts +0 -34
  997. package/dist/cli-tui/status/diagnostics-templates.d.ts.map +0 -1
  998. package/dist/cli-tui/status/diagnostics-templates.js +0 -167
  999. package/dist/cli-tui/status/diagnostics-templates.js.map +0 -1
  1000. package/dist/cli-tui/status/diagnostics-view.d.ts +0 -48
  1001. package/dist/cli-tui/status/diagnostics-view.d.ts.map +0 -1
  1002. package/dist/cli-tui/status/diagnostics-view.js +0 -249
  1003. package/dist/cli-tui/status/diagnostics-view.js.map +0 -1
  1004. package/dist/cli-tui/status/diagnostics.d.ts +0 -39
  1005. package/dist/cli-tui/status/diagnostics.d.ts.map +0 -1
  1006. package/dist/cli-tui/status/diagnostics.js +0 -286
  1007. package/dist/cli-tui/status/diagnostics.js.map +0 -1
  1008. package/dist/cli-tui/status/health-snapshot.d.ts +0 -17
  1009. package/dist/cli-tui/status/health-snapshot.d.ts.map +0 -1
  1010. package/dist/cli-tui/status/health-snapshot.js +0 -28
  1011. package/dist/cli-tui/status/health-snapshot.js.map +0 -1
  1012. package/dist/cli-tui/status/quota-view.d.ts +0 -37
  1013. package/dist/cli-tui/status/quota-view.d.ts.map +0 -1
  1014. package/dist/cli-tui/status/quota-view.js +0 -309
  1015. package/dist/cli-tui/status/quota-view.js.map +0 -1
  1016. package/dist/cli-tui/status/telemetry-view.d.ts +0 -23
  1017. package/dist/cli-tui/status/telemetry-view.d.ts.map +0 -1
  1018. package/dist/cli-tui/status/telemetry-view.js +0 -77
  1019. package/dist/cli-tui/status/telemetry-view.js.map +0 -1
  1020. package/dist/cli-tui/status/training-view.d.ts +0 -23
  1021. package/dist/cli-tui/status/training-view.d.ts.map +0 -1
  1022. package/dist/cli-tui/status/training-view.js +0 -71
  1023. package/dist/cli-tui/status/training-view.js.map +0 -1
  1024. package/dist/cli-tui/streaming-view.d.ts +0 -43
  1025. package/dist/cli-tui/streaming-view.d.ts.map +0 -1
  1026. package/dist/cli-tui/streaming-view.js +0 -176
  1027. package/dist/cli-tui/streaming-view.js.map +0 -1
  1028. package/dist/cli-tui/terminal/index.d.ts +0 -2
  1029. package/dist/cli-tui/terminal/index.d.ts.map +0 -1
  1030. package/dist/cli-tui/terminal/index.js +0 -2
  1031. package/dist/cli-tui/terminal/index.js.map +0 -1
  1032. package/dist/cli-tui/terminal/terminal-utils.d.ts +0 -44
  1033. package/dist/cli-tui/terminal/terminal-utils.d.ts.map +0 -1
  1034. package/dist/cli-tui/terminal/terminal-utils.js +0 -145
  1035. package/dist/cli-tui/terminal/terminal-utils.js.map +0 -1
  1036. package/dist/cli-tui/tips/tip-scheduler.d.ts +0 -19
  1037. package/dist/cli-tui/tips/tip-scheduler.d.ts.map +0 -1
  1038. package/dist/cli-tui/tips/tip-scheduler.js +0 -135
  1039. package/dist/cli-tui/tips/tip-scheduler.js.map +0 -1
  1040. package/dist/cli-tui/tool-execution.d.ts +0 -76
  1041. package/dist/cli-tui/tool-execution.d.ts.map +0 -1
  1042. package/dist/cli-tui/tool-execution.js +0 -217
  1043. package/dist/cli-tui/tool-execution.js.map +0 -1
  1044. package/dist/cli-tui/tool-output-view.d.ts +0 -22
  1045. package/dist/cli-tui/tool-output-view.d.ts.map +0 -1
  1046. package/dist/cli-tui/tool-output-view.js +0 -71
  1047. package/dist/cli-tui/tool-output-view.js.map +0 -1
  1048. package/dist/cli-tui/tool-renderers/index.d.ts +0 -4
  1049. package/dist/cli-tui/tool-renderers/index.d.ts.map +0 -1
  1050. package/dist/cli-tui/tool-renderers/index.js +0 -19
  1051. package/dist/cli-tui/tool-renderers/index.js.map +0 -1
  1052. package/dist/cli-tui/tool-renderers/render-bash.d.ts +0 -6
  1053. package/dist/cli-tui/tool-renderers/render-bash.d.ts.map +0 -1
  1054. package/dist/cli-tui/tool-renderers/render-bash.js +0 -90
  1055. package/dist/cli-tui/tool-renderers/render-bash.js.map +0 -1
  1056. package/dist/cli-tui/tool-renderers/render-batch.d.ts +0 -12
  1057. package/dist/cli-tui/tool-renderers/render-batch.d.ts.map +0 -1
  1058. package/dist/cli-tui/tool-renderers/render-batch.js +0 -133
  1059. package/dist/cli-tui/tool-renderers/render-batch.js.map +0 -1
  1060. package/dist/cli-tui/tool-renderers/render-edit.d.ts +0 -6
  1061. package/dist/cli-tui/tool-renderers/render-edit.d.ts.map +0 -1
  1062. package/dist/cli-tui/tool-renderers/render-edit.js +0 -125
  1063. package/dist/cli-tui/tool-renderers/render-edit.js.map +0 -1
  1064. package/dist/cli-tui/tool-renderers/render-generic.d.ts +0 -6
  1065. package/dist/cli-tui/tool-renderers/render-generic.d.ts.map +0 -1
  1066. package/dist/cli-tui/tool-renderers/render-generic.js +0 -66
  1067. package/dist/cli-tui/tool-renderers/render-generic.js.map +0 -1
  1068. package/dist/cli-tui/tool-renderers/render-read.d.ts +0 -9
  1069. package/dist/cli-tui/tool-renderers/render-read.d.ts.map +0 -1
  1070. package/dist/cli-tui/tool-renderers/render-read.js +0 -108
  1071. package/dist/cli-tui/tool-renderers/render-read.js.map +0 -1
  1072. package/dist/cli-tui/tool-renderers/render-style.d.ts +0 -21
  1073. package/dist/cli-tui/tool-renderers/render-style.d.ts.map +0 -1
  1074. package/dist/cli-tui/tool-renderers/render-style.js +0 -51
  1075. package/dist/cli-tui/tool-renderers/render-style.js.map +0 -1
  1076. package/dist/cli-tui/tool-renderers/render-write.d.ts +0 -5
  1077. package/dist/cli-tui/tool-renderers/render-write.d.ts.map +0 -1
  1078. package/dist/cli-tui/tool-renderers/render-write.js +0 -60
  1079. package/dist/cli-tui/tool-renderers/render-write.js.map +0 -1
  1080. package/dist/cli-tui/tool-renderers/types.d.ts +0 -20
  1081. package/dist/cli-tui/tool-renderers/types.d.ts.map +0 -1
  1082. package/dist/cli-tui/tool-renderers/types.js +0 -2
  1083. package/dist/cli-tui/tool-renderers/types.js.map +0 -1
  1084. package/dist/cli-tui/tool-retry/tool-retry-controller.d.ts +0 -29
  1085. package/dist/cli-tui/tool-retry/tool-retry-controller.d.ts.map +0 -1
  1086. package/dist/cli-tui/tool-retry/tool-retry-controller.js +0 -110
  1087. package/dist/cli-tui/tool-retry/tool-retry-controller.js.map +0 -1
  1088. package/dist/cli-tui/tool-retry/tool-retry-modal.d.ts +0 -27
  1089. package/dist/cli-tui/tool-retry/tool-retry-modal.d.ts.map +0 -1
  1090. package/dist/cli-tui/tool-retry/tool-retry-modal.js +0 -118
  1091. package/dist/cli-tui/tool-retry/tool-retry-modal.js.map +0 -1
  1092. package/dist/cli-tui/tool-status-view.d.ts +0 -32
  1093. package/dist/cli-tui/tool-status-view.d.ts.map +0 -1
  1094. package/dist/cli-tui/tool-status-view.js +0 -86
  1095. package/dist/cli-tui/tool-status-view.js.map +0 -1
  1096. package/dist/cli-tui/tui-renderer/agent-event-bridge.d.ts +0 -59
  1097. package/dist/cli-tui/tui-renderer/agent-event-bridge.d.ts.map +0 -1
  1098. package/dist/cli-tui/tui-renderer/agent-event-bridge.js +0 -129
  1099. package/dist/cli-tui/tui-renderer/agent-event-bridge.js.map +0 -1
  1100. package/dist/cli-tui/tui-renderer/approval-setup.d.ts +0 -13
  1101. package/dist/cli-tui/tui-renderer/approval-setup.d.ts.map +0 -1
  1102. package/dist/cli-tui/tui-renderer/approval-setup.js +0 -5
  1103. package/dist/cli-tui/tui-renderer/approval-setup.js.map +0 -1
  1104. package/dist/cli-tui/tui-renderer/attachment-controller.d.ts +0 -54
  1105. package/dist/cli-tui/tui-renderer/attachment-controller.d.ts.map +0 -1
  1106. package/dist/cli-tui/tui-renderer/attachment-controller.js +0 -160
  1107. package/dist/cli-tui/tui-renderer/attachment-controller.js.map +0 -1
  1108. package/dist/cli-tui/tui-renderer/background-tasks-setup.d.ts +0 -9
  1109. package/dist/cli-tui/tui-renderer/background-tasks-setup.d.ts.map +0 -1
  1110. package/dist/cli-tui/tui-renderer/background-tasks-setup.js +0 -7
  1111. package/dist/cli-tui/tui-renderer/background-tasks-setup.js.map +0 -1
  1112. package/dist/cli-tui/tui-renderer/branch-controller.d.ts +0 -41
  1113. package/dist/cli-tui/tui-renderer/branch-controller.d.ts.map +0 -1
  1114. package/dist/cli-tui/tui-renderer/branch-controller.js +0 -102
  1115. package/dist/cli-tui/tui-renderer/branch-controller.js.map +0 -1
  1116. package/dist/cli-tui/tui-renderer/clear-controller.d.ts +0 -75
  1117. package/dist/cli-tui/tui-renderer/clear-controller.d.ts.map +0 -1
  1118. package/dist/cli-tui/tui-renderer/clear-controller.js +0 -75
  1119. package/dist/cli-tui/tui-renderer/clear-controller.js.map +0 -1
  1120. package/dist/cli-tui/tui-renderer/client-tools-setup.d.ts +0 -14
  1121. package/dist/cli-tui/tui-renderer/client-tools-setup.d.ts.map +0 -1
  1122. package/dist/cli-tui/tui-renderer/client-tools-setup.js +0 -5
  1123. package/dist/cli-tui/tui-renderer/client-tools-setup.js.map +0 -1
  1124. package/dist/cli-tui/tui-renderer/command-registry-options.d.ts +0 -111
  1125. package/dist/cli-tui/tui-renderer/command-registry-options.d.ts.map +0 -1
  1126. package/dist/cli-tui/tui-renderer/command-registry-options.js +0 -163
  1127. package/dist/cli-tui/tui-renderer/command-registry-options.js.map +0 -1
  1128. package/dist/cli-tui/tui-renderer/command-registry.d.ts +0 -16
  1129. package/dist/cli-tui/tui-renderer/command-registry.d.ts.map +0 -1
  1130. package/dist/cli-tui/tui-renderer/command-registry.js +0 -23
  1131. package/dist/cli-tui/tui-renderer/command-registry.js.map +0 -1
  1132. package/dist/cli-tui/tui-renderer/command-suite-wiring.d.ts +0 -29
  1133. package/dist/cli-tui/tui-renderer/command-suite-wiring.d.ts.map +0 -1
  1134. package/dist/cli-tui/tui-renderer/command-suite-wiring.js +0 -108
  1135. package/dist/cli-tui/tui-renderer/command-suite-wiring.js.map +0 -1
  1136. package/dist/cli-tui/tui-renderer/compaction-controller.d.ts +0 -100
  1137. package/dist/cli-tui/tui-renderer/compaction-controller.d.ts.map +0 -1
  1138. package/dist/cli-tui/tui-renderer/compaction-controller.js +0 -160
  1139. package/dist/cli-tui/tui-renderer/compaction-controller.js.map +0 -1
  1140. package/dist/cli-tui/tui-renderer/custom-commands-controller.d.ts +0 -42
  1141. package/dist/cli-tui/tui-renderer/custom-commands-controller.d.ts.map +0 -1
  1142. package/dist/cli-tui/tui-renderer/custom-commands-controller.js +0 -106
  1143. package/dist/cli-tui/tui-renderer/custom-commands-controller.js.map +0 -1
  1144. package/dist/cli-tui/tui-renderer/delegating-command-handlers.d.ts +0 -37
  1145. package/dist/cli-tui/tui-renderer/delegating-command-handlers.d.ts.map +0 -1
  1146. package/dist/cli-tui/tui-renderer/delegating-command-handlers.js +0 -139
  1147. package/dist/cli-tui/tui-renderer/delegating-command-handlers.js.map +0 -1
  1148. package/dist/cli-tui/tui-renderer/editor-bindings.d.ts +0 -21
  1149. package/dist/cli-tui/tui-renderer/editor-bindings.d.ts.map +0 -1
  1150. package/dist/cli-tui/tui-renderer/editor-bindings.js +0 -76
  1151. package/dist/cli-tui/tui-renderer/editor-bindings.js.map +0 -1
  1152. package/dist/cli-tui/tui-renderer/footer-hints-controller.d.ts +0 -90
  1153. package/dist/cli-tui/tui-renderer/footer-hints-controller.d.ts.map +0 -1
  1154. package/dist/cli-tui/tui-renderer/footer-hints-controller.js +0 -152
  1155. package/dist/cli-tui/tui-renderer/footer-hints-controller.js.map +0 -1
  1156. package/dist/cli-tui/tui-renderer/history-controller.d.ts +0 -35
  1157. package/dist/cli-tui/tui-renderer/history-controller.d.ts.map +0 -1
  1158. package/dist/cli-tui/tui-renderer/history-controller.js +0 -153
  1159. package/dist/cli-tui/tui-renderer/history-controller.js.map +0 -1
  1160. package/dist/cli-tui/tui-renderer/hook-ui-controller.d.ts +0 -83
  1161. package/dist/cli-tui/tui-renderer/hook-ui-controller.d.ts.map +0 -1
  1162. package/dist/cli-tui/tui-renderer/hook-ui-controller.js +0 -309
  1163. package/dist/cli-tui/tui-renderer/hook-ui-controller.js.map +0 -1
  1164. package/dist/cli-tui/tui-renderer/initial-preferences.d.ts +0 -19
  1165. package/dist/cli-tui/tui-renderer/initial-preferences.d.ts.map +0 -1
  1166. package/dist/cli-tui/tui-renderer/initial-preferences.js +0 -54
  1167. package/dist/cli-tui/tui-renderer/initial-preferences.js.map +0 -1
  1168. package/dist/cli-tui/tui-renderer/input-controller.d.ts +0 -56
  1169. package/dist/cli-tui/tui-renderer/input-controller.d.ts.map +0 -1
  1170. package/dist/cli-tui/tui-renderer/input-controller.js +0 -104
  1171. package/dist/cli-tui/tui-renderer/input-controller.js.map +0 -1
  1172. package/dist/cli-tui/tui-renderer/interrupt-setup.d.ts +0 -19
  1173. package/dist/cli-tui/tui-renderer/interrupt-setup.d.ts.map +0 -1
  1174. package/dist/cli-tui/tui-renderer/interrupt-setup.js +0 -18
  1175. package/dist/cli-tui/tui-renderer/interrupt-setup.js.map +0 -1
  1176. package/dist/cli-tui/tui-renderer/loader-setup.d.ts +0 -14
  1177. package/dist/cli-tui/tui-renderer/loader-setup.d.ts.map +0 -1
  1178. package/dist/cli-tui/tui-renderer/loader-setup.js +0 -13
  1179. package/dist/cli-tui/tui-renderer/loader-setup.js.map +0 -1
  1180. package/dist/cli-tui/tui-renderer/mcp-events-setup.d.ts +0 -55
  1181. package/dist/cli-tui/tui-renderer/mcp-events-setup.d.ts.map +0 -1
  1182. package/dist/cli-tui/tui-renderer/mcp-events-setup.js +0 -143
  1183. package/dist/cli-tui/tui-renderer/mcp-events-setup.js.map +0 -1
  1184. package/dist/cli-tui/tui-renderer/misc-handlers.d.ts +0 -59
  1185. package/dist/cli-tui/tui-renderer/misc-handlers.d.ts.map +0 -1
  1186. package/dist/cli-tui/tui-renderer/misc-handlers.js +0 -143
  1187. package/dist/cli-tui/tui-renderer/misc-handlers.js.map +0 -1
  1188. package/dist/cli-tui/tui-renderer/oauth-setup.d.ts +0 -14
  1189. package/dist/cli-tui/tui-renderer/oauth-setup.d.ts.map +0 -1
  1190. package/dist/cli-tui/tui-renderer/oauth-setup.js +0 -26
  1191. package/dist/cli-tui/tui-renderer/oauth-setup.js.map +0 -1
  1192. package/dist/cli-tui/tui-renderer/plan-setup.d.ts +0 -19
  1193. package/dist/cli-tui/tui-renderer/plan-setup.d.ts.map +0 -1
  1194. package/dist/cli-tui/tui-renderer/plan-setup.js +0 -23
  1195. package/dist/cli-tui/tui-renderer/plan-setup.js.map +0 -1
  1196. package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.d.ts +0 -21
  1197. package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.d.ts.map +0 -1
  1198. package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.js +0 -64
  1199. package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.js.map +0 -1
  1200. package/dist/cli-tui/tui-renderer/queue-setup.d.ts +0 -18
  1201. package/dist/cli-tui/tui-renderer/queue-setup.d.ts.map +0 -1
  1202. package/dist/cli-tui/tui-renderer/queue-setup.js +0 -42
  1203. package/dist/cli-tui/tui-renderer/queue-setup.js.map +0 -1
  1204. package/dist/cli-tui/tui-renderer/quick-settings-controller.d.ts +0 -53
  1205. package/dist/cli-tui/tui-renderer/quick-settings-controller.d.ts.map +0 -1
  1206. package/dist/cli-tui/tui-renderer/quick-settings-controller.js +0 -100
  1207. package/dist/cli-tui/tui-renderer/quick-settings-controller.js.map +0 -1
  1208. package/dist/cli-tui/tui-renderer/session-setup.d.ts +0 -31
  1209. package/dist/cli-tui/tui-renderer/session-setup.d.ts.map +0 -1
  1210. package/dist/cli-tui/tui-renderer/session-setup.js +0 -45
  1211. package/dist/cli-tui/tui-renderer/session-setup.js.map +0 -1
  1212. package/dist/cli-tui/tui-renderer/session-state-controller.d.ts +0 -66
  1213. package/dist/cli-tui/tui-renderer/session-state-controller.d.ts.map +0 -1
  1214. package/dist/cli-tui/tui-renderer/session-state-controller.js +0 -139
  1215. package/dist/cli-tui/tui-renderer/session-state-controller.js.map +0 -1
  1216. package/dist/cli-tui/tui-renderer/skills-controller.d.ts +0 -73
  1217. package/dist/cli-tui/tui-renderer/skills-controller.d.ts.map +0 -1
  1218. package/dist/cli-tui/tui-renderer/skills-controller.js +0 -455
  1219. package/dist/cli-tui/tui-renderer/skills-controller.js.map +0 -1
  1220. package/dist/cli-tui/tui-renderer/slash-hint-controller.d.ts +0 -90
  1221. package/dist/cli-tui/tui-renderer/slash-hint-controller.d.ts.map +0 -1
  1222. package/dist/cli-tui/tui-renderer/slash-hint-controller.js +0 -131
  1223. package/dist/cli-tui/tui-renderer/slash-hint-controller.js.map +0 -1
  1224. package/dist/cli-tui/tui-renderer/tool-retry-setup.d.ts +0 -13
  1225. package/dist/cli-tui/tui-renderer/tool-retry-setup.d.ts.map +0 -1
  1226. package/dist/cli-tui/tui-renderer/tool-retry-setup.js +0 -5
  1227. package/dist/cli-tui/tui-renderer/tool-retry-setup.js.map +0 -1
  1228. package/dist/cli-tui/tui-renderer/tooling-views-setup.d.ts +0 -38
  1229. package/dist/cli-tui/tui-renderer/tooling-views-setup.d.ts.map +0 -1
  1230. package/dist/cli-tui/tui-renderer/tooling-views-setup.js +0 -48
  1231. package/dist/cli-tui/tui-renderer/tooling-views-setup.js.map +0 -1
  1232. package/dist/cli-tui/tui-renderer/ui-state-controller.d.ts +0 -70
  1233. package/dist/cli-tui/tui-renderer/ui-state-controller.d.ts.map +0 -1
  1234. package/dist/cli-tui/tui-renderer/ui-state-controller.js +0 -184
  1235. package/dist/cli-tui/tui-renderer/ui-state-controller.js.map +0 -1
  1236. package/dist/cli-tui/tui-renderer/ui-state-setup.d.ts +0 -13
  1237. package/dist/cli-tui/tui-renderer/ui-state-setup.d.ts.map +0 -1
  1238. package/dist/cli-tui/tui-renderer/ui-state-setup.js +0 -11
  1239. package/dist/cli-tui/tui-renderer/ui-state-setup.js.map +0 -1
  1240. package/dist/cli-tui/tui-renderer/utility-views-setup.d.ts +0 -26
  1241. package/dist/cli-tui/tui-renderer/utility-views-setup.d.ts.map +0 -1
  1242. package/dist/cli-tui/tui-renderer/utility-views-setup.js +0 -23
  1243. package/dist/cli-tui/tui-renderer/utility-views-setup.js.map +0 -1
  1244. package/dist/cli-tui/tui-renderer/viewport-controller.d.ts +0 -33
  1245. package/dist/cli-tui/tui-renderer/viewport-controller.d.ts.map +0 -1
  1246. package/dist/cli-tui/tui-renderer/viewport-controller.js +0 -98
  1247. package/dist/cli-tui/tui-renderer/viewport-controller.js.map +0 -1
  1248. package/dist/cli-tui/tui-renderer.d.ts +0 -268
  1249. package/dist/cli-tui/tui-renderer.d.ts.map +0 -1
  1250. package/dist/cli-tui/tui-renderer.js +0 -2131
  1251. package/dist/cli-tui/tui-renderer.js.map +0 -1
  1252. package/dist/cli-tui/ui-state.d.ts.map +0 -1
  1253. package/dist/cli-tui/ui-state.js.map +0 -1
  1254. package/dist/cli-tui/update-view.d.ts +0 -16
  1255. package/dist/cli-tui/update-view.d.ts.map +0 -1
  1256. package/dist/cli-tui/update-view.js +0 -45
  1257. package/dist/cli-tui/update-view.js.map +0 -1
  1258. package/dist/cli-tui/user-message.d.ts +0 -17
  1259. package/dist/cli-tui/user-message.d.ts.map +0 -1
  1260. package/dist/cli-tui/user-message.js +0 -83
  1261. package/dist/cli-tui/user-message.js.map +0 -1
  1262. package/dist/cli-tui/utils/borders.d.ts +0 -131
  1263. package/dist/cli-tui/utils/borders.d.ts.map +0 -1
  1264. package/dist/cli-tui/utils/borders.js +0 -254
  1265. package/dist/cli-tui/utils/borders.js.map +0 -1
  1266. package/dist/cli-tui/utils/commands/command-palette-view.d.ts +0 -22
  1267. package/dist/cli-tui/utils/commands/command-palette-view.d.ts.map +0 -1
  1268. package/dist/cli-tui/utils/commands/command-palette-view.js +0 -31
  1269. package/dist/cli-tui/utils/commands/command-palette-view.js.map +0 -1
  1270. package/dist/cli-tui/utils/commands/command-palette.d.ts +0 -29
  1271. package/dist/cli-tui/utils/commands/command-palette.d.ts.map +0 -1
  1272. package/dist/cli-tui/utils/commands/command-palette.js +0 -213
  1273. package/dist/cli-tui/utils/commands/command-palette.js.map +0 -1
  1274. package/dist/cli-tui/utils/commands/command-registry-builder.d.ts +0 -8
  1275. package/dist/cli-tui/utils/commands/command-registry-builder.d.ts.map +0 -1
  1276. package/dist/cli-tui/utils/commands/command-registry-builder.js +0 -9
  1277. package/dist/cli-tui/utils/commands/command-registry-builder.js.map +0 -1
  1278. package/dist/cli-tui/utils/commands/review-prompt.d.ts +0 -10
  1279. package/dist/cli-tui/utils/commands/review-prompt.d.ts.map +0 -1
  1280. package/dist/cli-tui/utils/commands/review-prompt.js +0 -90
  1281. package/dist/cli-tui/utils/commands/review-prompt.js.map +0 -1
  1282. package/dist/cli-tui/utils/commands/slash-hint-bar.d.ts +0 -15
  1283. package/dist/cli-tui/utils/commands/slash-hint-bar.d.ts.map +0 -1
  1284. package/dist/cli-tui/utils/commands/slash-hint-bar.js +0 -106
  1285. package/dist/cli-tui/utils/commands/slash-hint-bar.js.map +0 -1
  1286. package/dist/cli-tui/utils/env-detect.d.ts +0 -11
  1287. package/dist/cli-tui/utils/env-detect.d.ts.map +0 -1
  1288. package/dist/cli-tui/utils/env-detect.js +0 -107
  1289. package/dist/cli-tui/utils/env-detect.js.map +0 -1
  1290. package/dist/cli-tui/utils/external-editor.d.ts +0 -7
  1291. package/dist/cli-tui/utils/external-editor.d.ts.map +0 -1
  1292. package/dist/cli-tui/utils/external-editor.js +0 -53
  1293. package/dist/cli-tui/utils/external-editor.js.map +0 -1
  1294. package/dist/cli-tui/utils/footer-utils.d.ts +0 -169
  1295. package/dist/cli-tui/utils/footer-utils.d.ts.map +0 -1
  1296. package/dist/cli-tui/utils/footer-utils.js +0 -716
  1297. package/dist/cli-tui/utils/footer-utils.js.map +0 -1
  1298. package/dist/cli-tui/utils/footer-visual-widgets.d.ts +0 -38
  1299. package/dist/cli-tui/utils/footer-visual-widgets.d.ts.map +0 -1
  1300. package/dist/cli-tui/utils/footer-visual-widgets.js +0 -141
  1301. package/dist/cli-tui/utils/footer-visual-widgets.js.map +0 -1
  1302. package/dist/cli-tui/utils/git-branch-tracker.d.ts +0 -38
  1303. package/dist/cli-tui/utils/git-branch-tracker.d.ts.map +0 -1
  1304. package/dist/cli-tui/utils/git-branch-tracker.js +0 -90
  1305. package/dist/cli-tui/utils/git-branch-tracker.js.map +0 -1
  1306. package/dist/cli-tui/utils/glyphs.d.ts +0 -207
  1307. package/dist/cli-tui/utils/glyphs.d.ts.map +0 -1
  1308. package/dist/cli-tui/utils/glyphs.js +0 -249
  1309. package/dist/cli-tui/utils/glyphs.js.map +0 -1
  1310. package/dist/cli-tui/utils/layout.d.ts +0 -77
  1311. package/dist/cli-tui/utils/layout.d.ts.map +0 -1
  1312. package/dist/cli-tui/utils/layout.js +0 -83
  1313. package/dist/cli-tui/utils/layout.js.map +0 -1
  1314. package/dist/cli-tui/utils/links.d.ts +0 -2
  1315. package/dist/cli-tui/utils/links.d.ts.map +0 -1
  1316. package/dist/cli-tui/utils/links.js +0 -14
  1317. package/dist/cli-tui/utils/links.js.map +0 -1
  1318. package/dist/cli-tui/utils/motion.d.ts +0 -4
  1319. package/dist/cli-tui/utils/motion.d.ts.map +0 -1
  1320. package/dist/cli-tui/utils/motion.js +0 -28
  1321. package/dist/cli-tui/utils/motion.js.map +0 -1
  1322. package/dist/cli-tui/utils/runtime-badges.d.ts +0 -26
  1323. package/dist/cli-tui/utils/runtime-badges.d.ts.map +0 -1
  1324. package/dist/cli-tui/utils/runtime-badges.js +0 -178
  1325. package/dist/cli-tui/utils/runtime-badges.js.map +0 -1
  1326. package/dist/cli-tui/utils/shimmer.d.ts +0 -12
  1327. package/dist/cli-tui/utils/shimmer.d.ts.map +0 -1
  1328. package/dist/cli-tui/utils/shimmer.js +0 -57
  1329. package/dist/cli-tui/utils/shimmer.js.map +0 -1
  1330. package/dist/cli-tui/utils/stage-labels.d.ts +0 -9
  1331. package/dist/cli-tui/utils/stage-labels.d.ts.map +0 -1
  1332. package/dist/cli-tui/utils/stage-labels.js +0 -65
  1333. package/dist/cli-tui/utils/stage-labels.js.map +0 -1
  1334. package/dist/cli-tui/utils/text-formatting.d.ts +0 -13
  1335. package/dist/cli-tui/utils/text-formatting.d.ts.map +0 -1
  1336. package/dist/cli-tui/utils/text-formatting.js +0 -109
  1337. package/dist/cli-tui/utils/text-formatting.js.map +0 -1
  1338. package/dist/cli-tui/utils/text-preview.d.ts +0 -10
  1339. package/dist/cli-tui/utils/text-preview.d.ts.map +0 -1
  1340. package/dist/cli-tui/utils/text-preview.js +0 -26
  1341. package/dist/cli-tui/utils/text-preview.js.map +0 -1
  1342. package/dist/cli-tui/utils/tool-text-utils.d.ts +0 -42
  1343. package/dist/cli-tui/utils/tool-text-utils.d.ts.map +0 -1
  1344. package/dist/cli-tui/utils/tool-text-utils.js +0 -361
  1345. package/dist/cli-tui/utils/tool-text-utils.js.map +0 -1
  1346. package/dist/cli-tui/welcome-animation.d.ts +0 -24
  1347. package/dist/cli-tui/welcome-animation.d.ts.map +0 -1
  1348. package/dist/cli-tui/welcome-animation.js +0 -99
  1349. package/dist/cli-tui/welcome-animation.js.map +0 -1
  1350. package/dist/cli-tui/welcome-colors.d.ts +0 -3
  1351. package/dist/cli-tui/welcome-colors.d.ts.map +0 -1
  1352. package/dist/cli-tui/welcome-colors.js +0 -39
  1353. package/dist/cli-tui/welcome-colors.js.map +0 -1
  1354. package/dist/node_modules/@evalops/tui/dist/autocomplete.d.ts +0 -304
  1355. package/dist/node_modules/@evalops/tui/dist/autocomplete.d.ts.map +0 -1
  1356. package/dist/node_modules/@evalops/tui/dist/autocomplete.js +0 -712
  1357. package/dist/node_modules/@evalops/tui/dist/autocomplete.js.map +0 -1
  1358. package/dist/node_modules/@evalops/tui/dist/components/editor.d.ts +0 -185
  1359. package/dist/node_modules/@evalops/tui/dist/components/editor.d.ts.map +0 -1
  1360. package/dist/node_modules/@evalops/tui/dist/components/editor.js +0 -1460
  1361. package/dist/node_modules/@evalops/tui/dist/components/editor.js.map +0 -1
  1362. package/dist/node_modules/@evalops/tui/dist/components/input.d.ts +0 -117
  1363. package/dist/node_modules/@evalops/tui/dist/components/input.d.ts.map +0 -1
  1364. package/dist/node_modules/@evalops/tui/dist/components/input.js +0 -391
  1365. package/dist/node_modules/@evalops/tui/dist/components/input.js.map +0 -1
  1366. package/dist/node_modules/@evalops/tui/dist/components/layout.d.ts +0 -256
  1367. package/dist/node_modules/@evalops/tui/dist/components/layout.d.ts.map +0 -1
  1368. package/dist/node_modules/@evalops/tui/dist/components/layout.js +0 -478
  1369. package/dist/node_modules/@evalops/tui/dist/components/layout.js.map +0 -1
  1370. package/dist/node_modules/@evalops/tui/dist/components/loader.d.ts +0 -199
  1371. package/dist/node_modules/@evalops/tui/dist/components/loader.d.ts.map +0 -1
  1372. package/dist/node_modules/@evalops/tui/dist/components/loader.js +0 -374
  1373. package/dist/node_modules/@evalops/tui/dist/components/loader.js.map +0 -1
  1374. package/dist/node_modules/@evalops/tui/dist/components/markdown.d.ts +0 -65
  1375. package/dist/node_modules/@evalops/tui/dist/components/markdown.d.ts.map +0 -1
  1376. package/dist/node_modules/@evalops/tui/dist/components/markdown.js +0 -562
  1377. package/dist/node_modules/@evalops/tui/dist/components/markdown.js.map +0 -1
  1378. package/dist/node_modules/@evalops/tui/dist/components/scroll-container.d.ts +0 -262
  1379. package/dist/node_modules/@evalops/tui/dist/components/scroll-container.d.ts.map +0 -1
  1380. package/dist/node_modules/@evalops/tui/dist/components/scroll-container.js +0 -575
  1381. package/dist/node_modules/@evalops/tui/dist/components/scroll-container.js.map +0 -1
  1382. package/dist/node_modules/@evalops/tui/dist/components/select-list.d.ts +0 -131
  1383. package/dist/node_modules/@evalops/tui/dist/components/select-list.d.ts.map +0 -1
  1384. package/dist/node_modules/@evalops/tui/dist/components/select-list.js +0 -257
  1385. package/dist/node_modules/@evalops/tui/dist/components/select-list.js.map +0 -1
  1386. package/dist/node_modules/@evalops/tui/dist/components/spacer.d.ts +0 -11
  1387. package/dist/node_modules/@evalops/tui/dist/components/spacer.d.ts.map +0 -1
  1388. package/dist/node_modules/@evalops/tui/dist/components/spacer.js +0 -19
  1389. package/dist/node_modules/@evalops/tui/dist/components/spacer.js.map +0 -1
  1390. package/dist/node_modules/@evalops/tui/dist/components/status-bar.d.ts +0 -22
  1391. package/dist/node_modules/@evalops/tui/dist/components/status-bar.d.ts.map +0 -1
  1392. package/dist/node_modules/@evalops/tui/dist/components/status-bar.js +0 -44
  1393. package/dist/node_modules/@evalops/tui/dist/components/status-bar.js.map +0 -1
  1394. package/dist/node_modules/@evalops/tui/dist/components/text.d.ts +0 -26
  1395. package/dist/node_modules/@evalops/tui/dist/components/text.d.ts.map +0 -1
  1396. package/dist/node_modules/@evalops/tui/dist/components/text.js +0 -181
  1397. package/dist/node_modules/@evalops/tui/dist/components/text.js.map +0 -1
  1398. package/dist/node_modules/@evalops/tui/dist/components/truncated-text.d.ts +0 -15
  1399. package/dist/node_modules/@evalops/tui/dist/components/truncated-text.d.ts.map +0 -1
  1400. package/dist/node_modules/@evalops/tui/dist/components/truncated-text.js +0 -84
  1401. package/dist/node_modules/@evalops/tui/dist/components/truncated-text.js.map +0 -1
  1402. package/dist/node_modules/@evalops/tui/dist/index.d.ts +0 -87
  1403. package/dist/node_modules/@evalops/tui/dist/index.d.ts.map +0 -1
  1404. package/dist/node_modules/@evalops/tui/dist/index.js +0 -85
  1405. package/dist/node_modules/@evalops/tui/dist/index.js.map +0 -1
  1406. package/dist/node_modules/@evalops/tui/dist/keymap.d.ts +0 -189
  1407. package/dist/node_modules/@evalops/tui/dist/keymap.d.ts.map +0 -1
  1408. package/dist/node_modules/@evalops/tui/dist/keymap.js +0 -363
  1409. package/dist/node_modules/@evalops/tui/dist/keymap.js.map +0 -1
  1410. package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.d.ts +0 -25
  1411. package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.d.ts.map +0 -1
  1412. package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.js +0 -828
  1413. package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.js.map +0 -1
  1414. package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.d.ts +0 -40
  1415. package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.d.ts.map +0 -1
  1416. package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.js +0 -474
  1417. package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.js.map +0 -1
  1418. package/dist/node_modules/@evalops/tui/dist/terminal.d.ts +0 -201
  1419. package/dist/node_modules/@evalops/tui/dist/terminal.d.ts.map +0 -1
  1420. package/dist/node_modules/@evalops/tui/dist/terminal.js +0 -241
  1421. package/dist/node_modules/@evalops/tui/dist/terminal.js.map +0 -1
  1422. package/dist/node_modules/@evalops/tui/dist/tui.d.ts +0 -263
  1423. package/dist/node_modules/@evalops/tui/dist/tui.d.ts.map +0 -1
  1424. package/dist/node_modules/@evalops/tui/dist/tui.js +0 -694
  1425. package/dist/node_modules/@evalops/tui/dist/tui.js.map +0 -1
  1426. package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.d.ts +0 -14
  1427. package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.d.ts.map +0 -1
  1428. package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.js +0 -44
  1429. package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.js.map +0 -1
  1430. package/dist/node_modules/@evalops/tui/dist/utils.d.ts +0 -32
  1431. package/dist/node_modules/@evalops/tui/dist/utils.d.ts.map +0 -1
  1432. package/dist/node_modules/@evalops/tui/dist/utils.js +0 -556
  1433. package/dist/node_modules/@evalops/tui/dist/utils.js.map +0 -1
  1434. package/dist/node_modules/@evalops/tui/package.json +0 -58
  1435. package/dist/skills/artifact-metadata.d.ts.map +0 -1
  1436. package/dist/skills/artifact-metadata.js.map +0 -1
  1437. package/dist/skills/composer-diagnostics.d.ts +0 -69
  1438. package/dist/skills/composer-diagnostics.d.ts.map +0 -1
  1439. package/dist/skills/composer-diagnostics.js +0 -78
  1440. package/dist/skills/composer-diagnostics.js.map +0 -1
  1441. package/dist/skills/composer.d.ts +0 -19
  1442. package/dist/skills/composer.d.ts.map +0 -1
  1443. package/dist/skills/composer.js +0 -64
  1444. package/dist/skills/composer.js.map +0 -1
  1445. package/dist/skills/eval-harness.d.ts +0 -38
  1446. package/dist/skills/eval-harness.d.ts.map +0 -1
  1447. package/dist/skills/eval-harness.js +0 -112
  1448. package/dist/skills/eval-harness.js.map +0 -1
  1449. package/dist/skills/index.d.ts +0 -41
  1450. package/dist/skills/index.d.ts.map +0 -1
  1451. package/dist/skills/index.js +0 -41
  1452. package/dist/skills/index.js.map +0 -1
  1453. package/dist/skills/learned-guidelines.d.ts +0 -33
  1454. package/dist/skills/learned-guidelines.d.ts.map +0 -1
  1455. package/dist/skills/learned-guidelines.js +0 -291
  1456. package/dist/skills/learned-guidelines.js.map +0 -1
  1457. package/dist/skills/linter.d.ts +0 -36
  1458. package/dist/skills/linter.d.ts.map +0 -1
  1459. package/dist/skills/linter.js +0 -397
  1460. package/dist/skills/linter.js.map +0 -1
  1461. package/dist/skills/loader.d.ts +0 -252
  1462. package/dist/skills/loader.d.ts.map +0 -1
  1463. package/dist/skills/loader.js +0 -957
  1464. package/dist/skills/loader.js.map +0 -1
  1465. package/dist/skills/package-contract.d.ts +0 -45
  1466. package/dist/skills/package-contract.d.ts.map +0 -1
  1467. package/dist/skills/package-contract.js +0 -153
  1468. package/dist/skills/package-contract.js.map +0 -1
  1469. package/dist/skills/runtime-activation.d.ts +0 -69
  1470. package/dist/skills/runtime-activation.d.ts.map +0 -1
  1471. package/dist/skills/runtime-activation.js +0 -227
  1472. package/dist/skills/runtime-activation.js.map +0 -1
  1473. package/dist/skills/scaffold-from-template.d.ts +0 -58
  1474. package/dist/skills/scaffold-from-template.d.ts.map +0 -1
  1475. package/dist/skills/scaffold-from-template.js +0 -72
  1476. package/dist/skills/scaffold-from-template.js.map +0 -1
  1477. package/dist/skills/scaffolder.d.ts +0 -65
  1478. package/dist/skills/scaffolder.d.ts.map +0 -1
  1479. package/dist/skills/scaffolder.js +0 -167
  1480. package/dist/skills/scaffolder.js.map +0 -1
  1481. package/dist/skills/service-client.d.ts +0 -56
  1482. package/dist/skills/service-client.d.ts.map +0 -1
  1483. package/dist/skills/service-client.js +0 -266
  1484. package/dist/skills/service-client.js.map +0 -1
  1485. package/dist/skills/skill-templates.d.ts +0 -70
  1486. package/dist/skills/skill-templates.d.ts.map +0 -1
  1487. package/dist/skills/skill-templates.js +0 -154
  1488. package/dist/skills/skill-templates.js.map +0 -1
  1489. package/dist/skills/tool.d.ts +0 -21
  1490. package/dist/skills/tool.d.ts.map +0 -1
  1491. package/dist/skills/tool.js +0 -339
  1492. package/dist/skills/tool.js.map +0 -1
  1493. package/dist/skills/trust-cache.d.ts +0 -65
  1494. package/dist/skills/trust-cache.d.ts.map +0 -1
  1495. package/dist/skills/trust-cache.js +0 -146
  1496. package/dist/skills/trust-cache.js.map +0 -1
  1497. package/dist/skills/types.d.ts +0 -91
  1498. package/dist/skills/types.d.ts.map +0 -1
  1499. package/dist/skills/types.js +0 -8
  1500. package/dist/skills/types.js.map +0 -1
  1501. /package/dist/{cli-tui → runtime}/prompt-queue.d.ts +0 -0
  1502. /package/dist/{cli-tui → runtime}/prompt-queue.js +0 -0
@@ -1,575 +0,0 @@
1
- /**
2
- * @fileoverview ScrollContainer - Scrollable viewport for TUI content
3
- *
4
- * Provides vertical scrolling for content that exceeds the viewport height.
5
- * Supports keyboard navigation, sticky scroll (auto-follow), and scroll indicators.
6
- *
7
- * ## Key Features
8
- *
9
- * - **Viewport clipping**: Only renders visible lines based on scroll offset
10
- * - **Sticky scroll**: Auto-follows bottom when new content arrives (unless user scrolled up)
11
- * - **Keyboard navigation**: Page Up/Down, Ctrl+Home/End, arrow keys
12
- * - **Scroll indicator**: Optional position indicator showing current scroll position
13
- *
14
- * ## Usage
15
- *
16
- * ```typescript
17
- * const scroll = new ScrollContainer(chatContent, {
18
- * viewportHeight: 20, // Or dynamically set via setViewportHeight()
19
- * stickyScroll: true,
20
- * showIndicator: true,
21
- * });
22
- *
23
- * // Handle input for scrolling
24
- * scroll.handleInput(keyData);
25
- *
26
- * // Render visible portion
27
- * const lines = scroll.render(width);
28
- * ```
29
- */
30
- /**
31
- * Scrollable container component for TUI.
32
- *
33
- * Wraps child content and provides vertical scrolling with keyboard navigation.
34
- * The scroll offset determines which portion of the content is visible.
35
- *
36
- * IMPORTANT: This component maintains a PERSISTENT HISTORY of all content
37
- * ever rendered, so even if the child component's content is cleared or
38
- * trimmed, users can still scroll back to see old content.
39
- *
40
- * ```
41
- * ┌─────────────────────────────────────┐
42
- * │ Full content history (N lines) │
43
- * │ ┌───────────────────────────────┐ │
44
- * │ │ Visible viewport (M lines) │ │ ← scrollOffset
45
- * │ │ Lines [offset, offset + M) │ │
46
- * │ └───────────────────────────────┘ │
47
- * │ ... more content below ... │
48
- * └─────────────────────────────────────┘
49
- * ```
50
- */
51
- export class ScrollContainer {
52
- constructor(content, options = {}) {
53
- /** Current scroll offset (first visible line index) */
54
- this.scrollOffset = 0;
55
- /** Whether user has scrolled up (disables sticky until they scroll to bottom) */
56
- this.userScrolledUp = false;
57
- /**
58
- * PERSISTENT content history - all lines ever rendered.
59
- * This is the key difference: we keep history even when child content is cleared.
60
- */
61
- this.contentHistory = [];
62
- /** Track last child render to detect changes */
63
- this.lastChildRenderHash = "";
64
- /** Last rendered lines from the child component (for diffing/streaming updates). */
65
- this.lastRenderedLines = [];
66
- /** Total number of truncated lines */
67
- this.truncatedLines = 0;
68
- this.content = content;
69
- this.viewportHeight = options.viewportHeight ?? 20;
70
- this.stickyScroll = options.stickyScroll ?? true;
71
- this.showIndicator = options.showIndicator ?? false;
72
- this.pageSize = options.pageSize;
73
- this.onScroll = options.onScroll;
74
- this.reservedLines = options.reservedLines ?? 0;
75
- // Keep up to 10000 lines of history (~5MB at 500 chars/line)
76
- this.maxHistoryLines = options.maxHistoryLines ?? 10000;
77
- this.showTruncationMarker = options.showTruncationMarker ?? true;
78
- this.truncationMarker =
79
- options.truncationMarker ?? "... scrollback truncated";
80
- }
81
- /**
82
- * Updates the viewport height dynamically.
83
- * Call this when terminal is resized.
84
- */
85
- setViewportHeight(height) {
86
- const newHeight = Math.max(1, height - this.reservedLines);
87
- if (newHeight !== this.viewportHeight) {
88
- this.viewportHeight = newHeight;
89
- // Clamp scroll offset to new bounds
90
- this.clampScrollOffset();
91
- }
92
- }
93
- /**
94
- * Sets the content component to scroll.
95
- */
96
- setContent(content) {
97
- this.content = content;
98
- }
99
- /**
100
- * Clears the scrollback history and resets scroll state.
101
- * Useful when starting a new session or reclaiming memory.
102
- */
103
- clearHistory() {
104
- this.contentHistory = [];
105
- this.lastRenderedLines = [];
106
- this.lastChildRenderHash = "";
107
- this.truncatedLines = 0;
108
- this.scrollOffset = 0;
109
- this.userScrolledUp = false;
110
- }
111
- /**
112
- * Gets the current scroll offset.
113
- */
114
- getScrollOffset() {
115
- return this.scrollOffset;
116
- }
117
- /**
118
- * Gets the maximum valid scroll offset.
119
- */
120
- getMaxScrollOffset() {
121
- return Math.max(0, this.contentHistory.length - this.viewportHeight);
122
- }
123
- /**
124
- * Returns true if currently at the bottom (sticky scroll active).
125
- */
126
- isAtBottom() {
127
- return this.scrollOffset >= this.getMaxScrollOffset();
128
- }
129
- /**
130
- * Scrolls by a relative amount.
131
- * Negative = scroll up, positive = scroll down.
132
- */
133
- scrollBy(delta) {
134
- const oldOffset = this.scrollOffset;
135
- this.scrollOffset = Math.max(0, Math.min(this.getMaxScrollOffset(), this.scrollOffset + delta));
136
- if (this.scrollOffset !== oldOffset) {
137
- // Track if user scrolled up (disables sticky)
138
- if (delta < 0) {
139
- this.userScrolledUp = true;
140
- }
141
- // Re-enable sticky if user scrolled to bottom
142
- if (this.isAtBottom()) {
143
- this.userScrolledUp = false;
144
- }
145
- this.onScroll?.(this.scrollOffset, this.getMaxScrollOffset());
146
- }
147
- }
148
- /**
149
- * Scrolls to an absolute offset.
150
- */
151
- scrollTo(offset) {
152
- const targetOffset = Math.max(0, Math.min(this.getMaxScrollOffset(), offset));
153
- if (targetOffset !== this.scrollOffset) {
154
- this.scrollOffset = targetOffset;
155
- this.userScrolledUp = !this.isAtBottom();
156
- this.onScroll?.(this.scrollOffset, this.getMaxScrollOffset());
157
- }
158
- }
159
- /**
160
- * Scrolls to the top.
161
- */
162
- scrollToTop() {
163
- this.scrollTo(0);
164
- }
165
- /**
166
- * Scrolls to the bottom and re-enables sticky scroll.
167
- */
168
- scrollToBottom() {
169
- this.scrollTo(this.getMaxScrollOffset());
170
- this.userScrolledUp = false;
171
- }
172
- /**
173
- * Scrolls up by one page.
174
- */
175
- pageUp() {
176
- const page = this.pageSize ?? Math.max(1, this.viewportHeight - 2);
177
- this.scrollBy(-page);
178
- }
179
- /**
180
- * Scrolls down by one page.
181
- */
182
- pageDown() {
183
- const page = this.pageSize ?? Math.max(1, this.viewportHeight - 2);
184
- this.scrollBy(page);
185
- }
186
- /**
187
- * Scrolls up by half a page.
188
- */
189
- halfPageUp() {
190
- const half = Math.max(1, Math.floor(this.viewportHeight / 2));
191
- this.scrollBy(-half);
192
- }
193
- /**
194
- * Scrolls down by half a page.
195
- */
196
- halfPageDown() {
197
- const half = Math.max(1, Math.floor(this.viewportHeight / 2));
198
- this.scrollBy(half);
199
- }
200
- /**
201
- * Clamps scroll offset to valid bounds.
202
- */
203
- clampScrollOffset() {
204
- const maxOffset = this.getMaxScrollOffset();
205
- if (this.scrollOffset > maxOffset) {
206
- this.scrollOffset = maxOffset;
207
- }
208
- }
209
- /**
210
- * Handles keyboard input for scrolling.
211
- *
212
- * Supported keys:
213
- * - Page Up (\x1b[5~): Scroll up one page
214
- * - Page Down (\x1b[6~): Scroll down one page
215
- * - Ctrl+Home (\x1b[1;5H): Jump to top
216
- * - Ctrl+End (\x1b[1;5F): Jump to bottom
217
- * - Ctrl+Up (\x1b[1;5A): Scroll up one line
218
- * - Ctrl+Down (\x1b[1;5B): Scroll down one line
219
- * - Ctrl+U: Half page up (vim-style)
220
- * - Ctrl+D: Half page down (vim-style)
221
- *
222
- * @returns true if input was handled, false otherwise
223
- */
224
- handleInput(data) {
225
- // Page Up
226
- if (data === "\x1b[5~") {
227
- this.pageUp();
228
- return true;
229
- }
230
- // Page Down
231
- if (data === "\x1b[6~") {
232
- this.pageDown();
233
- return true;
234
- }
235
- // Ctrl+Home - jump to top
236
- if (data === "\x1b[1;5H") {
237
- this.scrollToTop();
238
- return true;
239
- }
240
- // Ctrl+End - jump to bottom
241
- if (data === "\x1b[1;5F") {
242
- this.scrollToBottom();
243
- return true;
244
- }
245
- // Ctrl+Up - scroll up one line
246
- if (data === "\x1b[1;5A") {
247
- this.scrollBy(-1);
248
- return true;
249
- }
250
- // Ctrl+Down - scroll down one line
251
- if (data === "\x1b[1;5B") {
252
- this.scrollBy(1);
253
- return true;
254
- }
255
- // Ctrl+U - half page up (vim-style)
256
- if (data === "\x15") {
257
- this.halfPageUp();
258
- return true;
259
- }
260
- // Ctrl+D - half page down (vim-style)
261
- if (data === "\x04") {
262
- this.halfPageDown();
263
- return true;
264
- }
265
- // G - jump to bottom (vim-style, capital G)
266
- if (data === "G") {
267
- this.scrollToBottom();
268
- return true;
269
- }
270
- // gg - jump to top would need state tracking, skip for now
271
- return false;
272
- }
273
- /**
274
- * Renders the visible portion of the content.
275
- *
276
- * Algorithm:
277
- * 1. Render current content from child component
278
- * 2. APPEND new content to persistent history (detecting what's new)
279
- * 3. Apply sticky scroll if enabled and user hasn't scrolled up
280
- * 4. Extract visible lines from HISTORY based on scroll offset
281
- * 5. Optionally append scroll indicator
282
- */
283
- render(width) {
284
- // Render current content from child
285
- const currentLines = this.content.render(width);
286
- // Create a hash to detect if content changed
287
- const currentHash = this.hashLines(currentLines);
288
- // If content changed, update history
289
- if (currentHash !== this.lastChildRenderHash) {
290
- this.updateHistory(currentLines);
291
- this.lastChildRenderHash = currentHash;
292
- }
293
- const totalLines = this.contentHistory.length;
294
- const maxOffset = Math.max(0, totalLines - this.viewportHeight);
295
- // Apply sticky scroll: auto-follow bottom unless user scrolled up
296
- if (this.stickyScroll && !this.userScrolledUp) {
297
- this.scrollOffset = maxOffset;
298
- }
299
- // Clamp offset to valid range
300
- this.scrollOffset = Math.max(0, Math.min(maxOffset, this.scrollOffset));
301
- // Extract visible lines FROM HISTORY (not current content!)
302
- const visibleLines = this.contentHistory.slice(this.scrollOffset, this.scrollOffset + this.viewportHeight);
303
- // Only pad with empty lines when content exceeds viewport (scrolling active)
304
- // This prevents massive empty space when content is small
305
- if (totalLines > this.viewportHeight) {
306
- const emptyLine = " ".repeat(width);
307
- while (visibleLines.length < this.viewportHeight) {
308
- visibleLines.push(emptyLine);
309
- }
310
- }
311
- // Optionally show scroll indicator
312
- if (this.showIndicator && totalLines > this.viewportHeight) {
313
- const indicator = this.renderIndicator(width);
314
- if (indicator && visibleLines.length > 0) {
315
- // Replace last line with indicator overlay
316
- const lastIdx = visibleLines.length - 1;
317
- visibleLines[lastIdx] = this.overlayIndicator(visibleLines[lastIdx], indicator, width);
318
- }
319
- }
320
- return visibleLines;
321
- }
322
- /**
323
- * Simple hash of lines for change detection.
324
- */
325
- hashLines(lines) {
326
- if (lines.length === 0)
327
- return "empty";
328
- let hash = 2166136261;
329
- for (const line of lines) {
330
- for (let i = 0; i < line.length; i++) {
331
- hash ^= line.charCodeAt(i);
332
- hash = Math.imul(hash, 16777619);
333
- }
334
- // Add a separator to reduce collisions across line boundaries.
335
- hash ^= 10;
336
- hash = Math.imul(hash, 16777619);
337
- }
338
- return `${lines.length}:${hash >>> 0}`;
339
- }
340
- /**
341
- * Updates the content history with new lines.
342
- * Appends new content while preserving old history.
343
- */
344
- updateHistory(currentLines) {
345
- // Strategy:
346
- // - Preserve historical lines even if the child clears.
347
- // - Avoid duplicating lines for streaming updates (last line mutates).
348
- // - Append only truly new lines when the child grows.
349
- if (currentLines.length === 0) {
350
- // Child was cleared; keep history but reset streaming baseline.
351
- this.lastRenderedLines = [];
352
- return;
353
- }
354
- if (this.lastRenderedLines.length === 0) {
355
- if (this.contentHistory.length === 0) {
356
- this.contentHistory = [...currentLines];
357
- }
358
- else {
359
- if (this.endsWithLines(this.contentHistory, currentLines)) {
360
- this.lastRenderedLines = [...currentLines];
361
- return;
362
- }
363
- const overlap = this.findOverlap(this.contentHistory, currentLines);
364
- if (overlap > 0) {
365
- this.contentHistory.push(...currentLines.slice(overlap));
366
- }
367
- else {
368
- this.contentHistory.push(...currentLines);
369
- }
370
- }
371
- this.lastRenderedLines = [...currentLines];
372
- this.trimHistory();
373
- return;
374
- }
375
- if (this.linesEqual(this.lastRenderedLines, currentLines)) {
376
- return;
377
- }
378
- const lastCount = this.lastRenderedLines.length;
379
- const prefixLen = this.commonPrefixLength(this.lastRenderedLines, currentLines);
380
- const minLen = Math.min(lastCount, currentLines.length);
381
- const nearContinuous = minLen > 0 && prefixLen >= minLen - 1;
382
- // Streaming update: replace the tail segment in place to avoid duplicates.
383
- if (nearContinuous && currentLines.length >= lastCount) {
384
- const removeCount = Math.min(lastCount, this.contentHistory.length);
385
- if (removeCount === 0) {
386
- this.contentHistory.push(...currentLines);
387
- }
388
- else {
389
- const start = this.contentHistory.length - removeCount;
390
- const expectedTail = this.lastRenderedLines.slice(-removeCount);
391
- if (this.endsWithLines(this.contentHistory, expectedTail)) {
392
- this.contentHistory.splice(start, removeCount, ...currentLines);
393
- }
394
- else {
395
- const overlap = this.findOverlap(this.contentHistory, currentLines);
396
- if (overlap > 0) {
397
- this.contentHistory.push(...currentLines.slice(overlap));
398
- }
399
- else {
400
- this.contentHistory.push(...currentLines);
401
- }
402
- }
403
- }
404
- this.lastRenderedLines = [...currentLines];
405
- this.trimHistory();
406
- return;
407
- }
408
- // Child trimmed the tail of its output; keep history but advance baseline.
409
- if (this.startsWithLines(this.lastRenderedLines, currentLines)) {
410
- this.lastRenderedLines = [...currentLines];
411
- return;
412
- }
413
- // If the current lines already match the tail of history, keep history as-is.
414
- if (this.endsWithLines(this.contentHistory, currentLines)) {
415
- this.lastRenderedLines = [...currentLines];
416
- return;
417
- }
418
- // Fallback: overlap detection to append only new content when possible.
419
- const overlap = this.findOverlap(this.contentHistory, currentLines);
420
- if (overlap > 0) {
421
- this.contentHistory.push(...currentLines.slice(overlap));
422
- }
423
- else {
424
- this.contentHistory.push(...currentLines);
425
- }
426
- this.lastRenderedLines = [...currentLines];
427
- this.trimHistory();
428
- }
429
- trimHistory() {
430
- if (this.contentHistory.length > this.maxHistoryLines) {
431
- const removeCount = this.contentHistory.length - this.maxHistoryLines;
432
- this.contentHistory.splice(0, removeCount);
433
- this.scrollOffset = Math.max(0, this.scrollOffset - removeCount);
434
- this.truncatedLines += removeCount;
435
- this.applyTruncationMarker();
436
- }
437
- if (this.lastRenderedLines.length > this.contentHistory.length) {
438
- this.lastRenderedLines =
439
- this.contentHistory.length === 0
440
- ? []
441
- : this.lastRenderedLines.slice(-this.contentHistory.length);
442
- }
443
- }
444
- applyTruncationMarker() {
445
- if (!this.showTruncationMarker || this.truncatedLines === 0)
446
- return;
447
- let marker = this.formatTruncationMarker();
448
- let offsetDelta = 0;
449
- if (this.contentHistory.length === 0) {
450
- this.contentHistory.push(marker);
451
- return;
452
- }
453
- const hadMarker = this.isTruncationMarker(this.contentHistory[0]);
454
- if (hadMarker) {
455
- this.contentHistory[0] = marker;
456
- }
457
- else {
458
- this.contentHistory.unshift(marker);
459
- }
460
- if (this.contentHistory.length > this.maxHistoryLines) {
461
- const overflow = this.contentHistory.length - this.maxHistoryLines;
462
- this.contentHistory.splice(1, overflow);
463
- this.truncatedLines += overflow;
464
- marker = this.formatTruncationMarker();
465
- this.contentHistory[0] = marker;
466
- offsetDelta -= overflow;
467
- }
468
- if (!hadMarker) {
469
- offsetDelta += 1;
470
- }
471
- if (offsetDelta !== 0 && this.scrollOffset > 0) {
472
- this.scrollOffset = Math.max(0, this.scrollOffset + offsetDelta);
473
- }
474
- }
475
- formatTruncationMarker() {
476
- const count = this.truncatedLines.toLocaleString();
477
- return `${this.truncationMarker} (${count} lines)`;
478
- }
479
- isTruncationMarker(line) {
480
- return line.startsWith(this.truncationMarker);
481
- }
482
- linesEqual(a, b) {
483
- if (a.length !== b.length)
484
- return false;
485
- for (let i = 0; i < a.length; i++) {
486
- if (a[i] !== b[i])
487
- return false;
488
- }
489
- return true;
490
- }
491
- commonPrefixLength(a, b) {
492
- const max = Math.min(a.length, b.length);
493
- let idx = 0;
494
- while (idx < max && a[idx] === b[idx]) {
495
- idx += 1;
496
- }
497
- return idx;
498
- }
499
- endsWithLines(history, current) {
500
- if (current.length === 0)
501
- return true;
502
- if (current.length > history.length)
503
- return false;
504
- const start = history.length - current.length;
505
- for (let i = 0; i < current.length; i++) {
506
- if (history[start + i] !== current[i])
507
- return false;
508
- }
509
- return true;
510
- }
511
- startsWithLines(history, current) {
512
- if (current.length === 0)
513
- return true;
514
- if (current.length > history.length)
515
- return false;
516
- for (let i = 0; i < current.length; i++) {
517
- if (history[i] !== current[i])
518
- return false;
519
- }
520
- return true;
521
- }
522
- /**
523
- * Finds how many lines at the end of history match the start of current.
524
- * Returns the overlap count.
525
- */
526
- findOverlap(history, current) {
527
- if (history.length === 0 || current.length === 0)
528
- return 0;
529
- // Look for overlap between end of history and start of current
530
- // Check up to min(history.length, current.length) lines
531
- const maxCheck = Math.min(history.length, current.length, 100);
532
- for (let overlapSize = maxCheck; overlapSize > 0; overlapSize--) {
533
- const historyEnd = history.slice(-overlapSize);
534
- const currentStart = current.slice(0, overlapSize);
535
- let matches = true;
536
- for (let i = 0; i < overlapSize; i++) {
537
- if (historyEnd[i] !== currentStart[i]) {
538
- matches = false;
539
- break;
540
- }
541
- }
542
- if (matches) {
543
- return overlapSize;
544
- }
545
- }
546
- return 0;
547
- }
548
- /**
549
- * Renders the scroll position indicator.
550
- */
551
- renderIndicator(_width) {
552
- const total = this.contentHistory.length;
553
- const current = this.scrollOffset + 1;
554
- const end = Math.min(this.scrollOffset + this.viewportHeight, total);
555
- // Show percentage or line numbers based on total size
556
- if (total > 1000) {
557
- const percent = Math.round((this.scrollOffset / (total - this.viewportHeight)) * 100);
558
- return `[${percent}%]`;
559
- }
560
- return `[${current}-${end}/${total}]`;
561
- }
562
- /**
563
- * Overlays the indicator on the right side of a line.
564
- */
565
- overlayIndicator(line, indicator, width) {
566
- // Simple approach: append indicator at end
567
- // A more sophisticated approach would use ANSI positioning
568
- const indicatorLen = indicator.length;
569
- const padding = Math.max(0, width - indicatorLen - 1);
570
- // Dim the indicator
571
- const dimIndicator = `\x1b[2m${indicator}\x1b[0m`;
572
- return `${line.slice(0, padding)} ${dimIndicator}`;
573
- }
574
- }
575
- //# sourceMappingURL=scroll-container.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-container.js","sourceRoot":"","sources":["../../src/components/scroll-container.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @fileoverview ScrollContainer - Scrollable viewport for TUI content\n *\n * Provides vertical scrolling for content that exceeds the viewport height.\n * Supports keyboard navigation, sticky scroll (auto-follow), and scroll indicators.\n *\n * ## Key Features\n *\n * - **Viewport clipping**: Only renders visible lines based on scroll offset\n * - **Sticky scroll**: Auto-follows bottom when new content arrives (unless user scrolled up)\n * - **Keyboard navigation**: Page Up/Down, Ctrl+Home/End, arrow keys\n * - **Scroll indicator**: Optional position indicator showing current scroll position\n *\n * ## Usage\n *\n * ```typescript\n * const scroll = new ScrollContainer(chatContent, {\n * viewportHeight: 20, // Or dynamically set via setViewportHeight()\n * stickyScroll: true,\n * showIndicator: true,\n * });\n *\n * // Handle input for scrolling\n * scroll.handleInput(keyData);\n *\n * // Render visible portion\n * const lines = scroll.render(width);\n * ```\n */\n\nimport type { Component } from \"../tui.js\";\n\n/**\n * Configuration options for ScrollContainer.\n */\nexport interface ScrollContainerOptions {\n\t/**\n\t * Number of visible lines in the viewport.\n\t * If not set, must be provided via setViewportHeight() before rendering.\n\t */\n\tviewportHeight?: number;\n\n\t/**\n\t * When true, automatically scrolls to bottom when new content is added,\n\t * unless the user has manually scrolled up.\n\t * @default true\n\t */\n\tstickyScroll?: boolean;\n\n\t/**\n\t * Show scroll position indicator (e.g., \"[42/156]\").\n\t * @default false\n\t */\n\tshowIndicator?: boolean;\n\n\t/**\n\t * Number of lines to scroll per \"page\" (Page Up/Down).\n\t * If not set, defaults to viewportHeight - 2.\n\t */\n\tpageSize?: number;\n\n\t/**\n\t * Callback when scroll position changes.\n\t * Useful for triggering re-renders in the parent.\n\t */\n\tonScroll?: (offset: number, maxOffset: number) => void;\n\n\t/**\n\t * Reserve lines at bottom for input/status (not part of scrollable area).\n\t * @default 0\n\t */\n\treservedLines?: number;\n\n\t/**\n\t * Maximum number of lines kept in scrollback history.\n\t * When exceeded, the oldest lines are evicted (FIFO) and scrollOffset is adjusted.\n\t * @default 10000\n\t */\n\tmaxHistoryLines?: number;\n\n\t/**\n\t * Show a marker when older scrollback is truncated.\n\t * @default true\n\t */\n\tshowTruncationMarker?: boolean;\n\n\t/**\n\t * Base label used for truncation markers.\n\t * @default \"... scrollback truncated\"\n\t */\n\ttruncationMarker?: string;\n}\n\n/**\n * Scrollable container component for TUI.\n *\n * Wraps child content and provides vertical scrolling with keyboard navigation.\n * The scroll offset determines which portion of the content is visible.\n *\n * IMPORTANT: This component maintains a PERSISTENT HISTORY of all content\n * ever rendered, so even if the child component's content is cleared or\n * trimmed, users can still scroll back to see old content.\n *\n * ```\n * ┌─────────────────────────────────────┐\n * │ Full content history (N lines) │\n * │ ┌───────────────────────────────┐ │\n * │ │ Visible viewport (M lines) │ │ ← scrollOffset\n * │ │ Lines [offset, offset + M) │ │\n * │ └───────────────────────────────┘ │\n * │ ... more content below ... │\n * └─────────────────────────────────────┘\n * ```\n */\nexport class ScrollContainer implements Component {\n\t/** Current scroll offset (first visible line index) */\n\tprivate scrollOffset = 0;\n\n\t/** When true, auto-scroll to bottom on new content */\n\tprivate stickyScroll: boolean;\n\n\t/** Whether user has scrolled up (disables sticky until they scroll to bottom) */\n\tprivate userScrolledUp = false;\n\n\t/** Viewport height in lines */\n\tprivate viewportHeight: number;\n\n\t/** Lines per page for Page Up/Down */\n\tprivate pageSize?: number;\n\n\t/** Show scroll indicator */\n\tprivate showIndicator: boolean;\n\n\t/** Scroll change callback */\n\tprivate onScroll?: (offset: number, maxOffset: number) => void;\n\n\t/** Reserved lines at bottom */\n\tprivate reservedLines: number;\n\n\t/**\n\t * PERSISTENT content history - all lines ever rendered.\n\t * This is the key difference: we keep history even when child content is cleared.\n\t */\n\tprivate contentHistory: string[] = [];\n\n\t/** Track last child render to detect changes */\n\tprivate lastChildRenderHash = \"\";\n\n\t/** Last rendered lines from the child component (for diffing/streaming updates). */\n\tprivate lastRenderedLines: string[] = [];\n\n\t/** Maximum history lines to prevent unbounded memory growth */\n\tprivate maxHistoryLines: number;\n\n\t/** Whether to show a truncation marker line */\n\tprivate showTruncationMarker: boolean;\n\n\t/** Marker label used when scrollback is truncated */\n\tprivate truncationMarker: string;\n\n\t/** Total number of truncated lines */\n\tprivate truncatedLines = 0;\n\n\t/** The child component to scroll */\n\tprivate content: Component;\n\n\tconstructor(content: Component, options: ScrollContainerOptions = {}) {\n\t\tthis.content = content;\n\t\tthis.viewportHeight = options.viewportHeight ?? 20;\n\t\tthis.stickyScroll = options.stickyScroll ?? true;\n\t\tthis.showIndicator = options.showIndicator ?? false;\n\t\tthis.pageSize = options.pageSize;\n\t\tthis.onScroll = options.onScroll;\n\t\tthis.reservedLines = options.reservedLines ?? 0;\n\t\t// Keep up to 10000 lines of history (~5MB at 500 chars/line)\n\t\tthis.maxHistoryLines = options.maxHistoryLines ?? 10000;\n\t\tthis.showTruncationMarker = options.showTruncationMarker ?? true;\n\t\tthis.truncationMarker =\n\t\t\toptions.truncationMarker ?? \"... scrollback truncated\";\n\t}\n\n\t/**\n\t * Updates the viewport height dynamically.\n\t * Call this when terminal is resized.\n\t */\n\tsetViewportHeight(height: number): void {\n\t\tconst newHeight = Math.max(1, height - this.reservedLines);\n\t\tif (newHeight !== this.viewportHeight) {\n\t\t\tthis.viewportHeight = newHeight;\n\t\t\t// Clamp scroll offset to new bounds\n\t\t\tthis.clampScrollOffset();\n\t\t}\n\t}\n\n\t/**\n\t * Sets the content component to scroll.\n\t */\n\tsetContent(content: Component): void {\n\t\tthis.content = content;\n\t}\n\n\t/**\n\t * Clears the scrollback history and resets scroll state.\n\t * Useful when starting a new session or reclaiming memory.\n\t */\n\tclearHistory(): void {\n\t\tthis.contentHistory = [];\n\t\tthis.lastRenderedLines = [];\n\t\tthis.lastChildRenderHash = \"\";\n\t\tthis.truncatedLines = 0;\n\t\tthis.scrollOffset = 0;\n\t\tthis.userScrolledUp = false;\n\t}\n\n\t/**\n\t * Gets the current scroll offset.\n\t */\n\tgetScrollOffset(): number {\n\t\treturn this.scrollOffset;\n\t}\n\n\t/**\n\t * Gets the maximum valid scroll offset.\n\t */\n\tgetMaxScrollOffset(): number {\n\t\treturn Math.max(0, this.contentHistory.length - this.viewportHeight);\n\t}\n\n\t/**\n\t * Returns true if currently at the bottom (sticky scroll active).\n\t */\n\tisAtBottom(): boolean {\n\t\treturn this.scrollOffset >= this.getMaxScrollOffset();\n\t}\n\n\t/**\n\t * Scrolls by a relative amount.\n\t * Negative = scroll up, positive = scroll down.\n\t */\n\tscrollBy(delta: number): void {\n\t\tconst oldOffset = this.scrollOffset;\n\t\tthis.scrollOffset = Math.max(\n\t\t\t0,\n\t\t\tMath.min(this.getMaxScrollOffset(), this.scrollOffset + delta),\n\t\t);\n\n\t\tif (this.scrollOffset !== oldOffset) {\n\t\t\t// Track if user scrolled up (disables sticky)\n\t\t\tif (delta < 0) {\n\t\t\t\tthis.userScrolledUp = true;\n\t\t\t}\n\t\t\t// Re-enable sticky if user scrolled to bottom\n\t\t\tif (this.isAtBottom()) {\n\t\t\t\tthis.userScrolledUp = false;\n\t\t\t}\n\t\t\tthis.onScroll?.(this.scrollOffset, this.getMaxScrollOffset());\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls to an absolute offset.\n\t */\n\tscrollTo(offset: number): void {\n\t\tconst targetOffset = Math.max(\n\t\t\t0,\n\t\t\tMath.min(this.getMaxScrollOffset(), offset),\n\t\t);\n\t\tif (targetOffset !== this.scrollOffset) {\n\t\t\tthis.scrollOffset = targetOffset;\n\t\t\tthis.userScrolledUp = !this.isAtBottom();\n\t\t\tthis.onScroll?.(this.scrollOffset, this.getMaxScrollOffset());\n\t\t}\n\t}\n\n\t/**\n\t * Scrolls to the top.\n\t */\n\tscrollToTop(): void {\n\t\tthis.scrollTo(0);\n\t}\n\n\t/**\n\t * Scrolls to the bottom and re-enables sticky scroll.\n\t */\n\tscrollToBottom(): void {\n\t\tthis.scrollTo(this.getMaxScrollOffset());\n\t\tthis.userScrolledUp = false;\n\t}\n\n\t/**\n\t * Scrolls up by one page.\n\t */\n\tpageUp(): void {\n\t\tconst page = this.pageSize ?? Math.max(1, this.viewportHeight - 2);\n\t\tthis.scrollBy(-page);\n\t}\n\n\t/**\n\t * Scrolls down by one page.\n\t */\n\tpageDown(): void {\n\t\tconst page = this.pageSize ?? Math.max(1, this.viewportHeight - 2);\n\t\tthis.scrollBy(page);\n\t}\n\n\t/**\n\t * Scrolls up by half a page.\n\t */\n\thalfPageUp(): void {\n\t\tconst half = Math.max(1, Math.floor(this.viewportHeight / 2));\n\t\tthis.scrollBy(-half);\n\t}\n\n\t/**\n\t * Scrolls down by half a page.\n\t */\n\thalfPageDown(): void {\n\t\tconst half = Math.max(1, Math.floor(this.viewportHeight / 2));\n\t\tthis.scrollBy(half);\n\t}\n\n\t/**\n\t * Clamps scroll offset to valid bounds.\n\t */\n\tprivate clampScrollOffset(): void {\n\t\tconst maxOffset = this.getMaxScrollOffset();\n\t\tif (this.scrollOffset > maxOffset) {\n\t\t\tthis.scrollOffset = maxOffset;\n\t\t}\n\t}\n\n\t/**\n\t * Handles keyboard input for scrolling.\n\t *\n\t * Supported keys:\n\t * - Page Up (\\x1b[5~): Scroll up one page\n\t * - Page Down (\\x1b[6~): Scroll down one page\n\t * - Ctrl+Home (\\x1b[1;5H): Jump to top\n\t * - Ctrl+End (\\x1b[1;5F): Jump to bottom\n\t * - Ctrl+Up (\\x1b[1;5A): Scroll up one line\n\t * - Ctrl+Down (\\x1b[1;5B): Scroll down one line\n\t * - Ctrl+U: Half page up (vim-style)\n\t * - Ctrl+D: Half page down (vim-style)\n\t *\n\t * @returns true if input was handled, false otherwise\n\t */\n\thandleInput(data: string): boolean {\n\t\t// Page Up\n\t\tif (data === \"\\x1b[5~\") {\n\t\t\tthis.pageUp();\n\t\t\treturn true;\n\t\t}\n\n\t\t// Page Down\n\t\tif (data === \"\\x1b[6~\") {\n\t\t\tthis.pageDown();\n\t\t\treturn true;\n\t\t}\n\n\t\t// Ctrl+Home - jump to top\n\t\tif (data === \"\\x1b[1;5H\") {\n\t\t\tthis.scrollToTop();\n\t\t\treturn true;\n\t\t}\n\n\t\t// Ctrl+End - jump to bottom\n\t\tif (data === \"\\x1b[1;5F\") {\n\t\t\tthis.scrollToBottom();\n\t\t\treturn true;\n\t\t}\n\n\t\t// Ctrl+Up - scroll up one line\n\t\tif (data === \"\\x1b[1;5A\") {\n\t\t\tthis.scrollBy(-1);\n\t\t\treturn true;\n\t\t}\n\n\t\t// Ctrl+Down - scroll down one line\n\t\tif (data === \"\\x1b[1;5B\") {\n\t\t\tthis.scrollBy(1);\n\t\t\treturn true;\n\t\t}\n\n\t\t// Ctrl+U - half page up (vim-style)\n\t\tif (data === \"\\x15\") {\n\t\t\tthis.halfPageUp();\n\t\t\treturn true;\n\t\t}\n\n\t\t// Ctrl+D - half page down (vim-style)\n\t\tif (data === \"\\x04\") {\n\t\t\tthis.halfPageDown();\n\t\t\treturn true;\n\t\t}\n\n\t\t// G - jump to bottom (vim-style, capital G)\n\t\tif (data === \"G\") {\n\t\t\tthis.scrollToBottom();\n\t\t\treturn true;\n\t\t}\n\n\t\t// gg - jump to top would need state tracking, skip for now\n\n\t\treturn false;\n\t}\n\n\t/**\n\t * Renders the visible portion of the content.\n\t *\n\t * Algorithm:\n\t * 1. Render current content from child component\n\t * 2. APPEND new content to persistent history (detecting what's new)\n\t * 3. Apply sticky scroll if enabled and user hasn't scrolled up\n\t * 4. Extract visible lines from HISTORY based on scroll offset\n\t * 5. Optionally append scroll indicator\n\t */\n\trender(width: number): string[] {\n\t\t// Render current content from child\n\t\tconst currentLines = this.content.render(width);\n\n\t\t// Create a hash to detect if content changed\n\t\tconst currentHash = this.hashLines(currentLines);\n\n\t\t// If content changed, update history\n\t\tif (currentHash !== this.lastChildRenderHash) {\n\t\t\tthis.updateHistory(currentLines);\n\t\t\tthis.lastChildRenderHash = currentHash;\n\t\t}\n\n\t\tconst totalLines = this.contentHistory.length;\n\t\tconst maxOffset = Math.max(0, totalLines - this.viewportHeight);\n\n\t\t// Apply sticky scroll: auto-follow bottom unless user scrolled up\n\t\tif (this.stickyScroll && !this.userScrolledUp) {\n\t\t\tthis.scrollOffset = maxOffset;\n\t\t}\n\n\t\t// Clamp offset to valid range\n\t\tthis.scrollOffset = Math.max(0, Math.min(maxOffset, this.scrollOffset));\n\n\t\t// Extract visible lines FROM HISTORY (not current content!)\n\t\tconst visibleLines = this.contentHistory.slice(\n\t\t\tthis.scrollOffset,\n\t\t\tthis.scrollOffset + this.viewportHeight,\n\t\t);\n\n\t\t// Only pad with empty lines when content exceeds viewport (scrolling active)\n\t\t// This prevents massive empty space when content is small\n\t\tif (totalLines > this.viewportHeight) {\n\t\t\tconst emptyLine = \" \".repeat(width);\n\t\t\twhile (visibleLines.length < this.viewportHeight) {\n\t\t\t\tvisibleLines.push(emptyLine);\n\t\t\t}\n\t\t}\n\n\t\t// Optionally show scroll indicator\n\t\tif (this.showIndicator && totalLines > this.viewportHeight) {\n\t\t\tconst indicator = this.renderIndicator(width);\n\t\t\tif (indicator && visibleLines.length > 0) {\n\t\t\t\t// Replace last line with indicator overlay\n\t\t\t\tconst lastIdx = visibleLines.length - 1;\n\t\t\t\tvisibleLines[lastIdx] = this.overlayIndicator(\n\t\t\t\t\tvisibleLines[lastIdx]!,\n\t\t\t\t\tindicator,\n\t\t\t\t\twidth,\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn visibleLines;\n\t}\n\n\t/**\n\t * Simple hash of lines for change detection.\n\t */\n\tprivate hashLines(lines: string[]): string {\n\t\tif (lines.length === 0) return \"empty\";\n\t\tlet hash = 2166136261;\n\t\tfor (const line of lines) {\n\t\t\tfor (let i = 0; i < line.length; i++) {\n\t\t\t\thash ^= line.charCodeAt(i);\n\t\t\t\thash = Math.imul(hash, 16777619);\n\t\t\t}\n\t\t\t// Add a separator to reduce collisions across line boundaries.\n\t\t\thash ^= 10;\n\t\t\thash = Math.imul(hash, 16777619);\n\t\t}\n\t\treturn `${lines.length}:${hash >>> 0}`;\n\t}\n\n\t/**\n\t * Updates the content history with new lines.\n\t * Appends new content while preserving old history.\n\t */\n\tprivate updateHistory(currentLines: string[]): void {\n\t\t// Strategy:\n\t\t// - Preserve historical lines even if the child clears.\n\t\t// - Avoid duplicating lines for streaming updates (last line mutates).\n\t\t// - Append only truly new lines when the child grows.\n\n\t\tif (currentLines.length === 0) {\n\t\t\t// Child was cleared; keep history but reset streaming baseline.\n\t\t\tthis.lastRenderedLines = [];\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.lastRenderedLines.length === 0) {\n\t\t\tif (this.contentHistory.length === 0) {\n\t\t\t\tthis.contentHistory = [...currentLines];\n\t\t\t} else {\n\t\t\t\tif (this.endsWithLines(this.contentHistory, currentLines)) {\n\t\t\t\t\tthis.lastRenderedLines = [...currentLines];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst overlap = this.findOverlap(this.contentHistory, currentLines);\n\t\t\t\tif (overlap > 0) {\n\t\t\t\t\tthis.contentHistory.push(...currentLines.slice(overlap));\n\t\t\t\t} else {\n\t\t\t\t\tthis.contentHistory.push(...currentLines);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.lastRenderedLines = [...currentLines];\n\t\t\tthis.trimHistory();\n\t\t\treturn;\n\t\t}\n\n\t\tif (this.linesEqual(this.lastRenderedLines, currentLines)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst lastCount = this.lastRenderedLines.length;\n\t\tconst prefixLen = this.commonPrefixLength(\n\t\t\tthis.lastRenderedLines,\n\t\t\tcurrentLines,\n\t\t);\n\t\tconst minLen = Math.min(lastCount, currentLines.length);\n\t\tconst nearContinuous = minLen > 0 && prefixLen >= minLen - 1;\n\n\t\t// Streaming update: replace the tail segment in place to avoid duplicates.\n\t\tif (nearContinuous && currentLines.length >= lastCount) {\n\t\t\tconst removeCount = Math.min(lastCount, this.contentHistory.length);\n\t\t\tif (removeCount === 0) {\n\t\t\t\tthis.contentHistory.push(...currentLines);\n\t\t\t} else {\n\t\t\t\tconst start = this.contentHistory.length - removeCount;\n\t\t\t\tconst expectedTail = this.lastRenderedLines.slice(-removeCount);\n\t\t\t\tif (this.endsWithLines(this.contentHistory, expectedTail)) {\n\t\t\t\t\tthis.contentHistory.splice(start, removeCount, ...currentLines);\n\t\t\t\t} else {\n\t\t\t\t\tconst overlap = this.findOverlap(this.contentHistory, currentLines);\n\t\t\t\t\tif (overlap > 0) {\n\t\t\t\t\t\tthis.contentHistory.push(...currentLines.slice(overlap));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.contentHistory.push(...currentLines);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.lastRenderedLines = [...currentLines];\n\t\t\tthis.trimHistory();\n\t\t\treturn;\n\t\t}\n\n\t\t// Child trimmed the tail of its output; keep history but advance baseline.\n\t\tif (this.startsWithLines(this.lastRenderedLines, currentLines)) {\n\t\t\tthis.lastRenderedLines = [...currentLines];\n\t\t\treturn;\n\t\t}\n\n\t\t// If the current lines already match the tail of history, keep history as-is.\n\t\tif (this.endsWithLines(this.contentHistory, currentLines)) {\n\t\t\tthis.lastRenderedLines = [...currentLines];\n\t\t\treturn;\n\t\t}\n\n\t\t// Fallback: overlap detection to append only new content when possible.\n\t\tconst overlap = this.findOverlap(this.contentHistory, currentLines);\n\t\tif (overlap > 0) {\n\t\t\tthis.contentHistory.push(...currentLines.slice(overlap));\n\t\t} else {\n\t\t\tthis.contentHistory.push(...currentLines);\n\t\t}\n\n\t\tthis.lastRenderedLines = [...currentLines];\n\t\tthis.trimHistory();\n\t}\n\n\tprivate trimHistory(): void {\n\t\tif (this.contentHistory.length > this.maxHistoryLines) {\n\t\t\tconst removeCount = this.contentHistory.length - this.maxHistoryLines;\n\t\t\tthis.contentHistory.splice(0, removeCount);\n\t\t\tthis.scrollOffset = Math.max(0, this.scrollOffset - removeCount);\n\t\t\tthis.truncatedLines += removeCount;\n\t\t\tthis.applyTruncationMarker();\n\t\t}\n\t\tif (this.lastRenderedLines.length > this.contentHistory.length) {\n\t\t\tthis.lastRenderedLines =\n\t\t\t\tthis.contentHistory.length === 0\n\t\t\t\t\t? []\n\t\t\t\t\t: this.lastRenderedLines.slice(-this.contentHistory.length);\n\t\t}\n\t}\n\n\tprivate applyTruncationMarker(): void {\n\t\tif (!this.showTruncationMarker || this.truncatedLines === 0) return;\n\t\tlet marker = this.formatTruncationMarker();\n\t\tlet offsetDelta = 0;\n\t\tif (this.contentHistory.length === 0) {\n\t\t\tthis.contentHistory.push(marker);\n\t\t\treturn;\n\t\t}\n\t\tconst hadMarker = this.isTruncationMarker(this.contentHistory[0]!);\n\t\tif (hadMarker) {\n\t\t\tthis.contentHistory[0] = marker;\n\t\t} else {\n\t\t\tthis.contentHistory.unshift(marker);\n\t\t}\n\t\tif (this.contentHistory.length > this.maxHistoryLines) {\n\t\t\tconst overflow = this.contentHistory.length - this.maxHistoryLines;\n\t\t\tthis.contentHistory.splice(1, overflow);\n\t\t\tthis.truncatedLines += overflow;\n\t\t\tmarker = this.formatTruncationMarker();\n\t\t\tthis.contentHistory[0] = marker;\n\t\t\toffsetDelta -= overflow;\n\t\t}\n\t\tif (!hadMarker) {\n\t\t\toffsetDelta += 1;\n\t\t}\n\t\tif (offsetDelta !== 0 && this.scrollOffset > 0) {\n\t\t\tthis.scrollOffset = Math.max(0, this.scrollOffset + offsetDelta);\n\t\t}\n\t}\n\n\tprivate formatTruncationMarker(): string {\n\t\tconst count = this.truncatedLines.toLocaleString();\n\t\treturn `${this.truncationMarker} (${count} lines)`;\n\t}\n\n\tprivate isTruncationMarker(line: string): boolean {\n\t\treturn line.startsWith(this.truncationMarker);\n\t}\n\n\tprivate linesEqual(a: string[], b: string[]): boolean {\n\t\tif (a.length !== b.length) return false;\n\t\tfor (let i = 0; i < a.length; i++) {\n\t\t\tif (a[i] !== b[i]) return false;\n\t\t}\n\t\treturn true;\n\t}\n\n\tprivate commonPrefixLength(a: string[], b: string[]): number {\n\t\tconst max = Math.min(a.length, b.length);\n\t\tlet idx = 0;\n\t\twhile (idx < max && a[idx] === b[idx]) {\n\t\t\tidx += 1;\n\t\t}\n\t\treturn idx;\n\t}\n\n\tprivate endsWithLines(history: string[], current: string[]): boolean {\n\t\tif (current.length === 0) return true;\n\t\tif (current.length > history.length) return false;\n\t\tconst start = history.length - current.length;\n\t\tfor (let i = 0; i < current.length; i++) {\n\t\t\tif (history[start + i] !== current[i]) return false;\n\t\t}\n\t\treturn true;\n\t}\n\n\tprivate startsWithLines(history: string[], current: string[]): boolean {\n\t\tif (current.length === 0) return true;\n\t\tif (current.length > history.length) return false;\n\t\tfor (let i = 0; i < current.length; i++) {\n\t\t\tif (history[i] !== current[i]) return false;\n\t\t}\n\t\treturn true;\n\t}\n\n\t/**\n\t * Finds how many lines at the end of history match the start of current.\n\t * Returns the overlap count.\n\t */\n\tprivate findOverlap(history: string[], current: string[]): number {\n\t\tif (history.length === 0 || current.length === 0) return 0;\n\n\t\t// Look for overlap between end of history and start of current\n\t\t// Check up to min(history.length, current.length) lines\n\t\tconst maxCheck = Math.min(history.length, current.length, 100);\n\n\t\tfor (let overlapSize = maxCheck; overlapSize > 0; overlapSize--) {\n\t\t\tconst historyEnd = history.slice(-overlapSize);\n\t\t\tconst currentStart = current.slice(0, overlapSize);\n\n\t\t\tlet matches = true;\n\t\t\tfor (let i = 0; i < overlapSize; i++) {\n\t\t\t\tif (historyEnd[i] !== currentStart[i]) {\n\t\t\t\t\tmatches = false;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (matches) {\n\t\t\t\treturn overlapSize;\n\t\t\t}\n\t\t}\n\n\t\treturn 0;\n\t}\n\n\t/**\n\t * Renders the scroll position indicator.\n\t */\n\tprivate renderIndicator(_width: number): string {\n\t\tconst total = this.contentHistory.length;\n\t\tconst current = this.scrollOffset + 1;\n\t\tconst end = Math.min(this.scrollOffset + this.viewportHeight, total);\n\n\t\t// Show percentage or line numbers based on total size\n\t\tif (total > 1000) {\n\t\t\tconst percent = Math.round(\n\t\t\t\t(this.scrollOffset / (total - this.viewportHeight)) * 100,\n\t\t\t);\n\t\t\treturn `[${percent}%]`;\n\t\t}\n\n\t\treturn `[${current}-${end}/${total}]`;\n\t}\n\n\t/**\n\t * Overlays the indicator on the right side of a line.\n\t */\n\tprivate overlayIndicator(\n\t\tline: string,\n\t\tindicator: string,\n\t\twidth: number,\n\t): string {\n\t\t// Simple approach: append indicator at end\n\t\t// A more sophisticated approach would use ANSI positioning\n\t\tconst indicatorLen = indicator.length;\n\t\tconst padding = Math.max(0, width - indicatorLen - 1);\n\n\t\t// Dim the indicator\n\t\tconst dimIndicator = `\\x1b[2m${indicator}\\x1b[0m`;\n\n\t\treturn `${line.slice(0, padding)} ${dimIndicator}`;\n\t}\n}\n"]}