@adecore/agents-react 0.31.12 → 0.33.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 (409) hide show
  1. package/README.md +1 -1
  2. package/dist/agents/AccountDot.js +57 -6
  3. package/dist/agents/AgentIcon.js +88 -12
  4. package/dist/agents/ModelOptionControl.js +153 -18
  5. package/dist/agents/ProviderLogo.js +49 -4
  6. package/dist/agents/account-limits.js +17 -14
  7. package/dist/agents/accounts.js +99 -67
  8. package/dist/agents/agent-marks.js +5 -3
  9. package/dist/agents/model-name.js +42 -31
  10. package/dist/agents/model-options.js +8 -8
  11. package/dist/agents/model-requirement.js +17 -14
  12. package/dist/agents/option-words.d.ts +7 -0
  13. package/dist/agents/option-words.js +35 -0
  14. package/dist/agents/provider-paths.js +6 -6
  15. package/dist/agents/status-look.js +32 -12
  16. package/dist/chat/account-choice.d.ts +13 -0
  17. package/dist/chat/account-choice.js +90 -20
  18. package/dist/chat/actions.js +126 -59
  19. package/dist/chat/activity.js +5 -5
  20. package/dist/chat/attachments.js +74 -53
  21. package/dist/chat/bookmarks.js +58 -48
  22. package/dist/chat/chat-client.js +344 -263
  23. package/dist/chat/chat-references.js +3 -3
  24. package/dist/chat/composer-effort.d.ts +5 -0
  25. package/dist/chat/composer-effort.js +26 -0
  26. package/dist/chat/composer-send.js +13 -13
  27. package/dist/chat/drafts.js +115 -79
  28. package/dist/chat/forks.js +81 -24
  29. package/dist/chat/guards.js +15 -43
  30. package/dist/chat/index.d.ts +3 -1
  31. package/dist/chat/index.js +3 -2
  32. package/dist/chat/logic/ansi.js +170 -167
  33. package/dist/chat/logic/answers.js +2 -2
  34. package/dist/chat/logic/bookmarks.js +19 -19
  35. package/dist/chat/logic/command-looks.js +138 -96
  36. package/dist/chat/logic/context-usage.js +13 -9
  37. package/dist/chat/logic/continue-after-stop.js +15 -19
  38. package/dist/chat/logic/effort.d.ts +14 -0
  39. package/dist/chat/logic/effort.js +34 -0
  40. package/dist/chat/logic/embedded-code.js +387 -326
  41. package/dist/chat/logic/fork.js +134 -110
  42. package/dist/chat/logic/generated-image.js +54 -23
  43. package/dist/chat/logic/goal.js +28 -20
  44. package/dist/chat/logic/handback.js +6 -6
  45. package/dist/chat/logic/json.js +2 -2
  46. package/dist/chat/logic/limit.js +46 -30
  47. package/dist/chat/logic/picker-entries.d.ts +5 -3
  48. package/dist/chat/logic/picker-entries.js +83 -43
  49. package/dist/chat/logic/resume-compaction.d.ts +14 -1
  50. package/dist/chat/logic/resume-compaction.js +93 -24
  51. package/dist/chat/logic/scrubber.js +188 -136
  52. package/dist/chat/logic/thought.js +13 -16
  53. package/dist/chat/logic/thread-cards.js +60 -48
  54. package/dist/chat/logic/timeline-copy.js +30 -38
  55. package/dist/chat/logic/timeline-target.js +92 -63
  56. package/dist/chat/logic/timeline.js +499 -355
  57. package/dist/chat/logic/tool-catalog.js +54 -34
  58. package/dist/chat/logic/tools.js +106 -82
  59. package/dist/chat/logic/visual-height.js +18 -18
  60. package/dist/chat/logic/visual-viewport.js +6 -3
  61. package/dist/chat/logic/welcome.js +9 -9
  62. package/dist/chat/logic/workflow.d.ts +10 -0
  63. package/dist/chat/logic/workflow.js +130 -32
  64. package/dist/chat/mentions.js +149 -109
  65. package/dist/chat/persisted-json.js +51 -54
  66. package/dist/chat/preferences.d.ts +4 -0
  67. package/dist/chat/preferences.js +162 -84
  68. package/dist/chat/prompt-hold.js +9 -9
  69. package/dist/chat/quote.js +21 -30
  70. package/dist/chat/reading-width.js +12 -10
  71. package/dist/chat/recent-messages.js +34 -21
  72. package/dist/chat/resume-compaction-dismissals.js +25 -5
  73. package/dist/chat/runtime-modes.js +3 -3
  74. package/dist/chat/send-key.js +11 -7
  75. package/dist/chat/stash.js +89 -69
  76. package/dist/chat/subagent-conversation.js +181 -139
  77. package/dist/chat/subagent-list.js +65 -67
  78. package/dist/chat/subagent-support.js +12 -7
  79. package/dist/chat/subagent-view.js +132 -44
  80. package/dist/chat/thumbnails.js +88 -60
  81. package/dist/chat/timeline-flash.js +24 -12
  82. package/dist/chat/timeline-scroll.js +116 -86
  83. package/dist/chat/ui/AccountPill.js +126 -15
  84. package/dist/chat/ui/AnsiOutput.js +62 -6
  85. package/dist/chat/ui/BookmarkMarker.js +231 -41
  86. package/dist/chat/ui/BookmarkSubmenu.js +165 -18
  87. package/dist/chat/ui/ChatActivity.js +649 -70
  88. package/dist/chat/ui/ChatReferenceChip.js +104 -9
  89. package/dist/chat/ui/CodeBlock.js +132 -58
  90. package/dist/chat/ui/Composer.js +866 -132
  91. package/dist/chat/ui/ComposerInput.js +309 -120
  92. package/dist/chat/ui/DiffPool.js +75 -14
  93. package/dist/chat/ui/EditDiff.js +160 -21
  94. package/dist/chat/ui/FadingWords.js +32 -3
  95. package/dist/chat/ui/GoalDock.js +235 -42
  96. package/dist/chat/ui/ImageView.js +617 -61
  97. package/dist/chat/ui/LimitState.js +446 -72
  98. package/dist/chat/ui/Markdown.js +991 -173
  99. package/dist/chat/ui/MermaidBlock.js +285 -79
  100. package/dist/chat/ui/MessageActions.js +251 -39
  101. package/dist/chat/ui/ModelMarks.js +55 -5
  102. package/dist/chat/ui/Pickers.js +664 -113
  103. package/dist/chat/ui/PromptComposer.js +281 -51
  104. package/dist/chat/ui/QuoteButton.js +151 -57
  105. package/dist/chat/ui/ResumeCompactionDock.d.ts +6 -2
  106. package/dist/chat/ui/ResumeCompactionDock.js +141 -6
  107. package/dist/chat/ui/RowTime.js +59 -5
  108. package/dist/chat/ui/RunSettings.js +1744 -154
  109. package/dist/chat/ui/Scrubber.js +517 -88
  110. package/dist/chat/ui/ShellCommand.js +183 -107
  111. package/dist/chat/ui/SubagentControls.js +212 -24
  112. package/dist/chat/ui/SubagentInfo.js +170 -13
  113. package/dist/chat/ui/SubagentStopButton.js +115 -24
  114. package/dist/chat/ui/SubagentTimeline.js +357 -91
  115. package/dist/chat/ui/Timeline.js +988 -476
  116. package/dist/chat/ui/TimelineMenu.js +552 -37
  117. package/dist/chat/ui/UnifiedDiff.js +234 -27
  118. package/dist/chat/ui/UploadThumb.js +37 -7
  119. package/dist/chat/ui/VisualDialogs.js +251 -20
  120. package/dist/chat/ui/VisualFrame.js +321 -95
  121. package/dist/chat/ui/Welcome.js +72 -7
  122. package/dist/chat/ui/chips.js +1 -1
  123. package/dist/chat/ui/code-lines.js +36 -36
  124. package/dist/chat/ui/code-streaming.js +1 -1
  125. package/dist/chat/ui/code-theme.js +7 -7
  126. package/dist/chat/ui/composer/ComposerControls.js +329 -21
  127. package/dist/chat/ui/composer/ComposerMenu.js +358 -30
  128. package/dist/chat/ui/composer/DraftParts.js +185 -11
  129. package/dist/chat/ui/composer/QueuedMessages.js +138 -13
  130. package/dist/chat/ui/composer/chips.js +29 -19
  131. package/dist/chat/ui/composer/editor.js +79 -63
  132. package/dist/chat/ui/composer/insert.js +26 -12
  133. package/dist/chat/ui/composer/key-handler.js +180 -127
  134. package/dist/chat/ui/composer/keys.js +90 -73
  135. package/dist/chat/ui/composer/menu-aria.js +18 -9
  136. package/dist/chat/ui/composer/placeholder.js +78 -31
  137. package/dist/chat/ui/composer/surface.js +13 -37
  138. package/dist/chat/ui/composer/use-chat-controls.js +230 -90
  139. package/dist/chat/ui/composer/use-compaction-offer.js +50 -18
  140. package/dist/chat/ui/composer/use-composer-draft.js +65 -34
  141. package/dist/chat/ui/composer/use-composer-menus.js +478 -193
  142. package/dist/chat/ui/composer/use-composer-submit.js +251 -109
  143. package/dist/chat/ui/composer/use-continuable-turn.js +33 -6
  144. package/dist/chat/ui/composer/use-draft-files.js +245 -93
  145. package/dist/chat/ui/composer/use-effort-stepper.d.ts +13 -0
  146. package/dist/chat/ui/composer/use-effort-stepper.js +88 -0
  147. package/dist/chat/ui/composer/use-notice.js +61 -16
  148. package/dist/chat/ui/composer/use-pending-requests.js +38 -17
  149. package/dist/chat/ui/composer/use-prompt-history.js +117 -45
  150. package/dist/chat/ui/composer/use-prompt-hold.js +119 -35
  151. package/dist/chat/ui/composer/use-take-back.js +94 -72
  152. package/dist/chat/ui/diff/ApprovalReview.js +101 -23
  153. package/dist/chat/ui/diff/DiffFallbackBoundary.js +21 -13
  154. package/dist/chat/ui/diff/DiffOmitted.js +56 -6
  155. package/dist/chat/ui/diff/DiffStack.js +92 -8
  156. package/dist/chat/ui/diff/DiffUnavailable.js +56 -6
  157. package/dist/chat/ui/diff/EditorEditDiff.js +263 -51
  158. package/dist/chat/ui/diff/EditorPatchDiff.js +39 -14
  159. package/dist/chat/ui/diff/LegacyDiffPool.js +27 -10
  160. package/dist/chat/ui/diff/LegacyEditDiff.js +97 -20
  161. package/dist/chat/ui/diff/LegacyUnifiedDiff.js +172 -42
  162. package/dist/chat/ui/diff/RawDiff.js +65 -5
  163. package/dist/chat/ui/diff/ReviewDiff.js +77 -5
  164. package/dist/chat/ui/diff/diff-props.js +1 -1
  165. package/dist/chat/ui/diff/diff-source-budget.js +46 -35
  166. package/dist/chat/ui/diff/editor-edit-model.js +18 -14
  167. package/dist/chat/ui/diff/review-plan.js +63 -40
  168. package/dist/chat/ui/diff/review-settle.js +24 -9
  169. package/dist/chat/ui/diff/syntax-runtime.js +236 -201
  170. package/dist/chat/ui/diff/use-review-stack.js +146 -25
  171. package/dist/chat/ui/diff-syntax.js +70 -58
  172. package/dist/chat/ui/diff-theme.js +31 -12
  173. package/dist/chat/ui/file-links.js +39 -10
  174. package/dist/chat/ui/find-reveal.js +29 -8
  175. package/dist/chat/ui/full-diff.js +17 -12
  176. package/dist/chat/ui/highlighter.js +143 -113
  177. package/dist/chat/ui/icons.js +16 -7
  178. package/dist/chat/ui/index.js +1 -1
  179. package/dist/chat/ui/intelligent-ui/UiBlockFrame.js +556 -82
  180. package/dist/chat/ui/intelligent-ui/UiFallbackPart.js +73 -5
  181. package/dist/chat/ui/intelligent-ui/UiReply.js +666 -262
  182. package/dist/chat/ui/intelligent-ui/block-local.js +59 -31
  183. package/dist/chat/ui/intelligent-ui/chart-data.js +77 -67
  184. package/dist/chat/ui/intelligent-ui/node-text.js +77 -91
  185. package/dist/chat/ui/intelligent-ui/registry.js +46 -46
  186. package/dist/chat/ui/intelligent-ui/render-context.js +1 -1
  187. package/dist/chat/ui/intelligent-ui/renderers/base-land.js +1 -1
  188. package/dist/chat/ui/intelligent-ui/renderers/binding.js +3 -3
  189. package/dist/chat/ui/intelligent-ui/renderers/chart.js +1223 -123
  190. package/dist/chat/ui/intelligent-ui/renderers/choices.js +312 -34
  191. package/dist/chat/ui/intelligent-ui/renderers/content.js +1241 -86
  192. package/dist/chat/ui/intelligent-ui/renderers/data.js +619 -54
  193. package/dist/chat/ui/intelligent-ui/renderers/inputs.js +868 -67
  194. package/dist/chat/ui/intelligent-ui/renderers/links.js +366 -62
  195. package/dist/chat/ui/intelligent-ui/renderers/map-slots.js +118 -60
  196. package/dist/chat/ui/intelligent-ui/renderers/map-style.js +85 -78
  197. package/dist/chat/ui/intelligent-ui/renderers/map-view.js +282 -217
  198. package/dist/chat/ui/intelligent-ui/renderers/map.js +621 -69
  199. package/dist/chat/ui/intelligent-ui/renderers/place-point.js +15 -8
  200. package/dist/chat/ui/intelligent-ui/renderers/structure.js +262 -20
  201. package/dist/chat/ui/intelligent-ui/renderers/text.js +674 -49
  202. package/dist/chat/ui/intelligent-ui/reply-parts.js +24 -15
  203. package/dist/chat/ui/intelligent-ui/table-data.js +97 -57
  204. package/dist/chat/ui/intelligent-ui/tones.js +31 -31
  205. package/dist/chat/ui/intelligent-ui/use-in-view.js +30 -12
  206. package/dist/chat/ui/intelligent-ui/use-later.js +28 -13
  207. package/dist/chat/ui/intelligent-ui/use-truncated.js +45 -21
  208. package/dist/chat/ui/intelligent-ui/use-ui-links.js +296 -109
  209. package/dist/chat/ui/intelligent-ui/use-ui-queries.js +256 -246
  210. package/dist/chat/ui/markdown-blocks.js +296 -262
  211. package/dist/chat/ui/mermaid.d.ts +8 -20
  212. package/dist/chat/ui/mermaid.js +47 -84
  213. package/dist/chat/ui/quote-selection.js +32 -29
  214. package/dist/chat/ui/rehype-chips.js +35 -23
  215. package/dist/chat/ui/rehype-fade.js +28 -17
  216. package/dist/chat/ui/remark-html-as-text.js +22 -15
  217. package/dist/chat/ui/reply-context.js +1 -1
  218. package/dist/chat/ui/reveal.js +161 -72
  219. package/dist/chat/ui/rows/ForksRow.js +226 -24
  220. package/dist/chat/ui/rows/GeneratedImageRow.js +541 -87
  221. package/dist/chat/ui/rows/MessageRows.js +1706 -159
  222. package/dist/chat/ui/rows/RowContainer.js +57 -7
  223. package/dist/chat/ui/rows/Rows.js +463 -54
  224. package/dist/chat/ui/rows/SubagentRow.js +577 -60
  225. package/dist/chat/ui/rows/TaskRow.js +359 -40
  226. package/dist/chat/ui/rows/VisualRow.js +233 -11
  227. package/dist/chat/ui/rows/WorkRows.d.ts +3 -0
  228. package/dist/chat/ui/rows/WorkRows.js +1945 -164
  229. package/dist/chat/ui/rows/WorkflowRow.js +756 -37
  230. package/dist/chat/ui/rows/row-rhythm.js +27 -17
  231. package/dist/chat/ui/theme-watch.js +26 -23
  232. package/dist/chat/ui/timestamp-format.js +4 -1
  233. package/dist/chat/ui/use-diff-source-tokens.js +70 -34
  234. package/dist/chat/ui/useToggleSet.js +51 -19
  235. package/dist/chat/ui/visual-theme.js +153 -128
  236. package/dist/chat/visual-bridge.js +123 -123
  237. package/dist/chat/visual-viewport.js +94 -83
  238. package/dist/chat/visuals.js +13 -5
  239. package/dist/host-hooks.d.ts +29 -0
  240. package/dist/host-hooks.js +78 -0
  241. package/dist/host.js +120 -48
  242. package/dist/index.js +1 -1
  243. package/dist/lazy.js +38 -32
  244. package/dist/locales/en/agent-chat.d.ts +42 -0
  245. package/dist/locales/en/agent-chat.js +755 -713
  246. package/dist/locales/en/agent-prompts.js +42 -42
  247. package/dist/locales/en/agent-providers.d.ts +1 -0
  248. package/dist/locales/en/agent-providers.js +166 -165
  249. package/dist/locales/en/agent-usage.d.ts +6 -0
  250. package/dist/locales/en/agent-usage.js +129 -123
  251. package/dist/locales/nl/agent-chat.d.ts +42 -0
  252. package/dist/locales/nl/agent-chat.js +755 -713
  253. package/dist/locales/nl/agent-prompts.js +42 -42
  254. package/dist/locales/nl/agent-providers.d.ts +1 -0
  255. package/dist/locales/nl/agent-providers.js +166 -165
  256. package/dist/locales/nl/agent-usage.d.ts +6 -0
  257. package/dist/locales/nl/agent-usage.js +129 -123
  258. package/dist/locales.js +14 -14
  259. package/dist/mounted-registry.js +31 -30
  260. package/dist/port-transport.js +122 -111
  261. package/dist/prompts/index.js +1 -1
  262. package/dist/prompts/logic/focus.js +15 -14
  263. package/dist/prompts/logic/keys.js +93 -59
  264. package/dist/prompts/logic/prompts.js +27 -14
  265. package/dist/prompts/logic/subjects.js +60 -46
  266. package/dist/prompts/logic/useFocusAfterAnswer.js +60 -20
  267. package/dist/prompts/logic/usePromptSession.js +88 -77
  268. package/dist/prompts/ui/ApprovalBody.js +246 -27
  269. package/dist/prompts/ui/PromptActions.js +215 -9
  270. package/dist/prompts/ui/PromptCard.js +215 -36
  271. package/dist/prompts/ui/PromptView.js +372 -34
  272. package/dist/prompts/ui/QuestionBody.js +269 -73
  273. package/dist/providers/AccountColors.js +36 -5
  274. package/dist/providers/AccountDetail.js +683 -50
  275. package/dist/providers/AccountVariables.js +139 -32
  276. package/dist/providers/AddAccountForm.js +125 -38
  277. package/dist/providers/CliDetail.js +343 -36
  278. package/dist/providers/InstallPage.js +644 -59
  279. package/dist/providers/ProviderList.d.ts +2 -1
  280. package/dist/providers/ProviderList.js +215 -23
  281. package/dist/providers/ProvidersPane.d.ts +4 -2
  282. package/dist/providers/ProvidersPane.js +244 -64
  283. package/dist/providers/account-actions.js +54 -30
  284. package/dist/providers/index.js +1 -1
  285. package/dist/providers/install-steps.js +12 -9
  286. package/dist/providers/pane-target.d.ts +3 -0
  287. package/dist/providers/pane-target.js +34 -13
  288. package/dist/providers/parts.js +62 -12
  289. package/dist/providers/provider-abilities.js +5 -5
  290. package/dist/providers/provider-groups.js +75 -40
  291. package/dist/providers/variables.js +73 -39
  292. package/dist/scope.js +6 -6
  293. package/dist/settings/sections.js +18 -18
  294. package/dist/state/chats.js +404 -192
  295. package/dist/state/index.js +1 -1
  296. package/dist/state/provider-accounts.js +70 -47
  297. package/dist/state/providers.js +45 -16
  298. package/dist/state/usage.js +154 -77
  299. package/dist/storage.js +69 -68
  300. package/dist/testing/index.js +1 -1
  301. package/dist/testing/prompts.js +105 -67
  302. package/dist/transport.js +10 -10
  303. package/dist/ui/PlainTextarea.js +27 -3
  304. package/dist/usage/LimitsList.js +646 -40
  305. package/dist/usage/UsageBreakdown.js +879 -38
  306. package/dist/usage/UsageChart.js +311 -32
  307. package/dist/usage/UsageDialog.js +46 -4
  308. package/dist/usage/UsageLimits.js +467 -34
  309. package/dist/usage/UsageLimitsCard.js +95 -11
  310. package/dist/usage/UsagePage.js +817 -96
  311. package/dist/usage/UsagePane.js +164 -10
  312. package/dist/usage/UsageSummary.js +151 -6
  313. package/dist/usage/UsageTiles.js +164 -14
  314. package/dist/usage/format.js +32 -32
  315. package/dist/usage/index.d.ts +1 -1
  316. package/dist/usage/index.js +2 -1
  317. package/dist/usage/limit-groups.d.ts +2 -0
  318. package/dist/usage/limit-groups.js +77 -59
  319. package/dist/usage/limits.js +78 -43
  320. package/dist/usage/money.js +20 -4
  321. package/dist/usage/summary.js +85 -64
  322. package/package.json +9 -9
  323. package/src/agents/ModelOptionControl.tsx +3 -1
  324. package/src/agents/option-words.ts +27 -0
  325. package/src/chat/account-choice.ts +41 -1
  326. package/src/chat/composer-effort.ts +32 -0
  327. package/src/chat/forks.ts +4 -5
  328. package/src/chat/index.ts +3 -1
  329. package/src/chat/logic/effort.ts +32 -0
  330. package/src/chat/logic/picker-entries.ts +45 -10
  331. package/src/chat/logic/resume-compaction.ts +95 -17
  332. package/src/chat/logic/timeline.ts +11 -3
  333. package/src/chat/logic/workflow.ts +86 -4
  334. package/src/chat/preferences.ts +35 -0
  335. package/src/chat/subagent-view.ts +2 -3
  336. package/src/chat/ui/AnsiOutput.tsx +1 -2
  337. package/src/chat/ui/BookmarkSubmenu.tsx +3 -3
  338. package/src/chat/ui/ChatActivity.tsx +14 -22
  339. package/src/chat/ui/ChatReferenceChip.tsx +2 -3
  340. package/src/chat/ui/Composer.tsx +15 -7
  341. package/src/chat/ui/EditDiff.tsx +2 -3
  342. package/src/chat/ui/LimitState.tsx +2 -2
  343. package/src/chat/ui/Markdown.tsx +10 -8
  344. package/src/chat/ui/MermaidBlock.tsx +57 -49
  345. package/src/chat/ui/Pickers.tsx +49 -29
  346. package/src/chat/ui/PromptComposer.tsx +7 -9
  347. package/src/chat/ui/ResumeCompactionDock.tsx +16 -4
  348. package/src/chat/ui/RunSettings.tsx +67 -28
  349. package/src/chat/ui/Scrubber.tsx +3 -3
  350. package/src/chat/ui/ShellCommand.tsx +2 -0
  351. package/src/chat/ui/SubagentInfo.tsx +2 -3
  352. package/src/chat/ui/SubagentTimeline.tsx +12 -16
  353. package/src/chat/ui/Timeline.tsx +6 -6
  354. package/src/chat/ui/UnifiedDiff.tsx +3 -4
  355. package/src/chat/ui/VisualFrame.tsx +5 -8
  356. package/src/chat/ui/code-theme.ts +4 -4
  357. package/src/chat/ui/composer/placeholder.ts +2 -2
  358. package/src/chat/ui/composer/use-compaction-offer.ts +36 -16
  359. package/src/chat/ui/composer/use-composer-menus.ts +4 -9
  360. package/src/chat/ui/composer/use-composer-submit.ts +2 -1
  361. package/src/chat/ui/composer/use-effort-stepper.ts +56 -0
  362. package/src/chat/ui/composer/use-notice.ts +2 -2
  363. package/src/chat/ui/diff/EditorEditDiff.tsx +9 -13
  364. package/src/chat/ui/diff/LegacyEditDiff.tsx +12 -17
  365. package/src/chat/ui/diff/LegacyUnifiedDiff.tsx +13 -21
  366. package/src/chat/ui/diff/use-review-stack.ts +4 -4
  367. package/src/chat/ui/diff-theme.ts +3 -3
  368. package/src/chat/ui/file-links.ts +2 -2
  369. package/src/chat/ui/intelligent-ui/UiReply.tsx +2 -0
  370. package/src/chat/ui/intelligent-ui/renderers/chart.tsx +3 -3
  371. package/src/chat/ui/intelligent-ui/renderers/content.tsx +5 -6
  372. package/src/chat/ui/intelligent-ui/renderers/map-view.tsx +2 -1
  373. package/src/chat/ui/intelligent-ui/renderers/map.tsx +2 -1
  374. package/src/chat/ui/intelligent-ui/use-truncated.ts +16 -19
  375. package/src/chat/ui/intelligent-ui/use-ui-links.ts +3 -3
  376. package/src/chat/ui/mermaid.ts +52 -96
  377. package/src/chat/ui/rows/ForksRow.tsx +3 -5
  378. package/src/chat/ui/rows/GeneratedImageRow.tsx +2 -1
  379. package/src/chat/ui/rows/MessageRows.tsx +12 -21
  380. package/src/chat/ui/rows/SubagentRow.tsx +3 -3
  381. package/src/chat/ui/rows/TaskRow.tsx +1 -1
  382. package/src/chat/ui/rows/WorkRows.tsx +11 -6
  383. package/src/chat/ui/rows/WorkflowRow.tsx +144 -54
  384. package/src/chat/ui/useToggleSet.ts +15 -18
  385. package/src/chat/ui/visual-theme.ts +2 -3
  386. package/src/host-hooks.ts +113 -0
  387. package/src/lazy.tsx +2 -0
  388. package/src/locales/en/agent-chat.ts +142 -108
  389. package/src/locales/en/agent-prompts.ts +7 -7
  390. package/src/locales/en/agent-providers.ts +35 -34
  391. package/src/locales/en/agent-usage.ts +26 -20
  392. package/src/locales/nl/agent-chat.ts +134 -100
  393. package/src/locales/nl/agent-prompts.ts +5 -5
  394. package/src/locales/nl/agent-providers.ts +33 -32
  395. package/src/locales/nl/agent-usage.ts +25 -20
  396. package/src/providers/CliDetail.tsx +2 -1
  397. package/src/providers/InstallPage.tsx +2 -4
  398. package/src/providers/ProviderList.tsx +12 -2
  399. package/src/providers/ProvidersPane.tsx +45 -15
  400. package/src/providers/pane-target.ts +20 -4
  401. package/src/state/chats.ts +2 -2
  402. package/src/usage/LimitsList.tsx +12 -13
  403. package/src/usage/UsageBreakdown.tsx +17 -6
  404. package/src/usage/UsageLimits.tsx +2 -1
  405. package/src/usage/UsagePage.tsx +3 -3
  406. package/src/usage/index.ts +1 -1
  407. package/src/usage/limit-groups.ts +12 -0
  408. package/src/usage/limits.ts +2 -2
  409. package/src/usage/money.ts +1 -2
