@artooi/agents-web-components 0.0.0-stage → 0.1.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 (543) hide show
  1. package/CHANGELOG.md +68 -0
  2. package/LICENSE +21 -0
  3. package/README.md +4397 -2
  4. package/dist/agents-web-components.bundle.js +5708 -0
  5. package/dist/agents-web-components.bundle.js.map +7 -0
  6. package/dist/bundle.d.ts +3 -0
  7. package/dist/bundle.d.ts.map +1 -0
  8. package/dist/chat.d.ts +3 -0
  9. package/dist/chat.d.ts.map +1 -0
  10. package/dist/chat.js +16373 -0
  11. package/dist/chat.js.map +7 -0
  12. package/dist/chunk-ARNLFGCC.js +7715 -0
  13. package/dist/chunk-ARNLFGCC.js.map +7 -0
  14. package/dist/constants.d.ts +575 -0
  15. package/dist/constants.d.ts.map +1 -0
  16. package/dist/core/activity_registration.d.ts +19 -0
  17. package/dist/core/activity_registration.d.ts.map +1 -0
  18. package/dist/core/activity_registry.d.ts +46 -0
  19. package/dist/core/activity_registry.d.ts.map +1 -0
  20. package/dist/core/activity_renderer.d.ts +20 -0
  21. package/dist/core/activity_renderer.d.ts.map +1 -0
  22. package/dist/core/ag_ui_chat.d.ts +836 -0
  23. package/dist/core/ag_ui_chat.d.ts.map +1 -0
  24. package/dist/core/agui_client.d.ts +370 -0
  25. package/dist/core/agui_client.d.ts.map +1 -0
  26. package/dist/core/attachment.d.ts +42 -0
  27. package/dist/core/attachment.d.ts.map +1 -0
  28. package/dist/core/chat_registry.d.ts +23 -0
  29. package/dist/core/chat_registry.d.ts.map +1 -0
  30. package/dist/core/client_seed.d.ts +27 -0
  31. package/dist/core/client_seed.d.ts.map +1 -0
  32. package/dist/core/conversation_store.d.ts +195 -0
  33. package/dist/core/conversation_store.d.ts.map +1 -0
  34. package/dist/core/create_http_agent.d.ts +57 -0
  35. package/dist/core/create_http_agent.d.ts.map +1 -0
  36. package/dist/core/define_chat.d.ts +13 -0
  37. package/dist/core/define_chat.d.ts.map +1 -0
  38. package/dist/core/events/attachments_detail.d.ts +9 -0
  39. package/dist/core/events/attachments_detail.d.ts.map +1 -0
  40. package/dist/core/events/bar_height_detail.d.ts +6 -0
  41. package/dist/core/events/bar_height_detail.d.ts.map +1 -0
  42. package/dist/core/events/custom_agent_detail.d.ts +8 -0
  43. package/dist/core/events/custom_agent_detail.d.ts.map +1 -0
  44. package/dist/core/events/dock_width_detail.d.ts +8 -0
  45. package/dist/core/events/dock_width_detail.d.ts.map +1 -0
  46. package/dist/core/events/feedback_detail.d.ts +28 -0
  47. package/dist/core/events/feedback_detail.d.ts.map +1 -0
  48. package/dist/core/events/invalidate_detail.d.ts +16 -0
  49. package/dist/core/events/invalidate_detail.d.ts.map +1 -0
  50. package/dist/core/events/maximize_detail.d.ts +5 -0
  51. package/dist/core/events/maximize_detail.d.ts.map +1 -0
  52. package/dist/core/events/run_finished_detail.d.ts +36 -0
  53. package/dist/core/events/run_finished_detail.d.ts.map +1 -0
  54. package/dist/core/events/state_detail.d.ts +5 -0
  55. package/dist/core/events/state_detail.d.ts.map +1 -0
  56. package/dist/core/events/submit_detail.d.ts +8 -0
  57. package/dist/core/events/submit_detail.d.ts.map +1 -0
  58. package/dist/core/events/thread_detail.d.ts +27 -0
  59. package/dist/core/events/thread_detail.d.ts.map +1 -0
  60. package/dist/core/events/thread_title_detail.d.ts +8 -0
  61. package/dist/core/events/thread_title_detail.d.ts.map +1 -0
  62. package/dist/core/events/toggle_detail.d.ts +5 -0
  63. package/dist/core/events/toggle_detail.d.ts.map +1 -0
  64. package/dist/core/events/tool_run.d.ts +11 -0
  65. package/dist/core/events/tool_run.d.ts.map +1 -0
  66. package/dist/core/events/unread_detail.d.ts +11 -0
  67. package/dist/core/events/unread_detail.d.ts.map +1 -0
  68. package/dist/core/message_role.d.ts +4 -0
  69. package/dist/core/message_role.d.ts.map +1 -0
  70. package/dist/core/read_flag.d.ts +11 -0
  71. package/dist/core/read_flag.d.ts.map +1 -0
  72. package/dist/core/read_json_attribute.d.ts +15 -0
  73. package/dist/core/read_json_attribute.d.ts.map +1 -0
  74. package/dist/core/read_max_tool_rounds.d.ts +9 -0
  75. package/dist/core/read_max_tool_rounds.d.ts.map +1 -0
  76. package/dist/core/remote_conversation_store.d.ts +71 -0
  77. package/dist/core/remote_conversation_store.d.ts.map +1 -0
  78. package/dist/core/run_handlers.d.ts +85 -0
  79. package/dist/core/run_handlers.d.ts.map +1 -0
  80. package/dist/core/run_index.d.ts +58 -0
  81. package/dist/core/run_index.d.ts.map +1 -0
  82. package/dist/core/storage_scope.d.ts +118 -0
  83. package/dist/core/storage_scope.d.ts.map +1 -0
  84. package/dist/core/tool_outcome.d.ts +27 -0
  85. package/dist/core/tool_outcome.d.ts.map +1 -0
  86. package/dist/core/transcribe_audio.d.ts +32 -0
  87. package/dist/core/transcribe_audio.d.ts.map +1 -0
  88. package/dist/core/upload_attachment.d.ts +44 -0
  89. package/dist/core/upload_attachment.d.ts.map +1 -0
  90. package/dist/core/utils.d.ts +117 -0
  91. package/dist/core/utils.d.ts.map +1 -0
  92. package/dist/dom/animations.d.ts +122 -0
  93. package/dist/dom/animations.d.ts.map +1 -0
  94. package/dist/dom/dom_driver.d.ts +28 -0
  95. package/dist/dom/dom_driver.d.ts.map +1 -0
  96. package/dist/dom/highlight_overlay.d.ts +39 -0
  97. package/dist/dom/highlight_overlay.d.ts.map +1 -0
  98. package/dist/dom/native_setter.d.ts +5 -0
  99. package/dist/dom/native_setter.d.ts.map +1 -0
  100. package/dist/dom/ring_color.d.ts +16 -0
  101. package/dist/dom/ring_color.d.ts.map +1 -0
  102. package/dist/dom/utils.d.ts +3 -0
  103. package/dist/dom/utils.d.ts.map +1 -0
  104. package/dist/index.d.ts +62 -0
  105. package/dist/index.d.ts.map +1 -0
  106. package/dist/index.js +223 -0
  107. package/dist/index.js.map +7 -0
  108. package/dist/skills/fill_template.d.ts +16 -0
  109. package/dist/skills/fill_template.d.ts.map +1 -0
  110. package/dist/skills/parse_skills.d.ts +8 -0
  111. package/dist/skills/parse_skills.d.ts.map +1 -0
  112. package/dist/skills/skill.d.ts +33 -0
  113. package/dist/skills/skill.d.ts.map +1 -0
  114. package/dist/skills/skill_catalog.d.ts +69 -0
  115. package/dist/skills/skill_catalog.d.ts.map +1 -0
  116. package/dist/skills/skill_name_from.d.ts +12 -0
  117. package/dist/skills/skill_name_from.d.ts.map +1 -0
  118. package/dist/tools/chat_surface_tools.d.ts +77 -0
  119. package/dist/tools/chat_surface_tools.d.ts.map +1 -0
  120. package/dist/tools/client_tool_registry.d.ts +58 -0
  121. package/dist/tools/client_tool_registry.d.ts.map +1 -0
  122. package/dist/tools/is_destructive.d.ts +14 -0
  123. package/dist/tools/is_destructive.d.ts.map +1 -0
  124. package/dist/tools/is_navigates.d.ts +9 -0
  125. package/dist/tools/is_navigates.d.ts.map +1 -0
  126. package/dist/tools/page_action_tools.d.ts +30 -0
  127. package/dist/tools/page_action_tools.d.ts.map +1 -0
  128. package/dist/tools/page_map.d.ts +16 -0
  129. package/dist/tools/page_map.d.ts.map +1 -0
  130. package/dist/tools/page_state.d.ts +27 -0
  131. package/dist/tools/page_state.d.ts.map +1 -0
  132. package/dist/tools/parse_tool_catalog.d.ts +21 -0
  133. package/dist/tools/parse_tool_catalog.d.ts.map +1 -0
  134. package/dist/tools/route_map.d.ts +37 -0
  135. package/dist/tools/route_map.d.ts.map +1 -0
  136. package/dist/tools/tool_catalog.d.ts +86 -0
  137. package/dist/tools/tool_catalog.d.ts.map +1 -0
  138. package/dist/tools/tool_dispatch.d.ts +82 -0
  139. package/dist/tools/tool_dispatch.d.ts.map +1 -0
  140. package/dist/ui/charts/chart_block.d.ts +57 -0
  141. package/dist/ui/charts/chart_block.d.ts.map +1 -0
  142. package/dist/ui/charts/chart_spec_from.d.ts +12 -0
  143. package/dist/ui/charts/chart_spec_from.d.ts.map +1 -0
  144. package/dist/ui/charts/chart_styles.d.ts +2 -0
  145. package/dist/ui/charts/chart_styles.d.ts.map +1 -0
  146. package/dist/ui/charts/chart_tool.d.ts +15 -0
  147. package/dist/ui/charts/chart_tool.d.ts.map +1 -0
  148. package/dist/ui/composer/attachment_styles.d.ts +2 -0
  149. package/dist/ui/composer/attachment_styles.d.ts.map +1 -0
  150. package/dist/ui/composer/attachment_tray.d.ts +53 -0
  151. package/dist/ui/composer/attachment_tray.d.ts.map +1 -0
  152. package/dist/ui/composer/auto_grow.d.ts +10 -0
  153. package/dist/ui/composer/auto_grow.d.ts.map +1 -0
  154. package/dist/ui/composer/build_composer.d.ts +32 -0
  155. package/dist/ui/composer/build_composer.d.ts.map +1 -0
  156. package/dist/ui/composer/composer_attachments.d.ts +57 -0
  157. package/dist/ui/composer/composer_attachments.d.ts.map +1 -0
  158. package/dist/ui/composer/composer_styles.d.ts +2 -0
  159. package/dist/ui/composer/composer_styles.d.ts.map +1 -0
  160. package/dist/ui/composer/composer_voice.d.ts +48 -0
  161. package/dist/ui/composer/composer_voice.d.ts.map +1 -0
  162. package/dist/ui/composer/skill_styles.d.ts +2 -0
  163. package/dist/ui/composer/skill_styles.d.ts.map +1 -0
  164. package/dist/ui/composer/skills_menu.d.ts +34 -0
  165. package/dist/ui/composer/skills_menu.d.ts.map +1 -0
  166. package/dist/ui/composer/voice_input.d.ts +46 -0
  167. package/dist/ui/composer/voice_input.d.ts.map +1 -0
  168. package/dist/ui/excerpts/attach_copy_buttons.d.ts +13 -0
  169. package/dist/ui/excerpts/attach_copy_buttons.d.ts.map +1 -0
  170. package/dist/ui/excerpts/copy_payload.d.ts +30 -0
  171. package/dist/ui/excerpts/copy_payload.d.ts.map +1 -0
  172. package/dist/ui/excerpts/page_quote_offer.d.ts +33 -0
  173. package/dist/ui/excerpts/page_quote_offer.d.ts.map +1 -0
  174. package/dist/ui/excerpts/place_offer.d.ts +9 -0
  175. package/dist/ui/excerpts/place_offer.d.ts.map +1 -0
  176. package/dist/ui/excerpts/quote_selection.d.ts +66 -0
  177. package/dist/ui/excerpts/quote_selection.d.ts.map +1 -0
  178. package/dist/ui/excerpts/transcript_quote_offer.d.ts +57 -0
  179. package/dist/ui/excerpts/transcript_quote_offer.d.ts.map +1 -0
  180. package/dist/ui/fill_ui_string.d.ts +32 -0
  181. package/dist/ui/fill_ui_string.d.ts.map +1 -0
  182. package/dist/ui/history/checkpoint_menu.d.ts +41 -0
  183. package/dist/ui/history/checkpoint_menu.d.ts.map +1 -0
  184. package/dist/ui/history/conversation_history.d.ts +317 -0
  185. package/dist/ui/history/conversation_history.d.ts.map +1 -0
  186. package/dist/ui/history/history_styles.d.ts +2 -0
  187. package/dist/ui/history/history_styles.d.ts.map +1 -0
  188. package/dist/ui/history/relative_time.d.ts +23 -0
  189. package/dist/ui/history/relative_time.d.ts.map +1 -0
  190. package/dist/ui/history/thread_drawer.d.ts +64 -0
  191. package/dist/ui/history/thread_drawer.d.ts.map +1 -0
  192. package/dist/ui/history/utils.d.ts +2 -0
  193. package/dist/ui/history/utils.d.ts.map +1 -0
  194. package/dist/ui/interrupts/approval_card.d.ts +64 -0
  195. package/dist/ui/interrupts/approval_card.d.ts.map +1 -0
  196. package/dist/ui/interrupts/approval_styles.d.ts +2 -0
  197. package/dist/ui/interrupts/approval_styles.d.ts.map +1 -0
  198. package/dist/ui/interrupts/confirmation_card.d.ts +51 -0
  199. package/dist/ui/interrupts/confirmation_card.d.ts.map +1 -0
  200. package/dist/ui/interrupts/confirmation_styles.d.ts +2 -0
  201. package/dist/ui/interrupts/confirmation_styles.d.ts.map +1 -0
  202. package/dist/ui/interrupts/pending_decision.d.ts +22 -0
  203. package/dist/ui/interrupts/pending_decision.d.ts.map +1 -0
  204. package/dist/ui/interrupts/question_card.d.ts +49 -0
  205. package/dist/ui/interrupts/question_card.d.ts.map +1 -0
  206. package/dist/ui/interrupts/question_styles.d.ts +2 -0
  207. package/dist/ui/interrupts/question_styles.d.ts.map +1 -0
  208. package/dist/ui/place/place.d.ts +17 -0
  209. package/dist/ui/place/place.d.ts.map +1 -0
  210. package/dist/ui/place/place_chip.d.ts +26 -0
  211. package/dist/ui/place/place_chip.d.ts.map +1 -0
  212. package/dist/ui/place/place_from_route.d.ts +9 -0
  213. package/dist/ui/place/place_from_route.d.ts.map +1 -0
  214. package/dist/ui/place/place_styles.d.ts +2 -0
  215. package/dist/ui/place/place_styles.d.ts.map +1 -0
  216. package/dist/ui/placement/clamp_launcher.d.ts +20 -0
  217. package/dist/ui/placement/clamp_launcher.d.ts.map +1 -0
  218. package/dist/ui/placement/clamp_panel.d.ts +13 -0
  219. package/dist/ui/placement/clamp_panel.d.ts.map +1 -0
  220. package/dist/ui/placement/collapse_styles.d.ts +2 -0
  221. package/dist/ui/placement/collapse_styles.d.ts.map +1 -0
  222. package/dist/ui/placement/dock_styles.d.ts +2 -0
  223. package/dist/ui/placement/dock_styles.d.ts.map +1 -0
  224. package/dist/ui/placement/embedded_styles.d.ts +2 -0
  225. package/dist/ui/placement/embedded_styles.d.ts.map +1 -0
  226. package/dist/ui/placement/launcher_drag.d.ts +49 -0
  227. package/dist/ui/placement/launcher_drag.d.ts.map +1 -0
  228. package/dist/ui/placement/launcher_placement.d.ts +77 -0
  229. package/dist/ui/placement/launcher_placement.d.ts.map +1 -0
  230. package/dist/ui/placement/launcher_styles.d.ts +2 -0
  231. package/dist/ui/placement/launcher_styles.d.ts.map +1 -0
  232. package/dist/ui/placement/page_styles.d.ts +2 -0
  233. package/dist/ui/placement/page_styles.d.ts.map +1 -0
  234. package/dist/ui/placement/panel_drag.d.ts +40 -0
  235. package/dist/ui/placement/panel_drag.d.ts.map +1 -0
  236. package/dist/ui/placement/panel_placement.d.ts +173 -0
  237. package/dist/ui/placement/panel_placement.d.ts.map +1 -0
  238. package/dist/ui/placement/place_widget.d.ts +31 -0
  239. package/dist/ui/placement/place_widget.d.ts.map +1 -0
  240. package/dist/ui/placement/preset_styles.d.ts +2 -0
  241. package/dist/ui/placement/preset_styles.d.ts.map +1 -0
  242. package/dist/ui/placement/resize_handle.d.ts +78 -0
  243. package/dist/ui/placement/resize_handle.d.ts.map +1 -0
  244. package/dist/ui/placement/resize_styles.d.ts +2 -0
  245. package/dist/ui/placement/resize_styles.d.ts.map +1 -0
  246. package/dist/ui/placement/sidebar_styles.d.ts +2 -0
  247. package/dist/ui/placement/sidebar_styles.d.ts.map +1 -0
  248. package/dist/ui/placement/small_viewport_styles.d.ts +2 -0
  249. package/dist/ui/placement/small_viewport_styles.d.ts.map +1 -0
  250. package/dist/ui/placement/surface_for.d.ts +93 -0
  251. package/dist/ui/placement/surface_for.d.ts.map +1 -0
  252. package/dist/ui/progress/prettify_tool_name.d.ts +11 -0
  253. package/dist/ui/progress/prettify_tool_name.d.ts.map +1 -0
  254. package/dist/ui/progress/run_announcer.d.ts +41 -0
  255. package/dist/ui/progress/run_announcer.d.ts.map +1 -0
  256. package/dist/ui/progress/run_notice.d.ts +21 -0
  257. package/dist/ui/progress/run_notice.d.ts.map +1 -0
  258. package/dist/ui/progress/run_notice_styles.d.ts +2 -0
  259. package/dist/ui/progress/run_notice_styles.d.ts.map +1 -0
  260. package/dist/ui/progress/subagent_panel.d.ts +101 -0
  261. package/dist/ui/progress/subagent_panel.d.ts.map +1 -0
  262. package/dist/ui/progress/subagent_progress.d.ts +57 -0
  263. package/dist/ui/progress/subagent_progress.d.ts.map +1 -0
  264. package/dist/ui/progress/subagent_update.d.ts +28 -0
  265. package/dist/ui/progress/subagent_update.d.ts.map +1 -0
  266. package/dist/ui/progress/thoughts_block.d.ts +57 -0
  267. package/dist/ui/progress/thoughts_block.d.ts.map +1 -0
  268. package/dist/ui/progress/thoughts_styles.d.ts +2 -0
  269. package/dist/ui/progress/thoughts_styles.d.ts.map +1 -0
  270. package/dist/ui/progress/tool_call_card.d.ts +167 -0
  271. package/dist/ui/progress/tool_call_card.d.ts.map +1 -0
  272. package/dist/ui/progress/tool_group_styles.d.ts +2 -0
  273. package/dist/ui/progress/tool_group_styles.d.ts.map +1 -0
  274. package/dist/ui/progress/tool_step_group.d.ts +50 -0
  275. package/dist/ui/progress/tool_step_group.d.ts.map +1 -0
  276. package/dist/ui/progress/tool_step_styles.d.ts +2 -0
  277. package/dist/ui/progress/tool_step_styles.d.ts.map +1 -0
  278. package/dist/ui/shell/adopt_styles.d.ts +28 -0
  279. package/dist/ui/shell/adopt_styles.d.ts.map +1 -0
  280. package/dist/ui/shell/build_header.d.ts +45 -0
  281. package/dist/ui/shell/build_header.d.ts.map +1 -0
  282. package/dist/ui/shell/build_launcher.d.ts +33 -0
  283. package/dist/ui/shell/build_launcher.d.ts.map +1 -0
  284. package/dist/ui/shell/collapse_glyph.d.ts +14 -0
  285. package/dist/ui/shell/collapse_glyph.d.ts.map +1 -0
  286. package/dist/ui/shell/frame_styles.d.ts +2 -0
  287. package/dist/ui/shell/frame_styles.d.ts.map +1 -0
  288. package/dist/ui/shell/glyph_slot.d.ts +7 -0
  289. package/dist/ui/shell/glyph_slot.d.ts.map +1 -0
  290. package/dist/ui/shell/header_button.d.ts +11 -0
  291. package/dist/ui/shell/header_button.d.ts.map +1 -0
  292. package/dist/ui/shell/icon_element.d.ts +12 -0
  293. package/dist/ui/shell/icon_element.d.ts.map +1 -0
  294. package/dist/ui/shell/is_unread_badge_enabled.d.ts +10 -0
  295. package/dist/ui/shell/is_unread_badge_enabled.d.ts.map +1 -0
  296. package/dist/ui/shell/read_launcher_icon_url.d.ts +8 -0
  297. package/dist/ui/shell/read_launcher_icon_url.d.ts.map +1 -0
  298. package/dist/ui/shell/theme_styles.d.ts +2 -0
  299. package/dist/ui/shell/theme_styles.d.ts.map +1 -0
  300. package/dist/ui/shell/token_styles.d.ts +2 -0
  301. package/dist/ui/shell/token_styles.d.ts.map +1 -0
  302. package/dist/ui/styles.d.ts +2 -0
  303. package/dist/ui/styles.d.ts.map +1 -0
  304. package/dist/ui/themes/classic_styles.d.ts +2 -0
  305. package/dist/ui/themes/classic_styles.d.ts.map +1 -0
  306. package/dist/ui/themes/classic_tokens.d.ts +2 -0
  307. package/dist/ui/themes/classic_tokens.d.ts.map +1 -0
  308. package/dist/ui/themes/code_tokens.d.ts +2 -0
  309. package/dist/ui/themes/code_tokens.d.ts.map +1 -0
  310. package/dist/ui/themes/ledger_styles.d.ts +2 -0
  311. package/dist/ui/themes/ledger_styles.d.ts.map +1 -0
  312. package/dist/ui/themes/ledger_tokens.d.ts +2 -0
  313. package/dist/ui/themes/ledger_tokens.d.ts.map +1 -0
  314. package/dist/ui/themes/modern_styles.d.ts +2 -0
  315. package/dist/ui/themes/modern_styles.d.ts.map +1 -0
  316. package/dist/ui/themes/quiet_styles.d.ts +2 -0
  317. package/dist/ui/themes/quiet_styles.d.ts.map +1 -0
  318. package/dist/ui/themes/scheme_styles.d.ts +2 -0
  319. package/dist/ui/themes/scheme_styles.d.ts.map +1 -0
  320. package/dist/ui/themes/soft_styles.d.ts +2 -0
  321. package/dist/ui/themes/soft_styles.d.ts.map +1 -0
  322. package/dist/ui/themes/soft_tokens.d.ts +2 -0
  323. package/dist/ui/themes/soft_tokens.d.ts.map +1 -0
  324. package/dist/ui/themes/theme_hosts.d.ts +15 -0
  325. package/dist/ui/themes/theme_hosts.d.ts.map +1 -0
  326. package/dist/ui/transcript/answer_actions.d.ts +50 -0
  327. package/dist/ui/transcript/answer_actions.d.ts.map +1 -0
  328. package/dist/ui/transcript/answer_stream.d.ts +56 -0
  329. package/dist/ui/transcript/answer_stream.d.ts.map +1 -0
  330. package/dist/ui/transcript/attachment_chip_styles.d.ts +2 -0
  331. package/dist/ui/transcript/attachment_chip_styles.d.ts.map +1 -0
  332. package/dist/ui/transcript/attachment_chips.d.ts +21 -0
  333. package/dist/ui/transcript/attachment_chips.d.ts.map +1 -0
  334. package/dist/ui/transcript/build_transcript.d.ts +21 -0
  335. package/dist/ui/transcript/build_transcript.d.ts.map +1 -0
  336. package/dist/ui/transcript/greeting_styles.d.ts +2 -0
  337. package/dist/ui/transcript/greeting_styles.d.ts.map +1 -0
  338. package/dist/ui/transcript/groups_tool_steps.d.ts +13 -0
  339. package/dist/ui/transcript/groups_tool_steps.d.ts.map +1 -0
  340. package/dist/ui/transcript/message_action_styles.d.ts +2 -0
  341. package/dist/ui/transcript/message_action_styles.d.ts.map +1 -0
  342. package/dist/ui/transcript/message_actions.d.ts +74 -0
  343. package/dist/ui/transcript/message_actions.d.ts.map +1 -0
  344. package/dist/ui/transcript/message_styles.d.ts +2 -0
  345. package/dist/ui/transcript/message_styles.d.ts.map +1 -0
  346. package/dist/ui/transcript/render_markdown.d.ts +40 -0
  347. package/dist/ui/transcript/render_markdown.d.ts.map +1 -0
  348. package/dist/ui/transcript/render_or_warn.d.ts +16 -0
  349. package/dist/ui/transcript/render_or_warn.d.ts.map +1 -0
  350. package/dist/ui/transcript/reveal_words.d.ts +8 -0
  351. package/dist/ui/transcript/reveal_words.d.ts.map +1 -0
  352. package/dist/ui/transcript/starter_chips.d.ts +21 -0
  353. package/dist/ui/transcript/starter_chips.d.ts.map +1 -0
  354. package/dist/ui/transcript/stick_to_bottom.d.ts +55 -0
  355. package/dist/ui/transcript/stick_to_bottom.d.ts.map +1 -0
  356. package/dist/ui/transcript/suggestion_chips.d.ts +29 -0
  357. package/dist/ui/transcript/suggestion_chips.d.ts.map +1 -0
  358. package/dist/ui/transcript/transcript.d.ts +196 -0
  359. package/dist/ui/transcript/transcript.d.ts.map +1 -0
  360. package/dist/ui/transcript/transcript_styles.d.ts +2 -0
  361. package/dist/ui/transcript/transcript_styles.d.ts.map +1 -0
  362. package/dist/ui/ui_strings.d.ts +352 -0
  363. package/dist/ui/ui_strings.d.ts.map +1 -0
  364. package/dist/version.d.ts +2 -0
  365. package/dist/version.d.ts.map +1 -0
  366. package/package.json +86 -3
  367. package/src/bundle.ts +2 -0
  368. package/src/chat.ts +2 -0
  369. package/src/constants.ts +650 -0
  370. package/src/core/activity_registration.ts +19 -0
  371. package/src/core/activity_registry.ts +133 -0
  372. package/src/core/activity_renderer.ts +19 -0
  373. package/src/core/ag_ui_chat.ts +3966 -0
  374. package/src/core/agui_client.ts +1028 -0
  375. package/src/core/attachment.ts +62 -0
  376. package/src/core/chat_registry.ts +53 -0
  377. package/src/core/client_seed.ts +27 -0
  378. package/src/core/conversation_store.ts +478 -0
  379. package/src/core/create_http_agent.ts +97 -0
  380. package/src/core/define_chat.ts +25 -0
  381. package/src/core/events/attachments_detail.ts +9 -0
  382. package/src/core/events/bar_height_detail.ts +5 -0
  383. package/src/core/events/custom_agent_detail.ts +7 -0
  384. package/src/core/events/dock_width_detail.ts +7 -0
  385. package/src/core/events/feedback_detail.ts +27 -0
  386. package/src/core/events/invalidate_detail.ts +15 -0
  387. package/src/core/events/maximize_detail.ts +4 -0
  388. package/src/core/events/run_finished_detail.ts +36 -0
  389. package/src/core/events/state_detail.ts +4 -0
  390. package/src/core/events/submit_detail.ts +8 -0
  391. package/src/core/events/thread_detail.ts +26 -0
  392. package/src/core/events/thread_title_detail.ts +7 -0
  393. package/src/core/events/toggle_detail.ts +4 -0
  394. package/src/core/events/tool_run.ts +10 -0
  395. package/src/core/events/unread_detail.ts +10 -0
  396. package/src/core/message_role.ts +4 -0
  397. package/src/core/read_flag.ts +13 -0
  398. package/src/core/read_json_attribute.ts +30 -0
  399. package/src/core/read_max_tool_rounds.ts +13 -0
  400. package/src/core/remote_conversation_store.ts +279 -0
  401. package/src/core/run_handlers.ts +524 -0
  402. package/src/core/run_index.ts +114 -0
  403. package/src/core/storage_scope.ts +291 -0
  404. package/src/core/tool_outcome.ts +39 -0
  405. package/src/core/transcribe_audio.ts +76 -0
  406. package/src/core/upload_attachment.ts +130 -0
  407. package/src/core/utils.ts +230 -0
  408. package/src/dom/animations.ts +341 -0
  409. package/src/dom/dom_driver.ts +91 -0
  410. package/src/dom/highlight_overlay.ts +204 -0
  411. package/src/dom/native_setter.ts +40 -0
  412. package/src/dom/ring_color.ts +206 -0
  413. package/src/dom/utils.ts +5 -0
  414. package/src/index.ts +220 -0
  415. package/src/skills/fill_template.ts +31 -0
  416. package/src/skills/parse_skills.ts +31 -0
  417. package/src/skills/skill.ts +32 -0
  418. package/src/skills/skill_catalog.ts +172 -0
  419. package/src/skills/skill_name_from.ts +19 -0
  420. package/src/tools/chat_surface_tools.ts +183 -0
  421. package/src/tools/client_tool_registry.ts +80 -0
  422. package/src/tools/is_destructive.ts +17 -0
  423. package/src/tools/is_navigates.ts +12 -0
  424. package/src/tools/page_action_tools.ts +123 -0
  425. package/src/tools/page_map.ts +26 -0
  426. package/src/tools/page_state.ts +57 -0
  427. package/src/tools/parse_tool_catalog.ts +41 -0
  428. package/src/tools/route_map.ts +132 -0
  429. package/src/tools/tool_catalog.ts +334 -0
  430. package/src/tools/tool_dispatch.ts +453 -0
  431. package/src/ui/charts/chart_block.ts +519 -0
  432. package/src/ui/charts/chart_spec_from.ts +125 -0
  433. package/src/ui/charts/chart_styles.ts +63 -0
  434. package/src/ui/charts/chart_tool.ts +72 -0
  435. package/src/ui/composer/attachment_styles.ts +71 -0
  436. package/src/ui/composer/attachment_tray.ts +295 -0
  437. package/src/ui/composer/auto_grow.ts +12 -0
  438. package/src/ui/composer/build_composer.ts +114 -0
  439. package/src/ui/composer/composer_attachments.ts +324 -0
  440. package/src/ui/composer/composer_styles.ts +177 -0
  441. package/src/ui/composer/composer_voice.ts +93 -0
  442. package/src/ui/composer/skill_styles.ts +120 -0
  443. package/src/ui/composer/skills_menu.ts +188 -0
  444. package/src/ui/composer/voice_input.ts +282 -0
  445. package/src/ui/excerpts/attach_copy_buttons.ts +73 -0
  446. package/src/ui/excerpts/copy_payload.ts +156 -0
  447. package/src/ui/excerpts/page_quote_offer.ts +203 -0
  448. package/src/ui/excerpts/place_offer.ts +24 -0
  449. package/src/ui/excerpts/quote_selection.ts +345 -0
  450. package/src/ui/excerpts/transcript_quote_offer.ts +175 -0
  451. package/src/ui/fill_ui_string.ts +41 -0
  452. package/src/ui/history/checkpoint_menu.ts +300 -0
  453. package/src/ui/history/conversation_history.ts +1169 -0
  454. package/src/ui/history/history_styles.ts +492 -0
  455. package/src/ui/history/relative_time.ts +50 -0
  456. package/src/ui/history/thread_drawer.ts +471 -0
  457. package/src/ui/history/utils.ts +11 -0
  458. package/src/ui/interrupts/approval_card.ts +202 -0
  459. package/src/ui/interrupts/approval_styles.ts +52 -0
  460. package/src/ui/interrupts/confirmation_card.ts +138 -0
  461. package/src/ui/interrupts/confirmation_styles.ts +114 -0
  462. package/src/ui/interrupts/pending_decision.ts +33 -0
  463. package/src/ui/interrupts/question_card.ts +213 -0
  464. package/src/ui/interrupts/question_styles.ts +73 -0
  465. package/src/ui/place/place.ts +16 -0
  466. package/src/ui/place/place_chip.ts +146 -0
  467. package/src/ui/place/place_from_route.ts +27 -0
  468. package/src/ui/place/place_styles.ts +108 -0
  469. package/src/ui/placement/clamp_launcher.ts +38 -0
  470. package/src/ui/placement/clamp_panel.ts +30 -0
  471. package/src/ui/placement/collapse_styles.ts +472 -0
  472. package/src/ui/placement/dock_styles.ts +116 -0
  473. package/src/ui/placement/embedded_styles.ts +14 -0
  474. package/src/ui/placement/launcher_drag.ts +206 -0
  475. package/src/ui/placement/launcher_placement.ts +133 -0
  476. package/src/ui/placement/launcher_styles.ts +189 -0
  477. package/src/ui/placement/page_styles.ts +47 -0
  478. package/src/ui/placement/panel_drag.ts +138 -0
  479. package/src/ui/placement/panel_placement.ts +1975 -0
  480. package/src/ui/placement/place_widget.ts +64 -0
  481. package/src/ui/placement/preset_styles.ts +49 -0
  482. package/src/ui/placement/resize_handle.ts +229 -0
  483. package/src/ui/placement/resize_styles.ts +201 -0
  484. package/src/ui/placement/sidebar_styles.ts +113 -0
  485. package/src/ui/placement/small_viewport_styles.ts +70 -0
  486. package/src/ui/placement/surface_for.ts +183 -0
  487. package/src/ui/progress/prettify_tool_name.ts +16 -0
  488. package/src/ui/progress/run_announcer.ts +67 -0
  489. package/src/ui/progress/run_notice.ts +61 -0
  490. package/src/ui/progress/run_notice_styles.ts +52 -0
  491. package/src/ui/progress/subagent_panel.ts +227 -0
  492. package/src/ui/progress/subagent_progress.ts +200 -0
  493. package/src/ui/progress/subagent_update.ts +89 -0
  494. package/src/ui/progress/thoughts_block.ts +165 -0
  495. package/src/ui/progress/thoughts_styles.ts +74 -0
  496. package/src/ui/progress/tool_call_card.ts +429 -0
  497. package/src/ui/progress/tool_group_styles.ts +313 -0
  498. package/src/ui/progress/tool_step_group.ts +317 -0
  499. package/src/ui/progress/tool_step_styles.ts +486 -0
  500. package/src/ui/shell/adopt_styles.ts +34 -0
  501. package/src/ui/shell/build_header.ts +121 -0
  502. package/src/ui/shell/build_launcher.ts +79 -0
  503. package/src/ui/shell/collapse_glyph.ts +42 -0
  504. package/src/ui/shell/frame_styles.ts +147 -0
  505. package/src/ui/shell/glyph_slot.ts +12 -0
  506. package/src/ui/shell/header_button.ts +22 -0
  507. package/src/ui/shell/icon_element.ts +33 -0
  508. package/src/ui/shell/is_unread_badge_enabled.ts +11 -0
  509. package/src/ui/shell/read_launcher_icon_url.ts +9 -0
  510. package/src/ui/shell/theme_styles.ts +11 -0
  511. package/src/ui/shell/token_styles.ts +480 -0
  512. package/src/ui/styles.ts +110 -0
  513. package/src/ui/themes/classic_styles.ts +32 -0
  514. package/src/ui/themes/classic_tokens.ts +51 -0
  515. package/src/ui/themes/code_tokens.ts +21 -0
  516. package/src/ui/themes/ledger_styles.ts +169 -0
  517. package/src/ui/themes/ledger_tokens.ts +33 -0
  518. package/src/ui/themes/modern_styles.ts +80 -0
  519. package/src/ui/themes/quiet_styles.ts +118 -0
  520. package/src/ui/themes/scheme_styles.ts +26 -0
  521. package/src/ui/themes/soft_styles.ts +149 -0
  522. package/src/ui/themes/soft_tokens.ts +29 -0
  523. package/src/ui/themes/theme_hosts.ts +14 -0
  524. package/src/ui/transcript/answer_actions.ts +165 -0
  525. package/src/ui/transcript/answer_stream.ts +123 -0
  526. package/src/ui/transcript/attachment_chip_styles.ts +116 -0
  527. package/src/ui/transcript/attachment_chips.ts +82 -0
  528. package/src/ui/transcript/build_transcript.ts +67 -0
  529. package/src/ui/transcript/greeting_styles.ts +171 -0
  530. package/src/ui/transcript/groups_tool_steps.ts +16 -0
  531. package/src/ui/transcript/message_action_styles.ts +155 -0
  532. package/src/ui/transcript/message_actions.ts +234 -0
  533. package/src/ui/transcript/message_styles.ts +262 -0
  534. package/src/ui/transcript/render_markdown.ts +181 -0
  535. package/src/ui/transcript/render_or_warn.ts +22 -0
  536. package/src/ui/transcript/reveal_words.ts +41 -0
  537. package/src/ui/transcript/starter_chips.ts +42 -0
  538. package/src/ui/transcript/stick_to_bottom.ts +126 -0
  539. package/src/ui/transcript/suggestion_chips.ts +73 -0
  540. package/src/ui/transcript/transcript.ts +555 -0
  541. package/src/ui/transcript/transcript_styles.ts +153 -0
  542. package/src/ui/ui_strings.ts +550 -0
  543. package/src/version.ts +1 -0
