@pentoshi/clai 3.9.2 → 3.9.3

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 (331) hide show
  1. package/dist/agent/compaction-attempt.d.ts +22 -0
  2. package/dist/agent/compaction-attempt.js +69 -0
  3. package/dist/agent/compaction-attempt.js.map +1 -0
  4. package/dist/agent/compaction-summary.d.ts +27 -0
  5. package/dist/agent/compaction-summary.js +62 -0
  6. package/dist/agent/compaction-summary.js.map +1 -1
  7. package/dist/agent/context-breakdown.d.ts +2 -0
  8. package/dist/agent/context-breakdown.js +37 -0
  9. package/dist/agent/context-breakdown.js.map +1 -1
  10. package/dist/agent/context-manager.d.ts +7 -1
  11. package/dist/agent/context-manager.js +64 -15
  12. package/dist/agent/context-manager.js.map +1 -1
  13. package/dist/agent/continue-orient.d.ts +8 -0
  14. package/dist/agent/continue-orient.js +26 -3
  15. package/dist/agent/continue-orient.js.map +1 -1
  16. package/dist/agent/durable-envelope.d.ts +39 -0
  17. package/dist/agent/durable-envelope.js +195 -0
  18. package/dist/agent/durable-envelope.js.map +1 -0
  19. package/dist/agent/events.d.ts +21 -0
  20. package/dist/agent/loop-guard.d.ts +13 -5
  21. package/dist/agent/loop-guard.js +114 -1
  22. package/dist/agent/loop-guard.js.map +1 -1
  23. package/dist/agent/outcomes.d.ts +29 -0
  24. package/dist/agent/outcomes.js +118 -3
  25. package/dist/agent/outcomes.js.map +1 -1
  26. package/dist/agent/plan-decision.js +8 -3
  27. package/dist/agent/plan-decision.js.map +1 -1
  28. package/dist/agent/plan-tool.d.ts +5 -0
  29. package/dist/agent/plan-tool.js +166 -6
  30. package/dist/agent/plan-tool.js.map +1 -1
  31. package/dist/agent/reliability-policy.d.ts +11 -6
  32. package/dist/agent/reliability-policy.js +19 -13
  33. package/dist/agent/reliability-policy.js.map +1 -1
  34. package/dist/agent/request-budget.d.ts +24 -0
  35. package/dist/agent/request-budget.js +59 -0
  36. package/dist/agent/request-budget.js.map +1 -0
  37. package/dist/agent/responder-context.js +2 -2
  38. package/dist/agent/responder-context.js.map +1 -1
  39. package/dist/agent/responder-parent.d.ts +30 -0
  40. package/dist/agent/responder-parent.js +82 -0
  41. package/dist/agent/responder-parent.js.map +1 -0
  42. package/dist/agent/runner.d.ts +14 -1
  43. package/dist/agent/runner.js +759 -211
  44. package/dist/agent/runner.js.map +1 -1
  45. package/dist/agent/scope-context.d.ts +5 -0
  46. package/dist/agent/scope-context.js +7 -1
  47. package/dist/agent/scope-context.js.map +1 -1
  48. package/dist/agent/session-policy.js +1 -0
  49. package/dist/agent/session-policy.js.map +1 -1
  50. package/dist/agent/stop-summary.js +13 -7
  51. package/dist/agent/stop-summary.js.map +1 -1
  52. package/dist/agent/task-analyzer.js +7 -3
  53. package/dist/agent/task-analyzer.js.map +1 -1
  54. package/dist/agent/task-evidence.js +2 -0
  55. package/dist/agent/task-evidence.js.map +1 -1
  56. package/dist/agent/task-sync.d.ts +11 -0
  57. package/dist/agent/task-sync.js +31 -0
  58. package/dist/agent/task-sync.js.map +1 -1
  59. package/dist/agent/tool-call-parser.d.ts +6 -13
  60. package/dist/agent/tool-call-parser.js +186 -82
  61. package/dist/agent/tool-call-parser.js.map +1 -1
  62. package/dist/agent/tool-history.d.ts +8 -2
  63. package/dist/agent/tool-history.js +8 -1
  64. package/dist/agent/tool-history.js.map +1 -1
  65. package/dist/agent/turn-outcome.d.ts +4 -1
  66. package/dist/agent/turn-outcome.js +16 -2
  67. package/dist/agent/turn-outcome.js.map +1 -1
  68. package/dist/app/adapters/agent-event-adapter.js +27 -0
  69. package/dist/app/adapters/agent-event-adapter.js.map +1 -1
  70. package/dist/app/adapters/current-agent-adapter.js +1 -0
  71. package/dist/app/adapters/current-agent-adapter.js.map +1 -1
  72. package/dist/app/adapters/current-jobs-adapter.js +4 -3
  73. package/dist/app/adapters/current-jobs-adapter.js.map +1 -1
  74. package/dist/app/adapters/current-store-adapter.js +4 -3
  75. package/dist/app/adapters/current-store-adapter.js.map +1 -1
  76. package/dist/app/adapters/current-updates-adapter.d.ts +1 -1
  77. package/dist/app/adapters/current-updates-adapter.js +34 -5
  78. package/dist/app/adapters/current-updates-adapter.js.map +1 -1
  79. package/dist/app/adapters/quiet-meta-tools.js +2 -1
  80. package/dist/app/adapters/quiet-meta-tools.js.map +1 -1
  81. package/dist/app/controllers/job-controller.d.ts +4 -3
  82. package/dist/app/controllers/job-controller.js +9 -6
  83. package/dist/app/controllers/job-controller.js.map +1 -1
  84. package/dist/app/controllers/plan-controller.js +14 -0
  85. package/dist/app/controllers/plan-controller.js.map +1 -1
  86. package/dist/app/controllers/responder-settlement.js +2 -2
  87. package/dist/app/controllers/responder-settlement.js.map +1 -1
  88. package/dist/app/controllers/session-compact-helper.d.ts +23 -1
  89. package/dist/app/controllers/session-compact-helper.js +117 -7
  90. package/dist/app/controllers/session-compact-helper.js.map +1 -1
  91. package/dist/app/controllers/session-context-usage.d.ts +24 -0
  92. package/dist/app/controllers/session-context-usage.js +89 -0
  93. package/dist/app/controllers/session-context-usage.js.map +1 -0
  94. package/dist/app/controllers/session-controller.d.ts +17 -17
  95. package/dist/app/controllers/session-controller.js +122 -124
  96. package/dist/app/controllers/session-controller.js.map +1 -1
  97. package/dist/app/controllers/session-prompt-queue.d.ts +3 -0
  98. package/dist/app/controllers/session-prompt-queue.js +20 -1
  99. package/dist/app/controllers/session-prompt-queue.js.map +1 -1
  100. package/dist/app/controllers/session-responder.js +16 -6
  101. package/dist/app/controllers/session-responder.js.map +1 -1
  102. package/dist/app/controllers/session-turn-request.d.ts +18 -0
  103. package/dist/app/controllers/session-turn-request.js +31 -0
  104. package/dist/app/controllers/session-turn-request.js.map +1 -0
  105. package/dist/app/controllers/turn-continuation.d.ts +14 -0
  106. package/dist/app/controllers/turn-continuation.js +46 -0
  107. package/dist/app/controllers/turn-continuation.js.map +1 -0
  108. package/dist/app/events/app-event.d.ts +21 -0
  109. package/dist/app/events/app-event.js +1 -0
  110. package/dist/app/events/app-event.js.map +1 -1
  111. package/dist/app/ports/agent-port.d.ts +7 -0
  112. package/dist/app/ports/jobs-port.d.ts +4 -3
  113. package/dist/app/ports/persistence-port.d.ts +11 -0
  114. package/dist/app/ports/updates-port.d.ts +8 -0
  115. package/dist/attachments/service.js +13 -2
  116. package/dist/attachments/service.js.map +1 -1
  117. package/dist/commands/providers.js +13 -10
  118. package/dist/commands/providers.js.map +1 -1
  119. package/dist/commands/update.d.ts +4 -0
  120. package/dist/commands/update.js +14 -0
  121. package/dist/commands/update.js.map +1 -1
  122. package/dist/llm/adapters/anthropic-tools.d.ts +14 -1
  123. package/dist/llm/adapters/anthropic-tools.js +36 -5
  124. package/dist/llm/adapters/anthropic-tools.js.map +1 -1
  125. package/dist/llm/adapters/gemini-tools.d.ts +3 -1
  126. package/dist/llm/adapters/gemini-tools.js +5 -2
  127. package/dist/llm/adapters/gemini-tools.js.map +1 -1
  128. package/dist/llm/adapters/ollama-tools.js +8 -3
  129. package/dist/llm/adapters/ollama-tools.js.map +1 -1
  130. package/dist/llm/adapters/openai-tools.js +8 -1
  131. package/dist/llm/adapters/openai-tools.js.map +1 -1
  132. package/dist/llm/agentrouter.js +2 -0
  133. package/dist/llm/agentrouter.js.map +1 -1
  134. package/dist/llm/anthropic.d.ts +8 -0
  135. package/dist/llm/anthropic.js +68 -9
  136. package/dist/llm/anthropic.js.map +1 -1
  137. package/dist/llm/aws-mantle.js +60 -12
  138. package/dist/llm/aws-mantle.js.map +1 -1
  139. package/dist/llm/bynara.js +2 -0
  140. package/dist/llm/bynara.js.map +1 -1
  141. package/dist/llm/capabilities.d.ts +7 -0
  142. package/dist/llm/capabilities.js +22 -0
  143. package/dist/llm/capabilities.js.map +1 -1
  144. package/dist/llm/gemini.d.ts +3 -0
  145. package/dist/llm/gemini.js +71 -11
  146. package/dist/llm/gemini.js.map +1 -1
  147. package/dist/llm/groq.d.ts +20 -1
  148. package/dist/llm/groq.js +32 -4
  149. package/dist/llm/groq.js.map +1 -1
  150. package/dist/llm/http.d.ts +29 -0
  151. package/dist/llm/http.js +122 -29
  152. package/dist/llm/http.js.map +1 -1
  153. package/dist/llm/kimchi.js +2 -0
  154. package/dist/llm/kimchi.js.map +1 -1
  155. package/dist/llm/nvidia.js +2 -0
  156. package/dist/llm/nvidia.js.map +1 -1
  157. package/dist/llm/ollama.d.ts +5 -0
  158. package/dist/llm/ollama.js +53 -6
  159. package/dist/llm/ollama.js.map +1 -1
  160. package/dist/llm/openai.js +2 -0
  161. package/dist/llm/openai.js.map +1 -1
  162. package/dist/llm/openrouter.js +2 -0
  163. package/dist/llm/openrouter.js.map +1 -1
  164. package/dist/llm/qwen-cloud.js +2 -0
  165. package/dist/llm/qwen-cloud.js.map +1 -1
  166. package/dist/llm/router.d.ts +16 -0
  167. package/dist/llm/router.js +79 -23
  168. package/dist/llm/router.js.map +1 -1
  169. package/dist/llm/sampling.d.ts +32 -0
  170. package/dist/llm/sampling.js +48 -0
  171. package/dist/llm/sampling.js.map +1 -0
  172. package/dist/llm/stream-progress.d.ts +4 -0
  173. package/dist/llm/stream-progress.js +43 -0
  174. package/dist/llm/stream-progress.js.map +1 -0
  175. package/dist/llm/system-messages.d.ts +29 -0
  176. package/dist/llm/system-messages.js +51 -0
  177. package/dist/llm/system-messages.js.map +1 -0
  178. package/dist/llm/token-usage.d.ts +4 -1
  179. package/dist/llm/token-usage.js +56 -4
  180. package/dist/llm/token-usage.js.map +1 -1
  181. package/dist/llm/tool-protocol.js +30 -0
  182. package/dist/llm/tool-protocol.js.map +1 -1
  183. package/dist/os/process-tree.d.ts +15 -0
  184. package/dist/os/process-tree.js +77 -0
  185. package/dist/os/process-tree.js.map +1 -0
  186. package/dist/prompts/embedded.js +1 -1
  187. package/dist/prompts/embedded.js.map +1 -1
  188. package/dist/prompts/system.agent.md +13 -12
  189. package/dist/repl/prompt-line.d.ts +5 -0
  190. package/dist/repl/prompt-line.js +7 -1
  191. package/dist/repl/prompt-line.js.map +1 -1
  192. package/dist/repl.js +61 -41
  193. package/dist/repl.js.map +1 -1
  194. package/dist/safety/classifier.js +98 -44
  195. package/dist/safety/classifier.js.map +1 -1
  196. package/dist/safety/engagement-policy.d.ts +8 -0
  197. package/dist/safety/engagement-policy.js +52 -7
  198. package/dist/safety/engagement-policy.js.map +1 -1
  199. package/dist/safety/patterns.d.ts +44 -0
  200. package/dist/safety/patterns.js +168 -37
  201. package/dist/safety/patterns.js.map +1 -1
  202. package/dist/store/config.d.ts +9 -1
  203. package/dist/store/config.js +51 -1
  204. package/dist/store/config.js.map +1 -1
  205. package/dist/store/history-index.d.ts +12 -0
  206. package/dist/store/history-index.js +47 -18
  207. package/dist/store/history-index.js.map +1 -1
  208. package/dist/store/history.d.ts +5 -2
  209. package/dist/store/history.js +153 -62
  210. package/dist/store/history.js.map +1 -1
  211. package/dist/store/plan.d.ts +81 -5
  212. package/dist/store/plan.js +406 -46
  213. package/dist/store/plan.js.map +1 -1
  214. package/dist/store/redaction-cache.d.ts +12 -0
  215. package/dist/store/redaction-cache.js +51 -0
  216. package/dist/store/redaction-cache.js.map +1 -0
  217. package/dist/store/responder-settlement.d.ts +5 -1
  218. package/dist/store/responder-settlement.js +42 -30
  219. package/dist/store/responder-settlement.js.map +1 -1
  220. package/dist/store/scope.js +36 -27
  221. package/dist/store/scope.js.map +1 -1
  222. package/dist/store/task-transitions.d.ts +19 -0
  223. package/dist/store/task-transitions.js +46 -0
  224. package/dist/store/task-transitions.js.map +1 -0
  225. package/dist/tools/capabilities.js +33 -18
  226. package/dist/tools/capabilities.js.map +1 -1
  227. package/dist/tools/command-intent.d.ts +24 -0
  228. package/dist/tools/command-intent.js +158 -4
  229. package/dist/tools/command-intent.js.map +1 -1
  230. package/dist/tools/definitions.d.ts +5 -1
  231. package/dist/tools/definitions.js +162 -21
  232. package/dist/tools/definitions.js.map +1 -1
  233. package/dist/tools/fs.d.ts +16 -0
  234. package/dist/tools/fs.js +122 -46
  235. package/dist/tools/fs.js.map +1 -1
  236. package/dist/tools/image.js +1 -1
  237. package/dist/tools/image.js.map +1 -1
  238. package/dist/tools/jobs.d.ts +78 -4
  239. package/dist/tools/jobs.js +542 -115
  240. package/dist/tools/jobs.js.map +1 -1
  241. package/dist/tools/net-ping-sweep.d.ts +3 -1
  242. package/dist/tools/net-ping-sweep.js +64 -26
  243. package/dist/tools/net-ping-sweep.js.map +1 -1
  244. package/dist/tools/nmap-runner.js +5 -2
  245. package/dist/tools/nmap-runner.js.map +1 -1
  246. package/dist/tools/pdf.js +50 -7
  247. package/dist/tools/pdf.js.map +1 -1
  248. package/dist/tools/registry.js +154 -96
  249. package/dist/tools/registry.js.map +1 -1
  250. package/dist/tools/shell.d.ts +24 -2
  251. package/dist/tools/shell.js +113 -28
  252. package/dist/tools/shell.js.map +1 -1
  253. package/dist/tools/tool-types.d.ts +2 -0
  254. package/dist/tools/validate.d.ts +8 -5
  255. package/dist/tools/validate.js +177 -7
  256. package/dist/tools/validate.js.map +1 -1
  257. package/dist/tools/wordlists.js +69 -17
  258. package/dist/tools/wordlists.js.map +1 -1
  259. package/dist/tui/state.d.ts +4 -0
  260. package/dist/tui/state.js +88 -2
  261. package/dist/tui/state.js.map +1 -1
  262. package/dist/tui-v2/actions/keymap.js +3 -8
  263. package/dist/tui-v2/actions/keymap.js.map +1 -1
  264. package/dist/tui-v2/app/App.js +52 -4
  265. package/dist/tui-v2/app/App.js.map +1 -1
  266. package/dist/tui-v2/app/commands/config-commands.js +5 -2
  267. package/dist/tui-v2/app/commands/config-commands.js.map +1 -1
  268. package/dist/tui-v2/app/commands/picker-commands.js +3 -0
  269. package/dist/tui-v2/app/commands/picker-commands.js.map +1 -1
  270. package/dist/tui-v2/app/plan-lifecycle.d.ts +1 -1
  271. package/dist/tui-v2/app/plan-lifecycle.js +2 -1
  272. package/dist/tui-v2/app/plan-lifecycle.js.map +1 -1
  273. package/dist/tui-v2/components/composer/composer-input-box.d.ts +1 -1
  274. package/dist/tui-v2/components/composer/composer-input-box.js +12 -3
  275. package/dist/tui-v2/components/composer/composer-input-box.js.map +1 -1
  276. package/dist/tui-v2/components/jobs/jobs-panel.js +19 -6
  277. package/dist/tui-v2/components/jobs/jobs-panel.js.map +1 -1
  278. package/dist/tui-v2/components/plan/plan-view.js +9 -6
  279. package/dist/tui-v2/components/plan/plan-view.js.map +1 -1
  280. package/dist/tui-v2/components/status/status-line.d.ts +15 -0
  281. package/dist/tui-v2/components/status/status-line.js +33 -25
  282. package/dist/tui-v2/components/status/status-line.js.map +1 -1
  283. package/dist/tui-v2/components/transcript/assistant-message.js +17 -9
  284. package/dist/tui-v2/components/transcript/assistant-message.js.map +1 -1
  285. package/dist/tui-v2/components/transcript/compacted-row.js +49 -22
  286. package/dist/tui-v2/components/transcript/compacted-row.js.map +1 -1
  287. package/dist/tui-v2/components/transcript/intro-card.js +3 -0
  288. package/dist/tui-v2/components/transcript/intro-card.js.map +1 -1
  289. package/dist/tui-v2/components/transcript/thinking-block.js +2 -1
  290. package/dist/tui-v2/components/transcript/thinking-block.js.map +1 -1
  291. package/dist/tui-v2/components/transcript/transcript-view.js +27 -2
  292. package/dist/tui-v2/components/transcript/transcript-view.js.map +1 -1
  293. package/dist/tui-v2/components/transcript/use-transcript-selection.js +57 -6
  294. package/dist/tui-v2/components/transcript/use-transcript-selection.js.map +1 -1
  295. package/dist/tui-v2/composer/composer-editor.js +12 -6
  296. package/dist/tui-v2/composer/composer-editor.js.map +1 -1
  297. package/dist/tui-v2/rendering/incremental-strip.d.ts +11 -0
  298. package/dist/tui-v2/rendering/incremental-strip.js +89 -0
  299. package/dist/tui-v2/rendering/incremental-strip.js.map +1 -0
  300. package/dist/tui-v2/rendering/plan-view.d.ts +12 -0
  301. package/dist/tui-v2/rendering/plan-view.js +71 -2
  302. package/dist/tui-v2/rendering/plan-view.js.map +1 -1
  303. package/dist/tui-v2/rendering/streaming-markdown.d.ts +25 -0
  304. package/dist/tui-v2/rendering/streaming-markdown.js +108 -0
  305. package/dist/tui-v2/rendering/streaming-markdown.js.map +1 -0
  306. package/dist/tui-v2/rendering/thinking-tail.d.ts +5 -0
  307. package/dist/tui-v2/rendering/thinking-tail.js +26 -0
  308. package/dist/tui-v2/rendering/thinking-tail.js.map +1 -0
  309. package/dist/tui-v2/state/transcript-hydrate.js +6 -2
  310. package/dist/tui-v2/state/transcript-hydrate.js.map +1 -1
  311. package/dist/tui-v2/state/transcript-reducer.js +146 -25
  312. package/dist/tui-v2/state/transcript-reducer.js.map +1 -1
  313. package/dist/tui-v2/state/transcript-types.d.ts +6 -0
  314. package/dist/tui-v2/state/transcript-types.js +17 -0
  315. package/dist/tui-v2/state/transcript-types.js.map +1 -1
  316. package/dist/types.d.ts +29 -0
  317. package/dist/types.js.map +1 -1
  318. package/dist/ui/intro-header.d.ts +1 -0
  319. package/dist/ui/intro-header.js +10 -13
  320. package/dist/ui/intro-header.js.map +1 -1
  321. package/dist/ui/markdown.js +9 -2
  322. package/dist/ui/markdown.js.map +1 -1
  323. package/dist/ui/mentions.d.ts +5 -0
  324. package/dist/ui/mentions.js +66 -7
  325. package/dist/ui/mentions.js.map +1 -1
  326. package/dist/ui/thinking.d.ts +5 -1
  327. package/dist/ui/thinking.js +3 -2
  328. package/dist/ui/thinking.js.map +1 -1
  329. package/dist/version.generated.d.ts +2 -2
  330. package/dist/version.generated.js +2 -2
  331. package/package.json +2 -1
