@pheem49/mint 1.16.0 → 1.18.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 (984) hide show
  1. package/Cargo.lock +6 -6
  2. package/Cargo.toml +2 -2
  3. package/README.md +8 -2
  4. package/Release_Note.md +222 -72
  5. package/apps/mint-companion/src-tauri/src/compact.rs +69 -0
  6. package/apps/mint-companion/src-tauri/src/main.rs +218 -11
  7. package/apps/mint-companion/vite.config.ts +2 -1
  8. package/crates/mint-cli/src/agent/diff_render.rs +66 -44
  9. package/crates/mint-cli/src/agent/live_status.rs +64 -6
  10. package/crates/mint-cli/src/agent/markdown_render.rs +342 -5
  11. package/crates/mint-cli/src/agent.rs +202 -47
  12. package/crates/mint-cli/src/commands/agent.rs +223 -117
  13. package/crates/mint-cli/src/commands/browser.rs +114 -0
  14. package/crates/mint-cli/src/commands/config.rs +14 -1
  15. package/crates/mint-cli/src/commands/integrations.rs +3 -3
  16. package/crates/mint-cli/src/commands/knowledge.rs +16 -2
  17. package/crates/mint-cli/src/commands/mod.rs +15 -4
  18. package/crates/mint-cli/src/commands/tailnet_web.rs +3 -7
  19. package/crates/mint-cli/src/companion_navigation.rs +268 -0
  20. package/crates/mint-cli/src/interactive/chat_tui/dialog.rs +572 -0
  21. package/crates/mint-cli/src/interactive/chat_tui/mod.rs +1427 -0
  22. package/crates/mint-cli/src/interactive/chat_tui/render.rs +1524 -0
  23. package/crates/mint-cli/src/interactive/chat_tui/selection.rs +401 -0
  24. package/crates/mint-cli/src/interactive/chat_tui/state.rs +1833 -0
  25. package/crates/mint-cli/src/interactive/chat_tui/tests.rs +3414 -0
  26. package/crates/mint-cli/src/interactive/chat_tui/thought.rs +202 -0
  27. package/crates/mint-cli/src/interactive/chat_tui/transcript.rs +728 -0
  28. package/crates/mint-cli/src/interactive/chat_tui/watermark.rs +148 -0
  29. package/crates/mint-cli/src/interactive/command_ui.rs +92 -5
  30. package/crates/mint-cli/src/interactive/composer.rs +186 -0
  31. package/crates/mint-cli/src/interactive/format.rs +78 -3
  32. package/crates/mint-cli/src/interactive/input_box.rs +61 -1
  33. package/crates/mint-cli/src/interactive/resume_picker.rs +367 -25
  34. package/crates/mint-cli/src/interactive/slash_commands.rs +758 -373
  35. package/crates/mint-cli/src/interactive/tool_activity.rs +468 -56
  36. package/crates/mint-cli/src/interactive.rs +74 -5
  37. package/crates/mint-cli/src/main.rs +26 -2
  38. package/crates/mint-cli/src/markdown.rs +2 -37
  39. package/crates/mint-cli/src/onboard.rs +3897 -1321
  40. package/crates/mint-cli/src/setup.rs +1342 -624
  41. package/crates/mint-cli/src/terminal_theme.rs +159 -35
  42. package/crates/mint-cli/tests/library_intake.rs +1 -0
  43. package/crates/mint-cli/tests/mods_testing.rs +5 -1
  44. package/crates/mint-companion-protocol/src/lib.rs +113 -0
  45. package/crates/mint-core/src/agent/chat/anthropic.rs +318 -0
  46. package/crates/mint-core/src/agent/chat/custom.rs +149 -0
  47. package/crates/mint-core/src/agent/chat/gemini.rs +518 -0
  48. package/crates/mint-core/src/agent/chat/mod.rs +857 -0
  49. package/crates/mint-core/src/agent/chat/ollama.rs +321 -0
  50. package/crates/mint-core/src/agent/chat/openai.rs +582 -0
  51. package/crates/mint-core/src/agent/chat/streaming.rs +469 -0
  52. package/crates/mint-core/src/agent/chat/tests.rs +1479 -0
  53. package/crates/mint-core/src/agent/memory.rs +129 -8
  54. package/crates/mint-core/src/agent/safety.rs +56 -4
  55. package/crates/mint-core/src/agent/skill_inventory.rs +3 -1
  56. package/crates/mint-core/src/agent/skills.rs +1 -0
  57. package/crates/mint-core/src/agent/tasks.rs +2 -2
  58. package/crates/mint-core/src/api_server/routes/auth.rs +1 -4
  59. package/crates/mint-core/src/api_server/routes/chat.rs +53 -17
  60. package/crates/mint-core/src/api_server/routes/gemini_live.rs +14 -1
  61. package/crates/mint-core/src/api_server/routes/html_preview.rs +1 -8
  62. package/crates/mint-core/src/api_server/routes/misc.rs +116 -0
  63. package/crates/mint-core/src/api_server/routes/profile_oauth.rs +43 -26
  64. package/crates/mint-core/src/api_server/routes/sessions.rs +114 -76
  65. package/crates/mint-core/src/api_server/routes/skills_subagents.rs +11 -7
  66. package/crates/mint-core/src/api_server/routes/status_health.rs +18 -8
  67. package/crates/mint-core/src/api_server.rs +211 -65
  68. package/crates/mint-core/src/avatar_bridge.rs +5 -24
  69. package/crates/mint-core/src/browser/cdp.rs +92 -30
  70. package/crates/mint-core/src/browser/headless.rs +582 -0
  71. package/crates/mint-core/src/browser/input.rs +7 -62
  72. package/crates/mint-core/src/browser/interact.rs +0 -14
  73. package/crates/mint-core/src/browser/mod.rs +10 -30
  74. package/crates/mint-core/src/browser/navigate.rs +83 -44
  75. package/crates/mint-core/src/browser/runtime.rs +282 -0
  76. package/crates/mint-core/src/browser/session.rs +240 -400
  77. package/crates/mint-core/src/browser/workflow.rs +496 -0
  78. package/crates/mint-core/src/companion/navigation.rs +115 -0
  79. package/crates/mint-core/src/companion.rs +109 -1
  80. package/crates/mint-core/src/cron/store.rs +2 -2
  81. package/crates/mint-core/src/integrations/mcp.rs +6 -8
  82. package/crates/mint-core/src/integrations/mcp_result.rs +45 -0
  83. package/crates/mint-core/src/lib.rs +10 -11
  84. package/crates/mint-core/src/media/gemini_live.rs +636 -86
  85. package/crates/mint-core/src/media/image_proxy.rs +563 -0
  86. package/crates/mint-core/src/media/library/migration.rs +26 -0
  87. package/crates/mint-core/src/media/library/tests.rs +1 -1
  88. package/crates/mint-core/src/media/library/thumbnails.rs +8 -2
  89. package/crates/mint-core/src/media/pictures.rs +1 -1
  90. package/crates/mint-core/src/media/tool_images.rs +287 -0
  91. package/crates/mint-core/src/media/tts/playback.rs +609 -0
  92. package/crates/mint-core/src/media/tts.rs +1 -0
  93. package/crates/mint-core/src/media.rs +2 -0
  94. package/crates/mint-core/src/mods/manager.rs +101 -35
  95. package/crates/mint-core/src/orchestration/context_render.rs +878 -44
  96. package/crates/mint-core/src/orchestration/decision_parsing.rs +536 -39
  97. package/crates/mint-core/src/orchestration/diagnostics.rs +307 -0
  98. package/crates/mint-core/src/orchestration/full_skill_result_tests.rs +12 -0
  99. package/crates/mint-core/src/orchestration/image_regressions.rs +379 -0
  100. package/crates/mint-core/src/orchestration/loop_guard.rs +479 -0
  101. package/crates/mint-core/src/orchestration/mcp_outcome_tests.rs +864 -0
  102. package/crates/mint-core/src/orchestration/memory_skill.rs +88 -28
  103. package/crates/mint-core/src/orchestration/mod.rs +859 -4244
  104. package/crates/mint-core/src/orchestration/reliability.rs +581 -0
  105. package/crates/mint-core/src/orchestration/repeated_failures.rs +8 -0
  106. package/crates/mint-core/src/orchestration/review_regressions.rs +179 -28
  107. package/crates/mint-core/src/orchestration/tests.rs +1665 -0
  108. package/crates/mint-core/src/orchestration/tools/dispatch.rs +967 -0
  109. package/crates/mint-core/src/orchestration/tools/files.rs +32 -3
  110. package/crates/mint-core/src/orchestration/tools/mod.rs +5 -1
  111. package/crates/mint-core/src/orchestration/tools/planning.rs +102 -42
  112. package/crates/mint-core/src/orchestration/tools/plugins_mcp.rs +19 -4
  113. package/crates/mint-core/src/orchestration/tools/project.rs +1 -1
  114. package/crates/mint-core/src/orchestration/tools/shell.rs +157 -62
  115. package/crates/mint-core/src/orchestration/tools/web.rs +5 -1
  116. package/crates/mint-core/src/orchestration/trajectory_schema.rs +353 -0
  117. package/crates/mint-core/src/orchestration/truncation.rs +368 -0
  118. package/crates/mint-core/src/orchestration/types.rs +648 -0
  119. package/crates/mint-core/src/orchestration/verification.rs +36 -9
  120. package/crates/mint-core/src/orchestration/workspace_helpers.rs +76 -27
  121. package/crates/mint-core/src/prompts/agent.rs +69 -102
  122. package/crates/mint-core/src/prompts/tool_catalog.rs +104 -153
  123. package/crates/mint-core/src/search/files.rs +20 -0
  124. package/crates/mint-core/src/search/web_search.rs +44 -3
  125. package/crates/mint-core/src/slash/mod.rs +481 -55
  126. package/crates/mint-core/src/slash/models.rs +6 -1
  127. package/crates/mint-core/src/swarm/batch.rs +643 -0
  128. package/crates/mint-core/src/swarm/dossier.rs +152 -0
  129. package/crates/mint-core/src/swarm/labels.rs +100 -0
  130. package/crates/mint-core/src/swarm/mod.rs +158 -0
  131. package/crates/mint-core/src/swarm/permissions.rs +167 -0
  132. package/crates/mint-core/src/system/auth.rs +156 -7
  133. package/crates/mint-core/src/system/bg_shell.rs +78 -9
  134. package/crates/mint-core/src/system/config.rs +266 -35
  135. package/crates/mint-core/src/system/mint_web.rs +33 -12
  136. package/crates/mint-core/src/system/shell.rs +179 -10
  137. package/crates/mint-core/src/system/workspace.rs +204 -0
  138. package/crates/mint-core/tests/background_retention.rs +1 -1
  139. package/crates/mint-core/tests/memory_persistence.rs +27 -0
  140. package/crates/mint-mod-runtime/src/lib.rs +37 -23
  141. package/out/web/assets/ArtifactPreviewPanel-Cx6BVOOF.js +2 -0
  142. package/out/web/assets/ArtifactPreviewPanel-DAT_Y7i0.css +1 -0
  143. package/out/web/assets/CalculationCard-D2E74u5q.js +1 -0
  144. package/out/web/assets/CliSessionsView-ZbdtSjvK.css +1 -0
  145. package/out/web/assets/CliSessionsView-z5i6qGyb.js +1 -0
  146. package/out/web/assets/CodeReviewPage-BK2bOScd.css +1 -0
  147. package/out/web/assets/CodeReviewPage-Dp6zHuHu.js +2 -0
  148. package/out/web/assets/CommandPalette-DaKlzbKs.js +1 -0
  149. package/out/web/assets/ImageGenCard-BMCJHP9O.js +1 -0
  150. package/out/web/assets/ImageSearchCard-Cld_SOUg.js +1 -0
  151. package/out/web/assets/ImageStudioPanel-B5N7TjeB.js +1 -0
  152. package/out/web/assets/LibraryPage-CMB89rJ0.css +1 -0
  153. package/out/web/assets/LibraryPage-DbZEi4W_.js +2 -0
  154. package/out/web/assets/LinkedFoldersView-9B9DIPoZ.js +1 -0
  155. package/out/web/assets/McpRegistryPicker-DnXPlzI7.js +1 -0
  156. package/out/web/assets/McpServersView-CiNBNUl4.js +1 -0
  157. package/out/web/assets/MermaidCard-BBDNEXbY.js +2 -0
  158. package/out/web/assets/MintDashboard-C_UYPoNV.js +119 -0
  159. package/out/web/assets/MintDashboard-DTd8C_c8.css +1 -0
  160. package/out/web/assets/PlanCard-C2x5pajq.js +1 -0
  161. package/out/web/assets/PluginsView-DoTg9MVa.js +1 -0
  162. package/out/web/assets/RewindModal-B5oowrR0.js +1 -0
  163. package/out/web/assets/ScheduledTasksView-BD5DVPkZ.js +1 -0
  164. package/out/web/assets/SelectField-Cy6CghrU.js +1 -0
  165. package/out/web/assets/SelectField-lFEkkWCU.css +1 -0
  166. package/out/web/assets/SettingsWindow-BYl_oCFh.js +4 -0
  167. package/out/web/assets/SettingsWindow-Ckcgnjt8.css +1 -0
  168. package/out/web/assets/SkillsView-CIeWwq5z.js +2 -0
  169. package/out/web/assets/StockCard-DxUciKyp.js +1 -0
  170. package/out/web/assets/ToolSurfacePage-qBgs_VHq.css +1 -0
  171. package/out/web/assets/ToolSurfacePage-saVbVrkE.js +38 -0
  172. package/out/web/assets/UiFeatureCard-CdY0hGWy.js +1 -0
  173. package/out/web/assets/UiGridCard-BBK3I5hC.js +1 -0
  174. package/out/web/assets/UiMockupWidget-CpR9EDuc.js +1 -0
  175. package/out/web/assets/{VeoStudioPanel-DOj7_WR3.css → VeoStudioPanel-9kU9YLEN.css} +1 -1
  176. package/out/web/assets/VeoStudioPanel-Co6-wEWM.js +4 -0
  177. package/out/web/assets/WeatherCard-Buzi7Vfu.js +1 -0
  178. package/out/web/assets/WorkspacePanel-BfHKkulU.js +1 -0
  179. package/out/web/assets/WorkspacePdfPreview-Bi8Zzyir.js +2 -0
  180. package/out/web/assets/abnfDiagram-VCTEODGH-CMfR95N2.js +1 -0
  181. package/out/web/assets/architecture-7GRP2DOG-DhAM4HyO.js +1 -0
  182. package/out/web/assets/architectureDiagram-5GKGNRK7-Yk3TUJ_F.js +36 -0
  183. package/out/web/assets/{blockDiagram-NRAW4CY4-BrrqzHW5.js → blockDiagram-I7D4REHJ-X9fBgJik.js} +4 -4
  184. package/out/web/assets/c4Diagram-7LVT6UL2-Bk9x7N-8.js +38 -0
  185. package/out/web/assets/chunk-2Q5K7J3B-D2JLPQzF.js +1 -0
  186. package/out/web/assets/{chunk-TEH6E4GO-G4Cdlyrt.js → chunk-4HAMMTFA-Dx5fk1_0.js} +3 -3
  187. package/out/web/assets/{chunk-5VM5RSS4-BiPuE0io.js → chunk-5VM5RSS4-BZ2oBPYQ.js} +1 -1
  188. package/out/web/assets/chunk-75Z2AOVW-BszTQoM4.js +2 -0
  189. package/out/web/assets/chunk-DU6HZSFF-DK-As3rk.js +128 -0
  190. package/out/web/assets/chunk-F27PBJKO-LmncZZIS.js +1 -0
  191. package/out/web/assets/chunk-FOHPRMQF-JXEeeJ9r.js +161 -0
  192. package/out/web/assets/{chunk-GMAD6QVW-BuhEcgHq.js → chunk-GMAD6QVW-DSQ_sDRJ.js} +12 -12
  193. package/out/web/assets/chunk-GVQU2GXP-Cno3ulje.js +1 -0
  194. package/out/web/assets/chunk-IMKFNOWR-bIzfY9Jc.js +231 -0
  195. package/out/web/assets/chunk-JWPE2WC7-BeEMUFDw.js +1 -0
  196. package/out/web/assets/chunk-L3NEJ4N5-Dl6eOa0D.js +1 -0
  197. package/out/web/assets/chunk-OSK3NFVY-BaUGJ-cM.js +10 -0
  198. package/out/web/assets/chunk-P2QGCYS3-_066ndhH.js +1 -0
  199. package/out/web/assets/chunk-POPQ4Y6H-YT1AKhTv.js +1 -0
  200. package/out/web/assets/chunk-PWAF6VOD-CrEgDsxh.js +1 -0
  201. package/out/web/assets/chunk-SHT3W25Y-_KwaRLOl.js +168 -0
  202. package/out/web/assets/{chunk-SVP7TREG-Bu_yYb-V.js → chunk-SVP7TREG-BQ1qb32L.js} +1 -1
  203. package/out/web/assets/{chunk-LCL6LL3I-BhXV9zyH.js → chunk-TICWLB2K-BDyehCtg.js} +4 -4
  204. package/out/web/assets/chunk-XXDRQBXY-B9YlhOkE.js +1 -0
  205. package/out/web/assets/chunk-Y2CYZVJY-BxCWjNVG.js +1 -0
  206. package/out/web/assets/classDiagram-ZZMXUADV-BoSpzRCJ.js +1 -0
  207. package/out/web/assets/classDiagram-v2-VYDZK3BY-BoSpzRCJ.js +1 -0
  208. package/out/web/assets/config-2suVFPZg.css +1 -0
  209. package/out/web/assets/config-CkRCdkxn.js +2 -0
  210. package/out/web/assets/core-Mi3s5D4_.js +1 -0
  211. package/out/web/assets/cose-bilkent-JH36ORCC-qlna31ty.js +1 -0
  212. package/out/web/assets/cynefin-OW5HDTMX-Dl_31aaN.js +1 -0
  213. package/out/web/assets/cynefinDiagram-5FMLGOSQ-Bpir8jha.js +62 -0
  214. package/out/web/assets/cytoscape.esm-DWtAUG0r.js +321 -0
  215. package/out/web/assets/dagre-CnWJJM5f.js +1 -0
  216. package/out/web/assets/dagre-GXQ25YYZ-D9xu3nsq.js +4 -0
  217. package/out/web/assets/diagram-S7CK7UJ4-DeveoEeB.js +30 -0
  218. package/out/web/assets/diagram-UQ7AKVKN-p4xWRESV.js +41 -0
  219. package/out/web/assets/{diagram-VSXAHHWV-BJ86Ov2Y.js → diagram-VSXAHHWV-C7qz9NDF.js} +1 -1
  220. package/out/web/assets/diagram-VX7I27RA-DRiCa3Vd.js +24 -0
  221. package/out/web/assets/diagram-Z3DM3KII-Bt7zduQX.js +24 -0
  222. package/out/web/assets/dist-9ISJ7r-g.js +1 -0
  223. package/out/web/assets/dist-js-BV3mI7uw.js +1 -0
  224. package/out/web/assets/ebnfDiagram-PWID7BFC-DV9WpwdR.js +1 -0
  225. package/out/web/assets/{erDiagram-SSCWMZ5O-CzzmnZWT.js → erDiagram-RLTQ6QDP-BJ_nwG2m.js} +3 -3
  226. package/out/web/assets/event-D7D-EBy9.js +1 -0
  227. package/out/web/assets/eventmodeling-NTZA5JFV-BTBMrfVa.js +1 -0
  228. package/out/web/assets/flowDiagram-HODETNUW-Cdlq3cJL.js +1 -0
  229. package/out/web/assets/ganttDiagram-EL5Y4UJY-DQLdsXrC.js +292 -0
  230. package/out/web/assets/gitGraph-4MIJSDKK-CL1OEOQ_.js +1 -0
  231. package/out/web/assets/gitGraphDiagram-WWUBYQGX-8cSi42H7.js +106 -0
  232. package/out/web/assets/graphlib-Bh9gHply.js +1 -0
  233. package/out/web/assets/index-BocxnrDG.js +168 -0
  234. package/out/web/assets/index-yeh_r55a.css +1 -0
  235. package/out/web/assets/info-A6RAGUB7-C1zsX5sc.js +1 -0
  236. package/out/web/assets/infoDiagram-27XIBGKW-DsRYtIyI.js +2 -0
  237. package/out/web/assets/{ishikawaDiagram-5VMMS53U-s38yo28y.js → ishikawaDiagram-5VMMS53U-B2crwIXj.js} +4 -4
  238. package/out/web/assets/journeyDiagram-3NMN7TZE-BTH-GyVR.js +139 -0
  239. package/out/web/assets/jsx-runtime-DmUwWVTj.js +1 -0
  240. package/out/web/assets/{kanban-definition-3QL26DDD-DodjgySL.js → kanban-definition-UXKFOSKX-BeRfCnuA.js} +6 -6
  241. package/out/web/assets/katex-MCdQaEAD.js +257 -0
  242. package/out/web/assets/mermaid-parser.core-BJwgCBBc.js +7 -0
  243. package/out/web/assets/mermaid.core-CsDDodN8.js +44 -0
  244. package/out/web/assets/{mindmap-definition-FBJOCRG2-260WBDxZ.js → mindmap-definition-YA3MSWOX-B42efOQ1.js} +4 -4
  245. package/out/web/assets/modelManager-B3ZFMh8v.js +2 -0
  246. package/out/web/assets/oauthManager-Ch5Du2fF.js +1 -0
  247. package/out/web/assets/packet-AYTQ26CC-B6xUyE6r.js +1 -0
  248. package/out/web/assets/pdf-Bcahc2yC.js +56 -0
  249. package/out/web/assets/pdf.worker.min-Dkey6ZUl.mjs +27 -0
  250. package/out/web/assets/pegDiagram-XKGWAZYB-1LabVycL.js +1 -0
  251. package/out/web/assets/pie-WAS4IAKB-DJwo-nf_.js +1 -0
  252. package/out/web/assets/pieDiagram-E7YTZNPT-icmAqzy4.js +39 -0
  253. package/out/web/assets/{quadrantDiagram-AXDQQJYC-B8D3gU5d.js → quadrantDiagram-AXDQQJYC-CZ-wEx41.js} +4 -4
  254. package/out/web/assets/radar-RG4KPBEZ-D7d-Xriw.js +1 -0
  255. package/out/web/assets/railroad-74A4TZTK-viuhdYbs.js +1 -0
  256. package/out/web/assets/railroad-abnf-HS5TGJTU-DNXiCNea.js +1 -0
  257. package/out/web/assets/railroad-ebnf-LZEXJU2U-nkSu1-0C.js +1 -0
  258. package/out/web/assets/railroad-peg-WCYAUIDC-BhbMeQzz.js +1 -0
  259. package/out/web/assets/railroadDiagram-O6MQD6OU-CLpG1jUX.js +1 -0
  260. package/out/web/assets/{requirementDiagram-EFPCY7ZU-D2X-Ewik.js → requirementDiagram-BXWQKSXE-kRDrvWrc.js} +3 -3
  261. package/out/web/assets/rolldown-runtime-CNOWq4Kh.js +1 -0
  262. package/out/web/assets/rough.esm-CNnFptCR.js +1 -0
  263. package/out/web/assets/sankeyDiagram-P5KCCOFB-DxAwmq4x.js +40 -0
  264. package/out/web/assets/sequenceDiagram-WJ2MYXX4-aLgY-6Wz.js +162 -0
  265. package/out/web/assets/sizeCapture-INFHLROL-C8Q8DbV5.js +1 -0
  266. package/out/web/assets/src-CRDfRlHM.js +1 -0
  267. package/out/web/assets/stateDiagram-D77RDMKH-D5QWfOhp.js +1 -0
  268. package/out/web/assets/stateDiagram-v2-MP3YSRHH-D6OiZoAP.js +1 -0
  269. package/out/web/assets/studio-BBZQ_-QK.js +1 -0
  270. package/out/web/assets/swimlanes-42K2YHIH-CRs5UyA-.js +1 -0
  271. package/out/web/assets/swimlanesDiagram-VR7AAH4N-UgEXIsV0.js +8 -0
  272. package/out/web/assets/syntaxHighlight-C-wAGT84.js +3 -0
  273. package/out/web/assets/timeline-definition-24CTP7MA-Denqd9qb.js +120 -0
  274. package/out/web/assets/treeView-Q6P3EWNA-0my3Z3s4.js +1 -0
  275. package/out/web/assets/treemap-WGGIJYW6-B_EjkLYq.js +1 -0
  276. package/out/web/assets/vennDiagram-4TSXK5OY-DxVg3Ewr.js +34 -0
  277. package/out/web/assets/wardley-WFR3VGLG-CGD-Tj4p.js +1 -0
  278. package/out/web/assets/{wardleyDiagram-VM6X3IG4-DAdXELbQ.js → wardleyDiagram-VM6X3IG4-CmfS39Xm.js} +35 -35
  279. package/out/web/assets/window-CkUOP7t0.js +1 -0
  280. package/out/web/assets/workspaces-SYPrmbgC.js +1 -0
  281. package/out/web/assets/{xychartDiagram-S5SC5T6Z-IZIXf3Vo.js → xychartDiagram-S5SC5T6Z-BVM9bKis.js} +4 -4
  282. package/out/web/index-web.html +4 -4
  283. package/out/web/index.html +4 -4
  284. package/out/web/pdfjs/cmaps/78-EUC-H.bcmap +0 -0
  285. package/out/web/pdfjs/cmaps/78-EUC-V.bcmap +0 -0
  286. package/out/web/pdfjs/cmaps/78-H.bcmap +0 -0
  287. package/out/web/pdfjs/cmaps/78-RKSJ-H.bcmap +0 -0
  288. package/out/web/pdfjs/cmaps/78-RKSJ-V.bcmap +0 -0
  289. package/out/web/pdfjs/cmaps/78-V.bcmap +0 -0
  290. package/out/web/pdfjs/cmaps/78ms-RKSJ-H.bcmap +0 -0
  291. package/out/web/pdfjs/cmaps/78ms-RKSJ-V.bcmap +0 -0
  292. package/out/web/pdfjs/cmaps/83pv-RKSJ-H.bcmap +0 -0
  293. package/out/web/pdfjs/cmaps/90ms-RKSJ-H.bcmap +0 -0
  294. package/out/web/pdfjs/cmaps/90ms-RKSJ-V.bcmap +0 -0
  295. package/out/web/pdfjs/cmaps/90msp-RKSJ-H.bcmap +0 -0
  296. package/out/web/pdfjs/cmaps/90msp-RKSJ-V.bcmap +0 -0
  297. package/out/web/pdfjs/cmaps/90pv-RKSJ-H.bcmap +0 -0
  298. package/out/web/pdfjs/cmaps/90pv-RKSJ-V.bcmap +0 -0
  299. package/out/web/pdfjs/cmaps/Add-H.bcmap +0 -0
  300. package/out/web/pdfjs/cmaps/Add-RKSJ-H.bcmap +0 -0
  301. package/out/web/pdfjs/cmaps/Add-RKSJ-V.bcmap +0 -0
  302. package/out/web/pdfjs/cmaps/Add-V.bcmap +0 -0
  303. package/out/web/pdfjs/cmaps/Adobe-CNS1-0.bcmap +0 -0
  304. package/out/web/pdfjs/cmaps/Adobe-CNS1-1.bcmap +0 -0
  305. package/out/web/pdfjs/cmaps/Adobe-CNS1-2.bcmap +0 -0
  306. package/out/web/pdfjs/cmaps/Adobe-CNS1-3.bcmap +0 -0
  307. package/out/web/pdfjs/cmaps/Adobe-CNS1-4.bcmap +0 -0
  308. package/out/web/pdfjs/cmaps/Adobe-CNS1-5.bcmap +0 -0
  309. package/out/web/pdfjs/cmaps/Adobe-CNS1-6.bcmap +0 -0
  310. package/out/web/pdfjs/cmaps/Adobe-CNS1-UCS2.bcmap +0 -0
  311. package/out/web/pdfjs/cmaps/Adobe-GB1-0.bcmap +0 -0
  312. package/out/web/pdfjs/cmaps/Adobe-GB1-1.bcmap +0 -0
  313. package/out/web/pdfjs/cmaps/Adobe-GB1-2.bcmap +0 -0
  314. package/out/web/pdfjs/cmaps/Adobe-GB1-3.bcmap +0 -0
  315. package/out/web/pdfjs/cmaps/Adobe-GB1-4.bcmap +0 -0
  316. package/out/web/pdfjs/cmaps/Adobe-GB1-5.bcmap +0 -0
  317. package/out/web/pdfjs/cmaps/Adobe-GB1-UCS2.bcmap +0 -0
  318. package/out/web/pdfjs/cmaps/Adobe-Japan1-0.bcmap +0 -0
  319. package/out/web/pdfjs/cmaps/Adobe-Japan1-1.bcmap +0 -0
  320. package/out/web/pdfjs/cmaps/Adobe-Japan1-2.bcmap +0 -0
  321. package/out/web/pdfjs/cmaps/Adobe-Japan1-3.bcmap +0 -0
  322. package/out/web/pdfjs/cmaps/Adobe-Japan1-4.bcmap +0 -0
  323. package/out/web/pdfjs/cmaps/Adobe-Japan1-5.bcmap +0 -0
  324. package/out/web/pdfjs/cmaps/Adobe-Japan1-6.bcmap +0 -0
  325. package/out/web/pdfjs/cmaps/Adobe-Japan1-UCS2.bcmap +0 -0
  326. package/out/web/pdfjs/cmaps/Adobe-Korea1-0.bcmap +0 -0
  327. package/out/web/pdfjs/cmaps/Adobe-Korea1-1.bcmap +0 -0
  328. package/out/web/pdfjs/cmaps/Adobe-Korea1-2.bcmap +0 -0
  329. package/out/web/pdfjs/cmaps/Adobe-Korea1-UCS2.bcmap +0 -0
  330. package/out/web/pdfjs/cmaps/B5-H.bcmap +0 -0
  331. package/out/web/pdfjs/cmaps/B5-V.bcmap +0 -0
  332. package/out/web/pdfjs/cmaps/B5pc-H.bcmap +0 -0
  333. package/out/web/pdfjs/cmaps/B5pc-V.bcmap +0 -0
  334. package/out/web/pdfjs/cmaps/CNS-EUC-H.bcmap +0 -0
  335. package/out/web/pdfjs/cmaps/CNS-EUC-V.bcmap +0 -0
  336. package/out/web/pdfjs/cmaps/CNS1-H.bcmap +0 -0
  337. package/out/web/pdfjs/cmaps/CNS1-V.bcmap +0 -0
  338. package/out/web/pdfjs/cmaps/CNS2-H.bcmap +0 -0
  339. package/out/web/pdfjs/cmaps/CNS2-V.bcmap +3 -0
  340. package/out/web/pdfjs/cmaps/ETHK-B5-H.bcmap +0 -0
  341. package/out/web/pdfjs/cmaps/ETHK-B5-V.bcmap +0 -0
  342. package/out/web/pdfjs/cmaps/ETen-B5-H.bcmap +0 -0
  343. package/out/web/pdfjs/cmaps/ETen-B5-V.bcmap +0 -0
  344. package/out/web/pdfjs/cmaps/ETenms-B5-H.bcmap +3 -0
  345. package/out/web/pdfjs/cmaps/ETenms-B5-V.bcmap +0 -0
  346. package/out/web/pdfjs/cmaps/EUC-H.bcmap +0 -0
  347. package/out/web/pdfjs/cmaps/EUC-V.bcmap +0 -0
  348. package/out/web/pdfjs/cmaps/Ext-H.bcmap +0 -0
  349. package/out/web/pdfjs/cmaps/Ext-RKSJ-H.bcmap +0 -0
  350. package/out/web/pdfjs/cmaps/Ext-RKSJ-V.bcmap +0 -0
  351. package/out/web/pdfjs/cmaps/Ext-V.bcmap +0 -0
  352. package/out/web/pdfjs/cmaps/GB-EUC-H.bcmap +0 -0
  353. package/out/web/pdfjs/cmaps/GB-EUC-V.bcmap +0 -0
  354. package/out/web/pdfjs/cmaps/GB-H.bcmap +4 -0
  355. package/out/web/pdfjs/cmaps/GB-V.bcmap +0 -0
  356. package/out/web/pdfjs/cmaps/GBK-EUC-H.bcmap +0 -0
  357. package/out/web/pdfjs/cmaps/GBK-EUC-V.bcmap +0 -0
  358. package/out/web/pdfjs/cmaps/GBK2K-H.bcmap +0 -0
  359. package/out/web/pdfjs/cmaps/GBK2K-V.bcmap +0 -0
  360. package/out/web/pdfjs/cmaps/GBKp-EUC-H.bcmap +0 -0
  361. package/out/web/pdfjs/cmaps/GBKp-EUC-V.bcmap +0 -0
  362. package/out/web/pdfjs/cmaps/GBT-EUC-H.bcmap +0 -0
  363. package/out/web/pdfjs/cmaps/GBT-EUC-V.bcmap +0 -0
  364. package/out/web/pdfjs/cmaps/GBT-H.bcmap +0 -0
  365. package/out/web/pdfjs/cmaps/GBT-V.bcmap +0 -0
  366. package/out/web/pdfjs/cmaps/GBTpc-EUC-H.bcmap +0 -0
  367. package/out/web/pdfjs/cmaps/GBTpc-EUC-V.bcmap +0 -0
  368. package/out/web/pdfjs/cmaps/GBpc-EUC-H.bcmap +0 -0
  369. package/out/web/pdfjs/cmaps/GBpc-EUC-V.bcmap +0 -0
  370. package/out/web/pdfjs/cmaps/H.bcmap +0 -0
  371. package/out/web/pdfjs/cmaps/HKdla-B5-H.bcmap +0 -0
  372. package/out/web/pdfjs/cmaps/HKdla-B5-V.bcmap +0 -0
  373. package/out/web/pdfjs/cmaps/HKdlb-B5-H.bcmap +0 -0
  374. package/out/web/pdfjs/cmaps/HKdlb-B5-V.bcmap +0 -0
  375. package/out/web/pdfjs/cmaps/HKgccs-B5-H.bcmap +0 -0
  376. package/out/web/pdfjs/cmaps/HKgccs-B5-V.bcmap +0 -0
  377. package/out/web/pdfjs/cmaps/HKm314-B5-H.bcmap +0 -0
  378. package/out/web/pdfjs/cmaps/HKm314-B5-V.bcmap +0 -0
  379. package/out/web/pdfjs/cmaps/HKm471-B5-H.bcmap +0 -0
  380. package/out/web/pdfjs/cmaps/HKm471-B5-V.bcmap +0 -0
  381. package/out/web/pdfjs/cmaps/HKscs-B5-H.bcmap +0 -0
  382. package/out/web/pdfjs/cmaps/HKscs-B5-V.bcmap +0 -0
  383. package/out/web/pdfjs/cmaps/Hankaku.bcmap +0 -0
  384. package/out/web/pdfjs/cmaps/Hiragana.bcmap +0 -0
  385. package/out/web/pdfjs/cmaps/KSC-EUC-H.bcmap +0 -0
  386. package/out/web/pdfjs/cmaps/KSC-EUC-V.bcmap +0 -0
  387. package/out/web/pdfjs/cmaps/KSC-H.bcmap +0 -0
  388. package/out/web/pdfjs/cmaps/KSC-Johab-H.bcmap +0 -0
  389. package/out/web/pdfjs/cmaps/KSC-Johab-V.bcmap +0 -0
  390. package/out/web/pdfjs/cmaps/KSC-V.bcmap +0 -0
  391. package/out/web/pdfjs/cmaps/KSCms-UHC-H.bcmap +0 -0
  392. package/out/web/pdfjs/cmaps/KSCms-UHC-HW-H.bcmap +0 -0
  393. package/out/web/pdfjs/cmaps/KSCms-UHC-HW-V.bcmap +0 -0
  394. package/out/web/pdfjs/cmaps/KSCms-UHC-V.bcmap +0 -0
  395. package/out/web/pdfjs/cmaps/KSCpc-EUC-H.bcmap +0 -0
  396. package/out/web/pdfjs/cmaps/KSCpc-EUC-V.bcmap +0 -0
  397. package/out/web/pdfjs/cmaps/Katakana.bcmap +0 -0
  398. package/out/web/pdfjs/cmaps/LICENSE +36 -0
  399. package/out/web/pdfjs/cmaps/NWP-H.bcmap +0 -0
  400. package/out/web/pdfjs/cmaps/NWP-V.bcmap +0 -0
  401. package/out/web/pdfjs/cmaps/RKSJ-H.bcmap +0 -0
  402. package/out/web/pdfjs/cmaps/RKSJ-V.bcmap +0 -0
  403. package/out/web/pdfjs/cmaps/Roman.bcmap +0 -0
  404. package/out/web/pdfjs/cmaps/UniCNS-UCS2-H.bcmap +0 -0
  405. package/out/web/pdfjs/cmaps/UniCNS-UCS2-V.bcmap +0 -0
  406. package/out/web/pdfjs/cmaps/UniCNS-UTF16-H.bcmap +0 -0
  407. package/out/web/pdfjs/cmaps/UniCNS-UTF16-V.bcmap +0 -0
  408. package/out/web/pdfjs/cmaps/UniCNS-UTF32-H.bcmap +0 -0
  409. package/out/web/pdfjs/cmaps/UniCNS-UTF32-V.bcmap +0 -0
  410. package/out/web/pdfjs/cmaps/UniCNS-UTF8-H.bcmap +0 -0
  411. package/out/web/pdfjs/cmaps/UniCNS-UTF8-V.bcmap +0 -0
  412. package/out/web/pdfjs/cmaps/UniGB-UCS2-H.bcmap +0 -0
  413. package/out/web/pdfjs/cmaps/UniGB-UCS2-V.bcmap +0 -0
  414. package/out/web/pdfjs/cmaps/UniGB-UTF16-H.bcmap +0 -0
  415. package/out/web/pdfjs/cmaps/UniGB-UTF16-V.bcmap +0 -0
  416. package/out/web/pdfjs/cmaps/UniGB-UTF32-H.bcmap +0 -0
  417. package/out/web/pdfjs/cmaps/UniGB-UTF32-V.bcmap +0 -0
  418. package/out/web/pdfjs/cmaps/UniGB-UTF8-H.bcmap +0 -0
  419. package/out/web/pdfjs/cmaps/UniGB-UTF8-V.bcmap +0 -0
  420. package/out/web/pdfjs/cmaps/UniJIS-UCS2-H.bcmap +0 -0
  421. package/out/web/pdfjs/cmaps/UniJIS-UCS2-HW-H.bcmap +0 -0
  422. package/out/web/pdfjs/cmaps/UniJIS-UCS2-HW-V.bcmap +0 -0
  423. package/out/web/pdfjs/cmaps/UniJIS-UCS2-V.bcmap +0 -0
  424. package/out/web/pdfjs/cmaps/UniJIS-UTF16-H.bcmap +0 -0
  425. package/out/web/pdfjs/cmaps/UniJIS-UTF16-V.bcmap +0 -0
  426. package/out/web/pdfjs/cmaps/UniJIS-UTF32-H.bcmap +0 -0
  427. package/out/web/pdfjs/cmaps/UniJIS-UTF32-V.bcmap +0 -0
  428. package/out/web/pdfjs/cmaps/UniJIS-UTF8-H.bcmap +0 -0
  429. package/out/web/pdfjs/cmaps/UniJIS-UTF8-V.bcmap +0 -0
  430. package/out/web/pdfjs/cmaps/UniJIS2004-UTF16-H.bcmap +0 -0
  431. package/out/web/pdfjs/cmaps/UniJIS2004-UTF16-V.bcmap +0 -0
  432. package/out/web/pdfjs/cmaps/UniJIS2004-UTF32-H.bcmap +0 -0
  433. package/out/web/pdfjs/cmaps/UniJIS2004-UTF32-V.bcmap +0 -0
  434. package/out/web/pdfjs/cmaps/UniJIS2004-UTF8-H.bcmap +0 -0
  435. package/out/web/pdfjs/cmaps/UniJIS2004-UTF8-V.bcmap +0 -0
  436. package/out/web/pdfjs/cmaps/UniJISPro-UCS2-HW-V.bcmap +0 -0
  437. package/out/web/pdfjs/cmaps/UniJISPro-UCS2-V.bcmap +0 -0
  438. package/out/web/pdfjs/cmaps/UniJISPro-UTF8-V.bcmap +0 -0
  439. package/out/web/pdfjs/cmaps/UniJISX0213-UTF32-H.bcmap +0 -0
  440. package/out/web/pdfjs/cmaps/UniJISX0213-UTF32-V.bcmap +0 -0
  441. package/out/web/pdfjs/cmaps/UniJISX02132004-UTF32-H.bcmap +0 -0
  442. package/out/web/pdfjs/cmaps/UniJISX02132004-UTF32-V.bcmap +0 -0
  443. package/out/web/pdfjs/cmaps/UniKS-UCS2-H.bcmap +0 -0
  444. package/out/web/pdfjs/cmaps/UniKS-UCS2-V.bcmap +0 -0
  445. package/out/web/pdfjs/cmaps/UniKS-UTF16-H.bcmap +0 -0
  446. package/out/web/pdfjs/cmaps/UniKS-UTF16-V.bcmap +0 -0
  447. package/out/web/pdfjs/cmaps/UniKS-UTF32-H.bcmap +0 -0
  448. package/out/web/pdfjs/cmaps/UniKS-UTF32-V.bcmap +0 -0
  449. package/out/web/pdfjs/cmaps/UniKS-UTF8-H.bcmap +0 -0
  450. package/out/web/pdfjs/cmaps/UniKS-UTF8-V.bcmap +0 -0
  451. package/out/web/pdfjs/cmaps/V.bcmap +0 -0
  452. package/out/web/pdfjs/cmaps/WP-Symbol.bcmap +0 -0
  453. package/out/web/pdfjs/standard_fonts/FoxitDingbats.pfb +0 -0
  454. package/out/web/pdfjs/standard_fonts/FoxitFixed.pfb +0 -0
  455. package/out/web/pdfjs/standard_fonts/FoxitFixedBold.pfb +0 -0
  456. package/out/web/pdfjs/standard_fonts/FoxitFixedBoldItalic.pfb +0 -0
  457. package/out/web/pdfjs/standard_fonts/FoxitFixedItalic.pfb +0 -0
  458. package/out/web/pdfjs/standard_fonts/FoxitSerif.pfb +0 -0
  459. package/out/web/pdfjs/standard_fonts/FoxitSerifBold.pfb +0 -0
  460. package/out/web/pdfjs/standard_fonts/FoxitSerifBoldItalic.pfb +0 -0
  461. package/out/web/pdfjs/standard_fonts/FoxitSerifItalic.pfb +0 -0
  462. package/out/web/pdfjs/standard_fonts/FoxitSymbol.pfb +0 -0
  463. package/out/web/pdfjs/standard_fonts/LICENSE_FOXIT +27 -0
  464. package/out/web/pdfjs/standard_fonts/LICENSE_LIBERATION +363 -0
  465. package/out/web/pdfjs/standard_fonts/LiberationSans-Bold.ttf +0 -0
  466. package/out/web/pdfjs/standard_fonts/LiberationSans-BoldItalic.ttf +0 -0
  467. package/out/web/pdfjs/standard_fonts/LiberationSans-Italic.ttf +0 -0
  468. package/out/web/pdfjs/standard_fonts/LiberationSans-Regular.ttf +0 -0
  469. package/out/web/pdfjs/wasm/LICENSE_JBIG2 +196 -0
  470. package/out/web/pdfjs/wasm/LICENSE_OPENJPEG +39 -0
  471. package/out/web/pdfjs/wasm/LICENSE_PDFJS_JBIG2 +13 -0
  472. package/out/web/pdfjs/wasm/LICENSE_PDFJS_OPENJPEG +22 -0
  473. package/out/web/pdfjs/wasm/LICENSE_PDFJS_QCMS +19 -0
  474. package/out/web/pdfjs/wasm/LICENSE_QCMS +21 -0
  475. package/out/web/pdfjs/wasm/jbig2.wasm +0 -0
  476. package/out/web/pdfjs/wasm/jbig2_nowasm_fallback.js +15 -0
  477. package/out/web/pdfjs/wasm/openjpeg.wasm +0 -0
  478. package/out/web/pdfjs/wasm/openjpeg_nowasm_fallback.js +17 -0
  479. package/out/web/pdfjs/wasm/qcms_bg.wasm +0 -0
  480. package/out/web/pdfjs/wasm/quickjs-eval.js +16 -0
  481. package/out/web/pdfjs/wasm/quickjs-eval.wasm +0 -0
  482. package/package.json +6 -4
  483. package/shared-modules/CODEOWNERS +3 -3
  484. package/shared-modules/SDL2/SDL2_mixer.json +27 -0
  485. package/shared-modules/appstream/README.md +13 -0
  486. package/shared-modules/appstream/appstream-compose.json +111 -0
  487. package/shared-modules/dbus-glib/dbus-glib.json +2 -2
  488. package/shared-modules/libportal/libportal.json +23 -0
  489. package/shared-modules/linux-audio/fluidsynth2-static.json +2 -2
  490. package/shared-modules/linux-audio/fluidsynth2.json +2 -2
  491. package/shared-modules/linux-audio/libinstpatch.json +2 -2
  492. package/shared-modules/linux-audio/liblo-static.json +3 -0
  493. package/shared-modules/luajit/luajit.json +2 -2
  494. package/shared-modules/squashfs-tools/squashfs-tools.json +0 -3
  495. package/slash-commands.json +14 -3
  496. package/src/bin/index.js +4 -1
  497. package/src/bin/pdfjs-assets.mjs +31 -0
  498. package/src/renderer/node_modules/.vite/vitest/CACHEDIR.TAG +3 -0
  499. package/src/renderer/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  500. package/src/renderer/shared/agentProgress.ts +62 -5
  501. package/src/renderer/shared/components/Settings/AgentsTab.tsx +70 -6
  502. package/src/renderer/shared/components/Settings/AudioTab.tsx +1 -1
  503. package/src/renderer/shared/components/Settings/AutomationTab.tsx +32 -29
  504. package/src/renderer/shared/components/Settings/AvatarCropModal.tsx +32 -12
  505. package/src/renderer/shared/components/Settings/CustomProviderLogoPicker.test.tsx +65 -0
  506. package/src/renderer/shared/components/Settings/CustomProviderLogoPicker.tsx +456 -0
  507. package/src/renderer/shared/components/Settings/GeneralTab.tsx +65 -94
  508. package/src/renderer/shared/components/Settings/PluginsTab.tsx +101 -24
  509. package/src/renderer/shared/components/Settings/ProfileTab.tsx +1 -1
  510. package/src/renderer/shared/components/Settings/SettingsWindow.tsx +796 -0
  511. package/src/renderer/shared/components/Settings/ThemeTab.test.tsx +45 -0
  512. package/src/renderer/shared/components/Settings/ThemeTab.tsx +119 -4
  513. package/src/renderer/shared/components/activity/AgentActivityDrawer.tsx +270 -0
  514. package/src/renderer/shared/components/activity/AgentActivityTable.tsx +582 -0
  515. package/src/renderer/shared/components/activity/AskUserActivityCard.test.tsx +122 -0
  516. package/src/renderer/shared/components/activity/AskUserActivityCard.tsx +70 -0
  517. package/src/renderer/shared/components/{McpToolResults.tsx → activity/McpToolResults.tsx} +69 -13
  518. package/src/renderer/shared/components/{PlanChecklistWidget.tsx → activity/PlanChecklistWidget.tsx} +2 -2
  519. package/src/renderer/shared/components/activity/RunSummaryDashboard.test.tsx +127 -0
  520. package/src/renderer/shared/components/activity/RunSummaryDashboard.tsx +222 -0
  521. package/src/renderer/shared/components/activity/SubagentDagView.test.ts +123 -0
  522. package/src/renderer/shared/components/{SubagentDagView.tsx → activity/SubagentDagView.tsx} +104 -50
  523. package/src/renderer/shared/components/activity/SubagentStatusStrip.test.tsx +82 -0
  524. package/src/renderer/shared/components/activity/SubagentStatusStrip.tsx +107 -0
  525. package/src/renderer/shared/components/activity/ViewedImages.tsx +179 -0
  526. package/src/renderer/shared/components/{AuthGate.tsx → app/AuthGate.tsx} +3 -3
  527. package/src/renderer/shared/components/{ChunkErrorBoundary.tsx → app/ChunkErrorBoundary.tsx} +13 -13
  528. package/src/renderer/shared/components/{CommandPalette.tsx → app/CommandPalette.tsx} +30 -30
  529. package/src/renderer/shared/components/{DashboardSidebar.tsx → app/DashboardSidebar.tsx} +7 -5
  530. package/src/renderer/shared/components/{DesktopTitlebar.tsx → app/DesktopTitlebar.tsx} +9 -26
  531. package/src/renderer/shared/components/{ErrorNotice.tsx → app/ErrorNotice.tsx} +1 -1
  532. package/src/renderer/shared/components/{MintDashboard.tsx → app/MintDashboard.tsx} +217 -228
  533. package/src/renderer/shared/components/{ModalErrorBoundary.tsx → app/ModalErrorBoundary.tsx} +8 -8
  534. package/src/renderer/shared/components/{CalculationCard.tsx → cards/CalculationCard.tsx} +16 -30
  535. package/src/renderer/shared/components/{ImageGenCard.tsx → cards/ImageGenCard.tsx} +11 -24
  536. package/src/renderer/shared/components/{ImageSearchCard.tsx → cards/ImageSearchCard.tsx} +11 -24
  537. package/src/renderer/shared/components/{MermaidCard.tsx → cards/MermaidCard.tsx} +38 -22
  538. package/src/renderer/shared/components/cards/PlanCard.test.tsx +41 -0
  539. package/src/renderer/shared/components/cards/PlanCard.tsx +32 -0
  540. package/src/renderer/shared/components/cards/ReleaseNotesCard.test.tsx +29 -0
  541. package/src/renderer/shared/components/cards/ReleaseNotesCard.tsx +137 -0
  542. package/src/renderer/shared/components/{StockCard.tsx → cards/StockCard.tsx} +22 -38
  543. package/src/renderer/shared/components/cards/ToolResultCards.tsx +94 -0
  544. package/src/renderer/shared/components/{UiFeatureCard.tsx → cards/UiFeatureCard.tsx} +6 -6
  545. package/src/renderer/shared/components/{UiGridCard.tsx → cards/UiGridCard.tsx} +3 -3
  546. package/src/renderer/shared/components/{UiMockupWidget.tsx → cards/UiMockupWidget.tsx} +4 -4
  547. package/src/renderer/shared/components/{WeatherCard.tsx → cards/WeatherCard.tsx} +6 -6
  548. package/src/renderer/shared/components/{ApprovalCard.test.tsx → chat/ApprovalCard.test.tsx} +12 -1
  549. package/src/renderer/shared/components/{ApprovalCard.tsx → chat/ApprovalCard.tsx} +26 -7
  550. package/src/renderer/shared/components/chat/ArtifactCards.test.tsx +69 -0
  551. package/src/renderer/shared/components/chat/ArtifactCards.tsx +238 -0
  552. package/src/renderer/shared/components/chat/AttachedDocumentCard.test.tsx +39 -0
  553. package/src/renderer/shared/components/chat/AttachedDocumentCard.tsx +220 -0
  554. package/src/renderer/shared/components/chat/ChatCodeBlock.test.tsx +33 -0
  555. package/src/renderer/shared/components/{ChatCodeBlock.tsx → chat/ChatCodeBlock.tsx} +16 -2
  556. package/src/renderer/shared/components/chat/ChatMessageItem.test.tsx +183 -0
  557. package/src/renderer/shared/components/chat/ChatMessageItem.tsx +388 -0
  558. package/src/renderer/shared/components/chat/ChatModeSelector.css +227 -0
  559. package/src/renderer/shared/components/chat/ChatModeSelector.test.tsx +45 -0
  560. package/src/renderer/shared/components/chat/ChatModeSelector.tsx +198 -0
  561. package/src/renderer/shared/components/chat/ChatPanel.test.tsx +53 -0
  562. package/src/renderer/shared/components/{ChatPanel.tsx → chat/ChatPanel.tsx} +462 -537
  563. package/src/renderer/shared/components/{CollapsiblePasteInput.tsx → chat/CollapsiblePasteInput.tsx} +2 -2
  564. package/src/renderer/shared/components/{DiffReviewModal.tsx → chat/DiffReviewModal.tsx} +44 -44
  565. package/src/renderer/shared/components/chat/GeminiLiveOverlay.test.tsx +165 -0
  566. package/src/renderer/shared/components/{GeminiLiveOverlay.tsx → chat/GeminiLiveOverlay.tsx} +47 -5
  567. package/src/renderer/shared/components/{ModelSelectorPopover.tsx → chat/ModelSelectorPopover.tsx} +44 -16
  568. package/src/renderer/shared/components/chat/QueuedMessagesBanner.test.tsx +89 -0
  569. package/src/renderer/shared/components/chat/QueuedMessagesBanner.tsx +201 -0
  570. package/src/renderer/shared/components/{RewindModal.tsx → chat/RewindModal.tsx} +14 -14
  571. package/src/renderer/shared/components/{SlashChoicePanel.tsx → chat/SlashChoicePanel.tsx} +2 -2
  572. package/src/renderer/shared/components/{SlashSuggestions.test.tsx → chat/SlashSuggestions.test.tsx} +14 -0
  573. package/src/renderer/shared/components/{SlashSuggestions.tsx → chat/SlashSuggestions.tsx} +4 -4
  574. package/src/renderer/shared/components/chat/SourcesBlock.test.tsx +53 -0
  575. package/src/renderer/shared/components/{SourcesBlock.tsx → chat/SourcesBlock.tsx} +262 -123
  576. package/src/renderer/shared/components/{ThinkingBlock.tsx → chat/ThinkingBlock.tsx} +1 -1
  577. package/src/renderer/shared/components/chat/TurnFileChanges.test.tsx +130 -0
  578. package/src/renderer/shared/components/chat/TurnFileChanges.tsx +463 -0
  579. package/src/renderer/shared/components/{VoicePill.css → chat/VoicePill.css} +1 -1
  580. package/src/renderer/shared/components/{VoicePill.jsx → chat/VoicePill.jsx} +3 -2
  581. package/src/renderer/shared/components/{CliSessionsView.test.tsx → extensions/CliSessionsView.test.tsx} +2 -2
  582. package/src/renderer/shared/components/{CliSessionsView.tsx → extensions/CliSessionsView.tsx} +19 -16
  583. package/src/renderer/shared/components/{LinkedFoldersView.tsx → extensions/LinkedFoldersView.tsx} +3 -3
  584. package/src/renderer/shared/components/{McpRegistryPicker.tsx → extensions/McpRegistryPicker.tsx} +6 -6
  585. package/src/renderer/shared/components/{McpServersView.tsx → extensions/McpServersView.tsx} +105 -36
  586. package/src/renderer/shared/components/{McpToolAllowlist.tsx → extensions/McpToolAllowlist.tsx} +2 -2
  587. package/src/renderer/shared/components/{ModUi.test.tsx → extensions/ModUi.test.tsx} +9 -4
  588. package/src/renderer/shared/components/{ModsPanel.tsx → extensions/ModsPanel.tsx} +59 -7
  589. package/src/renderer/shared/components/{PluginsView.tsx → extensions/PluginsView.tsx} +6 -6
  590. package/src/renderer/shared/components/{ScheduledTasksView.tsx → extensions/ScheduledTasksView.tsx} +5 -5
  591. package/src/renderer/shared/components/extensions/SkillsView.test.tsx +31 -0
  592. package/src/renderer/shared/components/{SkillsView.tsx → extensions/SkillsView.tsx} +20 -4
  593. package/src/renderer/shared/components/{ImageStudioPanel.tsx → studio/ImageStudioPanel.tsx} +6 -6
  594. package/src/renderer/shared/components/{LibraryItemCard.tsx → studio/LibraryItemCard.tsx} +2 -2
  595. package/src/renderer/shared/components/{LibraryPage.tsx → studio/LibraryPage.tsx} +53 -10
  596. package/src/renderer/shared/components/{LibraryPreview.tsx → studio/LibraryPreview.tsx} +2 -2
  597. package/src/renderer/shared/components/{VeoStudioPanel.tsx → studio/VeoStudioPanel.tsx} +7 -7
  598. package/src/renderer/shared/components/{GlideSelect.css → ui/GlideSelect.css} +7 -6
  599. package/src/renderer/shared/components/ui/ProviderBrandIcon.test.tsx +67 -0
  600. package/src/renderer/shared/components/ui/ProviderBrandIcon.tsx +167 -0
  601. package/src/renderer/shared/components/ui/SelectField.tsx +506 -0
  602. package/src/renderer/shared/components/ui/error-recovery.css +10 -10
  603. package/src/renderer/shared/components/ui/error-recovery.tsx +1 -1
  604. package/src/renderer/shared/components/{ArtifactPreviewPanel.tsx → workspace/ArtifactPreviewPanel.tsx} +374 -118
  605. package/src/renderer/shared/components/workspace/BackgroundTerminals.test.tsx +63 -0
  606. package/src/renderer/shared/components/{BackgroundTerminals.tsx → workspace/BackgroundTerminals.tsx} +40 -9
  607. package/src/renderer/shared/components/workspace/CodeReviewPage.test.tsx +50 -0
  608. package/src/renderer/shared/components/{CodeReviewPage.tsx → workspace/CodeReviewPage.tsx} +124 -24
  609. package/src/renderer/shared/components/{GitBranchSelector.tsx → workspace/GitBranchSelector.tsx} +80 -24
  610. package/src/renderer/shared/components/workspace/SessionSources.tsx +113 -0
  611. package/src/renderer/shared/components/{TerminalDock.tsx → workspace/TerminalDock.tsx} +5 -2
  612. package/src/renderer/shared/components/workspace/ToolSurfacePage.test.tsx +81 -0
  613. package/src/renderer/shared/components/{ToolSurfacePage.tsx → workspace/ToolSurfacePage.tsx} +361 -90
  614. package/src/renderer/shared/components/{ToolsPanelToggle.tsx → workspace/ToolsPanelToggle.tsx} +1 -1
  615. package/src/renderer/shared/components/workspace/WorkspaceFileInfo.tsx +28 -0
  616. package/src/renderer/shared/components/workspace/WorkspaceMediaPreview.tsx +17 -0
  617. package/src/renderer/shared/components/{WorkspacePaneResizer.tsx → workspace/WorkspacePaneResizer.tsx} +1 -1
  618. package/src/renderer/shared/components/workspace/WorkspacePdfPreview.tsx +308 -0
  619. package/src/renderer/shared/components/workspace/WorkspacePreviewActions.test.tsx +101 -0
  620. package/src/renderer/shared/components/{WorkspacePreviewActions.tsx → workspace/WorkspacePreviewActions.tsx} +3 -3
  621. package/src/renderer/shared/components/{WorkspaceSelector.tsx → workspace/WorkspaceSelector.tsx} +99 -7
  622. package/src/renderer/shared/components/{background-terminals.css → workspace/background-terminals.css} +11 -11
  623. package/src/renderer/shared/components/{workspace-selector.css → workspace/workspace-selector.css} +84 -2
  624. package/src/renderer/shared/constants/config.ts +6 -3
  625. package/src/renderer/shared/constants/models.test.ts +51 -0
  626. package/src/renderer/shared/constants/models.ts +139 -32
  627. package/src/renderer/shared/conversation/coordinator.test.ts +46 -0
  628. package/src/renderer/shared/conversation/coordinator.ts +50 -2
  629. package/src/renderer/shared/conversation/lifecycle.test.ts +254 -4
  630. package/src/renderer/shared/conversation/lifecycle.ts +268 -12
  631. package/src/renderer/shared/conversation/progressiveStream.test.ts +83 -0
  632. package/src/renderer/shared/conversation/progressiveStream.ts +219 -0
  633. package/src/renderer/shared/conversation/projectNavigation.test.ts +18 -0
  634. package/src/renderer/shared/conversation/projectNavigation.ts +11 -0
  635. package/src/renderer/shared/conversation/transport.test.ts +20 -0
  636. package/src/renderer/shared/conversation/transport.ts +51 -9
  637. package/src/renderer/shared/conversation/useConversationCoordinator.ts +42 -12
  638. package/src/renderer/shared/css/agent-observability.css +205 -11
  639. package/src/renderer/shared/css/chat-ui-cards.css +48 -48
  640. package/src/renderer/shared/css/code-review.css +139 -110
  641. package/src/renderer/shared/css/code-sessions.css +56 -27
  642. package/src/renderer/shared/css/collapsed-paste.css +1 -1
  643. package/src/renderer/shared/css/error-notice.css +1 -1
  644. package/src/renderer/shared/css/file-changes.css +298 -51
  645. package/src/renderer/shared/css/library.css +105 -10
  646. package/src/renderer/shared/css/management-views.css +79 -38
  647. package/src/renderer/shared/css/mcp-results.css +48 -5
  648. package/src/renderer/shared/css/model-selector.css +18 -18
  649. package/src/renderer/shared/css/mods.css +7 -7
  650. package/src/renderer/shared/css/notification-notice.css +2 -2
  651. package/src/renderer/shared/css/queued-messages.css +221 -0
  652. package/src/renderer/shared/css/session-sources.css +12 -7
  653. package/src/renderer/shared/css/settings/agents.css +2 -2
  654. package/src/renderer/{src → shared}/css/settings/base.css +101 -107
  655. package/src/renderer/shared/css/settings/general.css +397 -100
  656. package/src/renderer/shared/css/settings/plugins.css +8 -8
  657. package/src/renderer/shared/css/settings/profile.css +5 -5
  658. package/src/renderer/shared/css/settings/theme.css +49 -37
  659. package/src/renderer/shared/css/slash-choice.css +2 -2
  660. package/src/renderer/shared/css/slash-suggestions.css +3 -3
  661. package/src/renderer/shared/css/sources-block.css +41 -2
  662. package/src/renderer/shared/css/tools-panel.css +2 -2
  663. package/src/renderer/shared/css/ui-tailwind.css +10 -2
  664. package/src/renderer/shared/css/veo-studio.css +2 -2
  665. package/src/renderer/shared/css/viewed-images.css +93 -4
  666. package/src/renderer/shared/css/workspace-file-info.css +12 -0
  667. package/src/renderer/shared/css/workspace-media-preview.css +13 -0
  668. package/src/renderer/shared/env.d.ts +9 -0
  669. package/src/renderer/shared/platform.test.ts +143 -0
  670. package/src/renderer/shared/platform.ts +12 -5
  671. package/src/renderer/shared/speech/player.ts +160 -0
  672. package/src/renderer/shared/speech/types.ts +11 -0
  673. package/src/renderer/shared/theme/themeManager.test.ts +37 -0
  674. package/src/renderer/shared/theme/themeManager.ts +24 -5
  675. package/src/renderer/shared/theme/themes.ts +71 -4
  676. package/src/renderer/shared/theme/tokens.css +452 -53
  677. package/src/renderer/shared/types.ts +57 -2
  678. package/src/renderer/shared/utils/agentActivity.test.ts +633 -8
  679. package/src/renderer/shared/utils/agentActivity.ts +776 -59
  680. package/src/renderer/shared/utils/artifactBrowser.test.ts +37 -32
  681. package/src/renderer/shared/utils/artifactBrowser.ts +18 -20
  682. package/src/renderer/shared/utils/artifacts.ts +55 -0
  683. package/src/renderer/shared/utils/attachedDocument.test.ts +73 -0
  684. package/src/renderer/shared/utils/attachedDocument.ts +49 -0
  685. package/src/renderer/shared/utils/contextCompaction.test.tsx +1 -1
  686. package/src/renderer/shared/utils/externalLinks.ts +91 -0
  687. package/src/renderer/shared/utils/fileIcons.test.ts +59 -0
  688. package/src/renderer/shared/utils/fileIcons.ts +149 -16
  689. package/src/renderer/shared/utils/lazyWithRetry.ts +13 -0
  690. package/src/renderer/shared/utils/markdown.tsx +238 -51
  691. package/src/renderer/shared/utils/markdown.webImages.test.tsx +140 -2
  692. package/src/renderer/shared/utils/mcpResults.test.tsx +53 -1
  693. package/src/renderer/shared/utils/pdfRange.ts +16 -0
  694. package/src/renderer/shared/utils/previewObjectUrls.ts +20 -0
  695. package/src/renderer/shared/utils/sessionSources.test.ts +41 -1
  696. package/src/renderer/shared/utils/sessionSources.ts +2 -0
  697. package/src/renderer/shared/utils/slashCommandProcessor.ts +7 -1
  698. package/src/renderer/shared/utils/speech.ts +18 -4
  699. package/src/renderer/shared/utils/syntaxHighlight.test.tsx +11 -1
  700. package/src/renderer/shared/utils/syntaxHighlight.tsx +51 -3
  701. package/src/renderer/shared/utils/useGeminiLiveVoice.ts +324 -51
  702. package/src/renderer/shared/utils/useNativeVoiceInput.ts +19 -5
  703. package/src/renderer/shared/utils/useSessionSources.ts +4 -0
  704. package/src/renderer/shared/utils/viewedImages.test.ts +129 -0
  705. package/src/renderer/shared/utils/viewedImages.ts +81 -10
  706. package/src/renderer/shared/utils/workspaceDrag.test.ts +153 -0
  707. package/src/renderer/shared/utils/workspaceDrag.ts +172 -0
  708. package/src/renderer/shared/utils/workspaceImage.ts +17 -0
  709. package/src/renderer/shared/utils/workspaceListPreferences.test.ts +64 -0
  710. package/src/renderer/shared/utils/workspaceListPreferences.ts +54 -0
  711. package/src/renderer/shared/utils/workspaceMedia.ts +49 -0
  712. package/src/renderer/shared/utils/workspacePreview.test.ts +147 -2
  713. package/src/renderer/shared/utils/workspacePreview.ts +34 -3
  714. package/src/renderer/shared/utils/workspaces.ts +3 -2
  715. package/src/renderer/src/App.tsx +20 -16
  716. package/src/renderer/src/agentProgress.ts +1 -0
  717. package/src/renderer/src/components/ChatPanel.tsx +1 -1
  718. package/src/renderer/src/components/DashboardSidebar.tsx +2 -2
  719. package/src/renderer/src/components/ImageStudioPanel.tsx +1 -1
  720. package/src/renderer/src/components/LiveTranslateControls.tsx +1 -1
  721. package/src/renderer/src/components/MintDashboard.tsx +1 -1
  722. package/src/renderer/src/components/ProactiveGlow.tsx +1 -1
  723. package/src/renderer/src/components/ScreenPicker.css +1 -1
  724. package/src/renderer/src/components/ScreenPicker.tsx +1 -1
  725. package/src/renderer/src/components/SettingsWindow.tsx +6 -830
  726. package/src/renderer/src/components/SpotlightWindow.tsx +4 -32
  727. package/src/renderer/src/components/VeoStudioPanel.tsx +1 -1
  728. package/src/renderer/src/components/WorkspacePanel.tsx +49 -15
  729. package/src/renderer/src/components/browser-suggestions-popup.css +8 -8
  730. package/src/renderer/src/css/app-shell.css +26 -106
  731. package/src/renderer/src/css/chat.css +1499 -292
  732. package/src/renderer/src/css/desktop-tools.css +17 -348
  733. package/src/renderer/src/css/sidebar-workspace.css +22 -2
  734. package/src/renderer/src/css/spotlight.css +2 -2
  735. package/src/renderer/src/css/tool-surfaces.css +335 -65
  736. package/src/renderer/src/css/widget.css +6 -5
  737. package/src/renderer/src/env.d.ts +13 -0
  738. package/src/renderer/src/index.css +53 -83
  739. package/src/renderer/src/tauri.ts +99 -13
  740. package/src/renderer/src/voiceInput.ts +3 -1
  741. package/src/renderer/src-web/App.tsx +20 -8
  742. package/src/renderer/src-web/agentProgress.ts +1 -0
  743. package/src/renderer/src-web/components/ChatPanel.tsx +1 -1
  744. package/src/renderer/src-web/components/DashboardSidebar.tsx +2 -2
  745. package/src/renderer/src-web/components/ImageStudioPanel.tsx +1 -1
  746. package/src/renderer/src-web/components/MintDashboard.tsx +1 -1
  747. package/src/renderer/src-web/components/SettingsWindow.tsx +6 -851
  748. package/src/renderer/src-web/components/VeoStudioPanel.tsx +1 -1
  749. package/src/renderer/src-web/css/app-shell.css +20 -104
  750. package/src/renderer/src-web/css/chat.css +1536 -261
  751. package/src/renderer/src-web/css/mobile.css +29 -13
  752. package/src/renderer/src-web/css/settings/mobile.css +2 -2
  753. package/src/renderer/src-web/css/sidebar-workspace.css +21 -1
  754. package/src/renderer/src-web/env.d.ts +14 -0
  755. package/src/renderer/src-web/index.css +53 -83
  756. package/src/renderer/src-web/tauri.ts +93 -15
  757. package/src/renderer/tests/browserArtifacts.browser.html +1 -0
  758. package/src/renderer/tests/browserArtifacts.browser.tsx +68 -0
  759. package/src/renderer/tests/chatEscape.browser.html +1 -0
  760. package/src/renderer/tests/chatEscape.browser.tsx +25 -0
  761. package/src/renderer/tests/chatPerformance.browser.html +1 -1
  762. package/src/renderer/tests/collapsedPaste.browser.html +1 -1
  763. package/src/renderer/tests/composerMenus.browser.html +3 -3
  764. package/src/renderer/tests/contextCompaction.browser.html +1 -1
  765. package/src/renderer/tests/errorRecovery.browser.html +1 -1
  766. package/src/renderer/tests/fixtures/preview.webm +0 -0
  767. package/src/renderer/tests/glideSelect.browser.html +1 -2
  768. package/src/renderer/tests/glideSelect.preview.html +1 -1
  769. package/src/renderer/tests/library.browser.tsx +4 -1
  770. package/src/renderer/tests/liveOrb.browser.html +1 -1
  771. package/src/renderer/tests/liveVoice.browser.html +1 -0
  772. package/src/renderer/tests/mediaFixtures.ts +32 -0
  773. package/src/renderer/tests/modInput.browser.html +1 -1
  774. package/src/renderer/tests/sessionSources.browser.tsx +76 -15
  775. package/src/renderer/tests/toolsPanel.browser.tsx +5 -5
  776. package/src/renderer/tests/viewedImages.browser.tsx +3 -3
  777. package/src/renderer/tests/voiceDictation.browser.html +101 -0
  778. package/src/renderer/tests/voicePill.browser.html +3 -3
  779. package/src/renderer/tests/voicePill.preview.html +1 -1
  780. package/src/renderer/tests/webSources.browser.tsx +2 -98
  781. package/src/renderer/tests/workspaceDrop.browser.html +1 -0
  782. package/src/renderer/tests/workspaceDrop.browser.tsx +183 -0
  783. package/src/renderer/tests/workspaceExpansion.browser.html +1 -0
  784. package/src/renderer/tests/workspaceExpansion.browser.tsx +66 -0
  785. package/src/renderer/tests/workspaceRemoval.browser.html +66 -0
  786. package/src/renderer/tests/workspaceUndo.browser.html +10 -2
  787. package/src-tauri/src/app/lifecycle.rs +45 -15
  788. package/src-tauri/src/background/headless.rs +14 -8
  789. package/src-tauri/src/commands/conversation.rs +137 -73
  790. package/src-tauri/src/commands/integrations.rs +7 -1
  791. package/src-tauri/src/commands/media.rs +7 -0
  792. package/src-tauri/src/commands/workspace.rs +38 -0
  793. package/src-tauri/src/native/mod.rs +0 -1
  794. package/src-tauri/src/native/system.rs +4 -47
  795. package/tsconfig.json +15 -1
  796. package/vite.config.ts +2 -1
  797. package/vite.config.web.ts +2 -0
  798. package/crates/mint-cli/src/interactive/chat_tui.rs +0 -7853
  799. package/crates/mint-core/src/agent/chat.rs +0 -4155
  800. package/crates/mint-core/src/browser/lifecycle.rs +0 -191
  801. package/crates/mint-core/src/browser/logging.rs +0 -20
  802. package/crates/mint-core/src/orchestration/tools/browser.rs +0 -31
  803. package/out/web/assets/CliSessionsView-CtzUJpK_.css +0 -1
  804. package/out/web/assets/CliSessionsView-D7hw0Mgj.js +0 -1
  805. package/out/web/assets/CodeReviewPage-C7bEOJfd.js +0 -4
  806. package/out/web/assets/CodeReviewPage-Dte9uLiL.css +0 -1
  807. package/out/web/assets/CommandPalette-0RrF-AOT.js +0 -1
  808. package/out/web/assets/ImageStudioPanel-CdxkAf_r.js +0 -1
  809. package/out/web/assets/LibraryPage--Qfisp6D.js +0 -2
  810. package/out/web/assets/LibraryPage-DAxUTAg7.css +0 -1
  811. package/out/web/assets/LinkedFoldersView-2nfZbDgN.js +0 -1
  812. package/out/web/assets/McpRegistryPicker-h9uS8_wT.js +0 -1
  813. package/out/web/assets/McpServersView-slfQJzNB.js +0 -1
  814. package/out/web/assets/MintDashboard-BSR5XpXh.js +0 -25
  815. package/out/web/assets/MintDashboard-CWUcCGhd.css +0 -1
  816. package/out/web/assets/PluginsView-l7LSm503.js +0 -1
  817. package/out/web/assets/ScheduledTasksView-CttmLbq1.js +0 -1
  818. package/out/web/assets/SettingsWindow-BCMLYvEV.js +0 -4
  819. package/out/web/assets/SettingsWindow-DcMVmU9u.css +0 -1
  820. package/out/web/assets/SkillsView-rNs1qr_U.js +0 -2
  821. package/out/web/assets/ToolSurfacePage-B9DzEPWN.js +0 -37
  822. package/out/web/assets/ToolSurfacePage-CTfgggF2.css +0 -1
  823. package/out/web/assets/VeoStudioPanel-DiJs_Cg2.js +0 -4
  824. package/out/web/assets/WorkspacePanel-CbJ1PFoZ.js +0 -1
  825. package/out/web/assets/WorkspaceSelector-B2xIp04D.js +0 -1
  826. package/out/web/assets/WorkspaceSelector-Ca8uJOsS.css +0 -1
  827. package/out/web/assets/abnfDiagram-VCTEODGH-CD0CjoGl.js +0 -1
  828. package/out/web/assets/architecture-7GRP2DOG-RKV83OeZ.js +0 -1
  829. package/out/web/assets/architectureDiagram-5GKGNRK7-nN_HAFct.js +0 -36
  830. package/out/web/assets/c4Diagram-UCG6FXSJ-DTdV8_zE.js +0 -38
  831. package/out/web/assets/chunk-2Q5K7J3B-Dmqrq8Tp.js +0 -1
  832. package/out/web/assets/chunk-75Z2AOVW-_M0z5olV.js +0 -2
  833. package/out/web/assets/chunk-CKBBP62Z-BpQEgeHF.js +0 -2
  834. package/out/web/assets/chunk-CLGD4ZFX-D54yGvGS.js +0 -1
  835. package/out/web/assets/chunk-CacB07dV.js +0 -1
  836. package/out/web/assets/chunk-DSNCTWBM-C-gvT2ru.js +0 -2
  837. package/out/web/assets/chunk-DU6HZSFF-CnFngIhW.js +0 -128
  838. package/out/web/assets/chunk-F27PBJKO-BqtWrnEO.js +0 -1
  839. package/out/web/assets/chunk-FOHPRMQF-BaVC1uA7.js +0 -161
  840. package/out/web/assets/chunk-G27WJ6UU-Ckoq5mi2.js +0 -231
  841. package/out/web/assets/chunk-JQ64N6SF-CF8T7GiZ.js +0 -1
  842. package/out/web/assets/chunk-JWPE2WC7-BwtYOHqU.js +0 -1
  843. package/out/web/assets/chunk-LNGE3PJU-AdBoOWw2.js +0 -34
  844. package/out/web/assets/chunk-OBVCFTLP-CRIkunUB.js +0 -1
  845. package/out/web/assets/chunk-P2QGCYS3-UFEU6BxZ.js +0 -1
  846. package/out/web/assets/chunk-POPQ4Y6H-CQcrNbjr.js +0 -1
  847. package/out/web/assets/chunk-PWAF6VOD-Cc2uVDsG.js +0 -1
  848. package/out/web/assets/chunk-R7TYR2AO-DiCxzdAY.js +0 -10
  849. package/out/web/assets/chunk-RHFEMEQ7-b7hnPmrR.js +0 -168
  850. package/out/web/assets/chunk-XXDRQBXY-DnJkbUaw.js +0 -1
  851. package/out/web/assets/chunk-Y2CYZVJY-C9o-s6OY.js +0 -1
  852. package/out/web/assets/classDiagram-DTDB5LWJ-RnC2mYO4.js +0 -1
  853. package/out/web/assets/classDiagram-v2-JRS7N3AN-RnC2mYO4.js +0 -1
  854. package/out/web/assets/config-CnvCChUM.js +0 -2
  855. package/out/web/assets/config-DM6oIVO3.css +0 -1
  856. package/out/web/assets/core-DsKkQ7ig.js +0 -1
  857. package/out/web/assets/cose-bilkent-JH36ORCC--UN4aw5-.js +0 -1
  858. package/out/web/assets/cynefin-OW5HDTMX-CnzQfOGp.js +0 -1
  859. package/out/web/assets/cynefinDiagram-5FMLGOSQ-DVtQnfpm.js +0 -62
  860. package/out/web/assets/cytoscape.esm-Df1UN4Y1.js +0 -321
  861. package/out/web/assets/dagre-3AP2YEHR-DG76_k5_.js +0 -4
  862. package/out/web/assets/dagre-BWadQu2F.js +0 -1
  863. package/out/web/assets/diagram-S7CK7UJ4-CaouUoze.js +0 -30
  864. package/out/web/assets/diagram-UQ7AKVKN-B4bEc26B.js +0 -41
  865. package/out/web/assets/diagram-VX7I27RA-7hH5IPYf.js +0 -24
  866. package/out/web/assets/diagram-Z3DM3KII-CCM4clo8.js +0 -24
  867. package/out/web/assets/dist-BoTOASLF.js +0 -1
  868. package/out/web/assets/dist-js-BkYNznHX.js +0 -1
  869. package/out/web/assets/ebnfDiagram-PWID7BFC-Da7WAM3k.js +0 -1
  870. package/out/web/assets/event-Cdt7Byyj.js +0 -1
  871. package/out/web/assets/eventmodeling-NTZA5JFV-xcfsA0XD.js +0 -1
  872. package/out/web/assets/flowDiagram-A5DVABFB-JdtH1673.js +0 -1
  873. package/out/web/assets/ganttDiagram-EL5Y4UJY-B3ClFGmL.js +0 -292
  874. package/out/web/assets/gitGraph-4MIJSDKK-BZ_y_cDU.js +0 -1
  875. package/out/web/assets/gitGraphDiagram-WWUBYQGX-drhRSYm3.js +0 -106
  876. package/out/web/assets/graphlib-CTR5ZhLf.js +0 -1
  877. package/out/web/assets/index-BZ9xgmMP.css +0 -1
  878. package/out/web/assets/index-Ca8cCS4h.js +0 -168
  879. package/out/web/assets/info-A6RAGUB7-B7I3K0F1.js +0 -1
  880. package/out/web/assets/infoDiagram-RXCK75RN-deX_1MPh.js +0 -2
  881. package/out/web/assets/journeyDiagram-EYS64GPL-CZn2kB8b.js +0 -139
  882. package/out/web/assets/jsx-runtime-DN4NhQUK.js +0 -1
  883. package/out/web/assets/katex-O3jvqgnU.js +0 -257
  884. package/out/web/assets/markdown-CMhYIcWB.js +0 -39
  885. package/out/web/assets/mermaid-parser.core-Whu2rlJC.js +0 -7
  886. package/out/web/assets/mermaid.core-CKyPo8VH.js +0 -11
  887. package/out/web/assets/modelManager-CUaGWMWu.js +0 -2
  888. package/out/web/assets/oauthManager-DlNhXJr6.js +0 -1
  889. package/out/web/assets/packet-AYTQ26CC-CEeIRKRG.js +0 -1
  890. package/out/web/assets/pegDiagram-XKGWAZYB-BYadI-KO.js +0 -1
  891. package/out/web/assets/pie-WAS4IAKB-D8uf4dh5.js +0 -1
  892. package/out/web/assets/pieDiagram-E7YTZNPT-CjSDy4hO.js +0 -39
  893. package/out/web/assets/radar-RG4KPBEZ-DZJxnokY.js +0 -1
  894. package/out/web/assets/railroad-74A4TZTK-DBysUiUi.js +0 -1
  895. package/out/web/assets/railroad-abnf-HS5TGJTU-CHWxoJYg.js +0 -1
  896. package/out/web/assets/railroad-ebnf-LZEXJU2U-DDv7X6bY.js +0 -1
  897. package/out/web/assets/railroad-peg-WCYAUIDC-DpfcYYNJ.js +0 -1
  898. package/out/web/assets/railroadDiagram-O6MQD6OU-CYtyv0t3.js +0 -1
  899. package/out/web/assets/rough.esm-DFbTUy8a.js +0 -1
  900. package/out/web/assets/sankeyDiagram-P5KCCOFB-Bn2x6C4Y.js +0 -40
  901. package/out/web/assets/sequenceDiagram-WJ2MYXX4-BvFLKtPd.js +0 -162
  902. package/out/web/assets/sizeCapture-X5ZJPWSS-DKeOCaN2.js +0 -1
  903. package/out/web/assets/src-DnfeXQPr.js +0 -1
  904. package/out/web/assets/stateDiagram-HBIQ2CUA-Bx0GWeaY.js +0 -1
  905. package/out/web/assets/stateDiagram-v2-4QOOHH4V--hol1yg_.js +0 -1
  906. package/out/web/assets/studio-B1mk40wD.js +0 -1
  907. package/out/web/assets/swimlanes-XN3QIQJK-CCma0T7L.js +0 -1
  908. package/out/web/assets/swimlanesDiagram-VK2B7HYN-BkohoVsU.js +0 -8
  909. package/out/web/assets/timeline-definition-24CTP7MA-iCRhhJ7C.js +0 -120
  910. package/out/web/assets/treeView-Q6P3EWNA-DZ-y08qp.js +0 -1
  911. package/out/web/assets/treemap-WGGIJYW6-De0CxzMx.js +0 -1
  912. package/out/web/assets/vennDiagram-4TSXK5OY-w_7aZ6xe.js +0 -34
  913. package/out/web/assets/wardley-WFR3VGLG-DT0y0xJ4.js +0 -1
  914. package/out/web/assets/window-BJCVtyET.js +0 -1
  915. package/shared-modules/libsecret/libsecret.json +0 -23
  916. package/shared-modules/libusb/libusb.json +0 -27
  917. package/shared-modules/lzo/lzo.json +0 -27
  918. package/src/renderer/shared/components/AgentActivityDrawer.tsx +0 -204
  919. package/src/renderer/shared/components/AgentActivityTable.tsx +0 -301
  920. package/src/renderer/shared/components/ChatMessageItem.test.tsx +0 -68
  921. package/src/renderer/shared/components/ChatMessageItem.tsx +0 -326
  922. package/src/renderer/shared/components/ChatPanel.test.tsx +0 -21
  923. package/src/renderer/shared/components/FormattedMessage.tsx +0 -11
  924. package/src/renderer/shared/components/GeminiLiveOverlay.test.tsx +0 -24
  925. package/src/renderer/shared/components/GlideSelect.d.ts +0 -31
  926. package/src/renderer/shared/components/GlideSelect.jsx +0 -266
  927. package/src/renderer/shared/components/InlineThoughtNote.tsx +0 -27
  928. package/src/renderer/shared/components/ModSessionControls.tsx +0 -8
  929. package/src/renderer/shared/components/ModUi.tsx +0 -26
  930. package/src/renderer/shared/components/ProgressActivity.tsx +0 -17
  931. package/src/renderer/shared/components/ReviewHistory.tsx +0 -42
  932. package/src/renderer/shared/components/RunSummaryDashboard.tsx +0 -143
  933. package/src/renderer/shared/components/SelectField.tsx +0 -38
  934. package/src/renderer/shared/components/SessionSources.tsx +0 -48
  935. package/src/renderer/shared/components/SessionSourcesPopover.tsx +0 -61
  936. package/src/renderer/shared/components/ToolSurfacePage.test.tsx +0 -32
  937. package/src/renderer/shared/components/ViewedImages.tsx +0 -36
  938. package/src/renderer/shared/components/WorkspaceContextPopover.tsx +0 -138
  939. package/src/renderer/shared/components/WorkspacePreviewActions.test.tsx +0 -44
  940. package/src/renderer/shared/components/ui/demo.tsx +0 -26
  941. package/src/renderer/shared/css/session-sources-popover.css +0 -9
  942. package/src/renderer/src/components/BrowserShell.tsx +0 -108
  943. package/src/renderer/src/components/BrowserSuggestionsPopup.tsx +0 -91
  944. package/src/renderer/src/components/CalculationCard.tsx +0 -3
  945. package/src/renderer/src/components/ImageGenCard.tsx +0 -2
  946. package/src/renderer/src/components/ImageSearchCard.tsx +0 -2
  947. package/src/renderer/src/components/MermaidCard.tsx +0 -1
  948. package/src/renderer/src/components/PicturesLibrary.tsx +0 -2
  949. package/src/renderer/src/components/Settings/AgentsTab.tsx +0 -4
  950. package/src/renderer/src/components/Settings/AudioTab.tsx +0 -3
  951. package/src/renderer/src/components/Settings/AutomationTab.tsx +0 -3
  952. package/src/renderer/src/components/Settings/GeneralTab.tsx +0 -3
  953. package/src/renderer/src/components/Settings/MemoryTab.tsx +0 -3
  954. package/src/renderer/src/components/Settings/PluginsTab.tsx +0 -3
  955. package/src/renderer/src/components/Settings/ProfileTab.tsx +0 -3
  956. package/src/renderer/src/components/Settings/ShortcutsTab.tsx +0 -3
  957. package/src/renderer/src/components/Settings/ThemeTab.tsx +0 -3
  958. package/src/renderer/src/components/StockCard.tsx +0 -3
  959. package/src/renderer/src/components/WeatherCard.tsx +0 -3
  960. package/src/renderer/src/components/browser-shell.css +0 -185
  961. package/src/renderer/src/css/pictures.css +0 -2
  962. package/src/renderer/src-web/components/PicturesLibrary.tsx +0 -2
  963. package/src/renderer/src-web/components/Settings/AgentsTab.tsx +0 -4
  964. package/src/renderer/src-web/components/Settings/AudioTab.tsx +0 -3
  965. package/src/renderer/src-web/components/Settings/AutomationTab.tsx +0 -3
  966. package/src/renderer/src-web/components/Settings/GeneralTab.tsx +0 -3
  967. package/src/renderer/src-web/components/Settings/MemoryTab.tsx +0 -3
  968. package/src/renderer/src-web/components/Settings/PluginsTab.tsx +0 -3
  969. package/src/renderer/src-web/components/Settings/ProfileTab.tsx +0 -3
  970. package/src/renderer/src-web/components/Settings/ShortcutsTab.tsx +0 -3
  971. package/src/renderer/src-web/components/Settings/ThemeTab.tsx +0 -3
  972. package/src/renderer/src-web/css/pictures.css +0 -2
  973. package/src/renderer/src-web/css/settings/base.css +0 -1266
  974. package/src/renderer/src-web/css/spotlight.css +0 -102
  975. package/src/renderer/src-web/css/widget.css +0 -213
  976. package/src-tauri/src/native/browser.rs +0 -252
  977. /package/src/renderer/shared/components/{ContextCompactionStatus.tsx → chat/ContextCompactionStatus.tsx} +0 -0
  978. /package/src/renderer/shared/components/{GeminiLiveOverlay.css → chat/GeminiLiveOverlay.css} +0 -0
  979. /package/src/renderer/shared/components/{VirtualChatHistory.tsx → chat/VirtualChatHistory.tsx} +0 -0
  980. /package/src/renderer/shared/components/{VoicePill.d.ts → chat/VoicePill.d.ts} +0 -0
  981. /package/src/renderer/shared/components/{VoicePill.test.tsx → chat/VoicePill.test.tsx} +0 -0
  982. /package/src/renderer/shared/components/{ScreenCaptureDialog.css → studio/ScreenCaptureDialog.css} +0 -0
  983. /package/src/renderer/shared/components/{ScreenCaptureDialog.tsx → studio/ScreenCaptureDialog.tsx} +0 -0
  984. /package/src/renderer/shared/components/{SelectField.test.tsx → ui/SelectField.test.tsx} +0 -0