package/dist/host.js CHANGED
@@ -1,51 +1,92 @@
1
+ import { c as _c } from "react/compiler-runtime";
1
2
  import { createContext, createElement, useContext, useState } from 'react';
2
3
  import { isApplePlatform } from '@adecore/ui';
3
4
  import { PlainTextarea } from './ui/PlainTextarea.js';
4
5
  const NO_PROMPTS = [];
5
6
  const NO_CHATS = [];
6
7
  const NO_ROWS = [];
7
- const NO_FIND = { open: false, bar: null, reveal: null, hitRows: NO_ROWS, currentRow: null };
8
+ const NO_FIND = {
9
+ open: false,
10
+ bar: null,
11
+ reveal: null,
12
+ hitRows: NO_ROWS,
13
+ currentRow: null
14
+ };
8
15
  const NO_SOURCES = [];
9
- const NO_URL = { url: null, failure: null };
10
- const NOWHERE = { title: null, go: () => undefined };
16
+ const NO_URL = {
17
+ url: null,
18
+ failure: null
19
+ };
20
+ const NOWHERE = {
21
+ title: null,
22
+ go: () => undefined
23
+ };
11
24
  const NO_CARDS = [];
12
25
  const DEFAULT_HOST = {
13
- accents: { all: [], featured: [], label: (id) => id, current: () => '' },
14
- isApplePlatform,
15
- isAppShortcut: () => false,
16
- notify: () => undefined,
17
- actions: null,
18
- searchFiles: null,
19
- attachments: { useUrl: () => NO_URL, read: () => Promise.reject(new Error('This app keeps no attached files')) },
20
- ReadImage: null,
21
- code: { useMode: () => 'light', useThemes: () => ({ light: 'github-light', dark: 'github-dark' }), custom: [] },
22
- useStreaming: () => 'words',
23
- useSendDelivery: () => 'queue',
24
- fileLinks: null,
25
- useTimelineFind: () => NO_FIND,
26
- dictation: { Textarea: PlainTextarea, composer: null },
27
- prompts: { useExtra: () => NO_PROMPTS, render: () => null, answer: () => Promise.reject(new Error('This app raises no prompts of its own')) },
28
- useReferableChats: () => NO_CHATS,
29
- openLogin: null,
30
- useLoginBlocked: () => null,
31
- useProjectLook: () => null,
32
- useMachineLabel: () => null,
33
- useChatPlace: () => NOWHERE,
34
- useContextSources: () => NO_SOURCES,
35
- useHidesFolder: () => false,
36
- useWelcome: () => false,
37
- tasks: { useTasks: () => undefined, useTask: () => null },
38
- confirm: { stopSubagents: (_scopeId, _chatId, run) => run(), stopTask: (_scopeId, _childId, _title, run) => run() },
39
- fork: null,
40
- openNewChat: null,
41
- openSettings: () => undefined,
42
- useResumeAtReset: () => true,
43
- useComposerPlaceholder: () => null,
44
- ComposerSlot: null,
45
- SubagentSlot: null,
46
- useThreadCards: () => NO_CARDS,
47
- useReplyAuthor: () => null,
48
- visuals: null
26
+ accents: {
27
+ all: [],
28
+ featured: [],
29
+ label: id => id,
30
+ current: () => ''
31
+ },
32
+ isApplePlatform,
33
+ isAppShortcut: () => false,
34
+ notify: () => undefined,
35
+ actions: null,
36
+ searchFiles: null,
37
+ attachments: {
38
+ useUrl: () => NO_URL,
39
+ read: () => Promise.reject(new Error('This app keeps no attached files'))
40
+ },
41
+ ReadImage: null,
42
+ code: {
43
+ useMode: () => 'light',
44
+ useThemes: () => ({
45
+ light: 'github-light',
46
+ dark: 'github-dark'
47
+ }),
48
+ custom: []
49
+ },
50
+ useStreaming: () => 'words',
51
+ useSendDelivery: () => 'queue',
52
+ fileLinks: null,
53
+ useTimelineFind: () => NO_FIND,
54
+ dictation: {
55
+ Textarea: PlainTextarea,
56
+ composer: null
57
+ },
58
+ prompts: {
59
+ useExtra: () => NO_PROMPTS,
60
+ render: () => null,
61
+ answer: () => Promise.reject(new Error('This app raises no prompts of its own'))
62
+ },
63
+ useReferableChats: () => NO_CHATS,
64
+ openLogin: null,
65
+ useLoginBlocked: () => null,
66
+ useProjectLook: () => null,
67
+ useMachineLabel: () => null,
68
+ useChatPlace: () => NOWHERE,
69
+ useContextSources: () => NO_SOURCES,
70
+ useHidesFolder: () => false,
71
+ useWelcome: () => false,
72
+ tasks: {
73
+ useTasks: () => undefined,
74
+ useTask: () => null
75
+ },
76
+ confirm: {
77
+ stopSubagents: (_scopeId, _chatId, run) => run(),
78
+ stopTask: (_scopeId, _childId, _title, run) => run()
79
+ },
80
+ fork: null,
81
+ openNewChat: null,
82
+ openSettings: () => undefined,
83
+ useResumeAtReset: () => true,
84
+ useComposerPlaceholder: () => null,
85
+ ComposerSlot: null,
86
+ SubagentSlot: null,
87
+ useThreadCards: () => NO_CARDS,
88
+ useReplyAuthor: () => null,
89
+ visuals: null
49
90
  };