@@ -10,10 +10,10 @@ import { jsxs as _jsxs, jsx as _jsx } from "@opentui/react/jsx-runtime";
10
10
  * Wrap budget must follow the chat pane width (not full terminal) so markdown
11
11
  * tables stay inside the column when the plan/task pane is open.
12
12
  */
13
- import { useMemo } from "react";
13
+ import { useMemo, useRef } from "react";
14
14
  import { TextAttributes } from "@opentui/core";
15
15
  import { useTerminalDimensions } from "@opentui/react";
16
- import { renderMarkdownLines } from "../../rendering/render-markdown-lines.js";
16
+ import { EMPTY_MARKDOWN_STREAM_CACHE, renderStreamingMarkdown, } from "../../rendering/streaming-markdown.js";
17
17
  import { SELECTABLE_LINE_STYLE } from "./selectable-line.js";
18
18
  export function AssistantMessage(props) {
19
19
  const { item, theme, contentWidth } = props;
@@ -21,13 +21,21 @@ export function AssistantMessage(props) {
21
21
  // Prefer shell chat width so tables reflow beside the plan pane; fall back
22
22
  // to classic term−chrome when contentWidth is not threaded yet.
23
23
  const wrapWidth = Math.max(20, contentWidth != null ? contentWidth : Math.max(40, termWidth - 8));
24
- const lines = useMemo(() => item.text
25
- ? renderMarkdownLines(item.text, {
26
- width: wrapWidth,
27
- defaultFg: theme.response,
28
- stripOuterIndent: true,
29
- })
30
- : [], [item.text, wrapWidth, theme.response]);
24
+ const cacheRef = useRef(EMPTY_MARKDOWN_STREAM_CACHE);
25
+ const lines = useMemo(() => {
26
+ const rendered = renderStreamingMarkdown({
27
+ text: item.text,
28
+ streaming: item.streaming,
29
+ options: {
30
+ width: wrapWidth,
31
+ defaultFg: theme.response,
32
+ stripOuterIndent: true,
33
+ },
34
+ cache: cacheRef.current,
35
+ });
36
+ cacheRef.current = rendered.cache;
37
+ return rendered.lines;
38
+ }, [item.text, item.streaming, wrapWidth, theme.response]);
31
39
  // Hide fence-only / empty streaming rows so raw tool JSON never flashes as
32
40
  // a hollow "◆ Response …" before tool cards land.
33
41
  if (!item.text.trim() && item.streaming)
@@ -1 +1 @@
1
- {"version":3,"file":"assistant-message.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/assistant-message.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,UAAU,gBAAgB,CAAC,KAKhC;IACC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAC5C,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,qBAAqB,EAAE,CAAC;IACrD,2EAA2E;IAC3E,gEAAgE;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,EAAE,EACF,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,GAAG,CAAC,CAAC,CAClE,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CACH,IAAI,CAAC,IAAI;QACP,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE;YAC7B,KAAK,EAAE,SAAS;YAChB,SAAS,EAAE,KAAK,CAAC,QAAQ;YACzB,gBAAgB,EAAE,IAAI;SACvB,CAAC;QACJ,CAAC,CAAC,EAAE,EACR,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,CACvC,CAAC;IAEF,2EAA2E;IAC3E,kDAAkD;IAClD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEzD,OAAO,CACL,eAAK,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,aAClF,gBACE,UAAU,QACV,KAAK,EAAE;oBACL,EAAE,EAAE,KAAK,CAAC,OAAO;oBACjB,UAAU,EAAE,cAAc,CAAC,IAAI;iBAChC,gCAEU,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAChC,EAEP,eAAM,OAAO,EAAC,GAAG,EAAC,UAAU,SAAG,EAC9B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAClB,cAAK,KAAK,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,YACpF,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAKzB,eAEE,OAAO,EAAE,OAAO,IAAI,GAAG,EACvB,UAAU,QACV,QAAQ,EAAC,MAAM;oBACf,qEAAqE;oBACrE,KAAK,EAAE,qBAAqB,IALvB,CAAC,CAMN,CACH,CAAC,GACE,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"assistant-message.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/assistant-message.tsx"],"names":[],"mappings":"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"}
@@ -1,14 +1,16 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
1
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "@opentui/react/jsx-runtime";
2
2
  /** @jsxImportSource @opentui/react */
3
3
  /**
4
4
  * Compacted-context card — compact summary strip; full memory opens in the
5
5
  * pager modal (same as tool OUTPUT), not an in-chat mega-expand.
6
6
  */
7
- import { useMemo } from "react";
7
+ import { Fragment, useMemo, useRef } from "react";
8
8
  import { TextAttributes } from "@opentui/core";
9
9
  import { useTerminalDimensions } from "@opentui/react";
10
+ import { compactionTokenLabel } from "../../state/transcript-types.js";
10
11
  import { displayCompactSummary } from "../../state/transcript-hydrate.js";
11
- import { renderMarkdownLines } from "../../rendering/render-markdown-lines.js";
12
+ import { EMPTY_MARKDOWN_STREAM_CACHE, renderStreamingMarkdown, } from "../../rendering/streaming-markdown.js";
13
+ import { liveCompactionHeadTail } from "../../rendering/thinking-tail.js";
12
14
  import { useClickWithoutDrag } from "./use-click-without-drag.js";
13
15
  const PREVIEW_LINES = 4;
14
16
  export function CompactedRow(props) {
@@ -17,23 +19,44 @@ export function CompactedRow(props) {
17
19
  const wrapWidth = Math.max(20, contentWidth != null
18
20
  ? Math.max(20, contentWidth - 4)
19
21
  : Math.max(40, termWidth - 10));
20
- const summary = displayCompactSummary(item.summary);
21
- const allLines = useMemo(() => renderMarkdownLines(summary, {
22
- width: wrapWidth,
23
- defaultFg: theme.foreground,
24
- stripOuterIndent: true,
25
- }), [summary, wrapWidth, theme.foreground]);
26
- const preview = allLines.slice(0, PREVIEW_LINES);
27
- const hidden = Math.max(0, allLines.length - PREVIEW_LINES);
28
- const tokenLabel = item.beforeTokens > 0 || item.afterTokens > 0
29
- ? `~${item.beforeTokens.toLocaleString()} → ~${item.afterTokens.toLocaleString()} tokens`
30
- : "";
22
+ const fullSummary = item.streaming
23
+ ? item.summary
24
+ : displayCompactSummary(item.summary);
25
+ const visibleSummary = item.streaming
26
+ ? liveCompactionHeadTail(fullSummary)
27
+ : fullSummary;
28
+ const cacheRef = useRef(EMPTY_MARKDOWN_STREAM_CACHE);
29
+ const allLines = useMemo(() => {
30
+ const rendered = renderStreamingMarkdown({
31
+ text: visibleSummary,
32
+ streaming: item.streaming === true,
33
+ options: {
34
+ width: wrapWidth,
35
+ defaultFg: theme.foreground,
36
+ stripOuterIndent: true,
37
+ },
38
+ cache: cacheRef.current,
39
+ });
40
+ cacheRef.current = rendered.cache;
41
+ return rendered.lines;
42
+ }, [visibleSummary, item.streaming, wrapWidth, theme.foreground]);
43
+ const showLiveGap = item.streaming === true && allLines.length > 10;
44
+ const preview = item.streaming
45
+ ? showLiveGap
46
+ ? [...allLines.slice(0, PREVIEW_LINES), ...allLines.slice(-6)]
47
+ : allLines
48
+ : allLines.slice(0, PREVIEW_LINES);
49
+ const hidden = item.streaming
50
+ ? Math.max(0, allLines.length - preview.length)
51
+ : Math.max(0, allLines.length - PREVIEW_LINES);
52
+ const tokenLabel = compactionTokenLabel(item);
31
53
  const openPager = () => {
32
- const title = tokenLabel
33
- ? `Compacted context · ${tokenLabel}`
34
- : "Compacted context";
35
- // Compacted memory is always markdown-friendly — start formatted.
36
- services.overlay.openPager(title, summary, undefined, undefined, "force");
54
+ const title = item.streaming
55
+ ? "Compacted context · streaming"
56
+ : tokenLabel
57
+ ? `Compacted context · ${tokenLabel}`
58
+ : "Compacted context";
59
+ services.overlay.openPager(title, fullSummary, undefined, undefined, "force");
37
60
  };
38
61
  const click = useClickWithoutDrag(openPager);
39
62
  const borderFg = theme.activity;
@@ -52,11 +75,11 @@ export function CompactedRow(props) {
52
75
  width: "100%",
53
76
  paddingTop: 0,
54
77
  paddingBottom: 0,
55
- }, children: [_jsx("text", { selectable: true, style: { fg: borderFg, attributes: TextAttributes.BOLD }, children: "\u2726 Compacted context" }), _jsx("text", { content: " ", selectable: true }), _jsx("text", { selectable: true, style: {
78
+ }, children: [_jsxs("text", { selectable: true, style: { fg: borderFg, attributes: TextAttributes.BOLD }, children: ["\u2726 Compacted context", item.streaming ? " …" : ""] }), _jsx("text", { content: " ", selectable: true }), _jsx("text", { selectable: true, style: {
56
79
  fg: borderFg,
57
80
  bg: theme.chip,
58
81
  attributes: TextAttributes.BOLD,
59
- }, children: " memory " }), tokenLabel ? (_jsxs(_Fragment, { children: [_jsx("text", { content: " ", selectable: true }), _jsx("text", { selectable: true, style: { fg: theme.muted, attributes: TextAttributes.DIM }, children: tokenLabel })] })) : null] }), preview.length > 0 ? (_jsxs("box", { style: {
82
+ }, children: " memory " }), tokenLabel ? (_jsxs(_Fragment, { children: [_jsx("text", { content: " ", selectable: true }), _jsx("text", { selectable: true, style: { fg: theme.muted, attributes: TextAttributes.DIM }, children: tokenLabel })] })) : null] }), preview.length > 0 || item.streaming ? (_jsxs("box", { style: {
60
83
  flexDirection: "column",
61
84
  width: "100%",
62
85
  marginTop: 0,
@@ -65,6 +88,10 @@ export function CompactedRow(props) {
65
88
  fg: theme.white,
66
89
  bg: theme.chipTeal,
67
90
  attributes: TextAttributes.BOLD,
68
- }, children: " SUMMARY " }), preview.map((content, i) => (_jsxs("box", { style: { flexDirection: "row", width: "100%" }, children: [_jsx("text", { selectable: true, style: { fg: theme.muted, flexShrink: 0 }, children: "│ " }), _jsx("text", { content: content ?? " ", selectable: true, style: { width: "100%", flexGrow: 1 } })] }, `l-${i}`))), hidden > 0 ? (_jsxs("text", { selectable: true, style: { width: "100%" }, children: [_jsx("span", { style: { fg: theme.muted }, children: "│ " }), _jsx("span", { style: { fg: theme.muted, attributes: TextAttributes.DIM }, children: `··· ${hidden} more lines ···` })] })) : null] })) : null, _jsxs("box", { style: { flexDirection: "row", width: "100%", marginTop: 0 }, children: [_jsx("text", { selectable: false, style: { fg: theme.cyan }, children: "› " }), _jsx("text", { selectable: false, style: { fg: theme.cyan, attributes: TextAttributes.DIM }, children: "click or Ctrl+O to open full memory in pager" })] })] }));
91
+ }, children: item.streaming ? " STREAMING MARKDOWN " : " SUMMARY " }), preview.length === 0 && item.streaming ? (_jsx("text", { selectable: true, style: { fg: theme.muted }, children: "\u2502 Building compacted memory\u2026" })) : null, preview.map((content, i) => (_jsxs(Fragment, { children: [showLiveGap && i === PREVIEW_LINES ? (_jsxs("text", { selectable: true, style: { width: "100%" }, children: [_jsx("span", { style: { fg: theme.muted }, children: "│ " }), _jsx("span", { style: { fg: theme.muted, attributes: TextAttributes.DIM }, children: `··· ${hidden} streaming lines omitted ···` })] })) : null, _jsxs("box", { style: { flexDirection: "row", width: "100%" }, children: [_jsx("text", { selectable: true, style: { fg: theme.muted, flexShrink: 0 }, children: "│ " }), _jsx("text", { content: content ?? " ", selectable: true, wrapMode: "none", style: { width: "100%", flexGrow: 1 } })] })] }, `l-${i}`))), !item.streaming && hidden > 0 ? (_jsxs("text", { selectable: true, style: { width: "100%" }, children: [_jsx("span", { style: { fg: theme.muted }, children: "│ " }), _jsx("span", { style: { fg: theme.muted, attributes: TextAttributes.DIM }, children: `··· ${hidden} more lines ···` })] })) : null, item.error ? (_jsx("text", { selectable: true, style: { fg: theme.diffDel }, children: `Compaction stopped: ${item.error}` })) : null] })) : item.error ? (_jsx("text", { selectable: true, style: { fg: theme.diffDel }, children: `Compaction stopped: ${item.error}` })) : null, _jsxs("box", { style: { flexDirection: "row", width: "100%", marginTop: 0 }, children: [_jsx("text", { selectable: false, style: { fg: theme.cyan }, children: "› " }), _jsx("text", { selectable: false, style: { fg: theme.cyan, attributes: TextAttributes.DIM }, children: item.streaming
92
+ ? "rendering bounded top + live tail · click for current memory"
93
+ : item.error
94
+ ? "original context retained · no compacted memory was applied"
95
+ : "click or Ctrl+O to open full memory in pager" })] })] }));
69
96
  }