@@ -120,13 +120,25 @@
120
120
  align-items: flex-start;
121
121
  }
122
122
 
123
- /* Activity dashboards need the chat column, not the reply text's intrinsic width. */
123
+ /* Activity dashboards & file changes need the full chat column, not the reply text's intrinsic width. */
124
124
  .message.ai-message:has(.agent-activity-history),
125
+ .message.ai-message:has(.file-changes-summary-container),
126
+ .message.ai-message:has(.file-changes-card),
127
+ .message.ai-message:has(.chat-artifact-cards),
128
+ .message.ai-message:has(.chat-artifact-card),
125
129
  .message.ai-message.agent-activity-message {
126
130
  align-self: stretch;
127
131
  width: 100%;
128
132
  }
133
+ .message:has(.source-links-popover) {
134
+ position: relative;
135
+ z-index: 30;
136
+ }
129
137
  .message.ai-message:has(.agent-activity-history) > .bubble-wrapper,
138
+ .message.ai-message:has(.file-changes-summary-container) > .bubble-wrapper,
139
+ .message.ai-message:has(.file-changes-card) > .bubble-wrapper,
140
+ .message.ai-message:has(.chat-artifact-cards) > .bubble-wrapper,
141
+ .message.ai-message:has(.chat-artifact-card) > .bubble-wrapper,
130
142
  .agent-activity-history { width: 100%; }