50
91
  const ChatHostContext = createContext(DEFAULT_HOST);
51
92
  /*
@@ -55,15 +96,46 @@ const ChatHostContext = createContext(DEFAULT_HOST);
55
96
  * The host is read once, as the provider mounts, since a hook that changed under a mounted view would
56
97
  * break the order of its hooks: a provider that gets another `host` throws, and a new `key` remounts it.
57
98
  */
58
- export function ChatHostProvider({ host, children }) {
59
- const parent = useContext(ChatHostContext);
60
- const [pinned] = useState(() => ({ host, value: { ...parent, ...host } }));
61
- if (pinned.host !== host) {
62
- throw new Error('A ChatHostProvider reads its host once: hand it the same object on every render, or a new key to mount it with another');
63
- }
64
- return createElement(ChatHostContext.Provider, { value: pinned.value }, children);
99
+ export function ChatHostProvider(t0) {
100
+ const $ = _c(6);
101
+ const {
102
+ host,
103
+ children
104
+ } = t0;
105
+ const parent = useContext(ChatHostContext);
106
+ let t1;
107
+ if ($[0] !== host || $[1] !== parent) {
108
+ t1 = () => ({
109
+ host,
110
+ value: {
111
+ ...parent,
112
+ ...host
113
+ }
114
+ });
115
+ $[0] = host;
116
+ $[1] = parent;
117
+ $[2] = t1;
118
+ } else {
119
+ t1 = $[2];
120
+ }
121
+ const [pinned] = useState(t1);
122
+ if (pinned.host !== host) {
123
+ throw new Error("A ChatHostProvider reads its host once: hand it the same object on every render, or a new key to mount it with another");
124
+ }
125
+ let t2;
126
+ if ($[3] !== children || $[4] !== pinned.value) {
127
+ t2 = createElement(ChatHostContext.Provider, {
128
+ value: pinned.value
129
+ }, children);
130
+ $[3] = children;
131
+ $[4] = pinned.value;
132
+ $[5] = t2;
133
+ } else {
134
+ t2 = $[5];
135
+ }
136
+ return t2;
65
137
  }
66
138
  /* The host of the nearest `ChatHostProvider`, or the defaults outside one. */
67
139
  export function useChatHost() {
68
- return useContext(ChatHostContext);
69
- }
140
+ return useContext(ChatHostContext);
141
+ }
package/dist/index.js CHANGED
@@ -7,4 +7,4 @@ export { configureAgentMarks } from './agents/agent-marks.js';
7
7
  export { configureChatStorage } from './storage.js';