70
97
  //# sourceMappingURL=compacted-row.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compacted-row.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/compacted-row.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compacted-row.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/compacted-row.tsx"],"names":[],"mappings":"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"}
@@ -34,6 +34,7 @@ export function IntroCard(props) {
34
34
  // composer meta line, even before the session selection is populated.
35
35
  const provider = session.provider ?? cfg.defaultProvider;
36
36
  const model = session.model ?? cfg.defaultModel;
37
+ const variant = cfg.thinking.enabled ? cfg.thinking.effort : "off";
37
38
  const lines = useMemo(() => renderIntroHeaderLines({
38
39
  width,
39
40
  version,
@@ -42,6 +43,7 @@ export function IntroCard(props) {
42
43
  model,
43
44
  permissions,
44
45
  workdir,
46
+ variant,
45
47
  }).map((line) => ansiToStyledText(line.length === 0 ? " " : line)), [
46
48
  width,
47
49
  version,
@@ -50,6 +52,7 @@ export function IntroCard(props) {
50
52
  model,
51
53
  permissions,
52
54
  workdir,
55
+ variant,
53
56
  ]);
54
57
  return (_jsx("box", { id: "intro-card", style: { flexDirection: "column", width: "100%", marginBottom: 1 }, children: lines.map((content, i) => (_jsx("text", { content: content, selectable: false }, i))) }));
55
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"intro-card.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/intro-card.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAkB,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGlC,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAS7C,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,OAAO,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC7C,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,qBAAqB,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;IAEvD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5C,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,MAAM,WAAW,GAAG,GAAG,CAAC,WAAW,IAAI,SAAS,CAAC;IACjD,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;IAE1C,4EAA4E;IAC5E,wEAAwE;IACxE,sEAAsE;IACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,GAAG,CAAC,eAAe,CAAC;IACzD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,GAAG,CAAC,YAAY,CAAC;IAEhD,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CACH,sBAAsB,CAAC;QACrB,KAAK;QACL,OAAO;QACP,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,QAAQ;QACR,KAAK;QACL,WAAW;QACX,OAAO;KACR,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EACpE;QACE,KAAK;QACL,OAAO;QACP,OAAO,CAAC,IAAI;QACZ,QAAQ;QACR,KAAK;QACL,WAAW;QACX,OAAO;KACR,CACF,CAAC;IAEF,OAAO,CACL,cACE,EAAE,EAAC,YAAY,EACf,KAAK,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,YAEjE,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CACzB,eAAc,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,IAAtC,CAAC,CAAyC,CACtD,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"intro-card.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/intro-card.tsx"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
2
2
  import { TextAttributes } from "@opentui/core";
3
+ import { liveThinkingTail } from "../../rendering/thinking-tail.js";
3
4
  export function ThinkingBlock(props) {
4
5
  const { item, theme, expanded, onToggle } = props;
5
6
  // Always show live content while streaming; after finalize, honor toggle.
@@ -24,6 +25,6 @@ export function ThinkingBlock(props) {
24
25
  attributes: TextAttributes.ITALIC,
25
26
  // Full pane width so drag-select does not require aiming at glyphs.
26
27
  width: "100%",
27
- }, children: item.content }) })) : null] }));
28
+ }, children: item.streaming ? liveThinkingTail(item.content) : item.content }) })) : null] }));
28
29
  }
