@adecore/agents-react 0.31.11 → 0.32.0

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 (404) hide show
  1. package/dist/agents/AccountDot.js +57 -6
  2. package/dist/agents/AgentIcon.js +88 -12
  3. package/dist/agents/ModelOptionControl.js +153 -18
  4. package/dist/agents/ProviderLogo.js +49 -4
  5. package/dist/agents/account-limits.js +17 -14
  6. package/dist/agents/accounts.js +99 -67
  7. package/dist/agents/agent-marks.js +5 -3
  8. package/dist/agents/model-name.js +42 -31
  9. package/dist/agents/model-options.js +8 -8
  10. package/dist/agents/model-requirement.js +17 -14
  11. package/dist/agents/option-words.d.ts +7 -0
  12. package/dist/agents/option-words.js +35 -0
  13. package/dist/agents/provider-paths.js +6 -6
  14. package/dist/agents/status-look.js +32 -12
  15. package/dist/chat/account-choice.d.ts +13 -0
  16. package/dist/chat/account-choice.js +90 -20
  17. package/dist/chat/actions.js +126 -59
  18. package/dist/chat/activity.js +5 -5
  19. package/dist/chat/attachments.js +74 -53
  20. package/dist/chat/bookmarks.js +58 -48
  21. package/dist/chat/chat-client.js +344 -263
  22. package/dist/chat/chat-references.js +3 -3
  23. package/dist/chat/composer-effort.d.ts +5 -0
  24. package/dist/chat/composer-effort.js +26 -0
  25. package/dist/chat/composer-send.js +13 -13
  26. package/dist/chat/drafts.js +115 -79
  27. package/dist/chat/forks.js +81 -24
  28. package/dist/chat/guards.js +15 -43
  29. package/dist/chat/index.d.ts +3 -1
  30. package/dist/chat/index.js +3 -2
  31. package/dist/chat/logic/ansi.js +170 -167
  32. package/dist/chat/logic/answers.js +2 -2
  33. package/dist/chat/logic/bookmarks.js +19 -19
  34. package/dist/chat/logic/command-looks.js +138 -96
  35. package/dist/chat/logic/context-usage.js +13 -9
  36. package/dist/chat/logic/continue-after-stop.js +15 -19
  37. package/dist/chat/logic/effort.d.ts +14 -0
  38. package/dist/chat/logic/effort.js +34 -0
  39. package/dist/chat/logic/embedded-code.js +387 -326
  40. package/dist/chat/logic/fork.js +134 -110
  41. package/dist/chat/logic/generated-image.js +54 -23
  42. package/dist/chat/logic/goal.js +28 -20
  43. package/dist/chat/logic/handback.js +6 -6
  44. package/dist/chat/logic/json.js +2 -2
  45. package/dist/chat/logic/limit.js +46 -30
  46. package/dist/chat/logic/picker-entries.d.ts +5 -3
  47. package/dist/chat/logic/picker-entries.js +83 -43
  48. package/dist/chat/logic/resume-compaction.d.ts +14 -1
  49. package/dist/chat/logic/resume-compaction.js +93 -24
  50. package/dist/chat/logic/scrubber.js +188 -136
  51. package/dist/chat/logic/thought.js +13 -16
  52. package/dist/chat/logic/thread-cards.js +60 -48
  53. package/dist/chat/logic/timeline-copy.js +30 -38
  54. package/dist/chat/logic/timeline-target.js +92 -63
  55. package/dist/chat/logic/timeline.js +499 -355
  56. package/dist/chat/logic/tool-catalog.js +54 -34
  57. package/dist/chat/logic/tools.js +106 -82
  58. package/dist/chat/logic/visual-height.js +18 -18
  59. package/dist/chat/logic/visual-viewport.js +6 -3
  60. package/dist/chat/logic/welcome.js +9 -9
  61. package/dist/chat/logic/workflow.js +45 -34
  62. package/dist/chat/mentions.js +149 -109
  63. package/dist/chat/persisted-json.js +51 -54
  64. package/dist/chat/preferences.d.ts +4 -0
  65. package/dist/chat/preferences.js +162 -84
  66. package/dist/chat/prompt-hold.js +9 -9
  67. package/dist/chat/quote.js +21 -30
  68. package/dist/chat/reading-width.js +12 -10
  69. package/dist/chat/recent-messages.js +34 -21
  70. package/dist/chat/resume-compaction-dismissals.js +25 -5
  71. package/dist/chat/runtime-modes.js +3 -3
  72. package/dist/chat/send-key.js +11 -7
  73. package/dist/chat/stash.js +89 -69
  74. package/dist/chat/subagent-conversation.js +181 -139
  75. package/dist/chat/subagent-list.js +65 -67
  76. package/dist/chat/subagent-support.js +12 -7
  77. package/dist/chat/subagent-view.js +132 -44
  78. package/dist/chat/thumbnails.js +88 -60
  79. package/dist/chat/timeline-flash.js +24 -12
  80. package/dist/chat/timeline-scroll.js +116 -86
  81. package/dist/chat/ui/AccountPill.js +126 -15
  82. package/dist/chat/ui/AnsiOutput.js +62 -6
  83. package/dist/chat/ui/BookmarkMarker.js +231 -41
  84. package/dist/chat/ui/BookmarkSubmenu.js +165 -18
  85. package/dist/chat/ui/ChatActivity.js +649 -70
  86. package/dist/chat/ui/ChatReferenceChip.js +104 -9
  87. package/dist/chat/ui/CodeBlock.js +132 -58
  88. package/dist/chat/ui/Composer.js +866 -132
  89. package/dist/chat/ui/ComposerInput.js +309 -120
  90. package/dist/chat/ui/DiffPool.js +75 -14
  91. package/dist/chat/ui/EditDiff.js +160 -21
  92. package/dist/chat/ui/FadingWords.js +32 -3
  93. package/dist/chat/ui/GoalDock.js +235 -42
  94. package/dist/chat/ui/ImageView.js +617 -61
  95. package/dist/chat/ui/LimitState.js +446 -72
  96. package/dist/chat/ui/Markdown.js +991 -173
  97. package/dist/chat/ui/MermaidBlock.js +238 -68
  98. package/dist/chat/ui/MessageActions.js +251 -39
  99. package/dist/chat/ui/ModelMarks.js +55 -5
  100. package/dist/chat/ui/Pickers.js +664 -113
  101. package/dist/chat/ui/PromptComposer.js +281 -51
  102. package/dist/chat/ui/QuoteButton.js +151 -57
  103. package/dist/chat/ui/ResumeCompactionDock.d.ts +6 -2
  104. package/dist/chat/ui/ResumeCompactionDock.js +141 -6
  105. package/dist/chat/ui/RowTime.js +59 -5
  106. package/dist/chat/ui/RunSettings.js +1744 -154
  107. package/dist/chat/ui/Scrubber.js +517 -88
  108. package/dist/chat/ui/ShellCommand.js +183 -107
  109. package/dist/chat/ui/SubagentControls.js +212 -24
  110. package/dist/chat/ui/SubagentInfo.js +170 -13
  111. package/dist/chat/ui/SubagentStopButton.js +115 -24
  112. package/dist/chat/ui/SubagentTimeline.js +357 -91
  113. package/dist/chat/ui/Timeline.js +988 -476
  114. package/dist/chat/ui/TimelineMenu.js +552 -37
  115. package/dist/chat/ui/UnifiedDiff.js +234 -27
  116. package/dist/chat/ui/UploadThumb.js +37 -7
  117. package/dist/chat/ui/VisualDialogs.js +251 -20
  118. package/dist/chat/ui/VisualFrame.js +321 -95
  119. package/dist/chat/ui/Welcome.js +72 -7
  120. package/dist/chat/ui/chips.js +1 -1
  121. package/dist/chat/ui/code-lines.js +36 -36
  122. package/dist/chat/ui/code-streaming.js +1 -1
  123. package/dist/chat/ui/code-theme.js +7 -7
  124. package/dist/chat/ui/composer/ComposerControls.js +329 -21
  125. package/dist/chat/ui/composer/ComposerMenu.js +358 -30
  126. package/dist/chat/ui/composer/DraftParts.js +185 -11
  127. package/dist/chat/ui/composer/QueuedMessages.js +138 -13
  128. package/dist/chat/ui/composer/chips.js +29 -19
  129. package/dist/chat/ui/composer/editor.js +79 -63
  130. package/dist/chat/ui/composer/insert.js +26 -12
  131. package/dist/chat/ui/composer/key-handler.js +180 -127
  132. package/dist/chat/ui/composer/keys.js +90 -73
  133. package/dist/chat/ui/composer/menu-aria.js +18 -9
  134. package/dist/chat/ui/composer/placeholder.js +78 -31
  135. package/dist/chat/ui/composer/surface.js +13 -37
  136. package/dist/chat/ui/composer/use-chat-controls.js +230 -90
  137. package/dist/chat/ui/composer/use-compaction-offer.js +50 -18
  138. package/dist/chat/ui/composer/use-composer-draft.js +65 -34
  139. package/dist/chat/ui/composer/use-composer-menus.js +478 -193
  140. package/dist/chat/ui/composer/use-composer-submit.js +251 -109
  141. package/dist/chat/ui/composer/use-continuable-turn.js +33 -6
  142. package/dist/chat/ui/composer/use-draft-files.js +245 -93
  143. package/dist/chat/ui/composer/use-effort-stepper.d.ts +13 -0
  144. package/dist/chat/ui/composer/use-effort-stepper.js +88 -0
  145. package/dist/chat/ui/composer/use-notice.js +61 -16
  146. package/dist/chat/ui/composer/use-pending-requests.js +38 -17
  147. package/dist/chat/ui/composer/use-prompt-history.js +117 -45
  148. package/dist/chat/ui/composer/use-prompt-hold.js +119 -35
  149. package/dist/chat/ui/composer/use-take-back.js +94 -72
  150. package/dist/chat/ui/diff/ApprovalReview.js +101 -23
  151. package/dist/chat/ui/diff/DiffFallbackBoundary.js +21 -13
  152. package/dist/chat/ui/diff/DiffOmitted.js +56 -6
  153. package/dist/chat/ui/diff/DiffStack.js +92 -8
  154. package/dist/chat/ui/diff/DiffUnavailable.js +56 -6
  155. package/dist/chat/ui/diff/EditorEditDiff.js +263 -51
  156. package/dist/chat/ui/diff/EditorPatchDiff.js +39 -14
  157. package/dist/chat/ui/diff/LegacyDiffPool.js +27 -10
  158. package/dist/chat/ui/diff/LegacyEditDiff.js +97 -20
  159. package/dist/chat/ui/diff/LegacyUnifiedDiff.js +172 -42
  160. package/dist/chat/ui/diff/RawDiff.js +65 -5
  161. package/dist/chat/ui/diff/ReviewDiff.js +77 -5
  162. package/dist/chat/ui/diff/diff-props.js +1 -1
  163. package/dist/chat/ui/diff/diff-source-budget.js +46 -35
  164. package/dist/chat/ui/diff/editor-edit-model.js +18 -14
  165. package/dist/chat/ui/diff/review-plan.js +63 -40
  166. package/dist/chat/ui/diff/review-settle.js +24 -9
  167. package/dist/chat/ui/diff/syntax-runtime.js +236 -201
  168. package/dist/chat/ui/diff/use-review-stack.js +146 -25
  169. package/dist/chat/ui/diff-syntax.js +70 -58
  170. package/dist/chat/ui/diff-theme.js +31 -12
  171. package/dist/chat/ui/file-links.js +39 -10
  172. package/dist/chat/ui/find-reveal.js +29 -8
  173. package/dist/chat/ui/full-diff.js +17 -12
  174. package/dist/chat/ui/highlighter.js +143 -113
  175. package/dist/chat/ui/icons.js +16 -7
  176. package/dist/chat/ui/index.js +1 -1
  177. package/dist/chat/ui/intelligent-ui/UiBlockFrame.js +556 -82
  178. package/dist/chat/ui/intelligent-ui/UiFallbackPart.js +73 -5
  179. package/dist/chat/ui/intelligent-ui/UiReply.js +666 -262
  180. package/dist/chat/ui/intelligent-ui/block-local.js +59 -31
  181. package/dist/chat/ui/intelligent-ui/chart-data.js +77 -67
  182. package/dist/chat/ui/intelligent-ui/node-text.js +77 -91
  183. package/dist/chat/ui/intelligent-ui/registry.js +46 -46
  184. package/dist/chat/ui/intelligent-ui/render-context.js +1 -1
  185. package/dist/chat/ui/intelligent-ui/renderers/base-land.js +1 -1
  186. package/dist/chat/ui/intelligent-ui/renderers/binding.js +3 -3
  187. package/dist/chat/ui/intelligent-ui/renderers/chart.js +1223 -123
  188. package/dist/chat/ui/intelligent-ui/renderers/choices.js +312 -34
  189. package/dist/chat/ui/intelligent-ui/renderers/content.js +1241 -86
  190. package/dist/chat/ui/intelligent-ui/renderers/data.js +619 -54
  191. package/dist/chat/ui/intelligent-ui/renderers/inputs.js +868 -67
  192. package/dist/chat/ui/intelligent-ui/renderers/links.js +366 -62
  193. package/dist/chat/ui/intelligent-ui/renderers/map-slots.js +118 -60
  194. package/dist/chat/ui/intelligent-ui/renderers/map-style.js +85 -78
  195. package/dist/chat/ui/intelligent-ui/renderers/map-view.js +282 -217
  196. package/dist/chat/ui/intelligent-ui/renderers/map.js +621 -69
  197. package/dist/chat/ui/intelligent-ui/renderers/place-point.js +15 -8
  198. package/dist/chat/ui/intelligent-ui/renderers/structure.js +262 -20
  199. package/dist/chat/ui/intelligent-ui/renderers/text.js +674 -49
  200. package/dist/chat/ui/intelligent-ui/reply-parts.js +24 -15
  201. package/dist/chat/ui/intelligent-ui/table-data.js +97 -57
  202. package/dist/chat/ui/intelligent-ui/tones.js +31 -31
  203. package/dist/chat/ui/intelligent-ui/use-in-view.js +30 -12
  204. package/dist/chat/ui/intelligent-ui/use-later.js +28 -13
  205. package/dist/chat/ui/intelligent-ui/use-truncated.js +45 -21
  206. package/dist/chat/ui/intelligent-ui/use-ui-links.js +296 -109
  207. package/dist/chat/ui/intelligent-ui/use-ui-queries.js +256 -246
  208. package/dist/chat/ui/markdown-blocks.js +296 -262
  209. package/dist/chat/ui/mermaid.js +60 -72
  210. package/dist/chat/ui/quote-selection.js +32 -29
  211. package/dist/chat/ui/rehype-chips.js +35 -23
  212. package/dist/chat/ui/rehype-fade.js +28 -17
  213. package/dist/chat/ui/remark-html-as-text.js +22 -15
  214. package/dist/chat/ui/reply-context.js +1 -1
  215. package/dist/chat/ui/reveal.js +161 -72
  216. package/dist/chat/ui/rows/ForksRow.js +226 -24
  217. package/dist/chat/ui/rows/GeneratedImageRow.js +541 -87
  218. package/dist/chat/ui/rows/MessageRows.js +1706 -159
  219. package/dist/chat/ui/rows/RowContainer.js +57 -7
  220. package/dist/chat/ui/rows/Rows.js +463 -54
  221. package/dist/chat/ui/rows/SubagentRow.js +577 -60
  222. package/dist/chat/ui/rows/TaskRow.js +359 -40
  223. package/dist/chat/ui/rows/VisualRow.js +233 -11
  224. package/dist/chat/ui/rows/WorkRows.js +1946 -163
  225. package/dist/chat/ui/rows/WorkflowRow.js +293 -34
  226. package/dist/chat/ui/rows/row-rhythm.js +27 -17
  227. package/dist/chat/ui/theme-watch.js +26 -23
  228. package/dist/chat/ui/timestamp-format.js +4 -1
  229. package/dist/chat/ui/use-diff-source-tokens.js +70 -34
  230. package/dist/chat/ui/useToggleSet.js +51 -19
  231. package/dist/chat/ui/visual-theme.js +153 -128
  232. package/dist/chat/visual-bridge.js +123 -123
  233. package/dist/chat/visual-viewport.js +94 -83
  234. package/dist/chat/visuals.js +13 -5
  235. package/dist/host-hooks.d.ts +29 -0
  236. package/dist/host-hooks.js +78 -0
  237. package/dist/host.js +120 -48
  238. package/dist/index.js +1 -1
  239. package/dist/lazy.js +38 -32
  240. package/dist/locales/en/agent-chat.d.ts +35 -0
  241. package/dist/locales/en/agent-chat.js +747 -712
  242. package/dist/locales/en/agent-prompts.js +42 -42
  243. package/dist/locales/en/agent-providers.d.ts +1 -0
  244. package/dist/locales/en/agent-providers.js +166 -165
  245. package/dist/locales/en/agent-usage.d.ts +6 -0
  246. package/dist/locales/en/agent-usage.js +129 -123
  247. package/dist/locales/nl/agent-chat.d.ts +35 -0
  248. package/dist/locales/nl/agent-chat.js +747 -712
  249. package/dist/locales/nl/agent-prompts.js +42 -42
  250. package/dist/locales/nl/agent-providers.d.ts +1 -0
  251. package/dist/locales/nl/agent-providers.js +166 -165
  252. package/dist/locales/nl/agent-usage.d.ts +6 -0
  253. package/dist/locales/nl/agent-usage.js +129 -123
  254. package/dist/locales.js +14 -14
  255. package/dist/mounted-registry.js +31 -30
  256. package/dist/port-transport.js +122 -111
  257. package/dist/prompts/index.js +1 -1
  258. package/dist/prompts/logic/focus.js +15 -14
  259. package/dist/prompts/logic/keys.js +93 -59
  260. package/dist/prompts/logic/prompts.js +27 -14
  261. package/dist/prompts/logic/subjects.js +60 -46
  262. package/dist/prompts/logic/useFocusAfterAnswer.js +60 -20
  263. package/dist/prompts/logic/usePromptSession.js +88 -77
  264. package/dist/prompts/ui/ApprovalBody.js +246 -25
  265. package/dist/prompts/ui/PromptActions.js +215 -9
  266. package/dist/prompts/ui/PromptCard.js +215 -36
  267. package/dist/prompts/ui/PromptView.js +372 -34
  268. package/dist/prompts/ui/QuestionBody.js +269 -73
  269. package/dist/providers/AccountColors.js +36 -5
  270. package/dist/providers/AccountDetail.js +683 -50
  271. package/dist/providers/AccountVariables.js +139 -32
  272. package/dist/providers/AddAccountForm.js +125 -38
  273. package/dist/providers/CliDetail.js +343 -36
  274. package/dist/providers/InstallPage.js +644 -59
  275. package/dist/providers/ProviderList.d.ts +2 -1
  276. package/dist/providers/ProviderList.js +215 -23
  277. package/dist/providers/ProvidersPane.d.ts +4 -2
  278. package/dist/providers/ProvidersPane.js +244 -64
  279. package/dist/providers/account-actions.js +54 -30
  280. package/dist/providers/index.js +1 -1
  281. package/dist/providers/install-steps.js +12 -9
  282. package/dist/providers/pane-target.d.ts +3 -0
  283. package/dist/providers/pane-target.js +34 -13
  284. package/dist/providers/parts.js +62 -12
  285. package/dist/providers/provider-abilities.js +5 -5
  286. package/dist/providers/provider-groups.js +75 -40
  287. package/dist/providers/variables.js +73 -39
  288. package/dist/scope.js +6 -6
  289. package/dist/settings/sections.js +18 -18
  290. package/dist/state/chats.d.ts +1 -0
  291. package/dist/state/chats.js +408 -192
  292. package/dist/state/index.js +1 -1
  293. package/dist/state/provider-accounts.js +70 -47
  294. package/dist/state/providers.js +45 -16
  295. package/dist/state/usage.js +154 -77
  296. package/dist/storage.js +69 -68
  297. package/dist/testing/index.js +1 -1
  298. package/dist/testing/prompts.js +105 -67
  299. package/dist/transport.js +10 -10
  300. package/dist/ui/PlainTextarea.js +27 -3
  301. package/dist/usage/LimitsList.js +646 -40
  302. package/dist/usage/UsageBreakdown.js +879 -38
  303. package/dist/usage/UsageChart.js +311 -32
  304. package/dist/usage/UsageDialog.js +46 -4
  305. package/dist/usage/UsageLimits.js +467 -34
  306. package/dist/usage/UsageLimitsCard.js +95 -11
  307. package/dist/usage/UsagePage.js +817 -96
  308. package/dist/usage/UsagePane.js +164 -10
  309. package/dist/usage/UsageSummary.js +151 -6
  310. package/dist/usage/UsageTiles.js +164 -14
  311. package/dist/usage/format.js +32 -32
  312. package/dist/usage/index.d.ts +1 -1
  313. package/dist/usage/index.js +2 -1
  314. package/dist/usage/limit-groups.d.ts +2 -0
  315. package/dist/usage/limit-groups.js +77 -59
  316. package/dist/usage/limits.js +78 -43
  317. package/dist/usage/money.js +20 -4
  318. package/dist/usage/summary.js +85 -64
  319. package/package.json +8 -8
  320. package/src/agents/ModelOptionControl.tsx +3 -1
  321. package/src/agents/option-words.ts +27 -0
  322. package/src/chat/account-choice.ts +41 -1
  323. package/src/chat/composer-effort.ts +32 -0
  324. package/src/chat/forks.ts +4 -5
  325. package/src/chat/index.ts +3 -1
  326. package/src/chat/logic/effort.ts +32 -0
  327. package/src/chat/logic/picker-entries.ts +45 -10
  328. package/src/chat/logic/resume-compaction.ts +95 -17
  329. package/src/chat/logic/timeline.ts +11 -3
  330. package/src/chat/preferences.ts +35 -0
  331. package/src/chat/subagent-view.ts +2 -3
  332. package/src/chat/ui/AnsiOutput.tsx +1 -2
  333. package/src/chat/ui/BookmarkSubmenu.tsx +3 -3
  334. package/src/chat/ui/ChatActivity.tsx +14 -22
  335. package/src/chat/ui/ChatReferenceChip.tsx +2 -3
  336. package/src/chat/ui/Composer.tsx +15 -7
  337. package/src/chat/ui/EditDiff.tsx +2 -3
  338. package/src/chat/ui/LimitState.tsx +2 -2
  339. package/src/chat/ui/Markdown.tsx +10 -8
  340. package/src/chat/ui/MermaidBlock.tsx +2 -3
  341. package/src/chat/ui/Pickers.tsx +49 -29
  342. package/src/chat/ui/PromptComposer.tsx +7 -9
  343. package/src/chat/ui/ResumeCompactionDock.tsx +16 -4
  344. package/src/chat/ui/RunSettings.tsx +67 -28
  345. package/src/chat/ui/Scrubber.tsx +3 -3
  346. package/src/chat/ui/ShellCommand.tsx +2 -0
  347. package/src/chat/ui/SubagentInfo.tsx +2 -3
  348. package/src/chat/ui/SubagentTimeline.tsx +12 -16
  349. package/src/chat/ui/Timeline.tsx +6 -6
  350. package/src/chat/ui/UnifiedDiff.tsx +3 -4
  351. package/src/chat/ui/VisualFrame.tsx +5 -8
  352. package/src/chat/ui/code-theme.ts +4 -4
  353. package/src/chat/ui/composer/placeholder.ts +2 -2
  354. package/src/chat/ui/composer/use-compaction-offer.ts +36 -16
  355. package/src/chat/ui/composer/use-composer-menus.ts +4 -9
  356. package/src/chat/ui/composer/use-composer-submit.ts +2 -1
  357. package/src/chat/ui/composer/use-effort-stepper.ts +56 -0
  358. package/src/chat/ui/composer/use-notice.ts +2 -2
  359. package/src/chat/ui/diff/EditorEditDiff.tsx +9 -13
  360. package/src/chat/ui/diff/LegacyEditDiff.tsx +12 -17
  361. package/src/chat/ui/diff/LegacyUnifiedDiff.tsx +13 -21
  362. package/src/chat/ui/diff/use-review-stack.ts +4 -4
  363. package/src/chat/ui/diff-theme.ts +3 -3
  364. package/src/chat/ui/file-links.ts +2 -2
  365. package/src/chat/ui/intelligent-ui/UiReply.tsx +2 -0
  366. package/src/chat/ui/intelligent-ui/renderers/chart.tsx +3 -3
  367. package/src/chat/ui/intelligent-ui/renderers/content.tsx +5 -6
  368. package/src/chat/ui/intelligent-ui/renderers/map-view.tsx +2 -1
  369. package/src/chat/ui/intelligent-ui/renderers/map.tsx +2 -1
  370. package/src/chat/ui/intelligent-ui/use-truncated.ts +16 -19
  371. package/src/chat/ui/intelligent-ui/use-ui-links.ts +3 -3
  372. package/src/chat/ui/rows/ForksRow.tsx +3 -5
  373. package/src/chat/ui/rows/GeneratedImageRow.tsx +2 -1
  374. package/src/chat/ui/rows/MessageRows.tsx +12 -21
  375. package/src/chat/ui/rows/SubagentRow.tsx +3 -3
  376. package/src/chat/ui/rows/TaskRow.tsx +1 -1
  377. package/src/chat/ui/rows/WorkRows.tsx +20 -7
  378. package/src/chat/ui/useToggleSet.ts +15 -18
  379. package/src/chat/ui/visual-theme.ts +2 -3
  380. package/src/host-hooks.ts +113 -0
  381. package/src/lazy.tsx +2 -0
  382. package/src/locales/en/agent-chat.ts +135 -108
  383. package/src/locales/en/agent-prompts.ts +7 -7
  384. package/src/locales/en/agent-providers.ts +35 -34
  385. package/src/locales/en/agent-usage.ts +26 -20
  386. package/src/locales/nl/agent-chat.ts +127 -100
  387. package/src/locales/nl/agent-prompts.ts +5 -5
  388. package/src/locales/nl/agent-providers.ts +33 -32
  389. package/src/locales/nl/agent-usage.ts +25 -20
  390. package/src/prompts/ui/ApprovalBody.tsx +3 -1
  391. package/src/providers/CliDetail.tsx +2 -1
  392. package/src/providers/InstallPage.tsx +2 -4
  393. package/src/providers/ProviderList.tsx +12 -2
  394. package/src/providers/ProvidersPane.tsx +45 -15
  395. package/src/providers/pane-target.ts +20 -4
  396. package/src/state/chats.ts +7 -2
  397. package/src/usage/LimitsList.tsx +12 -13
  398. package/src/usage/UsageBreakdown.tsx +17 -6
  399. package/src/usage/UsageLimits.tsx +2 -1
  400. package/src/usage/UsagePage.tsx +3 -3
  401. package/src/usage/index.ts +1 -1
  402. package/src/usage/limit-groups.ts +12 -0
  403. package/src/usage/limits.ts +2 -2
  404. package/src/usage/money.ts +1 -2