131
143
 
132
144
  .message-time {
@@ -170,6 +182,34 @@
170
182
  color: var(--text-primary);
171
183
  }
172
184
 
185
+ .provider-chip-logo {
186
+ display: inline-flex;
187
+ align-items: center;
188
+ justify-content: center;
189
+ width: 13px;
190
+ height: 13px;
191
+ flex-shrink: 0;
192
+ vertical-align: middle;
193
+ }
194
+
195
+ .provider-chip-logo img {
196
+ width: 100%;
197
+ height: 100%;
198
+ object-fit: contain;
199
+ display: block;
200
+ }
201
+
202
+ .provider-chip-logo.is-monochrome {
203
+ background-color: var(--provider-brand-color, currentColor);
204
+ -webkit-mask-repeat: no-repeat;
205
+ mask-repeat: no-repeat;
206
+ -webkit-mask-size: contain;
207
+ mask-size: contain;
208
+ -webkit-mask-position: center;
209
+ mask-position: center;
210
+ display: inline-block;
211
+ }
212
+
173
213
  .provider-chip-dot {
174
214
  width: 6px;
175
215
  height: 6px;
@@ -375,10 +415,30 @@
375
415
  .user-message .message-bubble {
376
416
  background: linear-gradient(135deg, var(--accent) 0%, color-mix(in srgb, var(--accent) 70%, #000000) 100%);
377
417
  color: var(--text-on-accent);
378
- border-radius: 22px 22px 6px 22px;
418
+ border-radius: var(--radius-xl) var(--radius-xl) var(--radius-xs, 4px) var(--radius-xl);
379
419
  box-shadow: var(--glow-accent-md), inset 1px 1px 0 rgba(255, 255, 255, 0.2);
380
420
  }
381
421
 
422
+ .chat-attached-document-card {
423
+ width: 100%;
424
+ box-sizing: border-box;
425
+ }
426
+
427
+ .user-message .chat-attached-document-card {
428
+ background: color-mix(in srgb, rgba(0, 0, 0, 0.38) 85%, var(--surface-bg, #18181b));
429
+ border: 1px solid rgba(255, 255, 255, 0.18);
430
+ backdrop-filter: blur(8px);
431
+ -webkit-backdrop-filter: blur(8px);
432
+ }
433
+
434
+ .user-message .chat-attached-document-card:hover {
435
+ border-color: rgba(255, 255, 255, 0.3);
436
+ }
437
+
438
+ .chat-attached-document-toggle-action:hover {
439
+ filter: brightness(1.15);
440
+ }
441
+
382
442
  .ai-message {
383
443
  transform-origin: bottom left;
384
444
  }
@@ -393,6 +453,7 @@
393
453
  box-shadow: none;
394
454
  color: var(--text-chat, var(--text-main));
395
455
  padding: 0; /* keep spacing handled by wrapper */
456
+ width: 100%;
396
457
  }
397
458
 
398
459
  .message.ai-message.thinking-message .message-bubble {
@@ -461,12 +522,17 @@
461
522
  margin-bottom: 8px;
462
523
  }
463
524
 
525
+ .chat-list-block {
526
+ margin: 4px 0;
527
+ white-space: normal;
528
+ }
529
+
464
530
  .chat-list-item {
465
531
  display: flex;
466
532
  align-items: flex-start;
467
533
  gap: 10px;
468
- margin: 4px 0 4px 4px;
469
- line-height: 1.74;
534
+ margin: 3px 0 3px 4px;
535
+ line-height: 1.68;
470
536
  }
471
537
 
472
538
  .chat-list-bullet {
@@ -502,6 +568,11 @@
502
568
  color: var(--text-chat, var(--text-main));
503
569
  }
504
570
 
571
+ .chat-list-text > .chat-list-block {
572
+ margin: 4px 0 2px 0;
573
+ white-space: normal;
574
+ }
575
+
505
576
  .chat-link {
506
577
  color: var(--interactive-fg-hover);
507
578
  text-decoration: underline;
@@ -521,13 +592,13 @@
521
592
  }
522
593
 
523
594
  .chat-inline-code {
524
- background: var(--bg-surface-soft);
525
- border: 1px solid var(--border-default);
526
- padding: 2px 7px;
527
- border-radius: 6px;
528
- font-family: 'Fira Code', monospace;
529
- font-size: 0.86em;
530
- color: var(--text-chat);
595
+ background: var(--bg-surface-hover, rgba(127, 127, 127, 0.14));
596
+ border: none;
597
+ padding: 1.5px 5px;
598
+ border-radius: var(--radius-xs, 4px);
599
+ font-family: 'Fira Code', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
600
+ font-size: 0.88em;
601
+ color: var(--text-chat, inherit);
531
602
  letter-spacing: -0.01em;
532
603
  }
533
604
 
@@ -579,7 +650,7 @@
579
650
  display: flex;
580
651
  gap: 12px;
581
652
  background: rgba(0, 0, 0, 0.15);
582
- border-radius: var(--radius-2xl);
653
+ border-radius: var(--radius-composer, 24px);
583
654
  padding: 6px;
584
655
  border: 1px solid var(--border);
585
656
  border-top: 1px solid var(--border-light);
@@ -650,16 +721,16 @@
650
721
 
651
722
  #chat-tool-btn,
652
723
  #screen-capture-btn {
653
- background: transparent;
654
- color: var(--text-muted);
655
- border: 1px solid var(--border);
724
+ background: var(--btn-gray-bg, transparent);
725
+ color: var(--btn-gray-fg, var(--text-muted));
726
+ border: 1px solid var(--btn-gray-border, var(--border));
656
727
  }
657
728
 
658
729
  #chat-tool-btn:hover,
659
730
  #screen-capture-btn:hover {
660
- background: color-mix(in srgb, var(--accent) 15%, transparent);
661
- color: var(--interactive-fg);
662
- border-color: color-mix(in srgb, var(--accent) 40%, transparent);
731
+ background: var(--btn-gray-bg-hover, color-mix(in srgb, var(--accent) 15%, transparent));
732
+ color: var(--interactive-fg, #ffffff);
733
+ border-color: var(--accent-border, color-mix(in srgb, var(--accent) 40%, transparent));
663
734
  }
664
735
 
665
736
  .action-card {
@@ -745,7 +816,7 @@
745
816
  .approval-tool-icon-wrapper {
746
817
  width: 28px;
747
818
  height: 28px;
748
- border-radius: 7px;
819
+ border-radius: var(--radius-sm, 8px);
749
820
  background: var(--bg-surface-soft);
750
821
  border: 1px solid var(--border-subtle);
751
822
  display: flex;
@@ -787,12 +858,18 @@
787
858
  border-color: var(--border-subtle);
788
859
  }
789
860
 
861
+ .approval-badge-chip.plan {
862
+ background: var(--accent-subtle, rgba(105, 230, 166, 0.12));
863
+ color: var(--accent, #69e6a6);
864
+ border: 1px solid var(--accent-border, rgba(105, 230, 166, 0.3));
865
+ }
866
+
790
867
  .approval-content-box {
791
868
  width: 100%;
792
869
  box-sizing: border-box;
793
870
  background: var(--bg-surface-soft);
794
871
  border: 1px solid var(--border-subtle);
795
- border-radius: 9px;
872
+ border-radius: var(--radius-md, 10px);
796
873
  padding: 10px 14px;
797
874
  font-family: 'Fira Code', ui-monospace, monospace;
798
875
  font-size: 0.84rem;
@@ -816,6 +893,17 @@
816
893
  text-align: left;
817
894
  }
818
895
 
896
+ .approval-content-box.plan-review-content {
897
+ font-family: inherit;
898
+ font-size: 0.9rem;
899
+ line-height: 1.55;
900
+ background: var(--bg-surface-soft, rgba(255, 255, 255, 0.04));
901
+ border: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
902
+ border-radius: var(--radius-md, 10px);
903
+ padding: 12px 16px;
904
+ white-space: normal;
905
+ }
906
+
819
907
  .approval-reason-text {
820
908
  width: 100%;
821
909
  font-size: 0.78rem;
@@ -851,7 +939,7 @@
851
939
  padding: 10px 13px;
852
940
  background: var(--bg-surface-soft);
853
941
  border: 1px solid var(--border-subtle);
854
- border-radius: 10px;
942
+ border-radius: var(--radius-lg, 14px);
855
943
  cursor: pointer;
856
944
  text-align: left;
857
945
  transition: all 0.16s cubic-bezier(0.16, 1, 0.3, 1);
@@ -888,7 +976,7 @@
888
976
  .claude-choice-key {
889
977
  width: 22px;
890
978
  height: 22px;
891
- border-radius: 6px;
979
+ border-radius: var(--radius-xs, 6px);
892
980
  background: var(--bg-surface-soft);
893
981
  border: 1px solid var(--border-default);
894
982
  display: flex;
@@ -970,7 +1058,7 @@
970
1058
  padding: 9px 12px;
971
1059
  background: var(--bg-input);
972
1060
  border: 1px solid var(--border-default);
973
- border-radius: 8px;
1061
+ border-radius: var(--radius-sm, 8px);
974
1062
  color: var(--text-main);
975
1063
  font-size: 0.84rem;
976
1064
  font-family: inherit;
@@ -1093,15 +1181,24 @@
1093
1181
  border-color: color-mix(in srgb, var(--status-error, #ef4444) 50%, transparent);
1094
1182
  }
1095
1183
 
1184
+ .file-changes-summary-container {
1185
+ width: 100%;
1186
+ align-self: stretch;
1187
+ margin: 6px 0;
1188
+ box-sizing: border-box;
1189
+ }
1190
+
1096
1191
  .file-changes-card {
1192
+ width: 100% !important;
1097
1193
  border: 1px solid var(--border) !important;
1098
1194
  border-radius: var(--radius-md, 8px) !important;
1099
1195
  padding: 0 !important;
1100
- background: var(--surface-bg, #1e1e20) !important;
1196
+ background: var(--bg-surface-raised, #18181b) !important;
1101
1197
  margin-top: 4px;
1102
1198
  overflow: hidden;
1103
1199
  display: flex;
1104
1200
  flex-direction: column;
1201
+ box-sizing: border-box;
1105
1202
  }
1106
1203
 
1107
1204
  .file-changes-summary-row {
@@ -1109,72 +1206,92 @@
1109
1206
  display: flex;
1110
1207
  gap: 12px;
1111
1208
  justify-content: space-between;
1112
- min-height: 48px;
1113
- padding: 8px 12px;
1209
+ min-height: 38px;
1210
+ padding: 6px 14px;
1211
+ box-sizing: border-box;
1212
+ cursor: pointer;
1213
+ user-select: none;
1214
+ transition: background 0.15s ease;
1215
+ }
1216
+
1217
+ .file-changes-summary-row:hover {
1218
+ background: color-mix(in srgb, var(--text-main) 3%, transparent);
1219
+ }
1220
+
1221
+ .file-changes-summary-row.is-open {
1114
1222
  border-bottom: 1px solid var(--border);
1115
1223
  }
1116
1224
 
1117
- .file-changes-summary {
1225
+ .file-changes-summary-toggle {
1226
+ display: inline-flex;
1118
1227
  align-items: center;
1119
- display: flex;
1120
1228
  gap: 8px;
1121
1229
  min-width: 0;
1230
+ flex: 1;
1122
1231
  }
1123
1232
 
1124
- .file-changes-summary-copy {
1125
- display: flex;
1126
- flex-direction: column;
1127
- gap: 2px;
1128
- min-width: 0;
1233
+ .file-changes-summary-label {
1234
+ color: var(--text-main, #f1f5f9);
1235
+ font-size: 0.88rem;
1236
+ font-weight: 500;
1237
+ white-space: nowrap;
1129
1238
  }
1130
1239
 
1131
- .file-changes-summary-icon {
1132
- align-items: center;
1133
- background: color-mix(in srgb, var(--accent) 12%, transparent);
1134
- border-radius: 7px;
1135
- color: var(--interactive-fg);
1240
+ .file-changes-summary-counts {
1136
1241
  display: inline-flex;
1137
- flex: 0 0 30px;
1138
- font-size: 1rem;
1139
- font-weight: 700;
1140
- height: 30px;
1141
- justify-content: center;
1242
+ align-items: center;
1243
+ gap: 6px;
1244
+ font-size: 0.84rem;
1245
+ font-weight: 600;
1246
+ line-height: 1;
1142
1247
  }
1143
1248
 
1144
- .file-changes-summary-label {
1145
- color: var(--text-main);
1146
- font-size: 0.84rem;
1249
+ .file-changes-count-add {
1250
+ color: var(--interactive-fg, var(--status-success, #22c55e));
1147
1251
  font-weight: 600;
1148
1252
  }
1149
1253
 
1150
- .file-changes-summary-counts {
1151
- display: inline-flex;
1152
- gap: 5px;
1153
- font-size: 0.75rem;
1154
- line-height: 1.2;
1254
+ .file-changes-count-del {
1255
+ color: var(--status-error, #ef4444);
1256
+ font-weight: 600;
1257
+ }
1258
+
1259
+ .file-changes-chevron {
1260
+ color: var(--text-muted, #94a3b8);
1261
+ transition: transform 0.18s ease;
1262
+ flex-shrink: 0;
1263
+ margin-left: 2px;
1264
+ }
1265
+
1266
+ .file-changes-chevron.is-open {
1267
+ transform: rotate(90deg);
1155
1268
  }
1156
1269
 
1157
1270
  .file-changes-summary-actions {
1158
- align-items: center;
1159
1271
  display: inline-flex;
1160
- flex: 0 0 auto;
1161
- gap: 7px;
1272
+ align-items: center;
1273
+ gap: 8px;
1274
+ flex-shrink: 0;
1162
1275
  }
1163
1276
 
1164
1277
  .file-changes-review-btn {
1165
- background: color-mix(in srgb, var(--text-main) 5%, transparent);
1278
+ display: inline-flex;
1279
+ align-items: center;
1280
+ gap: 6px;
1281
+ background: color-mix(in srgb, var(--text-main) 6%, transparent);
1166
1282
  border: 1px solid var(--border);
1167
- border-radius: var(--radius-xs, 5px);
1168
- color: var(--text-main);
1283
+ border-radius: var(--radius-sm, 6px);
1284
+ color: var(--text-main, #f1f5f9);
1169
1285
  cursor: pointer;
1170
1286
  font: inherit;
1171
- font-size: 0.75rem;
1172
- padding: 5px 10px;
1287
+ font-size: 0.78rem;
1288
+ font-weight: 500;
1289
+ padding: 4px 10px;
1173
1290
  transition: background 0.15s ease, border-color 0.15s ease;
1174
1291
  }
1175
1292
 
1176
1293
  .file-changes-review-btn:hover {
1177
- background: color-mix(in srgb, var(--text-main) 10%, transparent);
1294
+ background: color-mix(in srgb, var(--text-main) 12%, transparent);
1178
1295
  border-color: var(--border-light, var(--border));
1179
1296
  }
1180
1297
 
@@ -1294,56 +1411,72 @@
1294
1411
  color: var(--interactive-fg-hover);
1295
1412
  }
1296
1413
 
1297
- .file-changes-diff-box {
1298
- margin-top: 6px;
1299
- background: var(--input-bg, #0a0a0b);
1300
- border-radius: var(--radius-sm, 6px);
1301
- padding: 8px;
1414
+ .file-changes-item[draggable="true"] {
1415
+ cursor: grab;
1416
+ }
1417
+
1418
+ .file-changes-item[draggable="true"]:active {
1419
+ cursor: grabbing;
1420
+ }
1421
+
1422
+ .file-changes-mention-btn {
1423
+ display: inline-flex;
1424
+ align-items: center;
1425
+ gap: 3px;
1426
+ padding: 1px 6px;
1427
+ font-size: 0.68rem;
1428
+ border-radius: var(--radius-xs, 4px);
1429
+ background: color-mix(in srgb, var(--surface-strong, #1f293d) 60%, transparent);
1430
+ color: var(--text-muted, #94a3b8);
1302
1431
  border: 1px solid var(--border);
1303
- overflow-x: auto;
1304
- max-height: 300px;
1432
+ cursor: pointer;
1433
+ font-weight: 500;
1434
+ transition: all 0.15s ease;
1305
1435
  }
1306
1436
 
1307
- .file-changes-diff-hunk {
1308
- font-size: 0.74rem;
1309
- font-family: 'Fira Code', 'Courier New', Courier, monospace;
1310
- line-height: 1.45;
1437
+ .file-changes-mention-btn:hover {
1438
+ background: color-mix(in srgb, var(--accent) 18%, transparent);
1439
+ color: var(--interactive-fg);
1440
+ border-color: color-mix(in srgb, var(--accent) 35%, transparent);
1311
1441
  }
1312
1442
 
1313
- .file-changes-diff-del {
1314
- background: color-mix(in srgb, var(--status-error, #ef4444) 10%, transparent);
1315
- border-left: 3px solid var(--status-error, #ef4444);
1316
- padding: 4px 6px;
1317
- color: var(--text-chat, var(--text-main));
1318
- white-space: pre-wrap;
1443
+ .agent-activity-target-text.is-file-target,
1444
+ .agent-activity-subitem-target.is-file-target {
1445
+ cursor: grab;
1446
+ text-decoration: underline dotted color-mix(in srgb, var(--text-muted) 50%, transparent);
1319
1447
  }
1320
1448
 
1321
- .file-changes-diff-add {
1322
- background: color-mix(in srgb, var(--accent) 10%, transparent);
1323
- border-left: 3px solid var(--accent);
1324
- padding: 4px 6px;
1325
- color: var(--text-chat, var(--text-main));
1326
- white-space: pre-wrap;
1449
+ .agent-activity-target-text.is-file-target:active,
1450
+ .agent-activity-subitem-target.is-file-target:active {
1451
+ cursor: grabbing;
1327
1452
  }
1328
1453
 
1329
- .file-changes-diff-sign-del {
1330
- color: var(--status-error, #ef4444);
1331
- margin-right: 6px;
1332
- user-select: none;
1454
+ .agent-activity-mention-btn {
1455
+ display: inline-flex;
1456
+ align-items: center;
1457
+ justify-content: center;
1458
+ width: 16px;
1459
+ height: 16px;
1460
+ padding: 0;
1461
+ font-size: 0.65rem;
1333
1462
  font-weight: 600;
1334
- display: inline-block;
1335
- min-width: 10px;
1463
+ border-radius: var(--radius-xs, 4px);
1464
+ background: transparent;
1465
+ color: var(--text-muted);
1466
+ border: 1px solid transparent;
1467
+ cursor: pointer;
1468
+ transition: all 0.15s ease;
1469
+ margin-right: 4px;
1336
1470
  }
1337
1471
 
1338
- .file-changes-diff-sign-add {
1472
+ .agent-activity-mention-btn:hover {
1473
+ background: color-mix(in srgb, var(--accent) 20%, transparent);
1339
1474
  color: var(--interactive-fg);
1340
- margin-right: 6px;
1341
- user-select: none;
1342
- font-weight: 600;
1343
- display: inline-block;
1344
- min-width: 10px;
1475
+ border-color: color-mix(in srgb, var(--accent) 35%, transparent);
1345
1476
  }
1346
1477
 
1478
+
1479
+
1347
1480
  /* Full-panel code review view */
1348
1481
  .code-review-page {
1349
1482
  display: flex;
@@ -1446,7 +1579,7 @@
1446
1579
  .code-review-filetype {
1447
1580
  align-items: center;
1448
1581
  background: color-mix(in srgb, var(--accent) 13%, transparent);
1449
- border-radius: 4px;
1582
+ border-radius: var(--radius-xs, 6px);
1450
1583
  color: var(--interactive-fg);
1451
1584
  display: inline-flex;
1452
1585
  font-size: 0.58rem;
@@ -1593,31 +1726,31 @@
1593
1726
  }
1594
1727
 
1595
1728
  .agent-activity-status[data-state="done"] {
1596
- border-color: rgba(16, 185, 129, 0.35);
1597
- color: #34d399;
1598
- background: rgba(16, 185, 129, 0.08);
1729
+ border-color: var(--status-success-border);
1730
+ color: var(--status-success-fg);
1731
+ background: var(--status-success-bg);
1599
1732
  }
1600
1733
 
1601
1734
  .agent-activity-status[data-state="done"]::before {
1602
- background: #34d399;
1603
- box-shadow: 0 0 6px #34d399;
1735
+ background: var(--status-success-fg);
1736
+ box-shadow: 0 0 6px var(--status-success-fg);
1604
1737
  }
1605
1738
 
1606
1739
  .agent-activity-status[data-state="error"] {
1607
- border-color: rgba(239, 68, 68, 0.35);
1608
- color: #f87171;
1609
- background: rgba(239, 68, 68, 0.08);
1740
+ border-color: var(--status-error-border);
1741
+ color: var(--status-error-fg);
1742
+ background: var(--status-error-bg);
1610
1743
  }
1611
1744
 
1612
1745
  .agent-activity-status[data-state="error"]::before {
1613
- background: #f87171;
1614
- box-shadow: 0 0 6px #f87171;
1746
+ background: var(--status-error-fg);
1747
+ box-shadow: 0 0 6px var(--status-error-fg);
1615
1748
  }
1616
1749
 
1617
1750
  .agent-activity-status[data-state="cancelled"] {
1618
- border-color: rgba(148, 163, 184, 0.28);
1751
+ border-color: var(--border-default);
1619
1752
  color: var(--text-muted);
1620
- background: rgba(148, 163, 184, 0.05);
1753
+ background: var(--bg-surface-soft);
1621
1754
  }
1622
1755
 
1623
1756
  .agent-activity-status[data-state="cancelled"]::before {
@@ -1625,13 +1758,13 @@
1625
1758
  }
1626
1759
 
1627
1760
  .agent-activity-status[data-state="approval"] {
1628
- border-color: rgba(245, 158, 11, 0.4);
1629
- color: #fbbf24;
1630
- background: rgba(245, 158, 11, 0.12);
1761
+ border-color: var(--status-warning-border);
1762
+ color: var(--status-warning-fg);
1763
+ background: var(--status-warning-bg);
1631
1764
  }
1632
1765
 
1633
1766
  .agent-activity-status[data-state="approval"]::before {
1634
- background: #fbbf24;
1767
+ background: var(--status-warning-fg);
1635
1768
  animation: pulse-ring-amber 1.8s infinite;
1636
1769
  }
1637
1770
 
@@ -1734,7 +1867,7 @@
1734
1867
  flex-shrink: 0;
1735
1868
  background: color-mix(in srgb, var(--accent, #38bdf8) 10%, transparent);
1736
1869
  padding: 1px 6px;
1737
- border-radius: 4px;
1870
+ border-radius: var(--radius-xs, 6px);
1738
1871
  border: 1px solid color-mix(in srgb, var(--accent, #38bdf8) 20%, transparent);
1739
1872
  }
1740
1873
 
@@ -1757,7 +1890,7 @@
1757
1890
 
1758
1891
  .agent-activity-badge {
1759
1892
  align-items: center;
1760
- border-radius: 4px;
1893
+ border-radius: var(--radius-xs, 6px);
1761
1894
  display: inline-flex;
1762
1895
  flex-shrink: 0;
1763
1896
  font-size: 0.65rem;
@@ -1769,15 +1902,15 @@
1769
1902
  }
1770
1903
 
1771
1904
  .agent-activity-badge.retry {
1772
- background: rgba(245, 158, 11, 0.16);
1773
- border: 1px solid rgba(245, 158, 11, 0.35);
1774
- color: #fbbf24;
1905
+ background: var(--status-warning-bg);
1906
+ border: 1px solid var(--status-warning-border);
1907
+ color: var(--status-warning-fg);
1775
1908
  }
1776
1909
 
1777
1910
  .agent-activity-badge.error {
1778
- background: rgba(239, 68, 68, 0.16);
1779
- border: 1px solid rgba(239, 68, 68, 0.35);
1780
- color: #f87171;
1911
+ background: var(--status-error-bg);
1912
+ border: 1px solid var(--status-error-border);
1913
+ color: var(--status-error-fg);
1781
1914
  }
1782
1915
 
1783
1916
  .agent-activity-chevron {
@@ -1845,7 +1978,7 @@
1845
1978
  color: var(--text-muted);
1846
1979
  background: var(--bg-surface-soft);
1847
1980
  border: 1px solid var(--border-subtle);
1848
- border-radius: 10px;
1981
+ border-radius: var(--radius-sm, 8px);
1849
1982
  }
1850
1983
 
1851
1984
  .agent-activity-group-subitems {
@@ -1862,7 +1995,7 @@
1862
1995
  padding: 3px 12px 3px 8px;
1863
1996
  font-size: 0.78rem;
1864
1997
  color: var(--text-muted, #94a3b8);
1865
- border-radius: 4px;
1998
+ border-radius: var(--radius-xs, 6px);
1866
1999
  transition: background 0.12s ease, color 0.12s ease;
1867
2000
  }
1868
2001
 
@@ -1899,7 +2032,7 @@
1899
2032
 
1900
2033
  .agent-activity-subitem-output {
1901
2034
  margin: 2px 10px 6px 24px;
1902
- border-radius: 6px;
2035
+ border-radius: var(--radius-xs, 6px);
1903
2036
  }
1904
2037
 
1905
2038
  .agent-activity-output {
@@ -2029,7 +2162,7 @@
2029
2162
 
2030
2163
  .thinking-block-content::-webkit-scrollbar-thumb {
2031
2164
  background: rgba(148, 163, 184, 0.22);
2032
- border-radius: 2px;
2165
+ border-radius: var(--radius-2xs, 4px);
2033
2166
  }
2034
2167
 
2035
2168
  .thinking-block-step + .thinking-block-step {
@@ -2147,8 +2280,8 @@
2147
2280
  font-size: 11.5px;
2148
2281
  padding: 1px 4px;
2149
2282
  background: rgba(255, 255, 255, 0.05);
2150
- border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
2151
- border-radius: 3px;
2283
+ border: none;
2284
+ border-radius: var(--radius-xs, 4px);
2152
2285
  color: var(--text-muted, #cbd5e1);
2153
2286
  }
2154
2287
 
@@ -2157,7 +2290,7 @@
2157
2290
  .thinking-block-content .chat-code-block {
2158
2291
  margin: 6px 0;
2159
2292
  padding: 8px 10px;
2160
- border-radius: 6px;
2293
+ border-radius: var(--radius-xs, 6px);
2161
2294
  background: rgba(0, 0, 0, 0.2);
2162
2295
  border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
2163
2296
  font-size: 11.5px;
@@ -2504,7 +2637,7 @@ input:checked + .slider:before {
2504
2637
  flex: none;
2505
2638
  display: flex;
2506
2639
  flex-direction: column;
2507
- padding: 44px 28px 24px 0;
2640
+ padding: 44px 28px 12px 0;
2508
2641
  background: transparent;
2509
2642
  border: 0;
2510
2643
  border-radius: 0;
@@ -2619,7 +2752,7 @@ input:checked + .slider:before {
2619
2752
  .user-message .message-bubble {
2620
2753
  background: linear-gradient(135deg, var(--surface-strong), color-mix(in srgb, var(--accent) 16%, var(--surface-strong)));
2621
2754
  border: 1px solid var(--border-default);
2622
- border-radius: 22px 22px 6px 22px;
2755
+ border-radius: var(--radius-xl) var(--radius-xl) var(--radius-xs, 4px) var(--radius-xl);
2623
2756
  color: var(--text-main);
2624
2757
  box-shadow: none;
2625
2758
  }
@@ -2636,6 +2769,7 @@ input:checked + .slider:before {
2636
2769
  box-shadow: none !important;
2637
2770
  border-radius: 0 !important;
2638
2771
  padding: 0 !important;
2772
+ width: 100%;
2639
2773
  }
2640
2774
 
2641
2775
  .input-area {
@@ -2743,65 +2877,215 @@ input:checked + .slider:before {
2743
2877
  }
2744
2878
  }
2745
2879
 
2746
- /* Project context is the first row of the composer, not a promotional CTA. */
2747
- .project-context-row {
2748
- position: relative;
2749
- min-width: 0;
2880
+ /* Subagent Status Strip (Docked above composer) */
2881
+ .subagent-status-strip {
2750
2882
  display: flex;
2751
- align-items: center;
2883
+ flex-direction: column;
2752
2884
  gap: 6px;
2753
- min-height: 44px;
2754
- padding: 5px 8px;
2755
- background: var(--input-bg);
2756
- border: 1px solid var(--border);
2757
- border-bottom: 0;
2758
- border-radius: var(--radius-xl) var(--radius-xl) 0 0;
2885
+ max-width: calc(100% - 28px);
2886
+ margin: 0 auto 8px;
2887
+ padding: 8px 12px;
2888
+ background: var(--bg-surface-raised, #18181b);
2889
+ border: 1px solid var(--border-subtle, #27272a);
2890
+ border-radius: var(--radius-md, 8px);
2891
+ box-shadow: var(--shadow-xs, 0 1px 2px rgba(0, 0, 0, 0.1));
2892
+ font-size: 0.75rem;
2893
+ line-height: 1.35;
2894
+ transition: border-color 140ms ease, box-shadow 140ms ease;
2895
+ user-select: none;
2759
2896
  }
2760
2897
 
2761
- .project-context-row + .smart-context-bar {
2762
- border-top-color: var(--border-subtle);
2763
- border-radius: 0;
2898
+ .subagent-status-strip[role="button"] {
2899
+ cursor: pointer;
2764
2900
  }
2765
2901
 
2766
- .git-branch-selector {
2767
- position: relative;
2768
- display: flex;
2769
- flex: 0 1 auto;
2770
- min-width: 0;
2771
- max-width: 38%;
2902
+ .subagent-status-strip[role="button"]:hover {
2903
+ border-color: var(--border-strong, #3f3f46);
2904
+ box-shadow: var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, 0.15));
2772
2905
  }
2773
2906
 
2774
- .git-branch-trigger {
2775
- min-width: 0;
2776
- min-height: 32px;
2777
- max-width: 100%;
2778
- padding: 0 9px;
2907
+ .subagent-status-strip-header {
2779
2908
  display: flex;
2780
2909
  align-items: center;
2781
- gap: 7px;
2782
- color: var(--text-secondary);
2783
- background: transparent;
2784
- border: 0;
2785
- border-radius: var(--radius-md);
2786
- cursor: pointer;
2910
+ justify-content: space-between;
2911
+ gap: 8px;
2912
+ padding-bottom: 4px;
2913
+ border-bottom: 1px solid var(--border-subtle, #27272a);
2787
2914
  }
2788
2915
 
2789
- .git-branch-trigger:hover:not(:disabled),
2790
- .git-branch-trigger[aria-expanded='true'] {
2791
- color: var(--text-primary);
2792
- background: var(--bg-surface-hover);
2916
+ .subagent-status-strip-header-left {
2917
+ display: flex;
2918
+ align-items: center;
2919
+ gap: 6px;
2793
2920
  }
2794
2921
 
2795
- .git-branch-trigger:focus-visible {
2796
- position: relative;
2797
- z-index: 2;
2798
- outline: 2px solid var(--border-focus, var(--accent));
2799
- outline-offset: -2px;
2922
+ .subagent-status-strip-title {
2923
+ font-weight: 600;
2924
+ color: var(--text-primary, #f4f4f5);
2800
2925
  }
2801
2926
 
2802
- .git-branch-trigger:disabled {
2803
- cursor: default;
2804
- opacity: 0.55;
2927
+ .subagent-status-strip-hint {
2928
+ font-size: 0.7rem;
2929
+ color: var(--flavor-mint, #10b981);
2930
+ }
2931
+
2932
+ .subagent-status-spinner,
2933
+ .subagent-status-row-spinner {
2934
+ display: inline-block;
2935
+ width: 10px;
2936
+ height: 10px;
2937
+ border: 1.5px solid var(--border-subtle, #3f3f46);
2938
+ border-top-color: var(--flavor-mint, #10b981);
2939
+ border-radius: 50%;
2940
+ animation: subagent-strip-spin 700ms linear infinite;
2941
+ }
2942
+
2943
+ @keyframes subagent-strip-spin {
2944
+ to {
2945
+ transform: rotate(360deg);
2946
+ }
2947
+ }
2948
+
2949
+ .subagent-status-icon-check,
2950
+ .subagent-status-row-check {
2951
+ color: var(--flavor-mint, #10b981);
2952
+ font-weight: bold;
2953
+ }
2954
+
2955
+ .subagent-status-icon-alert,
2956
+ .subagent-status-row-cross {
2957
+ color: #ef4444;
2958
+ font-weight: bold;
2959
+ }
2960
+
2961
+ .subagent-status-strip-list {
2962
+ display: flex;
2963
+ flex-direction: column;
2964
+ gap: 4px;
2965
+ }
2966
+
2967
+ .subagent-status-strip-row {
2968
+ display: flex;
2969
+ align-items: center;
2970
+ justify-content: space-between;
2971
+ gap: 8px;
2972
+ padding: 2px 4px;
2973
+ border-radius: var(--radius-sm, 4px);
2974
+ background: var(--bg-surface-subtle, rgba(255, 255, 255, 0.02));
2975
+ }
2976
+
2977
+ .subagent-status-strip-row-main {
2978
+ display: flex;
2979
+ align-items: center;
2980
+ gap: 6px;
2981
+ min-width: 0;
2982
+ overflow: hidden;
2983
+ }
2984
+
2985
+ .subagent-status-strip-tag {
2986
+ color: var(--flavor-mint, #10b981);
2987
+ font-weight: 600;
2988
+ white-space: nowrap;
2989
+ }
2990
+
2991
+ .subagent-status-strip-desc {
2992
+ color: var(--text-secondary, #a1a1aa);
2993
+ overflow: hidden;
2994
+ text-overflow: ellipsis;
2995
+ white-space: nowrap;
2996
+ }
2997
+
2998
+ .subagent-status-strip-timing {
2999
+ font-size: 0.7rem;
3000
+ color: var(--text-muted, #71717a);
3001
+ white-space: nowrap;
3002
+ }
3003
+
3004
+ /* Project context is the first row of the composer, not a promotional CTA. */
3005
+ .project-context-row {
3006
+ position: relative;
3007
+ min-width: 0;
3008
+ display: flex;
3009
+ align-items: center;
3010
+ gap: 6px;
3011
+ min-height: 34px;
3012
+ padding: 4px 10px;
3013
+ background: var(--input-bg);
3014
+ border: 1px solid var(--border);
3015
+ border-bottom: 1px solid color-mix(in srgb, var(--border) 45%, transparent);
3016
+ border-radius: var(--radius-composer, 20px) var(--radius-composer, 20px) 0 0;
3017
+ }
3018
+
3019
+ .project-context-row .workspace-select-btn,
3020
+ .project-context-row .git-branch-trigger {
3021
+ min-height: 26px;
3022
+ height: 26px;
3023
+ padding: 0 8px;
3024
+ font-size: 0.76rem;
3025
+ border-radius: var(--radius-sm, 8px);
3026
+ }
3027
+
3028
+ .project-context-row .git-branch-trigger {
3029
+ background: var(--surface-strong);
3030
+ border: 1px solid var(--border-subtle);
3031
+ color: var(--text-primary);
3032
+ transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease;
3033
+ }
3034
+
3035
+ .project-context-row .git-branch-trigger:hover:not(:disabled),
3036
+ .project-context-row .git-branch-trigger[aria-expanded='true'] {
3037
+ background: var(--bg-surface-hover);
3038
+ border-color: var(--border);
3039
+ color: var(--text-primary);
3040
+ }
3041
+
3042
+ .project-context-row + #chat-form,
3043
+ .project-context-row + .smart-context-bar {
3044
+ border-top-color: var(--border-subtle);
3045
+ border-radius: 0;
3046
+ }
3047
+
3048
+ .git-branch-selector {
3049
+ position: relative;
3050
+ display: flex;
3051
+ flex: 0 1 auto;
3052
+ min-width: 0;
3053
+ max-width: 38%;
3054
+ }
3055
+
3056
+ .git-branch-trigger {
3057
+ min-width: 0;
3058
+ min-height: 32px;
3059
+ max-width: 100%;
3060
+ padding: 0 9px;
3061
+ display: flex;
3062
+ align-items: center;
3063
+ gap: 7px;
3064
+ color: var(--text-primary);
3065
+ background: var(--surface-strong);
3066
+ border: 1px solid var(--border-subtle);
3067
+ border-radius: var(--radius-md);
3068
+ cursor: pointer;
3069
+ transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease;
3070
+ }
3071
+
3072
+ .git-branch-trigger:hover:not(:disabled),
3073
+ .git-branch-trigger[aria-expanded='true'] {
3074
+ color: var(--text-primary);
3075
+ background: var(--bg-surface-hover);
3076
+ border-color: var(--border);
3077
+ }
3078
+
3079
+ .git-branch-trigger:focus-visible {
3080
+ position: relative;
3081
+ z-index: 2;
3082
+ outline: 2px solid var(--border-focus, var(--accent));
3083
+ outline-offset: -2px;
3084
+ }
3085
+
3086
+ .git-branch-trigger:disabled {
3087
+ cursor: default;
3088
+ opacity: 0.55;
2805
3089
  }
2806
3090
 
2807
3091
  .git-branch-icon,
@@ -2837,7 +3121,7 @@ input:checked + .slider:before {
2837
3121
  height: 5px;
2838
3122
  flex: 0 0 5px;
2839
3123
  border-radius: 50%;
2840
- background: var(--accent);
3124
+ background: var(--status-warning, #f59e0b);
2841
3125
  }
2842
3126
 
2843
3127
  .git-branch-menu {
@@ -2846,16 +3130,30 @@ input:checked + .slider:before {
2846
3130
  right: auto;
2847
3131
  bottom: calc(100% + 8px);
2848
3132
  z-index: 80;
2849
- width: min(320px, calc(100vw - 48px));
3133
+ width: min(320px, calc(100vw - 32px));
2850
3134
  padding: 6px;
2851
3135
  color: var(--text-primary);
2852
- background: var(--bg-surface-raised);
2853
- border: 1px solid var(--border-default);
2854
- border-radius: var(--radius-md);
2855
- box-shadow: var(--shadow-lg);
3136
+ background: var(--panel-bg, #18181b);
3137
+ border: 1px solid var(--border);
3138
+ border-radius: var(--radius-xl, 16px);
3139
+ box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.4), 0 8px 10px -6px rgba(0, 0, 0, 0.3);
3140
+ backdrop-filter: var(--glass-blur);
3141
+ -webkit-backdrop-filter: var(--glass-blur);
3142
+ animation: git-branch-popover-in 0.15s cubic-bezier(0.16, 1, 0.3, 1);
2856
3143
  overflow-y: auto;
2857
3144
  }
2858
3145
 
3146
+ @keyframes git-branch-popover-in {
3147
+ from {
3148
+ opacity: 0;
3149
+ transform: translateY(4px) scale(0.98);
3150
+ }
3151
+ to {
3152
+ opacity: 1;
3153
+ transform: translateY(0) scale(1);
3154
+ }
3155
+ }
3156
+
2859
3157
  .git-branch-menu.align-right {
2860
3158
  left: auto;
2861
3159
  right: 0;
@@ -2867,19 +3165,23 @@ input:checked + .slider:before {
2867
3165
  }
2868
3166
 
2869
3167
  .git-branch-search {
2870
- height: 34px;
2871
- padding: 0 10px;
3168
+ height: 32px;
3169
+ padding: 0 9px;
2872
3170
  display: flex;
2873
3171
  align-items: center;
2874
3172
  gap: 8px;
3173
+ margin-bottom: 4px;
2875
3174
  color: var(--text-muted);
2876
- background: var(--input-bg);
2877
- border: 1px solid var(--border);
2878
- border-radius: var(--radius-sm);
3175
+ background: var(--surface-strong, rgba(255, 255, 255, 0.05));
3176
+ border: 1px solid var(--border-default, rgba(255, 255, 255, 0.08));
3177
+ border-radius: var(--radius-md, 10px);
3178
+ transition: all 0.15s ease;
2879
3179
  }
2880
3180
 
2881
3181
  .git-branch-search:focus-within {
2882
- border-color: var(--border-focus, var(--accent));
3182
+ border-color: var(--border-strong, rgba(255, 255, 255, 0.22));
3183
+ background: var(--surface-strong, rgba(255, 255, 255, 0.08));
3184
+ color: var(--text-primary);
2883
3185
  }
2884
3186
 
2885
3187
  .git-branch-search input {
@@ -2890,7 +3192,7 @@ input:checked + .slider:before {
2890
3192
  border: 0;
2891
3193
  outline: 0;
2892
3194
  font: inherit;
2893
- font-size: 0.76rem;
3195
+ font-size: 0.78rem;
2894
3196
  }
2895
3197
 
2896
3198
  .git-branch-search input::placeholder {
@@ -2898,33 +3200,40 @@ input:checked + .slider:before {
2898
3200
  }
2899
3201
 
2900
3202
  .git-branch-menu-heading {
2901
- padding: 10px 8px 5px;
3203
+ padding: 6px 8px 4px;
2902
3204
  color: var(--text-muted);
2903
- font-size: 0.66rem;
3205
+ font-size: 0.68rem;
2904
3206
  font-weight: 600;
2905
- letter-spacing: 0.06em;
2906
- text-transform: none;
3207
+ letter-spacing: 0.05em;
3208
+ text-transform: uppercase;
2907
3209
  }
2908
3210
 
2909
3211
  .git-branch-list {
2910
3212
  max-height: 180px;
2911
3213
  overflow-y: auto;
3214
+ display: flex;
3215
+ flex-direction: column;
3216
+ gap: 2px;
3217
+ scrollbar-width: thin;
2912
3218
  }
2913
3219
 
2914
3220
  .git-branch-option {
2915
3221
  width: 100%;
2916
- min-height: 34px;
3222
+ min-height: 32px;
2917
3223
  padding: 6px 8px;
2918
3224
  display: grid;
2919
- grid-template-columns: 18px minmax(0, 1fr) 16px;
3225
+ grid-template-columns: 16px minmax(0, 1fr) auto;
2920
3226
  align-items: center;
2921
- gap: 7px;
3227
+ gap: 9px;
2922
3228
  color: var(--text-secondary);
2923
3229
  background: transparent;
2924
- border: 0;
2925
- border-radius: var(--radius-sm);
3230
+ border: 1px solid transparent;
3231
+ border-radius: var(--radius-md, 10px);
2926
3232
  text-align: left;
2927
3233
  cursor: pointer;
3234
+ font-size: 0.8rem;
3235
+ font-weight: 500;
3236
+ transition: all 0.12s ease;
2928
3237
  }
2929
3238
 
2930
3239
  .git-branch-option span:nth-child(2) {
@@ -2936,17 +3245,24 @@ input:checked + .slider:before {
2936
3245
  .git-branch-option:hover:not(:disabled),
2937
3246
  .git-branch-option:focus-visible {
2938
3247
  color: var(--text-primary);
2939
- background: var(--bg-surface-hover);
3248
+ background: var(--bg-surface-hover, rgba(255, 255, 255, 0.06));
2940
3249
  outline: 0;
2941
3250
  }
2942
3251
 
3252
+ .git-branch-option:hover:not(:disabled) .git-branch-option-icon,
3253
+ .git-branch-option:focus-visible .git-branch-option-icon {
3254
+ color: var(--text-primary);
3255
+ }
3256
+
2943
3257
  .git-branch-option[aria-selected='true'] {
2944
3258
  color: var(--text-primary);
2945
- background: var(--bg-surface-soft);
3259
+ background: var(--bg-surface-hover, rgba(255, 255, 255, 0.08));
3260
+ border-color: var(--border, rgba(255, 255, 255, 0.16));
2946
3261
  }
2947
3262
 
2948
- .git-branch-option[aria-selected='true'] svg {
2949
- color: var(--interactive-fg);
3263
+ .git-branch-option[aria-selected='true'] .git-branch-option-icon,
3264
+ .git-branch-option[aria-selected='true'] .git-branch-option-check {
3265
+ color: var(--text-primary);
2950
3266
  }
2951
3267
 
2952
3268
  .git-branch-option:disabled {
@@ -2955,8 +3271,42 @@ input:checked + .slider:before {
2955
3271
  }
2956
3272
 
2957
3273
  .git-branch-option-icon {
3274
+ display: inline-flex;
3275
+ align-items: center;
3276
+ justify-content: center;
3277
+ width: 16px;
3278
+ height: 16px;
2958
3279
  color: var(--text-muted);
2959
- font-size: 0.9rem;
3280
+ flex-shrink: 0;
3281
+ transition: color 0.12s ease;
3282
+ }
3283
+
3284
+ .git-branch-option-check {
3285
+ display: inline-flex;
3286
+ align-items: center;
3287
+ justify-content: center;
3288
+ width: 16px;
3289
+ height: 16px;
3290
+ color: var(--accent, #10b981);
3291
+ flex-shrink: 0;
3292
+ }
3293
+
3294
+ .git-branch-track-label {
3295
+ display: inline-flex;
3296
+ align-items: center;
3297
+ padding: 1px 7px;
3298
+ font-size: 0.66rem;
3299
+ font-weight: 500;
3300
+ color: var(--text-muted);
3301
+ background: var(--surface-strong);
3302
+ border: 1px solid var(--border-subtle);
3303
+ border-radius: var(--radius-full, 999px);
3304
+ transition: all 0.12s ease;
3305
+ }
3306
+
3307
+ .git-branch-option:hover .git-branch-track-label {
3308
+ color: var(--text-primary);
3309
+ border-color: var(--border);
2960
3310
  }
2961
3311
 
2962
3312
  .git-branch-empty {
@@ -2968,14 +3318,16 @@ input:checked + .slider:before {
2968
3318
 
2969
3319
  .git-branch-error {
2970
3320
  margin-top: 6px;
2971
- padding: 8px;
3321
+ padding: 8px 10px;
2972
3322
  display: flex;
2973
3323
  align-items: flex-start;
2974
3324
  justify-content: space-between;
2975
3325
  gap: 10px;
2976
3326
  color: var(--status-error, #ef4444);
2977
- border-top: 1px solid var(--border-subtle);
2978
- font-size: 0.7rem;
3327
+ background: color-mix(in srgb, var(--status-error, #ef4444) 10%, transparent);
3328
+ border-radius: var(--radius-md, 8px);
3329
+ border: 1px solid color-mix(in srgb, var(--status-error, #ef4444) 25%, transparent);
3330
+ font-size: 0.72rem;
2979
3331
  line-height: 1.35;
2980
3332
  }
2981
3333
 
@@ -2987,155 +3339,191 @@ input:checked + .slider:before {
2987
3339
  cursor: pointer;
2988
3340
  font: inherit;
2989
3341
  font-weight: 600;
2990
- }
2991
-
2992
- .git-branch-track-label {
2993
- color: var(--text-muted);
2994
- font-size: 0.64rem;
2995
- text-align: right;
3342
+ text-decoration: underline;
2996
3343
  }
2997
3344
 
2998
3345
  .git-branch-actions {
2999
3346
  margin-top: 6px;
3000
3347
  padding-top: 6px;
3001
- display: grid;
3348
+ display: flex;
3349
+ flex-direction: column;
3350
+ gap: 2px;
3002
3351
  border-top: 1px solid var(--border-subtle);
3003
3352
  }
3004
3353
 
3005
3354
  .git-branch-actions button {
3006
- min-height: 34px;
3355
+ min-height: 32px;
3007
3356
  padding: 6px 8px;
3008
3357
  display: flex;
3009
3358
  align-items: center;
3010
- gap: 8px;
3359
+ gap: 9px;
3011
3360
  color: var(--text-secondary);
3012
3361
  background: transparent;
3013
- border: 0;
3014
- border-radius: var(--radius-sm);
3362
+ border: 1px solid transparent;
3363
+ border-radius: var(--radius-md, 10px);
3364
+ font-size: 0.8rem;
3365
+ font-weight: 500;
3015
3366
  text-align: left;
3016
3367
  cursor: pointer;
3368
+ transition: all 0.12s ease;
3369
+ }
3370
+
3371
+ .git-branch-actions button svg {
3372
+ color: var(--text-muted);
3373
+ flex-shrink: 0;
3374
+ transition: color 0.12s ease;
3017
3375
  }
3018
3376
 
3019
3377
  .git-branch-actions button:hover,
3020
3378
  .git-branch-actions button:focus-visible {
3021
3379
  color: var(--text-primary);
3022
- background: var(--bg-surface-hover);
3380
+ background: var(--bg-surface-hover, rgba(255, 255, 255, 0.06));
3023
3381
  outline: 0;
3024
3382
  }
3025
3383
 
3384
+ .git-branch-actions button:hover svg,
3385
+ .git-branch-actions button:focus-visible svg {
3386
+ color: var(--text-primary);
3387
+ }
3388
+
3026
3389
  .git-branch-view-header {
3027
3390
  min-height: 34px;
3028
- display: grid;
3029
- grid-template-columns: 30px minmax(0, 1fr) auto;
3391
+ display: flex;
3030
3392
  align-items: center;
3031
- gap: 6px;
3393
+ gap: 8px;
3394
+ padding: 2px 2px 8px;
3032
3395
  border-bottom: 1px solid var(--border-subtle);
3033
3396
  }
3034
3397
 
3035
3398
  .git-branch-view-header > button {
3036
- min-width: 30px;
3037
- height: 30px;
3038
- padding: 0 7px;
3399
+ width: 28px;
3400
+ height: 28px;
3401
+ padding: 0;
3402
+ display: inline-flex;
3403
+ align-items: center;
3404
+ justify-content: center;
3039
3405
  color: var(--text-muted);
3040
3406
  background: transparent;
3041
- border: 0;
3042
- border-radius: var(--radius-sm);
3407
+ border: 1px solid transparent;
3408
+ border-radius: var(--radius-md, 8px);
3043
3409
  cursor: pointer;
3410
+ transition: all 0.12s ease;
3044
3411
  }
3045
3412
 
3046
3413
  .git-branch-view-header > button:hover:not(:disabled),
3047
3414
  .git-branch-view-header > button:focus-visible {
3048
3415
  color: var(--text-primary);
3049
3416
  background: var(--bg-surface-hover);
3417
+ border-color: var(--border-subtle);
3050
3418
  outline: 0;
3051
3419
  }
3052
3420
 
3053
3421
  .git-branch-view-header strong {
3054
- overflow: hidden;
3055
- font-size: 0.76rem;
3422
+ flex: 1;
3423
+ color: var(--text-primary);
3424
+ font-size: 0.82rem;
3056
3425
  font-weight: 600;
3057
- text-overflow: ellipsis;
3058
- white-space: nowrap;
3059
3426
  }
3060
3427
 
3061
3428
  .git-branch-create {
3062
- display: grid;
3063
- gap: 9px;
3429
+ display: flex;
3430
+ flex-direction: column;
3431
+ gap: 8px;
3432
+ padding-top: 8px;
3064
3433
  }
3065
3434
 
3066
3435
  .git-branch-create > label {
3067
- margin-top: 3px;
3068
3436
  color: var(--text-muted);
3069
- font-size: 0.68rem;
3070
- font-weight: 600;
3437
+ font-size: 0.72rem;
3438
+ font-weight: 500;
3071
3439
  }
3072
3440
 
3073
3441
  .git-branch-create > input {
3074
- height: 36px;
3442
+ height: 34px;
3075
3443
  padding: 0 10px;
3076
3444
  color: var(--text-primary);
3077
- background: var(--input-bg);
3078
- border: 1px solid var(--border);
3079
- border-radius: var(--radius-sm);
3445
+ background: var(--surface-strong, rgba(255, 255, 255, 0.05));
3446
+ border: 1px solid var(--border-default, rgba(255, 255, 255, 0.08));
3447
+ border-radius: var(--radius-md, 10px);
3080
3448
  outline: 0;
3081
3449
  font: inherit;
3082
- font-size: 0.76rem;
3450
+ font-size: 0.8rem;
3451
+ transition: all 0.15s ease;
3083
3452
  }
3084
3453
 
3085
3454
  .git-branch-create > input:focus {
3086
- border-color: var(--border-focus, var(--accent));
3455
+ border-color: var(--border-strong, rgba(255, 255, 255, 0.22));
3456
+ background: var(--surface-strong, rgba(255, 255, 255, 0.08));
3087
3457
  }
3088
3458
 
3089
3459
  .git-branch-create > p {
3090
3460
  margin: 0;
3091
3461
  color: var(--text-muted);
3092
- font-size: 0.68rem;
3462
+ font-size: 0.72rem;
3093
3463
  line-height: 1.4;
3094
3464
  }
3095
3465
 
3096
3466
  .git-branch-create > p strong {
3097
- color: var(--text-secondary);
3098
- font-weight: 500;
3467
+ color: var(--text-primary);
3468
+ font-weight: 600;
3099
3469
  }
3100
3470
 
3101
3471
  .git-branch-create-submit {
3102
- min-height: 34px;
3103
- color: var(--text-on-accent);
3104
- background: var(--accent);
3472
+ height: 32px;
3473
+ padding: 0 12px;
3474
+ color: var(--accent-contrast, #ffffff);
3475
+ background: linear-gradient(135deg, var(--accent), var(--accent-hover, var(--accent)));
3105
3476
  border: 0;
3106
- border-radius: var(--radius-sm);
3107
- cursor: pointer;
3108
- font: inherit;
3109
- font-size: 0.74rem;
3477
+ border-radius: var(--radius-md, 10px);
3478
+ font-size: 0.78rem;
3110
3479
  font-weight: 600;
3480
+ cursor: pointer;
3481
+ transition: all 0.15s ease;
3111
3482
  }
3112
3483
 
3113
3484
  .git-branch-create-submit:hover:not(:disabled) {
3114
- background: var(--accent-hover);
3485
+ opacity: 0.92;
3486
+ transform: translateY(-1px);
3115
3487
  }
3116
3488
 
3117
3489
  .git-branch-create-submit:focus-visible {
3118
- outline: 2px solid var(--border-focus, var(--accent));
3119
- outline-offset: 2px;
3490
+ outline: 2px solid var(--accent);
3491
+ outline-offset: 1px;
3120
3492
  }
3121
3493
 
3122
3494
  .git-branch-create-submit:disabled {
3123
- cursor: default;
3124
- opacity: 0.45;
3495
+ cursor: not-allowed;
3496
+ opacity: 0.5;
3125
3497
  }
3126
3498
 
3127
3499
  .git-branch-menu.is-graph {
3128
- width: min(540px, calc(100vw - 48px));
3500
+ width: min(540px, calc(100vw - 32px));
3129
3501
  }
3130
3502
 
3131
3503
  .git-graph-view {
3132
- display: grid;
3133
- gap: 6px;
3504
+ display: flex;
3505
+ flex-direction: column;
3506
+ gap: 8px;
3134
3507
  }
3135
3508
 
3136
3509
  .git-graph-refresh {
3137
3510
  width: auto;
3138
- font-size: 0.68rem;
3511
+ height: 26px;
3512
+ padding: 0 9px;
3513
+ font-size: 0.72rem;
3514
+ font-weight: 500;
3515
+ border-radius: var(--radius-sm, 6px);
3516
+ background: var(--surface-strong);
3517
+ border: 1px solid var(--border-subtle);
3518
+ color: var(--text-secondary);
3519
+ cursor: pointer;
3520
+ transition: all 0.12s ease;
3521
+ }
3522
+
3523
+ .git-graph-refresh:hover:not(:disabled) {
3524
+ background: var(--bg-surface-hover);
3525
+ color: var(--text-primary);
3526
+ border-color: var(--border);
3139
3527
  }
3140
3528
 
3141
3529
  .git-graph-output {
@@ -3145,12 +3533,12 @@ input:checked + .slider:before {
3145
3533
  padding: 10px;
3146
3534
  overflow: auto;
3147
3535
  color: var(--text-secondary);
3148
- background: var(--input-bg);
3149
- border: 1px solid var(--border-subtle);
3150
- border-radius: var(--radius-sm);
3536
+ background: var(--surface-strong, rgba(255, 255, 255, 0.04));
3537
+ border: 1px solid var(--border-default, rgba(255, 255, 255, 0.08));
3538
+ border-radius: var(--radius-md, 10px);
3151
3539
  font-family: var(--font-mono, monospace);
3152
- font-size: 0.68rem;
3153
- line-height: 1.65;
3540
+ font-size: 0.72rem;
3541
+ line-height: 1.6;
3154
3542
  tab-size: 14;
3155
3543
  white-space: pre;
3156
3544
  }
@@ -3165,7 +3553,7 @@ input:checked + .slider:before {
3165
3553
  display: grid;
3166
3554
  place-items: center;
3167
3555
  color: var(--text-muted);
3168
- font-size: 0.74rem;
3556
+ font-size: 0.76rem;
3169
3557
  }
3170
3558
 
3171
3559
  @media (max-width: 1100px) {
@@ -3221,7 +3609,7 @@ input:checked + .slider:before {
3221
3609
  background: var(--input-bg);
3222
3610
  border: 1px solid var(--border);
3223
3611
  border-bottom: 0;
3224
- border-radius: var(--radius-xl) var(--radius-xl) 0 0;
3612
+ border-radius: var(--radius-composer, 24px) var(--radius-composer, 24px) 0 0;
3225
3613
  display: flex;
3226
3614
  align-items: center;
3227
3615
  flex-wrap: wrap;
@@ -3314,26 +3702,28 @@ input:checked + .slider:before {
3314
3702
  }
3315
3703
 
3316
3704
  #chat-form {
3317
- min-height: 88px;
3705
+ min-height: 62px;
3318
3706
  display: grid;
3319
3707
  grid-template-columns: 32px 32px minmax(0, 1fr) 32px 32px;
3320
- grid-template-rows: auto minmax(48px, auto) 32px;
3708
+ grid-template-rows: auto minmax(26px, auto) 32px;
3321
3709
  align-items: end;
3322
3710
  gap: 6px;
3323
- padding: 10px 14px 10px 14px;
3711
+ padding: 6px 12px 8px 12px;
3324
3712
  background: var(--input-bg);
3325
3713
  border: 1px solid var(--border);
3326
- border-radius: var(--radius-xl);
3714
+ border-radius: var(--radius-composer, 20px);
3327
3715
  box-shadow: none;
3328
3716
  backdrop-filter: var(--glass-blur);
3329
3717
  -webkit-backdrop-filter: var(--glass-blur);
3330
3718
  }
3331
3719
 
3720
+ .project-context-row + #chat-form,
3332
3721
  .smart-context-bar + #chat-form {
3722
+ border-top: 0;
3333
3723
  border-top-left-radius: 0;
3334
3724
  border-top-right-radius: 0;
3335
- border-bottom-left-radius: var(--radius-xl);
3336
- border-bottom-right-radius: var(--radius-xl);
3725
+ border-bottom-left-radius: var(--radius-composer, 20px);
3726
+ border-bottom-right-radius: var(--radius-composer, 20px);
3337
3727
  }
3338
3728
 
3339
3729
  #chat-form:focus-within {
@@ -3393,8 +3783,62 @@ input:checked + .slider:before {
3393
3783
  cursor: pointer;
3394
3784
  }
3395
3785
 
3786
+ .composer-file-chip {
3787
+ display: inline-flex;
3788
+ align-items: center;
3789
+ gap: 6px;
3790
+ padding: 3px 8px 3px 10px;
3791
+ border-radius: var(--radius-full, 9999px);
3792
+ background: color-mix(in srgb, var(--surface-strong, #1e293b) 82%, var(--accent) 14%);
3793
+ border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border, rgba(148, 163, 184, 0.2)));
3794
+ color: var(--text-primary, #f1f5f9);
3795
+ font-size: 0.78rem;
3796
+ font-weight: 500;
3797
+ max-width: 260px;
3798
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
3799
+ transition: border-color 0.15s ease, background 0.15s ease;
3800
+ }
3801
+
3802
+ .composer-file-chip:hover {
3803
+ border-color: var(--accent);
3804
+ background: color-mix(in srgb, var(--surface-strong, #1e293b) 75%, var(--accent) 20%);
3805
+ }
3806
+
3807
+ .composer-file-chip-icon {
3808
+ display: inline-flex;
3809
+ align-items: center;
3810
+ color: var(--accent);
3811
+ flex-shrink: 0;
3812
+ }
3813
+
3814
+ .composer-file-chip-name {
3815
+ overflow: hidden;
3816
+ text-overflow: ellipsis;
3817
+ white-space: nowrap;
3818
+ }
3819
+
3820
+ .composer-file-chip-remove {
3821
+ background: transparent;
3822
+ border: 0;
3823
+ padding: 2px;
3824
+ margin-left: 2px;
3825
+ color: var(--text-muted, #94a3b8);
3826
+ cursor: pointer;
3827
+ display: inline-flex;
3828
+ align-items: center;
3829
+ justify-content: center;
3830
+ border-radius: 50%;
3831
+ transition: color 0.15s ease, background 0.15s ease;
3832
+ flex-shrink: 0;
3833
+ }
3834
+
3835
+ .composer-file-chip-remove:hover {
3836
+ color: var(--status-error, #ef4444);
3837
+ background: rgba(239, 68, 68, 0.12);
3838
+ }
3839
+
3396
3840
  #chat-form:not(:has(.mint-attachment)) {
3397
- grid-template-rows: minmax(48px, auto) 32px;
3841
+ grid-template-rows: minmax(26px, auto) 32px;
3398
3842
  }
3399
3843
 
3400
3844
  #chat-form:not(:has(.mint-attachment)) #chat-input {
@@ -3404,20 +3848,45 @@ input:checked + .slider:before {
3404
3848
  #chat-form:not(:has(.mint-attachment)) .chat-tool-menu-wrap,
3405
3849
  #chat-form:not(:has(.mint-attachment)) #screen-capture-btn,
3406
3850
  #chat-form:not(:has(.mint-attachment)) .chat-provider-select,
3851
+ #chat-form:not(:has(.mint-attachment)) .chat-composer-pills,
3407
3852
  #chat-form:not(:has(.mint-attachment)) #send-btn {
3408
3853
  grid-row: 2;
3409
3854
  }
3410
3855
 
3856
+ .chat-composer-pills {
3857
+ grid-column: 3;
3858
+ grid-row: 3;
3859
+ display: flex;
3860
+ align-items: center;
3861
+ justify-content: space-between;
3862
+ gap: 8px;
3863
+ min-width: 0;
3864
+ width: 100%;
3865
+ position: static;
3866
+ }
3867
+
3868
+ .chat-composer-pills .model-selector-container {
3869
+ grid-column: auto;
3870
+ grid-row: auto;
3871
+ position: static;
3872
+ min-width: 0;
3873
+ flex-shrink: 1;
3874
+ }
3875
+
3876
+ .chat-composer-pills .chat-mode-selector-wrap {
3877
+ flex-shrink: 0;
3878
+ }
3879
+
3411
3880
  #chat-input {
3412
3881
  grid-column: 1 / -1;
3413
3882
  grid-row: 2;
3414
3883
  align-self: start;
3415
- min-height: 48px;
3416
- max-height: 120px;
3417
- padding: 12px 0;
3884
+ min-height: 26px;
3885
+ max-height: 140px;
3886
+ padding: 3px 2px 2px 2px;
3418
3887
  color: var(--text-main);
3419
- font-size: 1rem;
3420
- line-height: 1.5;
3888
+ font-size: 0.94rem;
3889
+ line-height: 1.45;
3421
3890
  resize: none;
3422
3891
  overflow-y: auto;
3423
3892
  border: 0;
@@ -3642,15 +4111,43 @@ input:checked + .slider:before {
3642
4111
  box-shadow: none;
3643
4112
  }
3644
4113
 
3645
- #send-btn:hover,
3646
- #chat-tool-btn:hover,
3647
- #screen-capture-btn:hover {
3648
- background: var(--panel-raised);
3649
- transform: none;
4114
+ :root[data-accent-mode="monochrome"] #send-btn,
4115
+ :root[data-accent-mode="gray"] #send-btn {
4116
+ background: var(--btn-gray-bg, #17171a);
4117
+ color: #ffffff;
4118
+ border: 1px solid var(--btn-gray-border, rgba(255, 255, 255, 0.12));
4119
+ }
4120
+
4121
+ :root[data-accent-mode="monochrome"] #send-btn:hover,
4122
+ :root[data-accent-mode="gray"] #send-btn:hover {
4123
+ background: var(--btn-gray-bg-hover, #222227);
4124
+ color: #ffffff;
4125
+ }
4126
+
4127
+ [data-theme="light"][data-accent-mode="monochrome"] #send-btn,
4128
+ [data-theme="light"][data-accent-mode="gray"] #send-btn {
4129
+ background: var(--btn-gray-bg, #334155);
4130
+ color: #ffffff;
4131
+ border: 1px solid rgba(15, 23, 42, 0.2);
4132
+ }
4133
+
4134
+ [data-theme="light"][data-accent-mode="monochrome"] #send-btn:hover,
4135
+ [data-theme="light"][data-accent-mode="gray"] #send-btn:hover {
4136
+ background: var(--btn-gray-bg-hover, #1e293b);
4137
+ color: #ffffff;
3650
4138
  }
3651
4139
 
3652
4140
  #send-btn:hover {
3653
4141
  background: var(--accent-hover);
4142
+ transform: none;
4143
+ }
4144
+
4145
+ #chat-tool-btn:hover,
4146
+ #screen-capture-btn:hover {
4147
+ background: var(--btn-gray-bg-hover, var(--panel-raised));
4148
+ border-color: var(--accent-border, var(--btn-gray-border-hover));
4149
+ color: #ffffff;
4150
+ transform: none;
3654
4151
  }
3655
4152
 
3656
4153
  #chat-tool-btn {
@@ -3724,7 +4221,7 @@ input:checked + .slider:before {
3724
4221
  backdrop-filter: blur(20px) saturate(180%);
3725
4222
  -webkit-backdrop-filter: blur(20px) saturate(180%);
3726
4223
  border: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
3727
- border-radius: var(--radius-xl, 14px);
4224
+ border-radius: var(--radius-full, 9999px);
3728
4225
  box-shadow: 0 8px 24px -4px rgba(0, 0, 0, 0.35),
3729
4226
  0 1px 0 0 rgba(255, 255, 255, 0.04) inset;
3730
4227
  position: sticky;
@@ -3782,7 +4279,7 @@ input:checked + .slider:before {
3782
4279
  padding: 2px 8px;
3783
4280
  background: rgba(255, 255, 255, 0.06);
3784
4281
  border: 1px solid rgba(255, 255, 255, 0.08);
3785
- border-radius: var(--radius-sm, 6px);
4282
+ border-radius: var(--radius-full, 9999px);
3786
4283
  font-size: 0.76rem;
3787
4284
  font-weight: 500;
3788
4285
  color: var(--text-secondary, #94a3b8);
@@ -3832,7 +4329,7 @@ input:checked + .slider:before {
3832
4329
  justify-content: center;
3833
4330
  width: 30px;
3834
4331
  height: 30px;
3835
- border-radius: 8px;
4332
+ border-radius: var(--radius-full, 9999px);
3836
4333
  background: color-mix(in srgb, var(--bg-surface, #202632) 70%, transparent);
3837
4334
  border: 1px solid color-mix(in srgb, var(--border, rgba(255, 255, 255, 0.08)) 80%, transparent);
3838
4335
  color: var(--text-muted, #94a3b8);
@@ -3862,8 +4359,8 @@ input:checked + .slider:before {
3862
4359
  gap: 5px;
3863
4360
  background: color-mix(in srgb, var(--bg-surface, #202632) 80%, transparent);
3864
4361
  border: 1px solid var(--border-default, rgba(255, 255, 255, 0.1));
3865
- border-radius: var(--radius-xs, 6px);
3866
- padding: 3px 9px;
4362
+ border-radius: var(--radius-full, 9999px);
4363
+ padding: 4px 11px;
3867
4364
  color: var(--text-primary);
3868
4365
  font-size: 0.8rem;
3869
4366
  font-weight: 500;
@@ -3889,14 +4386,19 @@ input:checked + .slider:before {
3889
4386
  display: inline-flex;
3890
4387
  align-items: center;
3891
4388
  gap: 6px;
3892
- padding: 2px 8px;
3893
- border-radius: 6px;
3894
- background: color-mix(in srgb, var(--accent, #10b981) 10%, transparent);
3895
- border: 1px solid color-mix(in srgb, var(--accent, #10b981) 20%, transparent);
4389
+ padding: 4px 10px;
4390
+ border-radius: var(--radius-full, 9999px);
4391
+ background: color-mix(in srgb, var(--bg-surface, #202632) 80%, transparent);
4392
+ border: 1px solid var(--border-default, rgba(255, 255, 255, 0.1));
3896
4393
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
3897
- font-size: 0.8rem;
3898
- font-weight: 600;
3899
- color: var(--interactive-fg);
4394
+ font-size: 0.78rem;
4395
+ font-weight: 500;
4396
+ color: var(--text-secondary);
4397
+ user-select: none;
4398
+ }
4399
+
4400
+ .chat-header .tools-panel-toggle {
4401
+ border-radius: var(--radius-full, 9999px);
3900
4402
  }
3901
4403
 
3902
4404
  .drag-drop-overlay {
@@ -4056,6 +4558,50 @@ input:checked + .slider:before {
4056
4558
  color: #dc2626;
4057
4559
  }
4058
4560
 
4561
+ [data-theme="light"] .project-context-row {
4562
+ background: #ffffff;
4563
+ border-color: rgba(15, 23, 42, 0.16);
4564
+ }
4565
+
4566
+ [data-theme="light"] .project-context-row .git-branch-trigger {
4567
+ background: #f1f5f9;
4568
+ border-color: rgba(15, 23, 42, 0.1);
4569
+ color: #334155;
4570
+ }
4571
+
4572
+ [data-theme="light"] .project-context-row .git-branch-trigger:hover,
4573
+ [data-theme="light"] .project-context-row .git-branch-trigger[aria-expanded='true'] {
4574
+ background: #e2e8f0;
4575
+ border-color: rgba(15, 23, 42, 0.18);
4576
+ color: #0f172a;
4577
+ }
4578
+
4579
+ [data-theme="light"] .git-branch-menu {
4580
+ background: #ffffff;
4581
+ border-color: rgba(15, 23, 42, 0.12);
4582
+ box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
4583
+ }
4584
+
4585
+ [data-theme="light"] .git-branch-search {
4586
+ background: #f8fafc;
4587
+ border-color: rgba(15, 23, 42, 0.1);
4588
+ }
4589
+
4590
+ [data-theme="light"] .git-branch-option:hover,
4591
+ [data-theme="light"] .git-branch-actions button:hover {
4592
+ background: #f1f5f9;
4593
+ }
4594
+
4595
+ [data-theme="light"] .git-branch-option[aria-selected='true'] {
4596
+ background: #e2e8f0;
4597
+ border-color: rgba(15, 23, 42, 0.18);
4598
+ }
4599
+
4600
+ [data-theme="light"] .git-graph-output {
4601
+ background: #f8fafc;
4602
+ border-color: rgba(15, 23, 42, 0.1);
4603
+ }
4604
+
4059
4605
  [data-theme="light"] .smart-context-bar,
4060
4606
  [data-theme="light"] #chat-form {
4061
4607
  background: #ffffff;
@@ -4098,3 +4644,664 @@ input:checked + .slider:before {
4098
4644
  background: #e2e8f0;
4099
4645
  color: #0f172a;
4100
4646
  }
4647
+
4648
+ [data-theme="studio"] .user-message .message-bubble {
4649
+ background: #1c1c1c;
4650
+ border: 1px solid rgba(255, 255, 255, 0.1);
4651
+ color: #e1e1e1;
4652
+ }
4653
+
4654
+ .chat-artifact-open-btn:hover {
4655
+ background: color-mix(in srgb, var(--text-main, #ffffff) 14%, transparent) !important;
4656
+ border-color: var(--border-light, var(--border)) !important;
4657
+ }
4658
+
4659
+ /* Inline Message Editing */
4660
+ .inline-edit-container {
4661
+ display: flex;
4662
+ flex-direction: column;
4663
+ width: 100%;
4664
+ min-width: 300px;
4665
+ max-width: 680px;
4666
+ gap: 8px;
4667
+ margin-bottom: 4px;
4668
+ }
4669
+
4670
+ .inline-edit-textarea {
4671
+ width: 100%;
4672
+ min-height: 58px;
4673
+ max-height: 400px;
4674
+ padding: 12px 14px;
4675
+ font: inherit;
4676
+ font-size: 0.95rem;
4677
+ line-height: 1.5;
4678
+ color: var(--text-main, #ffffff);
4679
+ background: var(--bg-surface-raised, #18181b);
4680
+ border: 1px solid var(--accent);
4681
+ border-radius: var(--radius-xl, 14px);
4682
+ box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent) 30%, transparent), 0 4px 12px rgba(0, 0, 0, 0.15);
4683
+ resize: none;
4684
+ outline: none;
4685
+ box-sizing: border-box;
4686
+ transition: border-color 0.15s ease, box-shadow 0.15s ease;
4687
+ }
4688
+
4689
+ .inline-edit-textarea:focus {
4690
+ border-color: var(--accent);
4691
+ box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 45%, transparent), 0 4px 16px rgba(0, 0, 0, 0.2);
4692
+ }
4693
+
4694
+ .inline-edit-footer {
4695
+ display: flex;
4696
+ align-items: center;
4697
+ justify-content: space-between;
4698
+ gap: 12px;
4699
+ padding: 0 2px;
4700
+ }
4701
+
4702
+ .inline-edit-hint {
4703
+ color: var(--text-muted, #71717a);
4704
+ font-size: 0.72rem;
4705
+ letter-spacing: 0.01em;
4706
+ user-select: none;
4707
+ }
4708
+
4709
+ .inline-edit-actions {
4710
+ display: flex;
4711
+ align-items: center;
4712
+ gap: 8px;
4713
+ }
4714
+
4715
+ .inline-edit-btn {
4716
+ display: inline-flex;
4717
+ align-items: center;
4718
+ justify-content: center;
4719
+ padding: 6px 14px;
4720
+ font-size: 0.8rem;
4721
+ font-weight: 500;
4722
+ border-radius: var(--radius-md, 8px);
4723
+ cursor: pointer;
4724
+ transition: all 0.15s ease;
4725
+ border: 1px solid transparent;
4726
+ line-height: 1.2;
4727
+ }
4728
+
4729
+ .inline-edit-btn.cancel {
4730
+ background: transparent;
4731
+ border-color: var(--border, rgba(255, 255, 255, 0.15));
4732
+ color: var(--text-soft, var(--text-muted, #a1a1aa));
4733
+ }
4734
+
4735
+ .inline-edit-btn.cancel:hover {
4736
+ background: var(--bg-surface-soft, rgba(255, 255, 255, 0.08));
4737
+ color: var(--text-main, #ffffff);
4738
+ }
4739
+
4740
+ .inline-edit-btn.submit {
4741
+ background: var(--accent);
4742
+ color: var(--text-on-accent, #ffffff);
4743
+ box-shadow: 0 2px 8px color-mix(in srgb, var(--accent) 35%, transparent);
4744
+ }
4745
+
4746
+ .inline-edit-btn.submit:hover:not(:disabled) {
4747
+ filter: brightness(1.1);
4748
+ transform: translateY(-1px);
4749
+ }
4750
+
4751
+ .inline-edit-btn.submit:disabled {
4752
+ opacity: 0.45;
4753
+ cursor: not-allowed;
4754
+ transform: none;
4755
+ }
4756
+
4757
+ /* Modern Developer-Centric Activity Timeline (Claude Code / Cursor Style) */
4758
+ .modern-activity-history {
4759
+ margin-bottom: 12px;
4760
+ }
4761
+
4762
+ .modern-activity-toggle {
4763
+ display: flex;
4764
+ flex-direction: column;
4765
+ align-items: flex-start;
4766
+ gap: 3px;
4767
+ background: transparent !important;
4768
+ border: none !important;
4769
+ padding: 4px 6px;
4770
+ cursor: pointer;
4771
+ border-radius: var(--radius-xs, 4px);
4772
+ text-align: left;
4773
+ width: 100%;
4774
+ transition: background 0.15s ease;
4775
+ }
4776
+
4777
+ .modern-activity-toggle:hover {
4778
+ background: color-mix(in srgb, var(--panel-soft) 40%, transparent) !important;
4779
+ }
4780
+
4781
+ .modern-activity-header {
4782
+ display: flex;
4783
+ align-items: center;
4784
+ justify-content: space-between;
4785
+ gap: 8px;
4786
+ margin-bottom: 2px;
4787
+ }
4788
+
4789
+ .modern-activity-header-left {
4790
+ display: flex;
4791
+ align-items: center;
4792
+ gap: 6px;
4793
+ }
4794
+
4795
+ .modern-activity-duration {
4796
+ font-size: 0.96rem;
4797
+ font-weight: 500;
4798
+ color: var(--text-soft);
4799
+ letter-spacing: -0.01em;
4800
+ }
4801
+
4802
+ .modern-activity-subheader {
4803
+ display: flex;
4804
+ align-items: center;
4805
+ gap: 6px;
4806
+ font-size: 0.92rem;
4807
+ color: var(--text-muted);
4808
+ user-select: none;
4809
+ padding: 1px 2px;
4810
+ border-radius: var(--radius-xs, 4px);
4811
+ transition: color 0.15s ease;
4812
+ }
4813
+
4814
+ .modern-activity-subheader:hover {
4815
+ color: var(--text-soft);
4816
+ }
4817
+
4818
+ .modern-activity-natural-summary {
4819
+ font-size: 0.92rem;
4820
+ color: var(--text-muted);
4821
+ }
4822
+
4823
+ .modern-activity-subchevron {
4824
+ color: var(--text-muted);
4825
+ transition: transform 0.18s ease;
4826
+ }
4827
+
4828
+ .modern-activity-subchevron.is-open {
4829
+ transform: rotate(180deg);
4830
+ }
4831
+
4832
+ .modern-activity-card {
4833
+ padding: 2px 0 6px 0;
4834
+ border: none !important;
4835
+ background: transparent !important;
4836
+ box-shadow: none !important;
4837
+ }
4838
+
4839
+ .agent-activity-card-history,
4840
+ .modern-activity-content {
4841
+ margin-left: 0 !important;
4842
+ padding: 2px 0 6px 0 !important;
4843
+ border: none !important;
4844
+ box-sizing: border-box;
4845
+ width: 100%;
4846
+ }
4847
+
4848
+ .modern-activity-list {
4849
+ display: flex;
4850
+ flex-direction: column;
4851
+ gap: 3px;
4852
+ padding-top: 4px;
4853
+ margin-left: 12px;
4854
+ padding-left: 8px;
4855
+ border-left: 1.5px solid color-mix(in srgb, var(--border) 60%, transparent);
4856
+ max-width: calc(100% - 12px);
4857
+ box-sizing: border-box;
4858
+ }
4859
+
4860
+ /* 100% Borderless & Transparent Timeline Rows (Eliminating all legacy boxed borders) */
4861
+ .modern-activity-list .agent-activity-item,
4862
+ .modern-activity-list .agent-activity-group,
4863
+ .modern-activity-list .agent-activity-thought-step,
4864
+ .modern-timeline-group,
4865
+ .modern-timeline-thought-item {
4866
+ border: none !important;
4867
+ background: transparent !important;
4868
+ box-shadow: none !important;
4869
+ border-radius: var(--radius-xs, 4px) !important;
4870
+ overflow: visible !important;
4871
+ margin: 0 !important;
4872
+ }
4873
+
4874
+ .modern-timeline-row {
4875
+ display: flex;
4876
+ align-items: center;
4877
+ gap: 9px;
4878
+ min-height: 28px;
4879
+ padding: 3px 6px;
4880
+ border-radius: var(--radius-xs, 4px);
4881
+ font-size: 0.94rem;
4882
+ line-height: 1.45;
4883
+ color: var(--text-soft);
4884
+ transition: background 0.12s ease, color 0.12s ease;
4885
+ user-select: none;
4886
+ border: none !important;
4887
+ background: transparent !important;
4888
+ }
4889
+
4890
+ .modern-timeline-row:hover {
4891
+ background: color-mix(in srgb, var(--panel-soft) 50%, transparent) !important;
4892
+ color: var(--text-main);
4893
+ }
4894
+
4895
+ .modern-activity-list .agent-activity-thought-header,
4896
+ .modern-activity-list .agent-activity-group-header,
4897
+ .modern-thought-row,
4898
+ .modern-group-row {
4899
+ border: none !important;
4900
+ background: transparent !important;
4901
+ min-height: 28px !important;
4902
+ padding: 3px 6px !important;
4903
+ box-shadow: none !important;
4904
+ border-radius: var(--radius-xs, 4px) !important;
4905
+ }
4906
+
4907
+ .modern-activity-list .agent-activity-thought-header:hover,
4908
+ .modern-activity-list .agent-activity-group-header:hover,
4909
+ .modern-thought-row:hover,
4910
+ .modern-group-row:hover {
4911
+ background: color-mix(in srgb, var(--panel-soft) 50%, transparent) !important;
4912
+ }
4913
+
4914
+ .modern-timeline-verb {
4915
+ font-size: 0.92rem;
4916
+ font-weight: 500;
4917
+ color: var(--text-muted);
4918
+ flex-shrink: 0;
4919
+ min-width: 48px;
4920
+ }
4921
+
4922
+ .modern-timeline-icon-wrap {
4923
+ display: inline-flex;
4924
+ align-items: center;
4925
+ justify-content: center;
4926
+ width: 17px;
4927
+ height: 17px;
4928
+ flex-shrink: 0;
4929
+ }
4930
+
4931
+ .modern-timeline-target {
4932
+ flex: 1;
4933
+ min-width: 0;
4934
+ display: flex;
4935
+ align-items: center;
4936
+ gap: 6px;
4937
+ overflow: hidden;
4938
+ text-overflow: ellipsis;
4939
+ white-space: nowrap;
4940
+ font-size: 0.94rem;
4941
+ font-weight: 450;
4942
+ color: var(--text-main);
4943
+ }
4944
+
4945
+ .modern-timeline-line-range {
4946
+ font-family: var(--font-mono, monospace);
4947
+ font-size: 0.85rem;
4948
+ color: var(--text-muted);
4949
+ margin-left: 2px;
4950
+ flex-shrink: 0;
4951
+ }
4952
+
4953
+ .modern-timeline-diff-stats {
4954
+ display: inline-flex;
4955
+ align-items: center;
4956
+ gap: 5px;
4957
+ font-family: var(--font-mono, monospace);
4958
+ font-size: 0.88rem;
4959
+ font-weight: 500;
4960
+ margin-left: 6px;
4961
+ flex-shrink: 0;
4962
+ }
4963
+
4964
+ .diff-stat-add {
4965
+ color: #4ade80;
4966
+ }
4967
+
4968
+ .diff-stat-del {
4969
+ color: #f87171;
4970
+ }
4971
+
4972
+ .modern-timeline-status-col {
4973
+ display: inline-flex;
4974
+ align-items: center;
4975
+ gap: 6px;
4976
+ margin-left: auto;
4977
+ flex-shrink: 0;
4978
+ }
4979
+
4980
+ .modern-timeline-count-badge {
4981
+ display: inline-flex;
4982
+ align-items: center;
4983
+ justify-content: center;
4984
+ padding: 0 6px;
4985
+ min-width: 18px;
4986
+ height: 18px;
4987
+ font-size: 0.74rem;
4988
+ font-weight: 600;
4989
+ border-radius: 9999px;
4990
+ background: color-mix(in srgb, var(--panel-soft) 70%, transparent);
4991
+ color: var(--text-muted);
4992
+ }
4993
+
4994
+ .modern-timeline-chevron {
4995
+ color: var(--text-muted);
4996
+ transition: transform 0.18s ease;
4997
+ flex-shrink: 0;
4998
+ }
4999
+
5000
+ .modern-timeline-chevron.inline-chevron {
5001
+ margin-left: 4px;
5002
+ }
5003
+
5004
+ .modern-timeline-chevron.is-open {
5005
+ transform: rotate(90deg);
5006
+ }
5007
+
5008
+ .modern-timeline-thought-item {
5009
+ display: flex;
5010
+ flex-direction: column;
5011
+ }
5012
+
5013
+ .modern-thought-row {
5014
+ cursor: pointer;
5015
+ display: flex;
5016
+ align-items: center;
5017
+ }
5018
+
5019
+ .modern-timeline-thought-label {
5020
+ font-size: 0.92rem;
5021
+ color: var(--text-muted);
5022
+ font-weight: 500;
5023
+ display: inline-flex;
5024
+ align-items: center;
5025
+ gap: 5px;
5026
+ }
5027
+
5028
+ .modern-activity-list .agent-activity-thought-body,
5029
+ .modern-thought-body {
5030
+ margin-left: 14px !important;
5031
+ margin-top: 3px !important;
5032
+ margin-bottom: 6px !important;
5033
+ padding: 4px 10px 4px 14px !important;
5034
+ border: none !important;
5035
+ background: transparent !important;
5036
+ border-left: 2px solid color-mix(in srgb, var(--text-muted) 35%, transparent) !important;
5037
+ border-radius: 0 !important;
5038
+ color: var(--text-muted) !important;
5039
+ font-size: 0.90rem !important;
5040
+ line-height: 1.55;
5041
+ max-height: 380px;
5042
+ overflow-y: auto;
5043
+ }
5044
+
5045
+ .modern-thought-body .chat-formatted-body {
5046
+ font-size: 0.90rem;
5047
+ line-height: 1.55;
5048
+ color: var(--text-muted);
5049
+ gap: 6px;
5050
+ }
5051
+
5052
+ .modern-thought-body .chat-paragraph {
5053
+ font-size: 0.90rem;
5054
+ line-height: 1.55;
5055
+ color: var(--text-muted);
5056
+ margin-bottom: 6px;
5057
+ }
5058
+
5059
+ .modern-thought-body .chat-heading {
5060
+ font-size: 0.96rem;
5061
+ font-weight: 600;
5062
+ color: var(--text-main);
5063
+ margin-top: 10px;
5064
+ margin-bottom: 4px;
5065
+ }
5066
+
5067
+ .modern-thought-body .chat-heading-1 {
5068
+ font-size: 1.05rem;
5069
+ }
5070
+
5071
+ .modern-thought-body .chat-heading-2 {
5072
+ font-size: 0.98rem;
5073
+ }
5074
+
5075
+ .modern-thought-body .chat-heading-3 {
5076
+ font-size: 0.92rem;
5077
+ }
5078
+
5079
+ .modern-thought-body .chat-list-item {
5080
+ font-size: 0.90rem;
5081
+ line-height: 1.5;
5082
+ margin: 2px 0 2px 4px;
5083
+ color: var(--text-muted);
5084
+ }
5085
+
5086
+ .modern-thought-body blockquote {
5087
+ border-left: 2px solid var(--accent);
5088
+ padding: 4px 10px;
5089
+ margin: 6px 0;
5090
+ background: color-mix(in srgb, var(--accent) 8%, transparent);
5091
+ border-radius: var(--radius-xs, 4px);
5092
+ color: var(--text-soft);
5093
+ font-size: 0.88rem;
5094
+ }
5095
+
5096
+ .modern-timeline-output {
5097
+ margin: 3px 0 6px 14px;
5098
+ padding: 8px 12px;
5099
+ background: color-mix(in srgb, var(--bg-surface-raised, #000) 80%, transparent);
5100
+ border-radius: var(--radius-xs, 4px);
5101
+ border: 1px solid var(--border);
5102
+ font-family: var(--font-mono, monospace);
5103
+ font-size: 0.84rem;
5104
+ max-height: 250px;
5105
+ overflow-y: auto;
5106
+ }
5107
+
5108
+ .modern-directory-listing {
5109
+ display: flex;
5110
+ flex-direction: column;
5111
+ gap: 1px;
5112
+ padding: 2px 0;
5113
+ font-family: var(--font-mono, monospace);
5114
+ font-size: 0.82rem;
5115
+ }
5116
+
5117
+ .modern-directory-item {
5118
+ display: flex;
5119
+ align-items: center;
5120
+ gap: 8px;
5121
+ padding: 3px 6px;
5122
+ border-radius: var(--radius-xs, 4px);
5123
+ color: var(--text-soft);
5124
+ transition: background 0.12s ease, color 0.12s ease;
5125
+ user-select: text;
5126
+ }
5127
+
5128
+ .modern-directory-item:hover {
5129
+ background: color-mix(in srgb, var(--accent, #38bdf8) 8%, transparent);
5130
+ color: var(--text-main, #fff);
5131
+ }
5132
+
5133
+ .modern-directory-item:hover .modern-dir-mention-btn {
5134
+ opacity: 1;
5135
+ }
5136
+
5137
+ .modern-directory-item-icon {
5138
+ width: 15px;
5139
+ height: 15px;
5140
+ flex-shrink: 0;
5141
+ display: inline-flex;
5142
+ align-items: center;
5143
+ justify-content: center;
5144
+ }
5145
+
5146
+ .modern-directory-item-icon img {
5147
+ width: 15px;
5148
+ height: 15px;
5149
+ object-fit: contain;
5150
+ }
5151
+
5152
+ .modern-directory-item-name {
5153
+ flex: 1;
5154
+ min-width: 0;
5155
+ overflow: hidden;
5156
+ text-overflow: ellipsis;
5157
+ white-space: nowrap;
5158
+ }
5159
+
5160
+ .modern-directory-item.is-directory .modern-directory-item-name {
5161
+ color: var(--text-main, #eee);
5162
+ font-weight: 500;
5163
+ }
5164
+
5165
+ .modern-directory-item-size {
5166
+ flex-shrink: 0;
5167
+ font-size: 0.74rem;
5168
+ color: var(--text-muted);
5169
+ font-variant-numeric: tabular-nums;
5170
+ margin-left: auto;
5171
+ }
5172
+
5173
+ .modern-dir-mention-btn {
5174
+ opacity: 0;
5175
+ transition: opacity 0.12s ease;
5176
+ font-size: 0.72rem;
5177
+ padding: 0 4px;
5178
+ height: 18px;
5179
+ margin-left: 4px;
5180
+ }
5181
+
5182
+ .modern-directory-empty {
5183
+ color: var(--text-muted);
5184
+ font-style: italic;
5185
+ padding: 4px 6px;
5186
+ }
5187
+
5188
+ .modern-activity-list .agent-activity-group-subitems,
5189
+ .modern-group-subitems {
5190
+ background: transparent !important;
5191
+ border: none !important;
5192
+ border-top: none !important;
5193
+ border-left: 1px solid color-mix(in srgb, var(--border) 60%, transparent) !important;
5194
+ padding: 2px 0 2px 8px !important;
5195
+ margin-left: 14px !important;
5196
+ margin-top: 2px !important;
5197
+ margin-bottom: 4px !important;
5198
+ }
5199
+
5200
+ /* ==========================================================================
5201
+ Modern Ask-User Completed Activity Card
5202
+ Rendered in the agent activity timeline after questions are answered
5203
+ ========================================================================== */
5204
+ .modern-ask-user-card {
5205
+ margin: 8px 0;
5206
+ padding: 14px 16px;
5207
+ border-radius: var(--radius-lg, 12px);
5208
+ background: var(--surface-subtle, rgba(255, 255, 255, 0.025));
5209
+ border: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
5210
+ display: flex;
5211
+ flex-direction: column;
5212
+ gap: 12px;
5213
+ box-sizing: border-box;
5214
+ width: 100%;
5215
+ text-align: left;
5216
+ }
5217
+
5218
+ .modern-ask-user-header {
5219
+ display: flex;
5220
+ align-items: center;
5221
+ gap: 8px;
5222
+ color: var(--text-muted, #94a3b8);
5223
+ font-size: 0.82rem;
5224
+ font-weight: 500;
5225
+ letter-spacing: -0.01em;
5226
+ user-select: none;
5227
+ }
5228
+
5229
+ .modern-ask-user-header-icon {
5230
+ display: inline-flex;
5231
+ align-items: center;
5232
+ justify-content: center;
5233
+ color: var(--text-muted, #94a3b8);
5234
+ flex-shrink: 0;
5235
+ }
5236
+
5237
+ .modern-ask-user-header-text {
5238
+ line-height: 1;
5239
+ color: var(--text-muted, #94a3b8);
5240
+ }
5241
+
5242
+ .modern-ask-user-items {
5243
+ display: flex;
5244
+ flex-direction: column;
5245
+ gap: 0;
5246
+ }
5247
+
5248
+ .modern-ask-user-item {
5249
+ display: flex;
5250
+ flex-direction: column;
5251
+ gap: 5px;
5252
+ }
5253
+
5254
+ .modern-ask-user-item + .modern-ask-user-item {
5255
+ margin-top: 14px;
5256
+ padding-top: 14px;
5257
+ border-top: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
5258
+ }
5259
+
5260
+ .modern-ask-user-question {
5261
+ color: var(--text-main, #f4f4f5);
5262
+ font-size: 0.86rem;
5263
+ font-weight: 500;
5264
+ line-height: 1.45;
5265
+ word-break: break-word;
5266
+ }
5267
+
5268
+ .modern-ask-user-answer {
5269
+ color: var(--text-soft, #a1a1aa);
5270
+ font-size: 0.82rem;
5271
+ line-height: 1.48;
5272
+ word-break: break-word;
5273
+ }
5274
+
5275
+ /* Light theme overrides */
5276
+ [data-theme='light'] .modern-ask-user-card,
5277
+ body.light-theme .modern-ask-user-card {
5278
+ background: var(--surface-subtle, rgba(0, 0, 0, 0.02));
5279
+ border-color: var(--border-subtle, rgba(0, 0, 0, 0.08));
5280
+ }
5281
+
5282
+ [data-theme='light'] .modern-ask-user-item + .modern-ask-user-item,
5283
+ body.light-theme .modern-ask-user-item + .modern-ask-user-item {
5284
+ border-top-color: var(--border-subtle, rgba(0, 0, 0, 0.08));
5285
+ }
5286
+
5287
+ [data-theme='light'] .modern-ask-user-question,
5288
+ body.light-theme .modern-ask-user-question {
5289
+ color: var(--text-main, #0f172a);
5290
+ }
5291
+
5292
+ [data-theme='light'] .modern-ask-user-answer,
5293
+ body.light-theme .modern-ask-user-answer {
5294
+ color: var(--text-soft, #475569);
5295
+ }
5296
+
5297
+ [data-theme='light'] .modern-ask-user-header,
5298
+ body.light-theme .modern-ask-user-header,
5299
+ [data-theme='light'] .modern-ask-user-header-icon,
5300
+ body.light-theme .modern-ask-user-header-icon,
5301
+ [data-theme='light'] .modern-ask-user-header-text,
5302
+ body.light-theme .modern-ask-user-header-text {
5303
+ color: var(--text-muted, #64748b);
5304
+ }
5305
+
5306
+
5307
+