29
30
  //# sourceMappingURL=thinking-block.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"thinking-block.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/thinking-block.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAE,cAAc,EAAmB,MAAM,eAAe,CAAC;AAKhE,MAAM,UAAU,aAAa,CAAC,KAK7B;IACC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAClD,0EAA0E;IAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC;IAC5C,MAAM,SAAS,GAAG,CAAC,KAAiB,EAAQ,EAAE;QAC5C,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,yDAAyD;QACzD,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,QAAQ,EAAE,CAAC;IACb,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS;QAC3B,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,QAAQ;YACR,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,sCAAsC,CAAC;IAE7C,OAAO,CACL,eAAK,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,aAClF,cAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,YACxD,eACE,UAAU,QACV,KAAK,EAAE;wBACL,EAAE,EAAE,KAAK,CAAC,QAAQ;wBAClB,UAAU,EAAE,cAAc,CAAC,MAAM;qBAClC,YAEA,MAAM,GACF,GACH,EACL,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAC1B,cAAK,KAAK,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,YACpE,eACE,UAAU,QACV,KAAK,EAAE;wBACL,EAAE,EAAE,KAAK,CAAC,QAAQ;wBAClB,UAAU,EAAE,cAAc,CAAC,MAAM;wBACjC,oEAAoE;wBACpE,KAAK,EAAE,MAAM;qBACd,YAEA,IAAI,CAAC,OAAO,GACR,GACH,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"thinking-block.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/thinking-block.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAE,cAAc,EAAmB,MAAM,eAAe,CAAC;AAIhE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,UAAU,aAAa,CAAC,KAK7B;IACC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAClD,0EAA0E;IAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC;IAC5C,MAAM,SAAS,GAAG,CAAC,KAAiB,EAAQ,EAAE;QAC5C,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,yDAAyD;QACzD,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,QAAQ,EAAE,CAAC;IACb,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS;QAC3B,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,QAAQ;YACR,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,sCAAsC,CAAC;IAE7C,OAAO,CACL,eAAK,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,aAClF,cAAK,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,YACxD,eACE,UAAU,QACV,KAAK,EAAE;wBACL,EAAE,EAAE,KAAK,CAAC,QAAQ;wBAClB,UAAU,EAAE,cAAc,CAAC,MAAM;qBAClC,YAEA,MAAM,GACF,GACH,EACL,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAC1B,cAAK,KAAK,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,YACpE,eACE,UAAU,QACV,KAAK,EAAE;wBACL,EAAE,EAAE,KAAK,CAAC,QAAQ;wBAClB,UAAU,EAAE,cAAc,CAAC,MAAM;wBACjC,oEAAoE;wBACpE,KAAK,EAAE,MAAM;qBACd,YAEA,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,GAC1D,GACH,CACP,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC"}