@@ -2,16 +2,16 @@ export default {
2
2
  transport: {
3
3
  notConnected: 'The agents are not reachable',
4
4
  closedBeforeAnswer: 'The connection to the agents closed before they answered',
5
- badReply: 'The answer to {{type}} does not match its contract',
6
- notSent: 'The request {{type}} could not be sent to the agents'
5
+ badReply: 'Could not read the answer from the machine',
6
+ notSent: 'Could not reach the agents. Try again.'
7
7
  },
8
8
  attachments: {
9
9
  rejected: {
10
- empty: 'The file is empty',
10
+ empty: 'Empty file',
11
11
  tooLarge: 'Larger than {{size}}',
12
12
  tooMany_one: 'At most {{count}} file per message',
13
13
  tooMany_other: 'At most {{count}} files per message',
14
- tooHeavy: 'Attachments must total at most {{size}} per message'
14
+ tooHeavy: 'At most {{size}} in total per message'
15
15
  },
16
16
  unreadable: 'Could not read {{name}}',
17
17
  unreadableThumbnail: 'Could not read the thumbnail'
@@ -24,10 +24,10 @@ export default {
24
24
  fork: {
25
25
  refusal: {
26
26
  notInConversation: 'This turn is not in the conversation',
27
- cliCannotFork: 'This CLI has no conversation that can be forked',
28
- noConversation: 'The CLI never started a conversation here',
27
+ cliCannotFork: 'This agent cannot fork its conversation',
28
+ noConversation: 'Nothing to fork yet. Send a message first.',
29
29
  turnRunning: 'Wait for the turn to end',
30
- originalGone: 'The original is no longer in this project'
30
+ originalGone: 'Original no longer in this project'
31
31
  },
32
32
  point: {
33
33
  afterLast: 'After the last turn',
@@ -37,7 +37,7 @@ export default {
37
37
  },
38
38
  branch: {
39
39
  unnamed: 'Name the branch',
40
- taken: 'A branch with this name exists already'
40
+ taken: 'Name already taken'
41
41
  },
42
42
  pill: {
43
43
  label: 'Fork'
@@ -47,7 +47,11 @@ export default {
47
47
  title: 'Resume with less context',
48
48
  carried: '{{tokens}} tokens from earlier',
49
49
  keep: 'Keep full history',
50
- compact: 'Compact'
50
+ compact: 'Compact',
51
+ cacheExpired: {
52
+ title: 'Cache expired',
53
+ carried: 'The next message costs {{tokens}} tokens at full price'
54
+ }
51
55
  },
52
56
  goal: {
53
57
  status: {
@@ -67,7 +71,7 @@ export default {
67
71
  pause: 'Pause',
68
72
  resume: 'Resume',
69
73
  clear: 'Clear',
70
- failed: 'The goal could not be changed'
74
+ failed: 'Could not change goal'
71
75
  },
72
76
  limit: {
73
77
  usage: {
@@ -76,24 +80,24 @@ export default {
76
80
  pillResumes: 'Resumes {{time}}',
77
81
  title: 'Stopped on a usage limit',
78
82
  resets: 'The limit resets at {{time}}.',
79
- resumes: 'Goes on by itself at {{time}}, when the limit resets.'
83
+ resumes: 'Resumes at {{time}}.'
80
84
  },
81
85
  overload: {
82
86
  pill: 'Overloaded',
83
87
  pillRetry: 'Retry {{time}}',
84
- title: 'The model was overloaded',
88
+ title: 'Model overloaded',
85
89
  sendAgain: 'Send a message to try again.',
86
- retries: 'Tries again by itself at {{time}}.'
90
+ retries: 'Retries at {{time}}.'
87
91
  },
88
92
  toggle: 'Resume at reset',
89
93
  machineOff: 'Turned off for this machine. Turn it on in Settings, Agents.',
90
94
  continueOn: 'Continue on',
91
95
  continueOnAria: 'Continue on {{account}}',
92
- continueOnTip: 'Goes on under {{account}}, which has the most room left. The interrupted turn is sent again.',
96
+ continueOnTip: 'Switches to {{account}}, which has the most room left, and resends the turn.',
93
97
  continueFailed: 'Could not continue on {{account}}'
94
98
  },
95
99
  contextMeter: {
96
- aria: '{{percent}}% of the context used',
100
+ aria: '{{percent}}% of context used',
97
101
  title: 'Context',
98
102
  of: '{{used}} of {{window}}',
99
103
  used: '{{tokens}} used',
@@ -112,7 +116,7 @@ export default {
112
116
  heading: 'You',
113
117
  showAll: 'Show all',
114
118
  showLess: 'Show less',
115
- quoteGone: 'The reply this quote came from is no longer in this chat.'
119
+ quoteGone: 'Quoted reply no longer in this chat.'
116
120
  },
117
121
  report: {
118
122
  heading: 'Report'
@@ -140,7 +144,7 @@ export default {
140
144
  approval: {
141
145
  allow: 'Allowed',
142
146
  'allow-always': 'Always allowed',
143
- deny: 'Declined',
147
+ deny: 'Denied',
144
148
  cancelled: 'No longer needed'
145
149
  },
146
150
  question: {
@@ -154,7 +158,7 @@ export default {
154
158
  doneIn: 'done in {{duration}}',
155
159
  failedIn: 'failed in {{duration}}',
156
160
  nothingYet: 'Nothing to show yet.',
157
- truncated: "Only the beginning of this agent's work is kept.",
161
+ truncated: 'Only the start is kept.',
158
162
  showResult: 'Show result',
159
163
  hideResult: 'Hide result'
160
164
  },
@@ -172,7 +176,7 @@ export default {
172
176
  notStarted: 'not started',
173
177
  waiting: 'waiting',
174
178
  stopped: 'stopped',
175
- stalled: 'No progress reported for five minutes. The workflow is still running; you can stop it.'
179
+ stalled: 'No progress for five minutes. It is still running, and you can stop it.'
176
180
  }
177
181
  },
178
182
  work: {
@@ -183,18 +187,19 @@ export default {
183
187
  loadingDiff: 'Loading diff',
184
188
  diffUnavailable: 'Could not load this diff',
185
189
  runningFor: 'running for {{elapsed}}',
186
- forksAfter_one: 'A fork goes on after this turn',
187
- forksAfter_other: '{{count}} forks go on after this turn',
190
+ awaitingApproval: 'waiting for you',
191
+ forksAfter_one: 'Forked after this turn',
192
+ forksAfter_other: '{{count}} forks after this turn',
188
193
  omitted: {
189
194
  binary: 'Binary file, no diff',
190
195
  tooLarge: 'Too large to show'
191
196
  },
192
197
  changedFiles_one: '{{count}} changed file',
193
198
  changedFiles_other: '{{count}} changed files',
194
- folderChanges_one: '{{count}} change in the folder this turn',
195
- folderChanges_other: '{{count}} changes in the folder this turn',
196
- baseMoved: 'The branch moved during this turn ({{from}} to {{to}}), so this includes what came in with it.',
197
- andMore: 'and more, truncated',
199
+ folderChanges_one: '{{count}} folder change this turn',
200
+ folderChanges_other: '{{count}} folder changes this turn',
201
+ baseMoved: 'Branch moved this turn ({{from}} to {{to}}). Includes its incoming changes.',
202
+ andMore: 'and more',
198
203
  edits_one: '{{count}} edit',
199
204
  edits_other: '{{count}} edits',
200
205
  workingFor: 'Working for',
@@ -212,14 +217,14 @@ export default {
212
217
  night: 'Still up?'
213
218
  },
214
219
  empty: {
215
- ready: '{{model}} is ready. Ask it anything.',
220
+ ready: '{{model}} is ready.',
216
221
  ask: 'Ask anything.',
217
222
  canRead: 'It can read',
218
223
  worksIn: 'It works in'
219
224
  },
220
225
  loadingEarlier: 'Loading earlier messages',
221
- stripFailed: 'The message strip failed to render',
222
- cardFailed: 'This card failed to render',
226
+ stripFailed: 'Could not show the messages',
227
+ cardFailed: 'Could not show this card',
223
228
  actions: {
224
229
  label: 'Message actions',
225
230
  copied: 'Copied'
@@ -282,7 +287,7 @@ export default {
282
287
  worked: 'Worked for {{duration}}'
283
288
  },
284
289
  composer: {
285
- slotFailed: 'This control failed to render',
290
+ slotFailed: 'Could not show this control',
286
291
  inputLabel: 'Message',
287
292
  menu: {
288
293
  commands: 'Commands',
@@ -290,30 +295,34 @@ export default {
290
295
  mentions: 'Mentions'
291
296
  },
292
297
  held: {
293
- question: 'A question is waiting. It opens when you pause typing.',
294
- approval: 'An approval is waiting. It opens when you pause typing.',
298
+ question: 'Question waiting. Opens when you pause typing.',
299
+ approval: 'Approval waiting. Opens when you pause typing.',
295
300
  show: 'Show now'
296
301
  },
297
302
  commands: {
298
- model: 'Switch the model',
299
- compact: 'Compact the context',
303
+ model: 'Switch model',
304
+ compact: 'Compact context',
300
305
  clear: 'Start a new context',
301
- goal: 'Work toward an objective until it is met',
306
+ goal: 'Work until a goal is met',
302
307
  skill: 'Skill',
303
308
  cli: '{{cli}} command',
304
309
  anyCli: 'CLI'
305
310
  },
306
311
  notice: {
307
- clearFailed: 'The thread could not be cleared',
308
- stashChatsDropped_one: '1 attached chat is not in this project and was left out',
309
- stashChatsDropped_other: '{{count}} attached chats are not in this project and were left out',
310
- compactFailed: 'The context could not be compacted',
312
+ effort: 'Reasoning set to {{effort}}',
313
+ effortHighest: '{{effort}} is the most reasoning {{model}} takes',
314
+ effortLowest: '{{effort}} is the least reasoning {{model}} takes',
315
+ noEffort: '{{model}} takes no reasoning effort',
316
+ clearFailed: 'Could not clear thread',
317
+ stashChatsDropped_one: 'Left out 1 chat from another project',
318
+ stashChatsDropped_other: 'Left out {{count}} chats from other projects',
319
+ compactFailed: 'Could not compact context',
311
320
  noAttachments: '{{agent}} takes no attachments',
312
321
  thisAgent: 'This agent',
313
322
  rejected: '{{name}}: {{reason}}',
314
323
  queuedDoesNotFit: '{{name}} does not fit beside this draft ({{reason}}). The message stays queued.',
315
324
  thatFile: 'That file',
316
- unreadable: 'That file could not be read'
325
+ unreadable: 'Could not read that file'
317
326
  },
318
327
  placeholder: {
319
328
  disconnected: 'Not connected to the machine',
@@ -324,7 +333,7 @@ export default {
324
333
  skills: 'skills',
325
334
  readOnly: 'Go back to the main agent to write'
326
335
  },
327
- jumpToEnd: 'Jump to the end',
336
+ jumpToEnd: 'Jump to end',
328
337
  mentions: {
329
338
  here: 'Files in this folder',
330
339
  files: 'Files',
@@ -335,32 +344,32 @@ export default {
335
344
  queue: {
336
345
  attachments_one: '{{count}} attachment',
337
346
  attachments_other: '{{count}} attachments',
338
- alreadySent: 'That message was already sent',
339
- editFailed: 'The message could not be taken back to edit',
347
+ alreadySent: 'Already sent',
348
+ editFailed: 'Could not edit message',
340
349
  sendNow: 'Send now',
341
- paused: 'Queue paused. Send a message or choose Send now to continue.'
350
+ paused: 'Queue paused. Send a message or choose Send now.'
342
351
  },
343
352
  quote: {
344
353
  add: 'Quote',
345
354
  remove: 'Remove quote',
346
- goToSource: 'Go to the reply'
355
+ goToSource: 'Go to reply'
347
356
  },
348
357
  removeAttachment: 'Remove {{name}}',
349
358
  attach: 'Attach files',
350
359
  tooLong: 'characters, too long to send',
351
- stop: 'Stop, Shift-click to also stop its sub-agents',
360
+ stop: 'Stop. Shift-click stops sub-agents too',
352
361
  queueButton: 'Queue',
353
362
  continue: 'Continue',
354
- continueHint: 'Continue where the stopped turn left off',
363
+ continueHint: 'Continue the stopped turn',
355
364
  send: 'Send',
356
365
  clear: {
357
- title: 'Clear the thread?',
358
- description: 'A turn is running. Stop it and clear the thread?',
366
+ title: 'Clear thread?',
367
+ description: 'A turn is running.',
359
368
  confirm: 'Stop and clear'
360
369
  },
361
- waitingBelow: 'Waiting for your answer below',
362
- steerButton: 'Send to the running agent. Hold Option or Alt to queue after this turn.',
363
- queueWithSteerButton: 'Queue after this turn. Hold Option or Alt to send to the running agent.'
370
+ waitingBelow: 'Answer below',
371
+ steerButton: 'Send now. Hold Option or Alt to queue.',
372
+ queueWithSteerButton: 'Queue after this turn. Hold Option or Alt to send now.'
364
373
  },
365
374
  activity: {
366
375
  subagents_one: '{{count}} sub-agent',
@@ -381,23 +390,23 @@ export default {
381
390
  shell: 'Shell',
382
391
  monitor: 'Monitor',
383
392
  stop: 'Stop',
384
- stopFailed: 'The task could not be stopped'
393
+ stopFailed: 'Could not stop task'
385
394
  },
386
395
  subagents: {
387
396
  stop: {
388
- task: 'Stop this task',
389
- native: 'Stop this sub-agent',
390
- mark: "Mark as stopped. The CLI cannot stop one sub-agent, so it may keep working until the chat's process ends."
397
+ task: 'Stop task',
398
+ native: 'Stop sub-agent',
399
+ mark: 'Mark as stopped. It may keep working until the chat stops.'
391
400
  },
392
- stale: 'This sub-agent belongs to a process that has ended.',
401
+ stale: 'This sub-agent is no longer running.',
393
402
  title: 'Sub-agents',
394
- backToMain: 'Back to the main agent',
395
- loading: 'Loading the conversation…',
403
+ backToMain: 'Back to main agent',
404
+ loading: 'Loading conversation…',
396
405
  working: 'Working…',
397
- unsupported: "This machine cannot open a sub-agent's conversation. Update Ruimte there to read it.",
398
- unreadable: 'The conversation could not be read.',
406
+ unsupported: 'Update Ruimte on this machine to read sub-agents.',
407
+ unreadable: 'Could not read conversation.',
399
408
  noAnswer: 'The machine did not answer',
400
- stopFailed: 'The sub-agent could not be stopped',
409
+ stopFailed: 'Could not stop sub-agent',
401
410
  info: {
402
411
  label: 'About this sub-agent',
403
412
  tokens: '{{tokens}} tokens'
@@ -416,7 +425,7 @@ export default {
416
425
  },
417
426
  auto: {
418
427
  label: 'Auto',
419
- hint: 'The agent reviews routine actions itself',
428
+ hint: 'Reviews routine actions itself',
420
429
  short: 'Auto'
421
430
  },
422
431
  'full-access': {
@@ -442,7 +451,9 @@ export default {
442
451
  tools: 'Can use tools',
443
452
  requires: 'Requires {{cli}} {{version}} or later on {{machine}}',
444
453
  requiresHere: 'Requires {{cli}} {{version}} or later',
445
- providerSettings: 'Provider settings'
454
+ providerSettings: 'Provider settings',
455
+ star: 'Add to favorites',
456
+ unstar: 'Remove from favorites'
446
457
  },
447
458
  stash: {
448
459
  title: 'Stashed prompts',
@@ -460,11 +471,11 @@ export default {
460
471
  label: 'Account',
461
472
  manage: 'Manage accounts…',
462
473
  resets: 'resets {{time}}',
463
- forkToSwitch: 'This conversation is kept in another folder than {{account}} reads. Fork the chat to go on under {{account}}.'
474
+ forkToSwitch: '{{account}} cannot open this conversation. Fork the chat to continue on {{account}}.'
464
475
  }
465
476
  },
466
477
  scrubber: {
467
- strip: 'Messages in this thread',
478
+ strip: 'Messages',
468
479
  tasks: 'Tasks'
469
480
  },
470
481
  bookmarks: {
@@ -474,23 +485,23 @@ export default {
474
485
  remove: 'Remove bookmark',
475
486
  unnamed: 'Bookmark',
476
487
  nameLabel: 'Bookmark name',
477
- namePlaceholder: 'Name it, or leave it empty',
488
+ namePlaceholder: 'Optional',
478
489
  removed: 'Bookmark removed',
479
- addFailed: 'The bookmark could not be placed',
480
- renameFailed: 'The bookmark could not be renamed',
481
- removeFailed: 'The bookmark could not be removed'
490
+ addFailed: 'Could not add bookmark',
491
+ renameFailed: 'Could not rename bookmark',
492
+ removeFailed: 'Could not remove bookmark'
482
493
  },
483
494
  visuals: {
484
495
  actions: 'Actions for {{title}}',
485
496
  expand: 'Open large',
486
497
  more: 'More actions',
487
498
  remove: 'Remove visual',
488
- removeTitle: 'Remove this visual?',
499
+ removeTitle: 'Remove visual?',
489
500
  removeDescription: '{{title}} is deleted from the chat. This cannot be undone.',
490
- removeFailed: 'The visual could not be removed',
501
+ removeFailed: 'Could not remove visual',
491
502
  loading: 'Loading {{title}}',
492
503
  failed: 'Could not load {{title}}',
493
- renderFailed: 'This visual failed to render'
504
+ renderFailed: 'Could not show this visual'
494
505
  },
495
506
  image: {
496
507
  zoomIn: 'Zoom in',
@@ -500,10 +511,10 @@ export default {
500
511
  generatedImage: {
501
512
  label: 'Generated image',
502
513
  generating: 'Generating image',
503
- failed: 'Image generation failed',
504
- empty: 'The image came back empty',
505
- notImage: 'The result is not an image',
506
- tooLarge: 'The image is larger than {{size}}',
514
+ failed: 'Could not generate image',
515
+ empty: 'Image is empty',
516
+ notImage: 'Not an image',
517
+ tooLarge: 'Larger than {{size}}',
507
518
  dimensions: '{{width}} × {{height}}',
508
519
  transparent: 'transparent',
509
520
  actions: 'Image actions',
@@ -514,7 +525,7 @@ export default {
514
525
  save: 'Save to project…',
515
526
  saved: 'Saved',
516
527
  savedTo: 'Saved to <file>{{path}}</file>',
517
- renderFailed: 'This image failed to render'
528
+ renderFailed: 'Could not show this image'
518
529
  },
519
530
  account: {
520
531
  pill: '{{provider}} account {{account}}'
@@ -540,13 +551,13 @@ export default {
540
551
  },
541
552
  code: {
542
553
  actions: 'Code actions',
543
- copyFailed: 'Could not copy the code. Try again.',
554
+ copyFailed: 'Could not copy code.',
544
555
  mermaid: {
545
556
  diagram: 'Diagram',
546
557
  showSource: 'Show source',
547
558
  showDiagram: 'Show diagram',
548
- failed: 'Could not draw this diagram, so this is its source.',
549
- crashed: 'This diagram failed to render'
559
+ failed: 'Could not show diagram. Showing its source.',
560
+ crashed: 'Could not show this diagram'
550
561
  }
551
562
  },
552
563
  blocks: {
@@ -583,10 +594,10 @@ export default {
583
594
  values: 'Values',
584
595
  summary: '{{count}} values, highest {{label}} at {{value}}',
585
596
  summarySeries: '{{count}} categories, highest {{series}} for {{label}} at {{value}}',
586
- rowsLeftOut: 'The first {{shown}} of {{total}} rows are drawn.',
587
- seriesLeftOut_one: '{{series}} is not drawn.',
588
- seriesLeftOut_other: '{{series}} are not drawn.',
589
- sideBySide: 'Negative values cannot be stacked, so the series stand side by side.',
597
+ rowsLeftOut: 'Showing {{shown}} of {{total}} rows.',
598
+ seriesLeftOut_one: '{{series}} not shown.',
599
+ seriesLeftOut_other: '{{series}} not shown.',
600
+ sideBySide: 'Negative values cannot stack. Series shown side by side.',
590
601
  showValues: 'Show all values',
591
602
  hideValues: 'Hide values'
592
603
  },
@@ -597,11 +608,11 @@ export default {
597
608
  map: {
598
609
  label_one: 'Map of {{count}} place',
599
610
  label_other: 'Map of {{count}} places',
600
- omitted_one: '{{count}} more place is not shown',
601
- omitted_other: '{{count}} more places are not shown',
611
+ omitted_one: '{{count}} more place not shown',
612
+ omitted_other: '{{count}} more places not shown',
602
613
  show: 'Show map',
603
- waiting: 'The map waits for a free spot: only a few maps are drawn at once.',
604
- contextLost: 'The map lost its graphics. The places stay listed.',
614
+ waiting: 'Waiting to draw the map. Only a few maps show at once.',
615
+ contextLost: 'Could not show the map. The places stay listed.',
605
616
  lookingUp: 'Looking up',
606
617
  notFound: 'Not on the map',
607
618
  zoomIn: 'Zoom in',
@@ -609,25 +620,25 @@ export default {
609
620
  showAll: 'Show all places',
610
621
  scrollHint: 'Hold ⌘ or Ctrl and scroll to zoom',
611
622
  touchHint: 'Use two fingers to move the map',
612
- offline: 'Map tiles are not available offline. The places stay listed.',
623
+ offline: 'No map tiles offline. The places stay listed.',
613
624
  disabled: 'Map tiles are off.',
614
625
  signedOut: 'Sign in to show map tiles.',
615
- unavailable: 'Map tiles are not available right now.'
626
+ unavailable: 'Map tiles unavailable.'
616
627
  },
617
628
  compare: {
618
629
  label: 'Compare {{before}} and {{after}}',
619
630
  before: 'Before',
620
631
  after: 'After',
621
- missing: 'One image is not available'
632
+ missing: 'One image missing'
622
633
  },
623
634
  image: {
624
635
  label: 'Image',
625
- unavailable: 'The image is not available'
636
+ unavailable: 'Image unavailable'
626
637
  },
627
638
  model: {
628
639
  label: '3D model',
629
- unavailable: 'The model is not available',
630
- crashed: 'This model failed to render'
640
+ unavailable: 'Model unavailable',
641
+ crashed: 'Could not show this model'
631
642
  },
632
643
  sources: 'Sources',
633
644
  citation: 'Source {{number}}: {{title}}',
@@ -654,8 +665,8 @@ export default {
654
665
  notes_other: '{{count}} notes',
655
666
  shownAsText: 'Shown as text',
656
667
  unknownComponent: 'This version cannot draw {{component}}',
657
- renderFailed: 'Could not draw this part',
658
- unreadable: 'The block could not be read',
668
+ renderFailed: 'Could not show this part',
669
+ unreadable: 'Could not read block',
659
670
  live: {
660
671
  label: 'Live',
661
672
  read: 'read {{time}}',
@@ -664,35 +675,51 @@ export default {
664
675
  refused: 'Not allowed to read {{source}}',
665
676
  notRead: 'Not read',
666
677
  reasons: {
667
- 'access-unavailable': 'The access of the chat that wrote this is no longer available.',
678
+ 'access-unavailable': 'The chat that made this no longer has access.',
668
679
  'block-stale': 'This block changed since it was drawn.',
669
- busy: 'Too many live blocks are reading right now.',
680
+ busy: 'Too many live blocks reading.',
670
681
  'link-unchecked': 'This link has to be checked again.',
671
- 'link-unsupported': 'This is not a link the machine can open.',
682
+ 'link-unsupported': 'The machine cannot open this link.',
672
683
  'links-unsupported': 'The machine does not open links from blocks.',
673
- 'no-unique-match': 'The source found no single match for that name.',
674
- 'outside-project': 'This is outside the project the agent wrote this in.',
684
+ 'no-unique-match': 'No single match for that name.',
685
+ 'outside-project': "Outside the agent's project.",
675
686
  'query-undeclared': 'This block does not read that source.',
676
687
  'refresh-limit': 'This source reads at most once every ten seconds.',
677
- 'result-too-large': 'What the source returned is too large.',
688
+ 'result-too-large': 'Result too large.',
678
689
  'snapshot-too-large': 'The first readings were too large to keep.',
679
690
  'source-unregistered': 'The machine does not know this source.',
680
691
  'stale-read': 'Read the source again before you choose.',
681
- 'target-unavailable': 'What this points to is no longer available.',
682
- 'timed-out': 'The source took too long to answer.',
683
- unreadable: 'The source could not be read.'
692
+ 'target-unavailable': 'Target no longer available.',
693
+ 'timed-out': 'Source timed out.',
694
+ unreadable: 'Could not read the source.'
684
695
  }
685
696
  }
686
697
  },
698
+ modelOptions: {
699
+ effort: {
700
+ label: 'Reasoning',
701
+ choices: {
702
+ low: 'Low',
703
+ medium: 'Medium',
704
+ high: 'High',
705
+ xhigh: 'Extra high',
706
+ max: 'Max'
707
+ }
708
+ },
709
+ contextWindow: { label: 'Context window' },
710
+ fastMode: { label: 'Fast mode' },
711
+ thinking: { label: 'Thinking' },
712
+ serviceTier: { label: 'Priority' }
713
+ },
687
714
  readingWidth: {
688
715
  label: 'Reading width',
689
716
  narrow: {
690
717
  label: 'Narrow',
691
- hint: 'A short line that is easy to follow.'
718
+ hint: 'Short, easy lines.'
692
719
  },
693
720
  comfortable: {
694
721
  label: 'Comfortable',
695
- hint: 'A line of about 90 characters.'
722
+ hint: 'About 90 characters per line.'
696
723
  },
697
724
  full: {
698
725
  label: 'Full',
@@ -707,7 +734,7 @@ export default {
707
734
  },
708
735
  'mod-enter-multiline': {
709
736
  label: 'Enter, {{mod}}+Enter for more lines',
710
- hint: 'Enter sends a message of one line. Once it has more lines, Enter adds a line and {{mod}}+Enter sends.'
737
+ hint: 'Enter sends one line. With more lines, Enter adds a line and {{mod}}+Enter sends.'
711
738
  },
712
739
  'mod-enter': {
713
740
  label: '{{mod}}+Enter',
@@ -15,20 +15,20 @@ export default {
15
15
  allow: 'Allow',
16
16
  deny: 'Deny',
17
17
  addReason: 'Add a reason',
18
- allChanges_one: 'Allow applies to the {{count}} change in this request.',
19
- allChanges_other: 'Allow applies to all {{count}} changes in this request.',
18
+ allChanges_one: 'Allow covers this change.',
19
+ allChanges_other: 'Allow covers all {{count}} changes.',
20
20
  loadingDiff: 'Loading diff…',
21
21
  reviewChanges: 'Changes to review',
22
- viewDiff: 'View full diff',
22
+ viewDiff: 'Show full diff',
23
23
  collapseDiff: 'Collapse diff',
24
24
  details: 'Details',
25
- reasonLabel: 'Reason for declining',
26
- reasonPlaceholder: 'Reason for declining, optional'
25
+ reasonLabel: 'Reason for denying',
26
+ reasonPlaceholder: 'Optional'
27
27
  },
28
28
  question: {
29
29
  multiSelect: 'Choose one or more',
30
- answerLabel: 'Your answer',
31
- answerPlaceholder: 'Your answer',
30
+ answerLabel: 'Answer',
31
+ answerPlaceholder: 'Type an answer',
32
32
  somethingElse: 'Something else…',
33
33
  previous: 'Previous',
34
34
  next: 'Next',