8
8
  export { setLazyPrefetch, onLazyOpenError } from './lazy.js';
9
9
  export { MountedRegistry } from './mounted-registry.js';
10
- export { PROVIDERS_SECTION, USAGE_SECTION, settingsSection } from './settings/sections.js';
10
+ export { PROVIDERS_SECTION, USAGE_SECTION, settingsSection } from './settings/sections.js';
package/dist/lazy.js CHANGED
@@ -1,6 +1,6 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
1
  import { lazy } from 'react';
3
2
  import { LoadedComponent } from '@adecore/ui';
3
+ import { jsx as _jsx } from "react/jsx-runtime";
4
4
  const loaders = [];
5
5
  let register = null;
6
6
  const openErrorListeners = new Set();
@@ -9,20 +9,20 @@ const openErrorListeners = new Set();
9
9
  * one made from now on. Without it they load on their first render, as `React.lazy` does.
10
10
  */
11
11
  export function setLazyPrefetch(next) {
12
- register = next;
13
- for (const load of loaders) {
14
- next(load);
15
- }
12
+ register = next;
13
+ for (const load of loaders) {
14
+ next(load);
15
+ }
16
16
  }
17
17
  /*
18
18
  * Tells `listener` when a module the chat loads for a render fails to load, the way `onLazyOpenError`
19
19
  * of `@adecore/ui` does for the app's own. A failed prefetch never reaches it.
20
20
  */