@@ -0,0 +1,550 @@
1
+ /**
2
+ * The flat table of every user-facing string the chat shell renders — labels,
3
+ * placeholders, `aria-label`s, and `title` tooltips. A localizable seam, not a
4
+ * framework: a host overrides any subset (via the element's `strings` property
5
+ * or its `data-strings` JSON attribute) and the rest fall back to the English
6
+ * defaults.
7
+ *
8
+ * Some values are templates carrying `{token}` placeholders the call site fills
9
+ * in; the token names are noted on each key, and a translation must keep them
10
+ * verbatim.
11
+ */
12
+ export interface UiStrings {
13
+ // ── Header ────────────────────────────────────────────────────────────────
14
+ /** Default header title (the `title-text` attribute overrides per element). */
15
+ title: string;
16
+ /** History button + drawer dialog label. */
17
+ chatHistory: string;
18
+ /** Dismiss the chat-history list and return to the conversation. */
19
+ closeHistory: string;
20
+ /** Placeholder in the conversation-list filter. */
21
+ searchConversations: string;
22
+ /** Names the row of messages waiting for the run to finish. */
23
+ queued: string;
24
+ /** Drops one waiting message. `{text}` is the message. */
25
+ removeQueued: string;
26
+ /** Shown when a filter matches nothing, unlike having no conversations. */
27
+ noMatches: string;
28
+ /** Heading over the conversations last active today. */
29
+ threadsToday: string;
30
+ /** Heading over the conversations last active in the seven days before today. */
31
+ threadsPreviousWeek: string;
32
+ /** Heading over every older conversation, and any with no readable date. */
33
+ threadsOlder: string;
34
+ /** Notice text when the agent moved its own panel out of the way. */
35
+ chatMoved: string;
36
+ /** Notice text when the agent collapsed its own panel. */
37
+ chatMinimised: string;
38
+ /** The one control a run notice may carry. */
39
+ undo: string;
40
+ /** New-chat button (header + drawer). */
41
+ newChat: string;
42
+ /** Collapse button. */
43
+ collapse: string;
44
+ /** Expand affordance (the launcher, and the sidebar rail). */
45
+ expand: string;
46
+ /** Header control that grows the open panel; apart from {@link expand}, which opens it. */
47
+ maximize: string;
48
+ /** The same control while the panel is maximized. */
49
+ restore: string;
50
+ /**
51
+ * The launcher's label while unread answers wait behind it. Token: `{count}`.
52
+ * Replaces {@link expand} rather than appending to it, so a translation can
53
+ * order the two parts as its language needs.
54
+ */
55
+ expandUnread: string;
56
+ /** Built-in header theme toggle (light ⇄ dark). */
57
+ toggleTheme: string;
58
+
59
+ // ── Messages region ─────────────────────────────────────────────────────────
60
+ /**
61
+ * The greeting over an empty conversation under `placement="page"` (or an
62
+ * `embedded` panel that opted in). Token: `{name}`, the `user-name` attribute.
63
+ */
64
+ greeting: string;
65
+ /** The same greeting when the host named nobody: no `user-name`, or a blank one. */
66
+ greetingNoName: string;
67
+ /** `aria-label` of the scrolling message log. */
68
+ conversation: string;
69
+ /** The button offering to return to the foot of the transcript. */
70
+ jumpToLatest: string;
71
+ /** Announced when a turn starts. Screen-reader only; never rendered. */
72
+ announceResponding: string;
73
+ /** Announced when the answer has finished arriving. Screen-reader only. */
74
+ announceAnswerReady: string;
75
+ /** Announced when a card is waiting for the user's decision. Token: `{count}`. */
76
+ announceAwaitingDecision: string;
77
+ /** Announced when the user stopped the run. Screen-reader only. */
78
+ announceStopped: string;
79
+ /** Announced when the run failed. Screen-reader only. */
80
+ announceFailed: string;
81
+ /** `aria-label` of the "thinking" pending indicator, and the thoughts region's
82
+ * header while the model is still reasoning. */
83
+ thinking: string;
84
+ /** The thoughts region's header once reasoning has ended, and its fallback
85
+ * when the reasoning took under a second, too short to time. */
86
+ thoughts: string;
87
+ /** The thoughts region's header once reasoning has ended, naming how long it
88
+ * took in whole seconds. Token: `{seconds}`. */
89
+ thoughtFor: string;
90
+ /** The muted note after a cancelled run. */
91
+ stopped: string;
92
+ /** Error shown when the stream drops without a terminal AG-UI event. */
93
+ connectionLost: string;
94
+ /**
95
+ * Tool-result content (and card text) for a call that never produced a result
96
+ * and that nobody refused: the run was stopped or failed first, the page
97
+ * reloaded, or no tool here answered it. Sent to the agent, so it must not say
98
+ * a person declined.
99
+ */
100
+ callNotFinished: string;
101
+ /** Tool-result content when the user declines a confirmed action. */
102
+ declinedAction: string;
103
+ /** Tool-result content (and card text) when `confirmPredicate` threw, so the call was refused. */
104
+ confirmCheckFailed: string;
105
+ /** A navigating tool's card text while the page reloads. */
106
+ navigating: string;
107
+ /** Notice shown when the server replaced the conversation wholesale. */
108
+ historyReplaced: string;
109
+ /** Notice shown when a pushed chart could not be drawn and was removed. */
110
+ chartUndrawable: string;
111
+ /** Missing-placeholder skill hint. Tokens: `{title}`, `{fields}`. */
112
+ skillNeeds: string;
113
+ /** Notice shown when the agent condensed earlier turns. Token: `{count}`. */
114
+ historyCompacted: string;
115
+ /** Notice shown when the agent loads an agent skill. Token: `{name}`. */
116
+ usingSkill: string;
117
+ /** Notice shown on mount when the previous run never produced a response. */
118
+ runInterrupted: string;
119
+ /** Tool-result content (and card text) when the page moved mid-run. */
120
+ pageMoved: string;
121
+ /** Notice when Send ran while a file was still uploading. Token: `{n}`. */
122
+ attachmentsStillUploading: string;
123
+ /** Notice shown when a message was typed at an element with no `endpoint`. */
124
+ notConnected: string;
125
+ /** Composer hint when a run continuation was picked with an empty composer. */
126
+ continueNeedsTurn: string;
127
+ /** Composer hint when a run continuation was picked while a run is in flight. */
128
+ continueWhileRunning: string;
129
+ /**
130
+ * Composer hint when a run continuation was picked while the stored
131
+ * conversation is still loading.
132
+ */
133
+ continueWhileLoading: string;
134
+
135
+ // ── Composer ────────────────────────────────────────────────────────────────
136
+ /** `aria-label` of the message textarea. */
137
+ message: string;
138
+ /** Placeholder of the message textarea. */
139
+ inputPlaceholder: string;
140
+ /** Send button (idle composer). */
141
+ send: string;
142
+ /** Stop button (composer while a run is in flight). */
143
+ stop: string;
144
+ /** Attach-files button. */
145
+ attachFiles: string;
146
+ /** Mic button while idle (start recording). */
147
+ recordVoice: string;
148
+ /** Mic button while recording (stop + transcribe). */
149
+ stopRecording: string;
150
+ /** Mic button while the clip is being transcribed. */
151
+ transcribing: string;
152
+ /** Mic button fallback message when transcription fails. */
153
+ transcriptionFailed: string;
154
+ /**
155
+ * Mic button message after a recording hit its length cap and stopped itself.
156
+ * The clip is kept and transcribed, so this explains the silence rather than
157
+ * reporting a loss. Token: `{n}` (the cap, in minutes).
158
+ */
159
+ recordingLimit: string;
160
+ /** The place chip's tooltip while the place is sent. Token: `{label}`. */
161
+ placeShared: string;
162
+ /** The place chip's tooltip while the user withholds it. Token: `{label}`. */
163
+ placeWithheld: string;
164
+ /** The place toggle while the place is sent: pressing it withholds it. */
165
+ placeStopSharing: string;
166
+ /** The place toggle while the place is withheld: pressing it sends it again. */
167
+ placeShareAgain: string;
168
+
169
+ // ── Tool-call card ──────────────────────────────────────────────────────────
170
+ /** Status pill while the call runs. */
171
+ toolRunning: string;
172
+ /** Status pill on a gated call the run deferred, waiting on a person. */
173
+ toolDeferred: string;
174
+ /** Status pill on success. */
175
+ toolDone: string;
176
+ /** Status pill on error. */
177
+ toolError: string;
178
+ /** Status pill on a declined call. */
179
+ toolDeclined: string;
180
+ /** Status pill on a call that ended without a result nobody refused. */
181
+ toolInterrupted: string;
182
+ /** Accessible label on the panel resize handle. */
183
+ resizePanel: string;
184
+ /** Note on a tool card whose call a human approved. */
185
+ decisionApproved: string;
186
+ /** Note on a tool card whose call a human declined. */
187
+ decisionDeclined: string;
188
+ /** Heading over a tool card's arguments region. */
189
+ argumentsLabel: string;
190
+ /** Heading over a tool card's result region when the call succeeded. */
191
+ resultLabel: string;
192
+ /** Heading over a tool card's result region when the call failed. */
193
+ errorLabel: string;
194
+ /** Heading over a tool card's result region when the call was declined. */
195
+ declinedLabel: string;
196
+ /** Heading over a tool card's result region when the call did not finish. */
197
+ interruptedLabel: string;
198
+ /** Label on the toggle that expands a tool card's body. */
199
+ details: string;
200
+
201
+ // ── Tool-step group ─────────────────────────────────────────────────────────
202
+ // The row a run's consecutive calls fold into under the default
203
+ // data-tool-display. A group of one shows that call's own label instead, so
204
+ // the three labels are filled with 2 or more; the notes count from 1.
205
+ /** The group's label while a step waits on the user. Token: `{count}` (steps). */
206
+ toolGroupSteps: string;
207
+ /** The group's label while a step runs. Token: `{count}` (steps). */
208
+ toolGroupWorking: string;
209
+ /** The group's label once every step has settled. Token: `{count}` (steps). */
210
+ toolGroupWorked: string;
211
+ /** Note on the group's row: steps waiting on the user. Token: `{count}`. */
212
+ toolGroupWaiting: string;
213
+ /** Note on the group's row: steps that failed. Token: `{count}`. */
214
+ toolGroupFailed: string;
215
+ /** Note on the group's row: steps that were declined. Token: `{count}`. */
216
+ toolGroupDeclined: string;
217
+ /**
218
+ * Set after a step's label when an earlier step in its group has the same
219
+ * one, so two "Fill field" steps read "Fill field" and "Fill field (2)".
220
+ * Grouped mode only. Token: `{n}` (which occurrence, from 2).
221
+ */
222
+ toolStepRepeat: string;
223
+
224
+ // ── Delegated sub-agent ─────────────────────────────────────────────────────
225
+ /**
226
+ * The delegation row's text before the server's own status line lands.
227
+ *
228
+ * A fallback, not a state: every announcement carries a pre-rendered `status`,
229
+ * and this only shows if one arrives unusable. The row is the expander, so it
230
+ * must never be blank.
231
+ */
232
+ subAgentWorking: string;
233
+ /**
234
+ * The row's line while a delegation is running. Token: `{agent}`.
235
+ *
236
+ * Worded here rather than on the wire, unlike the two step phases. The
237
+ * protocol's `SUBAGENT_STARTED` carries the sub-agent's `name` and no rendered
238
+ * status -- which is the better shape for a localised UI, and the reason this
239
+ * string exists at all.
240
+ */
241
+ subAgentDelegatedTo: string;
242
+ /** The row's line once a delegation completed. Token: `{agent}`. */
243
+ subAgentFinished: string;
244
+ /**
245
+ * The row's line for a delegation that failed and named no agent.
246
+ *
247
+ * A fallback only: `SUBAGENT_ERROR` carries a required `message`, which the
248
+ * server fills with the sub-agent's name and nothing else, and that text is
249
+ * what the row shows. This covers a server that sent an empty one.
250
+ */
251
+ subAgentFailed: string;
252
+ /** `aria-label` of the region holding the sub-agent's own tool calls. */
253
+ subAgentSteps: string;
254
+
255
+ // ── Confirmation card ───────────────────────────────────────────────────────
256
+ /** `aria-label` of the editable arguments field on an approval card. */
257
+ approvalEditArgs: string;
258
+ /** Shown when the edited arguments are not valid JSON. */
259
+ approvalArgsInvalid: string;
260
+ /** Shown when the edited arguments parse but are not a JSON object. */
261
+ approvalArgsNotAnObject: string;
262
+ /** `aria-label` of the follow-up suggestion chips row. */
263
+ suggestions: string;
264
+ /** `aria-label` of a message's action row. */
265
+ messageActions: string;
266
+ /** The offer that floats beside a selection in the transcript. */
267
+ quoteSelection: string;
268
+ /** Copy this message (button `title` / `aria-label`). Its confirmation and
269
+ * failure text are the code block's `copied` / `copyFailed`, which say the
270
+ * same thing about the same clipboard. */
271
+ copyMessage: string;
272
+ /** Ask for a different answer to the same question. */
273
+ retryMessage: string;
274
+ /** Rate this answer as good. */
275
+ feedbackUp: string;
276
+ /** Rate this answer as poor. */
277
+ feedbackDown: string;
278
+ /** `aria-label` of the inline confirmation card. */
279
+ confirmAction: string;
280
+ /** Waive confirmation for this tool for the rest of the session. Token: `{tool}`. */
281
+ confirmAlways: string;
282
+ /** Generic confirmation prompt when a tool has no `x-confirm`. Token: `{tool}`. */
283
+ confirmRun: string;
284
+ /** Confirm button. */
285
+ confirm: string;
286
+ /** Cancel button (confirmation + delete confirm). */
287
+ cancel: string;
288
+
289
+ // ── Approval card (server-side tool gate) ───────────────────────────────────
290
+ /** `aria-label` of the inline server-side-tool approval card. */
291
+ approveAction: string;
292
+ /** Fallback approval prompt when the interrupt carries no message. */
293
+ approvalPrompt: string;
294
+ /** Approve button (runs the gated server-side tool). */
295
+ approve: string;
296
+ /** Deny button (declines the gated server-side tool). */
297
+ deny: string;
298
+
299
+ // ── Question card (the `ask_user` frontend tool) ────────────────────────────
300
+ /** `aria-label` of the inline question card. */
301
+ askUserAction: string;
302
+ /** Radio label for the free-text "other" choice (when custom answers are allowed). */
303
+ otherOption: string;
304
+ /** Placeholder for the free-text answer field. */
305
+ answerPlaceholder: string;
306
+ /** Submit button for the question card. */
307
+ submit: string;
308
+
309
+ // ── Chat-history drawer ─────────────────────────────────────────────────────
310
+ /** Drawer heading. */
311
+ chats: string;
312
+ /** Empty-state line when there are no threads. */
313
+ noConversations: string;
314
+ /** Rename row button (`title`). */
315
+ rename: string;
316
+ /** Rename row button `aria-label`. */
317
+ renameConversation: string;
318
+ /** Delete row button (`title`) + the inline-confirm action. */
319
+ delete: string;
320
+ /** Delete row button `aria-label`. */
321
+ deleteConversation: string;
322
+ /** Inline delete-confirm prompt. */
323
+ deletePrompt: string;
324
+
325
+ // ── Attachments ─────────────────────────────────────────────────────────────
326
+ /** Oversize rejection. Token: `{size}`. */
327
+ tooLarge: string;
328
+ /** Disallowed-type rejection. */
329
+ fileTypeNotAllowed: string;
330
+ /** Generic upload failure (when the error carries no message). */
331
+ uploadFailed: string;
332
+ /** Retry-upload button (`title`). */
333
+ retry: string;
334
+ /** Retry-upload button `aria-label`. */
335
+ retryUpload: string;
336
+ /** Remove-attachment button (`title`). */
337
+ remove: string;
338
+ /** Remove-attachment button `aria-label`. */
339
+ removeAttachment: string;
340
+
341
+ // ── Code blocks ─────────────────────────────────────────────────────────────
342
+ /** Label on a code block's copy button. */
343
+ copyCode: string;
344
+ /** Shown on the copy button after the code reached the clipboard. */
345
+ copied: string;
346
+ /** Shown when the clipboard was unavailable or refused the write. */
347
+ copyFailed: string;
348
+
349
+ // ── Checkpoint panel (continue a run) ───────────────────────────────────────
350
+ /** Title of the checkpoint panel. */
351
+ checkpoints: string;
352
+ /** Empty state when no run can be continued. */
353
+ noCheckpoints: string;
354
+ /** Action: continue a run from its last checkpoint. */
355
+ resumeRun: string;
356
+ /** Action: branch a run without touching the original. */
357
+ forkRun: string;
358
+ /** Badge on a run that branched from another. */
359
+ forkedRun: string;
360
+
361
+ // ── Relative time (drawer rows) ─────────────────────────────────────────────
362
+ /** Under a minute ago. */
363
+ justNow: string;
364
+ /** Minutes ago. Token: `{n}`. */
365
+ minutesAgo: string;
366
+ /** Hours ago. Token: `{n}`. */
367
+ hoursAgo: string;
368
+ /** Days ago. Token: `{n}`. */
369
+ daysAgo: string;
370
+ /** Weeks ago. Token: `{n}`. */
371
+ weeksAgo: string;
372
+ }
373
+
374
+ /** The built-in English strings — the fallback every override merges over. */
375
+ export const DEFAULT_UI_STRINGS: UiStrings = {
376
+ title: "Assistant",
377
+ chatHistory: "Chat history",
378
+ closeHistory: "Close history",
379
+ searchConversations: "Search conversations",
380
+ queued: "Waiting to send",
381
+ removeQueued: 'Do not send "{text}"',
382
+ noMatches: "No conversations match that.",
383
+ threadsToday: "Today",
384
+ threadsPreviousWeek: "Previous 7 days",
385
+ threadsOlder: "Older",
386
+ chatMoved: "Moved this panel out of the way",
387
+ chatMinimised: "Minimised this panel",
388
+ undo: "Undo",
389
+ newChat: "New chat",
390
+ collapse: "Collapse",
391
+ expand: "Expand",
392
+ maximize: "Maximize",
393
+ restore: "Restore",
394
+ expandUnread: "Expand — {count} unread",
395
+ toggleTheme: "Toggle theme",
396
+ copyCode: "Copy",
397
+ copied: "Copied",
398
+ copyFailed: "Copy failed",
399
+ checkpoints: "Continue a run",
400
+ noCheckpoints: "Nothing to continue yet.",
401
+ resumeRun: "Resume",
402
+ forkRun: "Fork",
403
+ forkedRun: "branched",
404
+
405
+ greeting: "Hello, {name}",
406
+ greetingNoName: "Hello there",
407
+ conversation: "Conversation",
408
+ jumpToLatest: "Jump to latest",
409
+ announceResponding: "Assistant is responding",
410
+ announceAnswerReady: "Assistant answered",
411
+ announceAwaitingDecision: "{count} action is waiting for your approval",
412
+ announceStopped: "Response stopped",
413
+ announceFailed: "The response failed",
414
+ thinking: "Assistant is thinking…",
415
+ thoughts: "Thoughts",
416
+ thoughtFor: "Thought for {seconds}s",
417
+ stopped: "⏹ Stopped",
418
+ connectionLost: "Connection lost",
419
+ callNotFinished:
420
+ "Not finished: the run ended or moved on before this tool call returned a result.",
421
+ declinedAction: "User declined the action.",
422
+ confirmCheckFailed:
423
+ "Not run: the check that decides whether this action needs the user's confirmation failed.",
424
+ navigating: "Navigating…",
425
+ historyReplaced:
426
+ "The server replaced this conversation's history. Reload to see the updated transcript.",
427
+ chartUndrawable: "A chart could not be drawn from the data sent, so it was removed.",
428
+ historyCompacted: "Earlier turns condensed to fit the context window ({count} removed)",
429
+ usingSkill: "Using skill {name}",
430
+ runInterrupted: "The previous response didn’t finish — the page changed before it arrived.",
431
+ pageMoved:
432
+ "The page changed since you last looked at it. Call read_page to see the current page, then retry.",
433
+ attachmentsStillUploading:
434
+ "{n} file still uploading — it was not sent with this message and is still attached.",
435
+ notConnected: "This chat isn’t connected to an agent, so the message wasn’t sent.",
436
+ continueNeedsTurn: "Type the next turn in the composer first, then pick a run to continue.",
437
+ continueWhileRunning: "Wait for the current answer or stop it, then pick a run to continue.",
438
+ continueWhileLoading: "Wait for the conversation to finish loading, then pick a run to continue.",
439
+ skillNeeds: "“{title}” needs {fields} — fill it in below, then send.",
440
+
441
+ message: "Message",
442
+ inputPlaceholder: "Ask anything…",
443
+ send: "Send",
444
+ stop: "Stop",
445
+ attachFiles: "Attach files",
446
+ recordVoice: "Record voice",
447
+ stopRecording: "Stop recording",
448
+ transcribing: "Transcribing…",
449
+ transcriptionFailed: "Transcription failed",
450
+ recordingLimit: "Stopped at the {n}-minute limit — transcribing what was recorded.",
451
+ placeShared: "The agent is told you are on {label}",
452
+ placeWithheld: "{label} is not sent with your next message",
453
+ placeStopSharing: "Stop sharing this page",
454
+ placeShareAgain: "Share this page again",
455
+
456
+ toolRunning: "running…",
457
+ toolDeferred: "waiting for you",
458
+ toolDone: "✓ done",
459
+ toolError: "⚠ error",
460
+ toolDeclined: "⊘ declined",
461
+ toolInterrupted: "◌ not finished",
462
+ resizePanel: "Resize the chat panel",
463
+ decisionApproved: "approved by you",
464
+ decisionDeclined: "declined by you",
465
+ argumentsLabel: "Arguments",
466
+ resultLabel: "Result",
467
+ errorLabel: "Error",
468
+ declinedLabel: "Declined",
469
+ interruptedLabel: "Not finished",
470
+ details: "Details",
471
+
472
+ toolGroupSteps: "{count} steps",
473
+ toolGroupWorking: "Working through {count} steps",
474
+ toolGroupWorked: "Worked through {count} steps",
475
+ toolGroupWaiting: "{count} waiting for you",
476
+ toolGroupFailed: "{count} failed",
477
+ toolGroupDeclined: "{count} declined",
478
+ toolStepRepeat: "({n})",
479
+
480
+ subAgentWorking: "Working…",
481
+ subAgentDelegatedTo: "Delegated to {agent}",
482
+ subAgentFinished: "{agent} finished",
483
+ subAgentFailed: "The sub-agent failed",
484
+ subAgentSteps: "Steps the sub-agent took",
485
+
486
+ approvalEditArgs: "Edit the arguments before approving",
487
+ approvalArgsInvalid: "That is not valid JSON, so nothing was sent.",
488
+ approvalArgsNotAnObject: "Arguments have to be a JSON object.",
489
+ suggestions: "Suggested follow-ups",
490
+ messageActions: "Message actions",
491
+ quoteSelection: "Quote",
492
+ copyMessage: "Copy message",
493
+ retryMessage: "Try again",
494
+ feedbackUp: "Good answer",
495
+ feedbackDown: "Poor answer",
496
+ confirmAction: "Confirm action",
497
+ confirmAlways: "Always allow",
498
+ confirmRun: "Run “{tool}”?",
499
+ confirm: "Confirm",
500
+ cancel: "Cancel",
501
+
502
+ approveAction: "Approve action",
503
+ approvalPrompt: "Approve this action?",
504
+ approve: "Approve",
505
+ deny: "Deny",
506
+
507
+ askUserAction: "Question",
508
+ otherOption: "Other…",
509
+ answerPlaceholder: "Type your answer…",
510
+ submit: "Submit",
511
+
512
+ chats: "Chats",
513
+ noConversations: "No conversations yet.",
514
+ rename: "Rename",
515
+ renameConversation: "Rename conversation",
516
+ delete: "Delete",
517
+ deleteConversation: "Delete conversation",
518
+ deletePrompt: "Delete?",
519
+
520
+ tooLarge: "Too large (max {size})",
521
+ fileTypeNotAllowed: "File type not allowed",
522
+ uploadFailed: "upload failed",
523
+ retry: "Retry",
524
+ retryUpload: "Retry upload",
525
+ remove: "Remove",
526
+ removeAttachment: "Remove attachment",
527
+
528
+ justNow: "just now",
529
+ minutesAgo: "{n}m ago",
530
+ hoursAgo: "{n}h ago",
531
+ daysAgo: "{n}d ago",
532
+ weeksAgo: "{n}w ago",
533
+ };
534
+
535
+ /**
536
+ * Merge a partial set of overrides over {@link DEFAULT_UI_STRINGS}, yielding a
537
+ * complete {@link UiStrings}. Keys whose override is `undefined` keep the
538
+ * default (so a `data-strings` JSON with only a few keys — or a property carrying
539
+ * explicit `undefined` — leaves the rest English).
540
+ */
541
+ export function mergeUiStrings(overrides: Partial<UiStrings>): UiStrings {
542
+ const merged: UiStrings = { ...DEFAULT_UI_STRINGS };
543
+ for (const key of Object.keys(overrides) as (keyof UiStrings)[]) {
544
+ const value = overrides[key];
545
+ if (value !== undefined) {
546
+ merged[key] = value;
547
+ }
548
+ }
549
+ return merged;
550
+ }
package/src/version.ts ADDED
@@ -0,0 +1 @@
1
+ export const VERSION: string = "0.1.0";