@@ -10,7 +10,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "@opentui/react/jsx-runtime";
10
10
  * content changes as a belt-and-suspenders for layout races.
11
11
  */
12
12
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
13
- import { useKeyboard, useTerminalDimensions } from "@opentui/react";
13
+ import { useKeyboard, useRenderer, useTerminalDimensions } from "@opentui/react";
14
14
  import { chordFromKeyEvent } from "../../actions/chord-from-key.js";
15
15
  import { useTranscriptState } from "../../state/use-transcript-store.js";
16
16
  import { useSessionState } from "../../state/use-session-state.js";
@@ -22,6 +22,7 @@ import { notify } from "../../notify.js";
22
22
  import { IntroCard } from "./intro-card.js";
23
23
  import { EMPTY_SCROLL_METRICS, publishTranscriptScrollMetrics, registerTranscriptAutoScroll, registerTranscriptJumpHandlers, registerTranscriptScrollPort, } from "./transcript-scroll-port.js";
24
24
  import { useNativeSelectionCopy } from "./use-native-selection-copy.js";
25
+ import { useTranscriptSelection } from "./use-transcript-selection.js";
25
26
  /** Hide OpenTUI's native scrollbar chrome. */
26
27
  const HIDDEN_SCROLLBARS = {
27
28
  visible: false,
@@ -103,7 +104,7 @@ export function TranscriptView(props) {
103
104
  parts.push(`n:${item.id}:${item.text.length}`);
104
105
  break;
105
106
  case "compacted":
106
- parts.push(`c:${item.id}`);
107
+ parts.push(`c:${item.id}:${item.summary.length}:${item.streaming ? 1 : 0}:${item.error?.length ?? 0}`);
107
108
  break;
108
109
  default:
109
110
  parts.push(id);
@@ -129,6 +130,16 @@ export function TranscriptView(props) {
129
130
  const searchActive = query.trim().length > 0;
130
131
  // Drag-select on response/thinking text → OSC 52 copy on release.
131
132
  useNativeSelectionCopy(services);
133
+ const renderer = useRenderer();
134
+ // Keyboard selection (select-all / copy / clear) goes through the pane
135
+ // selection controller; mouse drag stays on OpenTUI's native selection.
136
+ const selection = useTranscriptSelection({
137
+ services,
138
+ state,
139
+ spool: services.session.spool,
140
+ scrollRef,
141
+ focused,
142
+ });
132
143
  /**
133
144
  * Click/touch in the chat pane: claim keyboard so ↑/↓ scroll the transcript
134
145
  * instead of walking prompt history. Child handlers (YOU bubble, tool card)
@@ -462,6 +473,20 @@ export function TranscriptView(props) {
462
473
  openSearch();
463
474
  return;
464
475
  }
476
+ // Selection chords first: Esc only lands here when there is a selection to
477
+ // clear, so the global cancel ladder still sees every other Esc.
478
+ if (selection.handleKey(key, chord))
479
+ return;
480
+ if (chord === "escape" && renderer.hasSelection) {
481
+ key.preventDefault();
482
+ try {
483
+ renderer.clearSelection();
484
+ }
485
+ catch {
486
+ /* renderer already torn down */
487
+ }
488
+ return;
489
+ }
465
490
  // Arrow / page scroll when transcript owns focus.
466
491
  if (services.focus.activeContext() === "transcript") {
467
492
  const sb = scrollRef.current;
@@ -1 +1 @@
1
- {"version":3,"file":"transcript-view.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/transcript-view.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transcript-view.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/transcript-view.tsx"],"names":[],"mappings":"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"}
@@ -10,13 +10,29 @@ export function useTranscriptSelection(options) {
10
10
  const documentRef = useRef({ blocks: [] });
11
11
  const pointerRef = useRef(undefined);
12
12
  const clickRef = useRef(undefined);
13
- useEffect(() => {
14
- const document = extractTranscriptSemanticDocument(state, {
15
- toolOutput: (item) => visibleToolOutput(state, spool, item.id, item.toolCallId),
13
+ const stateRef = useRef(state);
14
+ const builtForRef = useRef(undefined);
15
+ stateRef.current = state;
16
+ // Bounded updates: extracting the semantic document walks the whole
17
+ // transcript, so it is rebuilt on interaction (or while a selection is live)
18
+ // instead of on every streaming delta.
19
+ function ensureDocument() {
20
+ const current = stateRef.current;
21
+ if (builtForRef.current === current)
22
+ return documentRef.current;
23
+ const document = extractTranscriptSemanticDocument(current, {
24
+ toolOutput: (item) => visibleToolOutput(current, spool, item.id, item.toolCallId),
16
25
  });
26
+ builtForRef.current = current;
17
27
  documentRef.current = document;
18
28
  services.selection.setDocument("transcript", document);
19
- }, [services.selection, spool, state]);
29
+ return document;
30
+ }
31
+ useEffect(() => {
32
+ if (!services.selection.hasSelection())
33
+ return;
34
+ ensureDocument();
35
+ });
20
36
  useEffect(() => {
21
37
  const scroll = scrollRef.current;
22
38
  if (!scroll)
@@ -36,7 +52,7 @@ export function useTranscriptSelection(options) {
36
52
  // start a selection drag that would swallow open-modal handlers.
37
53
  if (event.defaultPrevented)
38
54
  return;
39
- const anchor = anchorAtPointer(documentRef.current, scrollRef.current, event.x, event.y);
55
+ const anchor = anchorAtPointer(ensureDocument(), scrollRef.current, event.x, event.y);
40
56
  if (!anchor)
41
57
  return;
42
58
  const clicks = nextClickCount(clickRef.current, anchor);
@@ -80,8 +96,43 @@ export function useTranscriptSelection(options) {
80
96
  if (!focused || services.focus.activeContext() !== "transcript")
81
97
  return false;
82
98
  const action = services.router.resolve(chord, "transcript");
83
- if (!action || !services.selection.handleAction(action, "transcript"))
99
+ if (!action || !action.startsWith("selection."))
84
100
  return false;
101
+ // Esc must fall through to the global cancel ladder unless there is
102
+ // actually a selection to clear.
103
+ if (action === "selection.clear" && !services.selection.hasSelection()) {
104
+ return false;
105
+ }
106
+ ensureDocument();
107
+ if (action === "selection.copy") {
108
+ key.preventDefault();
109
+ void services.selection.copy().then((result) => {
110
+ if (result.status === "copied") {
111
+ services.toast.success("Copied to clipboard", {
112
+ key: "clipboard",
113
+ durationMs: 1600,
114
+ });
115
+ }
116
+ else if (result.status === "empty") {
117
+ services.toast.info("Nothing selected", {
118
+ key: "clipboard",
119
+ durationMs: 1400,
120
+ });
121
+ }
122
+ else {
123
+ services.toast.error("Copy failed", { key: "clipboard", durationMs: 2200 });
124
+ }
125
+ });
126
+ return true;
127
+ }
128
+ if (!services.selection.handleAction(action, "transcript"))
129
+ return false;
130
+ if (action === "selection.select-all") {
131
+ services.toast.info("Transcript selected · Ctrl+Shift+C to copy", {
132
+ key: "selection",
133
+ durationMs: 1800,
134
+ });
135
+ }
85
136
  key.preventDefault();
86
137
  return true;
87
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"use-transcript-selection.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/use-transcript-selection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-transcript-selection.js","sourceRoot":"","sources":["../../../../src/tui-v2/components/transcript/use-transcript-selection.ts"],"names":[],"mappings":"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"}
@@ -221,9 +221,10 @@ export function ComposerEditor(props) {
221
221
  setPasteChips([]);
222
222
  return;
223
223
  }
224
- // Prompt "❯ " (2) + horizontal padding (2) leave this for wrapped text.
225
- const wrapWidth = Math.max(10, props.width - 4);
226
- const nextRows = countComposerVisualLines(editor.plainText, wrapWidth);
224
+ // Prompt (2) + borders (2) + horizontal padding (2) leave this for text.
225
+ const wrapWidth = Math.max(10, props.width - 6);
226
+ const estimatedRows = countComposerVisualLines(editor.plainText, wrapWidth);
227
+ const nextRows = measureComposerLines(editor, estimatedRows);
227
228
  setContentRows((current) => (current === nextRows ? current : nextRows));
228
229
  const nextChips = pasteRegistry.current.activeIn(editor.plainText);
229
230
  setPasteChips((current) => samePastePlaceholderEntries(current, nextChips) ? current : nextChips);
@@ -641,9 +642,11 @@ export function ComposerEditor(props) {
641
642
  return;
642
643
  handleMenuOrComposerKey(key);
643
644
  }
644
- // Re-measure soft-wrap rows when the terminal width changes.
645
+ // Re-measure once immediately and once after native layout on resize.
645
646
  useEffect(() => {
646
647
  syncContentRows();
648
+ const frame = requestAnimationFrame(syncContentRows);
649
+ return () => cancelAnimationFrame(frame);
647
650
  // eslint-disable-next-line react-hooks/exhaustive-deps -- width-only reflow
648
651
  }, [props.width]);
649
652
  const inputWidth = Math.max(20, props.width);
@@ -672,9 +675,12 @@ export function ComposerEditor(props) {
672
675
  }
673
676
  acceptSuggestion({ index });
674
677
  }
675
- return (_jsxs("box", { style: { flexDirection: "column", width: "100%", flexShrink: 0 }, onMouseScroll: onComposerWheel, children: [_jsx(CompletionMenuView, { menu: menu, selected: selected, theme: theme, width: inputWidth, maxRows: props.maxSuggestions ?? 10, onHoverIndex: hoverCompletion, onActivateIndex: activateCompletion }), _jsx(PasteChipRow, { entries: pasteChips, theme: theme, width: inputWidth, onExpand: expandPasteChip }), _jsx(ComposerInputBox, { theme: theme, editorRef: editorRef, focused: shouldOwnKeyboard, running: props.running, textRows: textRows, boxHeight: boxHeight, metaShown: metaShown, chromeFg: chromeFg, keyBindings: textareaKeyBindings, onMouseDown: focusComposer, onMouseScroll: onComposerWheel, onSubmit: submit, onContentChange: () => {
678
+ return (_jsxs("box", { style: { flexDirection: "column", width: "100%", flexShrink: 0 }, onMouseScroll: onComposerWheel, children: [_jsx(CompletionMenuView, { menu: menu, selected: selected, theme: theme, width: inputWidth, maxRows: props.maxSuggestions ?? 10, onHoverIndex: hoverCompletion, onActivateIndex: activateCompletion }), _jsx(PasteChipRow, { entries: pasteChips, theme: theme, width: inputWidth, onExpand: expandPasteChip }), _jsx(ComposerInputBox, { theme: theme, editorRef: editorRef, focused: shouldOwnKeyboard, running: props.running, width: inputWidth, boxHeight: boxHeight, metaShown: metaShown, chromeFg: chromeFg, keyBindings: textareaKeyBindings, onMouseDown: focusComposer, onMouseScroll: onComposerWheel, onSubmit: submit, onContentChange: () => {
679
+ refreshMenu();
680
+ queueMicrotask(syncContentRows);
681
+ }, onCursorChange: () => {
676
682
  refreshMenu();
677
683
  syncContentRows();
678
- }, onCursorChange: refreshMenu, onKeyDown: onKeyDown })] }));
684
+ }, onKeyDown: onKeyDown })] }));
679
685
  }
680
686
  //# sourceMappingURL=composer-editor.js.map