21
21
  export function onLazyOpenError(listener) {
22
- openErrorListeners.add(listener);
23
- return () => {
24
- openErrorListeners.delete(listener);
25
- };
22
+ openErrorListeners.add(listener);
23
+ return () => {
24
+ openErrorListeners.delete(listener);
25
+ };
26
26
  }
27
27
  /*
28
28
  * `React.lazy` for a module that exports its component by name, `default` included. Once the module
@@ -30,28 +30,34 @@ export function onLazyOpenError(listener) {
30
30
  * module the prefetcher already fetched.
31
31
  */
32
32
  export function lazyNamed(load, name, options) {
33
- // Through `LoadedComponent`, so a `LazyBoundary` around it draws the moment the module lands.
34
- const loaded = new LoadedComponent(async () => (await load())[name]);
35
- const open = () => loaded.load();
36
- if (options?.prefetch !== false) {
37
- loaders.push(open);
38
- register?.(open);
33
+ // Through `LoadedComponent`, so a `LazyBoundary` around it draws the moment the module lands.
34
+ const loaded = new LoadedComponent(async () => (await load())[name]);
35
+ const open = () => loaded.load();
36
+ if (options?.prefetch !== false) {
37
+ loaders.push(open);
38
+ register?.(open);
39
+ }
40
+ // Only a render loads through here; a prefetch calls `open` itself, so its failures report nothing.
41
+ const Lazy = lazy(async () => {
42
+ try {
43
+ return {
44
+ default: await open()
45
+ };
46
+ } catch (error) {
47
+ for (const listener of openErrorListeners) {
48
+ listener(error);
49
+ }
50
+ throw error;
39
51
  }
40
- // Only a render loads through here; a prefetch calls `open` itself, so its failures report nothing.
41
- const Lazy = lazy(async () => {
42
- try {
43
- return { default: await open() };
44
- }
45
- catch (error) {
46
- for (const listener of openErrorListeners) {
47
- listener(error);
48
- }
49
- throw error;
50
- }
52
+ });
53
+ const LazyNamed = props => {
54
+ // `loaded` fills in place; compiled, the element drawn before the module landed would stay.
55
+ 'use no memo';
56
+
57
+ const Component = loaded.current ?? Lazy;
58
+ return /*#__PURE__*/_jsx(Component, {
59
+ ...props
51
60
  });
52
- const LazyNamed = (props) => {
53
- const Component = loaded.current ?? Lazy;
54
- return _jsx(Component, { ...props });
55
- };
56
- return LazyNamed;
57
- }
61
+ };
62
+ return LazyNamed;
63
+ }
@@ -48,6 +48,10 @@ declare const _default: {
48
48
  carried: string;
49
49
  keep: string;
50
50
  compact: string;
51
+ cacheExpired: {
52
+ title: string;
53
+ carried: string;
54
+ };
51
55
  };
52
56
  goal: {
53
57
  status: {
@@ -173,6 +177,14 @@ declare const _default: {
173
177
  waiting: string;
174
178
  stopped: string;
175
179
  stalled: string;
180
+ running: string;
181
+ done: string;
182
+ failed: string;
183
+ agents_one: string;
184
+ agents_other: string;
185
+ working: string;
186
+ finished: string;
187
+ failedCount: string;
176
188
  };
177
189
  };
178
190
  work: {
@@ -305,6 +317,10 @@ declare const _default: {
305
317
  anyCli: string;
306
318
  };
307
319
  notice: {
320
+ effort: string;
321
+ effortHighest: string;
322
+ effortLowest: string;
323
+ noEffort: string;
308
324
  clearFailed: string;
309
325
  stashChatsDropped_one: string;
310
326
  stashChatsDropped_other: string;
@@ -444,6 +460,8 @@ declare const _default: {
444
460
  requires: string;
445
461
  requiresHere: string;
446
462
  providerSettings: string;
463
+ star: string;
464
+ unstar: string;
447
465
  };
448
466
  stash: {
449
467
  title: string;
@@ -685,6 +703,30 @@ declare const _default: {
685
703
  };
686
704
  };
687
705
  };
706
+ modelOptions: {
707
+ effort: {
708
+ label: string;
709
+ choices: {
710
+ low: string;
711
+ medium: string;
712
+ high: string;
713
+ xhigh: string;
714
+ max: string;
715
+ };
716
+ };
717
+ contextWindow: {
718
+ label: string;
719
+ };
720
+ fastMode: {
721
+ label: string;
722
+ };
723
+ thinking: {
724
+ label: string;
725
+ };
726
+ serviceTier: {
727
+ label: string;
728
+ };
729
+ };
688
730
  readingWidth: {
689
731
  label: string;
690
732
  narrow: {