@wzrhine/agent 0.0.0-stage → 0.2.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 (360) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/LICENSE +21 -0
  3. package/README.md +29 -3
  4. package/dist/agent.css +16 -0
  5. package/dist/components/artifact/ArtifactCard.d.ts +59 -0
  6. package/dist/components/artifact/ArtifactCard.d.ts.map +1 -0
  7. package/dist/components/artifact/ArtifactCard.js +79 -0
  8. package/dist/components/artifact/ArtifactCard.js.map +1 -0
  9. package/dist/components/artifact/FilePreview.d.ts +121 -0
  10. package/dist/components/artifact/FilePreview.d.ts.map +1 -0
  11. package/dist/components/artifact/FilePreview.js +213 -0
  12. package/dist/components/artifact/FilePreview.js.map +1 -0
  13. package/dist/components/artifact/FilePreviewTabs.d.ts +51 -0
  14. package/dist/components/artifact/FilePreviewTabs.d.ts.map +1 -0
  15. package/dist/components/artifact/FilePreviewTabs.js +150 -0
  16. package/dist/components/artifact/FilePreviewTabs.js.map +1 -0
  17. package/dist/components/composer/AttachmentList.d.ts +33 -0
  18. package/dist/components/composer/AttachmentList.d.ts.map +1 -0
  19. package/dist/components/composer/AttachmentList.js +60 -0
  20. package/dist/components/composer/AttachmentList.js.map +1 -0
  21. package/dist/components/composer/Composer.d.ts +119 -0
  22. package/dist/components/composer/Composer.d.ts.map +1 -0
  23. package/dist/components/composer/Composer.js +336 -0
  24. package/dist/components/composer/Composer.js.map +1 -0
  25. package/dist/components/composer/ComposerInput.d.ts +103 -0
  26. package/dist/components/composer/ComposerInput.d.ts.map +1 -0
  27. package/dist/components/composer/ComposerInput.js +301 -0
  28. package/dist/components/composer/ComposerInput.js.map +1 -0
  29. package/dist/components/composer/ComposerNotice.d.ts +38 -0
  30. package/dist/components/composer/ComposerNotice.d.ts.map +1 -0
  31. package/dist/components/composer/ComposerNotice.js +16 -0
  32. package/dist/components/composer/ComposerNotice.js.map +1 -0
  33. package/dist/components/composer/MentionMenu.d.ts +37 -0
  34. package/dist/components/composer/MentionMenu.d.ts.map +1 -0
  35. package/dist/components/composer/MentionMenu.js +56 -0
  36. package/dist/components/composer/MentionMenu.js.map +1 -0
  37. package/dist/components/composer/MenuPanel.d.ts +49 -0
  38. package/dist/components/composer/MenuPanel.d.ts.map +1 -0
  39. package/dist/components/composer/MenuPanel.js +50 -0
  40. package/dist/components/composer/MenuPanel.js.map +1 -0
  41. package/dist/components/composer/ModelPicker.d.ts +53 -0
  42. package/dist/components/composer/ModelPicker.d.ts.map +1 -0
  43. package/dist/components/composer/ModelPicker.js +126 -0
  44. package/dist/components/composer/ModelPicker.js.map +1 -0
  45. package/dist/components/composer/PermissionPicker.d.ts +35 -0
  46. package/dist/components/composer/PermissionPicker.d.ts.map +1 -0
  47. package/dist/components/composer/PermissionPicker.js +51 -0
  48. package/dist/components/composer/PermissionPicker.js.map +1 -0
  49. package/dist/components/composer/ReferencePicker.d.ts +31 -0
  50. package/dist/components/composer/ReferencePicker.d.ts.map +1 -0
  51. package/dist/components/composer/ReferencePicker.js +50 -0
  52. package/dist/components/composer/ReferencePicker.js.map +1 -0
  53. package/dist/components/composer/SendStopButton.d.ts +73 -0
  54. package/dist/components/composer/SendStopButton.d.ts.map +1 -0
  55. package/dist/components/composer/SendStopButton.js +88 -0
  56. package/dist/components/composer/SendStopButton.js.map +1 -0
  57. package/dist/components/composer/SkillPicker.d.ts +26 -0
  58. package/dist/components/composer/SkillPicker.d.ts.map +1 -0
  59. package/dist/components/composer/SkillPicker.js +26 -0
  60. package/dist/components/composer/SkillPicker.js.map +1 -0
  61. package/dist/components/composer/SlashCommandMenu.d.ts +33 -0
  62. package/dist/components/composer/SlashCommandMenu.d.ts.map +1 -0
  63. package/dist/components/composer/SlashCommandMenu.js +43 -0
  64. package/dist/components/composer/SlashCommandMenu.js.map +1 -0
  65. package/dist/components/composer/composer-text.d.ts +10 -0
  66. package/dist/components/composer/composer-text.d.ts.map +1 -0
  67. package/dist/components/composer/composer-text.js +26 -0
  68. package/dist/components/composer/composer-text.js.map +1 -0
  69. package/dist/components/composer/composer-utils.d.ts +74 -0
  70. package/dist/components/composer/composer-utils.d.ts.map +1 -0
  71. package/dist/components/composer/composer-utils.js +133 -0
  72. package/dist/components/composer/composer-utils.js.map +1 -0
  73. package/dist/components/conversation/ConversationList.d.ts +94 -0
  74. package/dist/components/conversation/ConversationList.d.ts.map +1 -0
  75. package/dist/components/conversation/ConversationList.js +81 -0
  76. package/dist/components/conversation/ConversationList.js.map +1 -0
  77. package/dist/components/conversation/ConversationRow.d.ts +66 -0
  78. package/dist/components/conversation/ConversationRow.d.ts.map +1 -0
  79. package/dist/components/conversation/ConversationRow.js +65 -0
  80. package/dist/components/conversation/ConversationRow.js.map +1 -0
  81. package/dist/components/conversation/conversation-status.d.ts +21 -0
  82. package/dist/components/conversation/conversation-status.d.ts.map +1 -0
  83. package/dist/components/conversation/conversation-status.js +33 -0
  84. package/dist/components/conversation/conversation-status.js.map +1 -0
  85. package/dist/components/intervention/ApprovalDiff.d.ts +14 -0
  86. package/dist/components/intervention/ApprovalDiff.d.ts.map +1 -0
  87. package/dist/components/intervention/ApprovalDiff.js +25 -0
  88. package/dist/components/intervention/ApprovalDiff.js.map +1 -0
  89. package/dist/components/intervention/ApprovalPanel.d.ts +57 -0
  90. package/dist/components/intervention/ApprovalPanel.d.ts.map +1 -0
  91. package/dist/components/intervention/ApprovalPanel.js +111 -0
  92. package/dist/components/intervention/ApprovalPanel.js.map +1 -0
  93. package/dist/components/intervention/ErrorRecoveryNotice.d.ts +28 -0
  94. package/dist/components/intervention/ErrorRecoveryNotice.d.ts.map +1 -0
  95. package/dist/components/intervention/ErrorRecoveryNotice.js +31 -0
  96. package/dist/components/intervention/ErrorRecoveryNotice.js.map +1 -0
  97. package/dist/components/intervention/GrantList.d.ts +49 -0
  98. package/dist/components/intervention/GrantList.d.ts.map +1 -0
  99. package/dist/components/intervention/GrantList.js +58 -0
  100. package/dist/components/intervention/GrantList.js.map +1 -0
  101. package/dist/components/intervention/InterventionDock.d.ts +24 -0
  102. package/dist/components/intervention/InterventionDock.d.ts.map +1 -0
  103. package/dist/components/intervention/InterventionDock.js +18 -0
  104. package/dist/components/intervention/InterventionDock.js.map +1 -0
  105. package/dist/components/intervention/QuestionnaireCard.d.ts +81 -0
  106. package/dist/components/intervention/QuestionnaireCard.d.ts.map +1 -0
  107. package/dist/components/intervention/QuestionnaireCard.js +333 -0
  108. package/dist/components/intervention/QuestionnaireCard.js.map +1 -0
  109. package/dist/components/intervention/action-lock.d.ts +20 -0
  110. package/dist/components/intervention/action-lock.d.ts.map +1 -0
  111. package/dist/components/intervention/action-lock.js +65 -0
  112. package/dist/components/intervention/action-lock.js.map +1 -0
  113. package/dist/components/intervention/icons.d.ts +8 -0
  114. package/dist/components/intervention/icons.d.ts.map +1 -0
  115. package/dist/components/intervention/icons.js +11 -0
  116. package/dist/components/intervention/icons.js.map +1 -0
  117. package/dist/components/intervention/questionnaire-answers.d.ts +34 -0
  118. package/dist/components/intervention/questionnaire-answers.d.ts.map +1 -0
  119. package/dist/components/intervention/questionnaire-answers.js +97 -0
  120. package/dist/components/intervention/questionnaire-answers.js.map +1 -0
  121. package/dist/components/message/AgentMessage.d.ts +98 -0
  122. package/dist/components/message/AgentMessage.d.ts.map +1 -0
  123. package/dist/components/message/AgentMessage.js +94 -0
  124. package/dist/components/message/AgentMessage.js.map +1 -0
  125. package/dist/components/message/CitationChip.d.ts +38 -0
  126. package/dist/components/message/CitationChip.d.ts.map +1 -0
  127. package/dist/components/message/CitationChip.js +32 -0
  128. package/dist/components/message/CitationChip.js.map +1 -0
  129. package/dist/components/message/CodeBlock.d.ts +45 -0
  130. package/dist/components/message/CodeBlock.d.ts.map +1 -0
  131. package/dist/components/message/CodeBlock.js +21 -0
  132. package/dist/components/message/CodeBlock.js.map +1 -0
  133. package/dist/components/message/JumpToLatest.d.ts +27 -0
  134. package/dist/components/message/JumpToLatest.d.ts.map +1 -0
  135. package/dist/components/message/JumpToLatest.js +17 -0
  136. package/dist/components/message/JumpToLatest.js.map +1 -0
  137. package/dist/components/message/Markdown.d.ts +21 -0
  138. package/dist/components/message/Markdown.d.ts.map +1 -0
  139. package/dist/components/message/Markdown.js +21 -0
  140. package/dist/components/message/Markdown.js.map +1 -0
  141. package/dist/components/message/MessageActions.d.ts +67 -0
  142. package/dist/components/message/MessageActions.d.ts.map +1 -0
  143. package/dist/components/message/MessageActions.js +83 -0
  144. package/dist/components/message/MessageActions.js.map +1 -0
  145. package/dist/components/message/MessageList.d.ts +106 -0
  146. package/dist/components/message/MessageList.d.ts.map +1 -0
  147. package/dist/components/message/MessageList.js +327 -0
  148. package/dist/components/message/MessageList.js.map +1 -0
  149. package/dist/components/message/MessagePart.d.ts +44 -0
  150. package/dist/components/message/MessagePart.d.ts.map +1 -0
  151. package/dist/components/message/MessagePart.js +150 -0
  152. package/dist/components/message/MessagePart.js.map +1 -0
  153. package/dist/components/message/RunDetails.d.ts +26 -0
  154. package/dist/components/message/RunDetails.d.ts.map +1 -0
  155. package/dist/components/message/RunDetails.js +113 -0
  156. package/dist/components/message/RunDetails.js.map +1 -0
  157. package/dist/components/message/SkillUseList.d.ts +22 -0
  158. package/dist/components/message/SkillUseList.d.ts.map +1 -0
  159. package/dist/components/message/SkillUseList.js +20 -0
  160. package/dist/components/message/SkillUseList.js.map +1 -0
  161. package/dist/components/message/ThinkingBlock.d.ts +44 -0
  162. package/dist/components/message/ThinkingBlock.d.ts.map +1 -0
  163. package/dist/components/message/ThinkingBlock.js +34 -0
  164. package/dist/components/message/ThinkingBlock.js.map +1 -0
  165. package/dist/components/message/icons.d.ts +14 -0
  166. package/dist/components/message/icons.d.ts.map +1 -0
  167. package/dist/components/message/icons.js +16 -0
  168. package/dist/components/message/icons.js.map +1 -0
  169. package/dist/components/message/plain-text.d.ts +11 -0
  170. package/dist/components/message/plain-text.d.ts.map +1 -0
  171. package/dist/components/message/plain-text.js +58 -0
  172. package/dist/components/message/plain-text.js.map +1 -0
  173. package/dist/components/message/renderers.d.ts +30 -0
  174. package/dist/components/message/renderers.d.ts.map +1 -0
  175. package/dist/components/message/renderers.js +2 -0
  176. package/dist/components/message/renderers.js.map +1 -0
  177. package/dist/components/message/use-copy.d.ts +19 -0
  178. package/dist/components/message/use-copy.d.ts.map +1 -0
  179. package/dist/components/message/use-copy.js +67 -0
  180. package/dist/components/message/use-copy.js.map +1 -0
  181. package/dist/components/process/AgentProcess.d.ts +47 -0
  182. package/dist/components/process/AgentProcess.d.ts.map +1 -0
  183. package/dist/components/process/AgentProcess.js +78 -0
  184. package/dist/components/process/AgentProcess.js.map +1 -0
  185. package/dist/components/process/RunStatus.d.ts +60 -0
  186. package/dist/components/process/RunStatus.d.ts.map +1 -0
  187. package/dist/components/process/RunStatus.js +34 -0
  188. package/dist/components/process/RunStatus.js.map +1 -0
  189. package/dist/components/shell/AgentEmptyState.d.ts +35 -0
  190. package/dist/components/shell/AgentEmptyState.d.ts.map +1 -0
  191. package/dist/components/shell/AgentEmptyState.js +20 -0
  192. package/dist/components/shell/AgentEmptyState.js.map +1 -0
  193. package/dist/components/shell/AgentHeader.d.ts +84 -0
  194. package/dist/components/shell/AgentHeader.d.ts.map +1 -0
  195. package/dist/components/shell/AgentHeader.js +43 -0
  196. package/dist/components/shell/AgentHeader.js.map +1 -0
  197. package/dist/components/shell/AgentShell.d.ts +154 -0
  198. package/dist/components/shell/AgentShell.d.ts.map +1 -0
  199. package/dist/components/shell/AgentShell.js +210 -0
  200. package/dist/components/shell/AgentShell.js.map +1 -0
  201. package/dist/components/shell/AgentSidePane.d.ts +54 -0
  202. package/dist/components/shell/AgentSidePane.d.ts.map +1 -0
  203. package/dist/components/shell/AgentSidePane.js +26 -0
  204. package/dist/components/shell/AgentSidePane.js.map +1 -0
  205. package/dist/components/shell/ResizeHandle.d.ts +54 -0
  206. package/dist/components/shell/ResizeHandle.d.ts.map +1 -0
  207. package/dist/components/shell/ResizeHandle.js +94 -0
  208. package/dist/components/shell/ResizeHandle.js.map +1 -0
  209. package/dist/components/shell/use-controllable.d.ts +9 -0
  210. package/dist/components/shell/use-controllable.d.ts.map +1 -0
  211. package/dist/components/shell/use-controllable.js +26 -0
  212. package/dist/components/shell/use-controllable.js.map +1 -0
  213. package/dist/components/tools/ChunkPager.d.ts +48 -0
  214. package/dist/components/tools/ChunkPager.d.ts.map +1 -0
  215. package/dist/components/tools/ChunkPager.js +68 -0
  216. package/dist/components/tools/ChunkPager.js.map +1 -0
  217. package/dist/components/tools/CodeModeToolTree.d.ts +64 -0
  218. package/dist/components/tools/CodeModeToolTree.d.ts.map +1 -0
  219. package/dist/components/tools/CodeModeToolTree.js +97 -0
  220. package/dist/components/tools/CodeModeToolTree.js.map +1 -0
  221. package/dist/components/tools/DiffPreview.d.ts +83 -0
  222. package/dist/components/tools/DiffPreview.d.ts.map +1 -0
  223. package/dist/components/tools/DiffPreview.js +95 -0
  224. package/dist/components/tools/DiffPreview.js.map +1 -0
  225. package/dist/components/tools/ToolActivity.d.ts +63 -0
  226. package/dist/components/tools/ToolActivity.d.ts.map +1 -0
  227. package/dist/components/tools/ToolActivity.js +45 -0
  228. package/dist/components/tools/ToolActivity.js.map +1 -0
  229. package/dist/components/tools/ToolDetails.d.ts +118 -0
  230. package/dist/components/tools/ToolDetails.d.ts.map +1 -0
  231. package/dist/components/tools/ToolDetails.js +258 -0
  232. package/dist/components/tools/ToolDetails.js.map +1 -0
  233. package/dist/components/tools/ToolHistory.d.ts +48 -0
  234. package/dist/components/tools/ToolHistory.d.ts.map +1 -0
  235. package/dist/components/tools/ToolHistory.js +37 -0
  236. package/dist/components/tools/ToolHistory.js.map +1 -0
  237. package/dist/components/tools/ToolOutput.d.ts +61 -0
  238. package/dist/components/tools/ToolOutput.d.ts.map +1 -0
  239. package/dist/components/tools/ToolOutput.js +45 -0
  240. package/dist/components/tools/ToolOutput.js.map +1 -0
  241. package/dist/components/tools/ToolRecord.d.ts +58 -0
  242. package/dist/components/tools/ToolRecord.d.ts.map +1 -0
  243. package/dist/components/tools/ToolRecord.js +79 -0
  244. package/dist/components/tools/ToolRecord.js.map +1 -0
  245. package/dist/components/tools/shared.d.ts +93 -0
  246. package/dist/components/tools/shared.d.ts.map +1 -0
  247. package/dist/components/tools/shared.js +160 -0
  248. package/dist/components/tools/shared.js.map +1 -0
  249. package/dist/components/workspace/ActivityLedger.d.ts +44 -0
  250. package/dist/components/workspace/ActivityLedger.d.ts.map +1 -0
  251. package/dist/components/workspace/ActivityLedger.js +63 -0
  252. package/dist/components/workspace/ActivityLedger.js.map +1 -0
  253. package/dist/components/workspace/CompactionNotice.d.ts +63 -0
  254. package/dist/components/workspace/CompactionNotice.d.ts.map +1 -0
  255. package/dist/components/workspace/CompactionNotice.js +36 -0
  256. package/dist/components/workspace/CompactionNotice.js.map +1 -0
  257. package/dist/components/workspace/ContextUsage.d.ts +50 -0
  258. package/dist/components/workspace/ContextUsage.d.ts.map +1 -0
  259. package/dist/components/workspace/ContextUsage.js +106 -0
  260. package/dist/components/workspace/ContextUsage.js.map +1 -0
  261. package/dist/components/workspace/PersistentTerminal.d.ts +86 -0
  262. package/dist/components/workspace/PersistentTerminal.d.ts.map +1 -0
  263. package/dist/components/workspace/PersistentTerminal.js +155 -0
  264. package/dist/components/workspace/PersistentTerminal.js.map +1 -0
  265. package/dist/components/workspace/PinnedSummary.d.ts +43 -0
  266. package/dist/components/workspace/PinnedSummary.d.ts.map +1 -0
  267. package/dist/components/workspace/PinnedSummary.js +33 -0
  268. package/dist/components/workspace/PinnedSummary.js.map +1 -0
  269. package/dist/components/workspace/RunOverview.d.ts +29 -0
  270. package/dist/components/workspace/RunOverview.d.ts.map +1 -0
  271. package/dist/components/workspace/RunOverview.js +20 -0
  272. package/dist/components/workspace/RunOverview.js.map +1 -0
  273. package/dist/components/workspace/RunSummary.d.ts +35 -0
  274. package/dist/components/workspace/RunSummary.d.ts.map +1 -0
  275. package/dist/components/workspace/RunSummary.js +46 -0
  276. package/dist/components/workspace/RunSummary.js.map +1 -0
  277. package/dist/components/workspace/SubAgentCard.d.ts +64 -0
  278. package/dist/components/workspace/SubAgentCard.d.ts.map +1 -0
  279. package/dist/components/workspace/SubAgentCard.js +78 -0
  280. package/dist/components/workspace/SubAgentCard.js.map +1 -0
  281. package/dist/components/workspace/TerminalRow.d.ts +61 -0
  282. package/dist/components/workspace/TerminalRow.d.ts.map +1 -0
  283. package/dist/components/workspace/TerminalRow.js +65 -0
  284. package/dist/components/workspace/TerminalRow.js.map +1 -0
  285. package/dist/components/workspace/shared.d.ts +26 -0
  286. package/dist/components/workspace/shared.d.ts.map +1 -0
  287. package/dist/components/workspace/shared.js +41 -0
  288. package/dist/components/workspace/shared.js.map +1 -0
  289. package/dist/index.d.ts +136 -0
  290. package/dist/index.d.ts.map +1 -0
  291. package/dist/index.js +79 -0
  292. package/dist/index.js.map +1 -0
  293. package/dist/motion/agent-motion.d.ts +62 -0
  294. package/dist/motion/agent-motion.d.ts.map +1 -0
  295. package/dist/motion/agent-motion.js +61 -0
  296. package/dist/motion/agent-motion.js.map +1 -0
  297. package/dist/primitives/AgentSpark.d.ts +17 -0
  298. package/dist/primitives/AgentSpark.d.ts.map +1 -0
  299. package/dist/primitives/AgentSpark.js +11 -0
  300. package/dist/primitives/AgentSpark.js.map +1 -0
  301. package/dist/primitives/AgentStatus.d.ts +32 -0
  302. package/dist/primitives/AgentStatus.d.ts.map +1 -0
  303. package/dist/primitives/AgentStatus.js +13 -0
  304. package/dist/primitives/AgentStatus.js.map +1 -0
  305. package/dist/primitives/StatusGlyph.d.ts +16 -0
  306. package/dist/primitives/StatusGlyph.d.ts.map +1 -0
  307. package/dist/primitives/StatusGlyph.js +31 -0
  308. package/dist/primitives/StatusGlyph.js.map +1 -0
  309. package/dist/primitives/icons.d.ts +13 -0
  310. package/dist/primitives/icons.d.ts.map +1 -0
  311. package/dist/primitives/icons.js +55 -0
  312. package/dist/primitives/icons.js.map +1 -0
  313. package/dist/provider/AgentMessages.d.ts +61 -0
  314. package/dist/provider/AgentMessages.d.ts.map +1 -0
  315. package/dist/provider/AgentMessages.js +81 -0
  316. package/dist/provider/AgentMessages.js.map +1 -0
  317. package/dist/provider/messages/composer.d.ts +112 -0
  318. package/dist/provider/messages/composer.d.ts.map +1 -0
  319. package/dist/provider/messages/composer.js +165 -0
  320. package/dist/provider/messages/composer.js.map +1 -0
  321. package/dist/provider/messages/intervention.d.ts +136 -0
  322. package/dist/provider/messages/intervention.d.ts.map +1 -0
  323. package/dist/provider/messages/intervention.js +321 -0
  324. package/dist/provider/messages/intervention.js.map +1 -0
  325. package/dist/provider/messages/message.d.ts +119 -0
  326. package/dist/provider/messages/message.d.ts.map +1 -0
  327. package/dist/provider/messages/message.js +224 -0
  328. package/dist/provider/messages/message.js.map +1 -0
  329. package/dist/provider/messages/shell.d.ts +70 -0
  330. package/dist/provider/messages/shell.d.ts.map +1 -0
  331. package/dist/provider/messages/shell.js +109 -0
  332. package/dist/provider/messages/shell.js.map +1 -0
  333. package/dist/provider/messages/status.d.ts +21 -0
  334. package/dist/provider/messages/status.d.ts.map +1 -0
  335. package/dist/provider/messages/status.js +195 -0
  336. package/dist/provider/messages/status.js.map +1 -0
  337. package/dist/provider/messages/tools.d.ts +217 -0
  338. package/dist/provider/messages/tools.d.ts.map +1 -0
  339. package/dist/provider/messages/tools.js +496 -0
  340. package/dist/provider/messages/tools.js.map +1 -0
  341. package/dist/provider/messages/workspace.d.ts +187 -0
  342. package/dist/provider/messages/workspace.d.ts.map +1 -0
  343. package/dist/provider/messages/workspace.js +333 -0
  344. package/dist/provider/messages/workspace.js.map +1 -0
  345. package/dist/styles/artifact.css +564 -0
  346. package/dist/styles/base.css +220 -0
  347. package/dist/styles/composer.css +1001 -0
  348. package/dist/styles/conversation.css +275 -0
  349. package/dist/styles/intervention.css +929 -0
  350. package/dist/styles/message.css +917 -0
  351. package/dist/styles/process.css +207 -0
  352. package/dist/styles/shell.css +453 -0
  353. package/dist/styles/tools.css +929 -0
  354. package/dist/styles/workspace.css +1297 -0
  355. package/dist/styles/wpi-adoption.css +24 -0
  356. package/dist/utils/cx.d.ts +3 -0
  357. package/dist/utils/cx.d.ts.map +1 -0
  358. package/dist/utils/cx.js +5 -0
  359. package/dist/utils/cx.js.map +1 -0
  360. package/package.json +64 -3
@@ -0,0 +1,929 @@
1
+ /*
2
+ * @wzrhine/agent · tools family (atlas 11–13, 31, 37–46). Tokens only; rl-agent- classes only.
3
+ * Wide content (code, diffs, tables, commands) scrolls inside its own region, so a tool row never
4
+ * widens the page. Disclosure height is owned by Collapsible (disclosure.css); this file only
5
+ * transitions colours. No keyframes here: activity uses AgentSpark / StatusGlyph from base.css.
6
+ */
7
+
8
+ .rl-theme {
9
+ --rl-agent-tool-gap: var(--rl-space-2);
10
+ --rl-agent-diff-ln: 3.25em;
11
+ --rl-agent-diff-sign: 1.5em;
12
+ }
13
+
14
+ /* ---------- shared: chip, buttons, notices, meta lists, code ---------- */
15
+ .rl-agent-tool-chip {
16
+ --rl-agent-chip-fg: var(--rl-fg-muted);
17
+ --rl-agent-chip-bg: var(--rl-bg-subtle);
18
+
19
+ box-sizing: border-box;
20
+ display: inline-flex;
21
+ flex: none;
22
+ align-items: center;
23
+ gap: var(--rl-space-1);
24
+ min-height: var(--rl-badge-height-sm);
25
+ padding: 0 var(--rl-space-2);
26
+ border-radius: var(--rl-radius-sm);
27
+ background: var(--rl-agent-chip-bg);
28
+ color: var(--rl-agent-chip-fg);
29
+ font: var(--rl-type-meta);
30
+ white-space: nowrap;
31
+ }
32
+
33
+ .rl-agent-tool-chip .rl-agent-icon {
34
+ width: var(--rl-icon-size-sm);
35
+ height: var(--rl-icon-size-sm);
36
+ }
37
+
38
+ .rl-agent-tool-chip[data-tone='info'] { --rl-agent-chip-fg: var(--rl-info); --rl-agent-chip-bg: var(--rl-info-subtle); }
39
+ .rl-agent-tool-chip[data-tone='accent'] { --rl-agent-chip-fg: var(--rl-accent-text); --rl-agent-chip-bg: var(--rl-accent-subtle); }
40
+ .rl-agent-tool-chip[data-tone='ink'] { --rl-agent-chip-fg: var(--rl-fg-inverse); --rl-agent-chip-bg: var(--rl-bg-inverse); }
41
+
42
+ .rl-agent-tool-button {
43
+ box-sizing: border-box;
44
+ display: inline-flex;
45
+ flex: none;
46
+ align-items: center;
47
+ gap: var(--rl-space-1);
48
+ min-height: var(--rl-control-height-sm);
49
+ margin: 0;
50
+ padding: 0 var(--rl-space-2);
51
+ border: var(--rl-border-width) solid var(--rl-border-default);
52
+ border-radius: var(--rl-radius-sm);
53
+ background: var(--rl-bg-surface);
54
+ color: var(--rl-fg-primary);
55
+ font: var(--rl-type-label-sm);
56
+ cursor: pointer;
57
+ transition:
58
+ background-color var(--rl-motion-fast) var(--rl-ease-out),
59
+ border-color var(--rl-motion-fast) var(--rl-ease-out);
60
+ }
61
+
62
+ .rl-agent-tool-button:hover { background: var(--rl-bg-hover); border-color: var(--rl-border-strong); }
63
+ .rl-agent-tool-button:active { background: var(--rl-bg-pressed); }
64
+ .rl-agent-tool-button:focus-visible { outline: var(--rl-focus-ring); outline-offset: var(--rl-focus-offset); }
65
+ .rl-agent-tool-button:disabled,
66
+ .rl-agent-tool-button[aria-disabled='true'] { color: var(--rl-fg-disabled); background: var(--rl-bg-disabled); cursor: not-allowed; }
67
+ .rl-agent-tool-button[data-tone='accent'] { border-color: var(--rl-accent); }
68
+ .rl-agent-tool-button .rl-agent-icon { width: var(--rl-icon-size-sm); height: var(--rl-icon-size-sm); }
69
+
70
+ .rl-agent-copy {
71
+ display: inline-flex;
72
+ flex: none;
73
+ }
74
+
75
+ .rl-agent-notice {
76
+ --rl-agent-notice-fg: var(--rl-fg-muted);
77
+ --rl-agent-notice-bg: var(--rl-bg-subtle);
78
+
79
+ box-sizing: border-box;
80
+ display: flex;
81
+ flex-wrap: wrap;
82
+ align-items: flex-start;
83
+ gap: var(--rl-space-2);
84
+ min-width: 0;
85
+ padding: var(--rl-space-2) var(--rl-space-3);
86
+ border-radius: var(--rl-radius-sm);
87
+ border-inline-start: var(--rl-border-width-strong) solid var(--rl-agent-notice-fg);
88
+ background: var(--rl-agent-notice-bg);
89
+ color: var(--rl-fg-primary);
90
+ font: var(--rl-type-body-sm);
91
+ }
92
+
93
+ .rl-agent-notice > .rl-agent-icon {
94
+ margin-block-start: 0.15em;
95
+ color: var(--rl-agent-notice-fg);
96
+ }
97
+
98
+ .rl-agent-notice__text {
99
+ flex: 1 1 12rem;
100
+ min-width: 0;
101
+ margin: 0;
102
+ overflow-wrap: anywhere;
103
+ }
104
+
105
+ .rl-agent-notice__action {
106
+ display: inline-flex;
107
+ flex-wrap: wrap;
108
+ gap: var(--rl-space-2);
109
+ }
110
+
111
+ .rl-agent-notice[data-tone='info'] { --rl-agent-notice-fg: var(--rl-info); --rl-agent-notice-bg: var(--rl-info-subtle); }
112
+ .rl-agent-notice[data-tone='success'] { --rl-agent-notice-fg: var(--rl-success); --rl-agent-notice-bg: var(--rl-success-subtle); }
113
+ .rl-agent-notice[data-tone='warning'] { --rl-agent-notice-fg: var(--rl-warning); --rl-agent-notice-bg: var(--rl-warning-subtle); }
114
+ .rl-agent-notice[data-tone='danger'] { --rl-agent-notice-fg: var(--rl-danger); --rl-agent-notice-bg: var(--rl-danger-subtle); }
115
+
116
+ .rl-agent-tool-meta {
117
+ display: grid;
118
+ grid-template-columns: repeat(auto-fill, minmax(min(100%, 12rem), 1fr));
119
+ gap: var(--rl-space-2) var(--rl-space-4);
120
+ min-width: 0;
121
+ margin: 0;
122
+ }
123
+
124
+ .rl-agent-tool-meta__item {
125
+ display: grid;
126
+ gap: var(--rl-space-0);
127
+ min-width: 0;
128
+ }
129
+
130
+ .rl-agent-tool-meta dt {
131
+ color: var(--rl-fg-subtle);
132
+ font: var(--rl-type-meta);
133
+ }
134
+
135
+ .rl-agent-tool-meta dd {
136
+ min-width: 0;
137
+ margin: 0;
138
+ color: var(--rl-fg-primary);
139
+ font: var(--rl-type-body-sm);
140
+ overflow-wrap: anywhere;
141
+ }
142
+
143
+ .rl-agent-tool-meta dd[data-mono] { font: var(--rl-type-mono); }
144
+
145
+ .rl-agent-code {
146
+ box-sizing: border-box;
147
+ max-width: 100%;
148
+ max-height: var(--rl-agent-output-max-height);
149
+ overflow: auto;
150
+ border: var(--rl-border-width) solid var(--rl-border-subtle);
151
+ border-radius: var(--rl-radius-sm);
152
+ background: var(--rl-bg-subtle);
153
+ color: var(--rl-fg-primary);
154
+ }
155
+
156
+ .rl-agent-code[data-tone='inverse'] {
157
+ border-color: transparent;
158
+ background: var(--rl-agent-code-bg);
159
+ color: var(--rl-agent-code-fg);
160
+ }
161
+
162
+ .rl-agent-code:focus-visible,
163
+ .rl-agent-output__scroll:focus-visible,
164
+ .rl-agent-diff__scroll:focus-visible,
165
+ .rl-agent-command__scroll:focus-visible,
166
+ .rl-agent-detail__table-scroll:focus-visible {
167
+ outline: var(--rl-focus-ring);
168
+ outline-offset: var(--rl-focus-offset);
169
+ }
170
+
171
+ .rl-agent-code__pre {
172
+ width: max-content;
173
+ min-width: 100%;
174
+ box-sizing: border-box;
175
+ margin: 0;
176
+ padding: var(--rl-space-2) var(--rl-space-3);
177
+ font: var(--rl-type-mono);
178
+ white-space: pre;
179
+ }
180
+
181
+ .rl-agent-code__ln {
182
+ display: inline-block;
183
+ min-width: 2.5em;
184
+ margin-inline-end: var(--rl-space-3);
185
+ color: var(--rl-fg-subtle);
186
+ text-align: end;
187
+ user-select: none;
188
+ }
189
+
190
+ /* ---------- ToolRecord ---------- */
191
+ .rl-agent-tool {
192
+ container: rl-agent-tools / inline-size;
193
+ box-sizing: border-box;
194
+ min-width: 0;
195
+ border-bottom: var(--rl-border-width) solid var(--rl-border-subtle);
196
+ }
197
+
198
+ .rl-agent-tool__head {
199
+ display: flex;
200
+ align-items: flex-start;
201
+ gap: var(--rl-space-1);
202
+ min-width: 0;
203
+ }
204
+
205
+ .rl-agent-tool__disclosure {
206
+ flex: 1 1 auto;
207
+ min-width: 0;
208
+ }
209
+
210
+ .rl-agent-tool__actions {
211
+ display: flex;
212
+ flex: none;
213
+ align-items: center;
214
+ min-height: var(--rl-agent-row-height);
215
+ }
216
+
217
+ .rl-agent-tool .rl-agent-tool__trigger {
218
+ min-height: var(--rl-agent-row-height);
219
+ padding: var(--rl-space-2);
220
+ font: var(--rl-type-body-sm);
221
+ }
222
+
223
+ .rl-agent-tool-row {
224
+ display: grid;
225
+ grid-template-columns: auto minmax(0, 1fr) auto;
226
+ align-items: center;
227
+ gap: var(--rl-agent-tool-gap);
228
+ width: 100%;
229
+ min-width: 0;
230
+ }
231
+
232
+ .rl-agent-tool-row__main {
233
+ display: flex;
234
+ flex-wrap: wrap;
235
+ align-items: baseline;
236
+ gap: 0 var(--rl-space-2);
237
+ min-width: 0;
238
+ }
239
+
240
+ .rl-agent-tool-row__name {
241
+ min-width: 0;
242
+ max-width: 100%;
243
+ overflow: hidden;
244
+ color: var(--rl-fg-primary);
245
+ font: var(--rl-type-label-sm);
246
+ text-overflow: ellipsis;
247
+ white-space: nowrap;
248
+ }
249
+
250
+ .rl-agent-tool-row__subject {
251
+ flex: 1 1 8rem;
252
+ min-width: 0;
253
+ overflow: hidden;
254
+ color: var(--rl-fg-muted);
255
+ font: var(--rl-type-mono);
256
+ text-overflow: ellipsis;
257
+ white-space: nowrap;
258
+ }
259
+
260
+ .rl-agent-tool-row__summary {
261
+ flex: 1 1 100%;
262
+ min-width: 0;
263
+ overflow: hidden;
264
+ color: var(--rl-fg-subtle);
265
+ font: var(--rl-type-meta);
266
+ text-overflow: ellipsis;
267
+ white-space: nowrap;
268
+ }
269
+
270
+ .rl-agent-tool-row__status {
271
+ display: inline-flex;
272
+ flex-direction: column;
273
+ align-items: flex-end;
274
+ gap: var(--rl-space-0);
275
+ min-width: 0;
276
+ }
277
+
278
+ .rl-agent-tool-row__elapsed {
279
+ color: var(--rl-fg-subtle);
280
+ font: var(--rl-type-mono);
281
+ font-variant-numeric: tabular-nums;
282
+ }
283
+
284
+ .rl-agent-tool[data-status='failed'] .rl-agent-tool-row__summary,
285
+ .rl-agent-tool[data-status='denied'] .rl-agent-tool-row__summary { color: var(--rl-danger); }
286
+
287
+ .rl-agent-tool__details {
288
+ display: grid;
289
+ gap: var(--rl-space-3);
290
+ min-width: 0;
291
+ padding: 0 var(--rl-space-1) var(--rl-space-2);
292
+ }
293
+
294
+ .rl-agent-tool__facts {
295
+ display: flex;
296
+ flex-wrap: wrap;
297
+ align-items: baseline;
298
+ gap: var(--rl-space-1) var(--rl-space-3);
299
+ min-width: 0;
300
+ margin: 0;
301
+ color: var(--rl-fg-subtle);
302
+ font: var(--rl-type-meta);
303
+ }
304
+
305
+ .rl-agent-tool__raw {
306
+ font: var(--rl-type-mono);
307
+ overflow-wrap: anywhere;
308
+ }
309
+
310
+ .rl-agent-tool__auth { overflow-wrap: anywhere; }
311
+
312
+ .rl-agent-tool__loading {
313
+ display: grid;
314
+ gap: var(--rl-space-2);
315
+ }
316
+
317
+ .rl-agent-tool__loading-text {
318
+ margin: 0;
319
+ color: var(--rl-fg-muted);
320
+ font: var(--rl-type-body-sm);
321
+ }
322
+
323
+ /* Narrow rows: the status drops under the name instead of squeezing it. */
324
+ @container rl-agent-tools (max-width: 22rem) {
325
+ .rl-agent-tool-row { grid-template-columns: auto minmax(0, 1fr); }
326
+ .rl-agent-tool-row__status { grid-column: 2; flex-direction: row; align-items: center; justify-self: start; gap: var(--rl-space-2); }
327
+ }
328
+
329
+ /* ---------- ToolActivity ---------- */
330
+ .rl-agent-activity,
331
+ .rl-agent-history,
332
+ .rl-agent-tree {
333
+ container: rl-agent-tools / inline-size;
334
+ box-sizing: border-box;
335
+ min-width: 0;
336
+ border: var(--rl-border-width) solid var(--rl-border-default);
337
+ border-radius: var(--rl-radius-md);
338
+ background: var(--rl-bg-surface);
339
+ }
340
+
341
+ .rl-agent-activity .rl-agent-activity__trigger,
342
+ .rl-agent-history .rl-agent-history__trigger {
343
+ min-height: var(--rl-agent-row-height);
344
+ padding: var(--rl-space-2) var(--rl-space-3);
345
+ }
346
+
347
+ .rl-agent-activity__header,
348
+ .rl-agent-history__header {
349
+ display: flex;
350
+ flex-wrap: wrap;
351
+ align-items: center;
352
+ gap: var(--rl-space-1) var(--rl-space-3);
353
+ min-width: 0;
354
+ }
355
+
356
+ .rl-agent-activity__title,
357
+ .rl-agent-history__title {
358
+ color: var(--rl-fg-primary);
359
+ font: var(--rl-type-label-sm);
360
+ }
361
+
362
+ .rl-agent-activity__running { color: var(--rl-accent-text); font: var(--rl-type-meta); }
363
+ .rl-agent-activity__elapsed,
364
+ .rl-agent-history__count { color: var(--rl-fg-subtle); font: var(--rl-type-mono); font-variant-numeric: tabular-nums; }
365
+
366
+ .rl-agent-activity__counts {
367
+ display: inline-flex;
368
+ flex-wrap: wrap;
369
+ gap: var(--rl-space-1);
370
+ min-width: 0;
371
+ }
372
+
373
+ .rl-agent-activity__footer {
374
+ display: flex;
375
+ justify-content: flex-start;
376
+ padding: var(--rl-space-2) 0 0;
377
+ }
378
+
379
+ .rl-agent-tool-list {
380
+ display: grid;
381
+ min-width: 0;
382
+ margin: 0;
383
+ padding: 0;
384
+ list-style: none;
385
+ }
386
+
387
+ .rl-agent-tool-list__item {
388
+ min-width: 0;
389
+ }
390
+
391
+ .rl-agent-tool-list__item:last-child > .rl-agent-tool { border-bottom: 0; }
392
+
393
+ /* ---------- CodeModeToolTree ---------- */
394
+ .rl-agent-tree {
395
+ padding: var(--rl-space-1) var(--rl-space-2);
396
+ }
397
+
398
+ .rl-agent-tree__root,
399
+ .rl-agent-tree__children {
400
+ display: grid;
401
+ min-width: 0;
402
+ margin: 0;
403
+ padding: 0;
404
+ list-style: none;
405
+ }
406
+
407
+ .rl-agent-tree__children {
408
+ margin-inline-start: var(--rl-space-4);
409
+ padding-inline-start: var(--rl-space-3);
410
+ border-inline-start: var(--rl-border-width) solid var(--rl-border-default);
411
+ }
412
+
413
+ .rl-agent-tree__node {
414
+ position: relative;
415
+ min-width: 0;
416
+ }
417
+
418
+ /* Horizontal connector from the vertical rail to each child row. */
419
+ .rl-agent-tree__children > .rl-agent-tree__node::before {
420
+ position: absolute;
421
+ inset-block-start: calc(var(--rl-agent-row-height) / 2);
422
+ inset-inline-start: calc(var(--rl-space-3) * -1);
423
+ width: var(--rl-space-2);
424
+ border-block-start: var(--rl-border-width) solid var(--rl-border-default);
425
+ content: '';
426
+ }
427
+
428
+ .rl-agent-tree__node .rl-agent-tool { border-bottom: 0; }
429
+
430
+ .rl-agent-tree__parent-meta {
431
+ display: grid;
432
+ gap: var(--rl-space-1);
433
+ min-width: 0;
434
+ padding: 0 var(--rl-space-2) var(--rl-space-2);
435
+ }
436
+
437
+ .rl-agent-tree__outcome {
438
+ margin: 0;
439
+ color: var(--rl-fg-muted);
440
+ font: var(--rl-type-meta);
441
+ }
442
+
443
+ .rl-agent-tree__outcome[data-tone='danger'] { color: var(--rl-danger); }
444
+ .rl-agent-tree__outcome[data-tone='warning'] { color: var(--rl-warning); }
445
+ .rl-agent-tree__outcome[data-tone='success'] { color: var(--rl-success); }
446
+
447
+ .rl-agent-tree__note {
448
+ margin: var(--rl-space-1) var(--rl-space-2) var(--rl-space-2);
449
+ color: var(--rl-fg-subtle);
450
+ font: var(--rl-type-meta);
451
+ }
452
+
453
+ .rl-agent-script .rl-agent-script__trigger {
454
+ width: auto;
455
+ color: var(--rl-accent-text);
456
+ font: var(--rl-type-meta);
457
+ }
458
+
459
+ /* ---------- ToolOutput ---------- */
460
+ .rl-agent-output {
461
+ box-sizing: border-box;
462
+ display: grid;
463
+ gap: var(--rl-space-2);
464
+ min-width: 0;
465
+ }
466
+
467
+ .rl-agent-output__header {
468
+ display: flex;
469
+ flex-wrap: wrap;
470
+ align-items: center;
471
+ gap: var(--rl-space-1) var(--rl-space-3);
472
+ min-width: 0;
473
+ }
474
+
475
+ .rl-agent-output__kind { color: var(--rl-fg-primary); font: var(--rl-type-label-sm); }
476
+ .rl-agent-output__summary { min-width: 0; color: var(--rl-fg-muted); font: var(--rl-type-meta); overflow-wrap: anywhere; }
477
+ .rl-agent-output__total { color: var(--rl-fg-subtle); font: var(--rl-type-mono); }
478
+ .rl-agent-output__copy { margin-inline-start: auto; }
479
+
480
+ .rl-agent-output__scroll {
481
+ box-sizing: border-box;
482
+ max-width: 100%;
483
+ max-height: var(--rl-agent-output-max-height);
484
+ overflow: auto;
485
+ border: var(--rl-border-width) solid var(--rl-border-subtle);
486
+ border-radius: var(--rl-radius-sm);
487
+ background: var(--rl-bg-subtle);
488
+ color: var(--rl-fg-primary);
489
+ }
490
+
491
+ .rl-agent-output[data-kind='terminal'] .rl-agent-output__scroll {
492
+ border-color: transparent;
493
+ background: var(--rl-agent-code-bg);
494
+ color: var(--rl-agent-code-fg);
495
+ }
496
+
497
+ .rl-agent-output[data-kind='error'] .rl-agent-output__scroll {
498
+ border-color: var(--rl-danger);
499
+ background: var(--rl-danger-subtle);
500
+ }
501
+
502
+ .rl-agent-output__pre {
503
+ width: max-content;
504
+ min-width: 100%;
505
+ box-sizing: border-box;
506
+ margin: 0;
507
+ padding: var(--rl-space-2) var(--rl-space-3);
508
+ font: var(--rl-type-mono);
509
+ white-space: pre;
510
+ }
511
+
512
+ .rl-agent-output__pre[data-wrap] {
513
+ width: auto;
514
+ white-space: pre-wrap;
515
+ overflow-wrap: anywhere;
516
+ }
517
+
518
+ .rl-agent-output__error {
519
+ margin: 0;
520
+ padding: var(--rl-space-2) var(--rl-space-3) 0;
521
+ color: var(--rl-danger);
522
+ font: var(--rl-type-label-sm);
523
+ }
524
+
525
+ .rl-agent-output__list {
526
+ margin: 0;
527
+ padding: var(--rl-space-2) var(--rl-space-3) var(--rl-space-2) var(--rl-space-6);
528
+ font: var(--rl-type-body-sm);
529
+ overflow-wrap: anywhere;
530
+ }
531
+
532
+ .rl-agent-output__placeholder,
533
+ .rl-agent-diff__placeholder {
534
+ margin: 0;
535
+ padding: var(--rl-space-2) var(--rl-space-3);
536
+ border: var(--rl-border-width) dashed var(--rl-border-default);
537
+ border-radius: var(--rl-radius-sm);
538
+ color: var(--rl-fg-muted);
539
+ font: var(--rl-type-body-sm);
540
+ }
541
+
542
+ .rl-agent-output__loading { display: grid; gap: var(--rl-space-2); }
543
+
544
+ /* ---------- DiffPreview / MultiFileDiff ---------- */
545
+ .rl-agent-diff {
546
+ box-sizing: border-box;
547
+ display: grid;
548
+ gap: var(--rl-space-2);
549
+ min-width: 0;
550
+ }
551
+
552
+ .rl-agent-diff__header {
553
+ display: flex;
554
+ flex-wrap: wrap;
555
+ align-items: center;
556
+ gap: var(--rl-space-1) var(--rl-space-3);
557
+ min-width: 0;
558
+ }
559
+
560
+ .rl-agent-diff__path {
561
+ min-width: 0;
562
+ max-width: 100%;
563
+ overflow: hidden;
564
+ color: var(--rl-fg-primary);
565
+ font: var(--rl-type-mono);
566
+ text-overflow: ellipsis;
567
+ white-space: nowrap;
568
+ }
569
+
570
+ .rl-agent-diff__moved { min-width: 0; color: var(--rl-fg-muted); font: var(--rl-type-mono); overflow-wrap: anywhere; }
571
+ .rl-agent-diff__change { color: var(--rl-fg-subtle); font: var(--rl-type-meta); }
572
+
573
+ .rl-agent-diff-stats { font: var(--rl-type-mono); font-variant-numeric: tabular-nums; white-space: nowrap; }
574
+ .rl-agent-diff-stats__add { color: var(--rl-success); }
575
+ .rl-agent-diff-stats__del { color: var(--rl-danger); }
576
+
577
+ .rl-agent-diff__scroll {
578
+ box-sizing: border-box;
579
+ max-width: 100%;
580
+ max-height: var(--rl-agent-output-max-height);
581
+ overflow: auto;
582
+ border: var(--rl-border-width) solid var(--rl-border-subtle);
583
+ border-radius: var(--rl-radius-sm);
584
+ background: var(--rl-bg-surface);
585
+ }
586
+
587
+ .rl-agent-diff__lines {
588
+ display: grid;
589
+ width: max-content;
590
+ min-width: 100%;
591
+ font: var(--rl-type-mono);
592
+ }
593
+
594
+ .rl-agent-diff__line {
595
+ display: grid;
596
+ grid-template-columns: var(--rl-agent-diff-ln) var(--rl-agent-diff-ln) var(--rl-agent-diff-sign) auto;
597
+ align-items: baseline;
598
+ }
599
+
600
+ .rl-agent-diff__ln {
601
+ padding: 0 var(--rl-space-2);
602
+ color: var(--rl-fg-subtle);
603
+ text-align: end;
604
+ user-select: none;
605
+ }
606
+
607
+ .rl-agent-diff__sign {
608
+ color: var(--rl-fg-muted);
609
+ text-align: center;
610
+ user-select: none;
611
+ }
612
+
613
+ .rl-agent-diff__code {
614
+ padding-inline-end: var(--rl-space-3);
615
+ font: inherit;
616
+ white-space: pre;
617
+ }
618
+
619
+ .rl-agent-diff__line[data-kind='add'] { background: var(--rl-success-subtle); }
620
+ .rl-agent-diff__line[data-kind='add'] .rl-agent-diff__sign { color: var(--rl-success); }
621
+ .rl-agent-diff__line[data-kind='remove'] { background: var(--rl-danger-subtle); }
622
+ .rl-agent-diff__line[data-kind='remove'] .rl-agent-diff__sign { color: var(--rl-danger); }
623
+ .rl-agent-diff__line[data-kind='meta'],
624
+ .rl-agent-diff__line[data-kind='hunk'] { color: var(--rl-fg-subtle); background: var(--rl-bg-subtle); }
625
+
626
+ .rl-agent-multidiff {
627
+ display: grid;
628
+ gap: var(--rl-space-2);
629
+ min-width: 0;
630
+ }
631
+
632
+ .rl-agent-multidiff__summary {
633
+ display: flex;
634
+ flex-wrap: wrap;
635
+ gap: var(--rl-space-3);
636
+ margin: 0;
637
+ color: var(--rl-fg-muted);
638
+ font: var(--rl-type-meta);
639
+ }
640
+
641
+ .rl-agent-multidiff__list {
642
+ display: grid;
643
+ gap: var(--rl-space-1);
644
+ min-width: 0;
645
+ margin: 0;
646
+ padding: 0;
647
+ list-style: none;
648
+ }
649
+
650
+ .rl-agent-multidiff__item {
651
+ min-width: 0;
652
+ border: var(--rl-border-width) solid var(--rl-border-subtle);
653
+ border-radius: var(--rl-radius-sm);
654
+ }
655
+
656
+ .rl-agent-multidiff__item[data-status='conflict'] { border-color: var(--rl-warning); }
657
+
658
+ .rl-agent-multidiff__file .rl-agent-multidiff__trigger { flex-wrap: wrap; }
659
+
660
+ /* ---------- tool details ---------- */
661
+ .rl-agent-detail {
662
+ box-sizing: border-box;
663
+ display: grid;
664
+ gap: var(--rl-space-3);
665
+ min-width: 0;
666
+ color: var(--rl-fg-primary);
667
+ font: var(--rl-type-body-sm);
668
+ }
669
+
670
+ .rl-agent-detail__section { display: grid; gap: var(--rl-space-2); min-width: 0; }
671
+
672
+ .rl-agent-detail__title {
673
+ display: flex;
674
+ flex-wrap: wrap;
675
+ align-items: baseline;
676
+ gap: var(--rl-space-1) var(--rl-space-3);
677
+ margin: 0;
678
+ font: var(--rl-type-label-sm);
679
+ }
680
+
681
+ .rl-agent-detail__aside {
682
+ margin: 0;
683
+ color: var(--rl-fg-subtle);
684
+ font: var(--rl-type-meta);
685
+ overflow-wrap: anywhere;
686
+ }
687
+
688
+ .rl-agent-detail__row,
689
+ .rl-agent-detail__actions {
690
+ display: flex;
691
+ flex-wrap: wrap;
692
+ align-items: center;
693
+ gap: var(--rl-space-2);
694
+ min-width: 0;
695
+ }
696
+
697
+ .rl-agent-detail__facts {
698
+ display: flex;
699
+ flex-wrap: wrap;
700
+ gap: var(--rl-space-1) var(--rl-space-4);
701
+ margin: 0;
702
+ padding: 0;
703
+ color: var(--rl-fg-muted);
704
+ font: var(--rl-type-meta);
705
+ list-style: none;
706
+ }
707
+
708
+ .rl-agent-detail__edits {
709
+ display: grid;
710
+ gap: var(--rl-space-3);
711
+ min-width: 0;
712
+ margin: 0;
713
+ padding: 0;
714
+ list-style: none;
715
+ }
716
+
717
+ .rl-agent-detail__edit { display: grid; gap: var(--rl-space-2); min-width: 0; }
718
+
719
+ .rl-agent-detail__list,
720
+ .rl-agent-detail__results {
721
+ display: grid;
722
+ gap: var(--rl-space-1);
723
+ min-width: 0;
724
+ margin: 0;
725
+ padding: 0;
726
+ list-style: none;
727
+ }
728
+
729
+ .rl-agent-detail__list > li,
730
+ .rl-agent-detail__result-item {
731
+ display: flex;
732
+ flex-wrap: wrap;
733
+ align-items: center;
734
+ gap: var(--rl-space-1) var(--rl-space-3);
735
+ min-width: 0;
736
+ }
737
+
738
+ .rl-agent-detail__item-label { min-width: 0; font: var(--rl-type-mono); overflow-wrap: anywhere; }
739
+
740
+ .rl-agent-detail__thumb {
741
+ width: var(--rl-space-12);
742
+ height: var(--rl-space-12);
743
+ border-radius: var(--rl-radius-sm);
744
+ object-fit: cover;
745
+ background: var(--rl-bg-subtle);
746
+ }
747
+
748
+ .rl-agent-detail__activity {
749
+ display: flex;
750
+ align-items: center;
751
+ gap: var(--rl-space-2);
752
+ margin: 0;
753
+ color: var(--rl-fg-muted);
754
+ font: var(--rl-type-meta);
755
+ }
756
+
757
+ .rl-agent-detail__answers { display: grid; gap: var(--rl-space-2); margin: 0; }
758
+ .rl-agent-detail__answer { display: grid; gap: var(--rl-space-0); min-width: 0; }
759
+ .rl-agent-detail__answer dt { color: var(--rl-fg-muted); font: var(--rl-type-meta); }
760
+ .rl-agent-detail__answer dd { margin: 0; overflow-wrap: anywhere; }
761
+ .rl-agent-detail__answer dd[data-skipped] { color: var(--rl-fg-subtle); }
762
+
763
+ .rl-agent-detail__table-scroll {
764
+ max-width: 100%;
765
+ overflow-x: auto;
766
+ border: var(--rl-border-width) solid var(--rl-border-subtle);
767
+ border-radius: var(--rl-radius-sm);
768
+ }
769
+
770
+ .rl-agent-ops {
771
+ width: 100%;
772
+ border-collapse: collapse;
773
+ font: var(--rl-type-body-sm);
774
+ }
775
+
776
+ .rl-agent-ops th,
777
+ .rl-agent-ops td {
778
+ padding: var(--rl-space-2);
779
+ border-bottom: var(--rl-border-width) solid var(--rl-border-subtle);
780
+ text-align: start;
781
+ vertical-align: top;
782
+ }
783
+
784
+ .rl-agent-ops thead th { color: var(--rl-fg-subtle); font: var(--rl-type-meta); }
785
+ .rl-agent-ops__type { font: var(--rl-type-label-sm); white-space: nowrap; }
786
+ .rl-agent-ops__path code { font: var(--rl-type-mono); overflow-wrap: anywhere; }
787
+ .rl-agent-ops__notes { display: flex; flex-wrap: wrap; gap: var(--rl-space-2); margin-block-start: var(--rl-space-1); color: var(--rl-fg-subtle); font: var(--rl-type-meta); }
788
+ .rl-agent-ops tr[data-danger] { background: var(--rl-danger-subtle); }
789
+ .rl-agent-ops tr[data-danger] .rl-agent-ops__type,
790
+ .rl-agent-ops__danger { color: var(--rl-danger); }
791
+
792
+ .rl-agent-command {
793
+ display: flex;
794
+ align-items: center;
795
+ gap: var(--rl-space-2);
796
+ min-width: 0;
797
+ padding: var(--rl-space-1) var(--rl-space-1) var(--rl-space-1) var(--rl-space-3);
798
+ border-radius: var(--rl-radius-sm);
799
+ background: var(--rl-agent-code-bg);
800
+ color: var(--rl-agent-code-fg);
801
+ }
802
+
803
+ .rl-agent-command__prompt { flex: none; font: var(--rl-type-mono); opacity: 0.7; }
804
+
805
+ .rl-agent-command__scroll {
806
+ flex: 1 1 auto;
807
+ min-width: 0;
808
+ overflow-x: auto;
809
+ padding: var(--rl-space-1) 0;
810
+ }
811
+
812
+ .rl-agent-command__text {
813
+ font: var(--rl-type-mono);
814
+ white-space: pre;
815
+ user-select: all;
816
+ }
817
+
818
+ .rl-agent-command .rl-agent-tool-button {
819
+ border-color: transparent;
820
+ background: transparent;
821
+ color: inherit;
822
+ }
823
+
824
+ .rl-agent-command .rl-agent-tool-button:hover { background: var(--rl-inverse-hover); }
825
+
826
+ .rl-agent-command__exit { font: var(--rl-type-mono); color: var(--rl-fg-muted); }
827
+ .rl-agent-command__exit[data-failed] { color: var(--rl-danger); }
828
+
829
+ /* ---------- ChunkPager ---------- */
830
+ .rl-agent-pager {
831
+ box-sizing: border-box;
832
+ display: grid;
833
+ gap: var(--rl-space-2);
834
+ min-width: 0;
835
+ }
836
+
837
+ .rl-agent-pager__header {
838
+ display: flex;
839
+ flex-wrap: wrap;
840
+ align-items: center;
841
+ gap: var(--rl-space-1) var(--rl-space-2);
842
+ margin: 0;
843
+ min-width: 0;
844
+ }
845
+
846
+ .rl-agent-pager__range {
847
+ color: var(--rl-fg-muted);
848
+ font: var(--rl-type-mono);
849
+ font-variant-numeric: tabular-nums;
850
+ overflow-wrap: anywhere;
851
+ }
852
+
853
+ .rl-agent-pager__extent {
854
+ padding: 0 var(--rl-space-1);
855
+ border: var(--rl-border-width) dashed var(--rl-border-strong);
856
+ border-radius: var(--rl-radius-xs);
857
+ color: var(--rl-fg-muted);
858
+ font: var(--rl-type-meta);
859
+ white-space: nowrap;
860
+ }
861
+
862
+ .rl-agent-pager__extent[data-complete] {
863
+ border-style: solid;
864
+ border-color: var(--rl-success);
865
+ color: var(--rl-success);
866
+ }
867
+
868
+ .rl-agent-pager__scroll {
869
+ box-sizing: border-box;
870
+ max-width: 100%;
871
+ max-height: var(--rl-agent-output-max-height);
872
+ overflow: auto;
873
+ border: var(--rl-border-width) solid var(--rl-border-subtle);
874
+ border-radius: var(--rl-radius-sm);
875
+ background: var(--rl-bg-subtle);
876
+ color: var(--rl-fg-primary);
877
+ }
878
+
879
+ .rl-agent-pager__scroll:focus-visible {
880
+ outline: var(--rl-focus-ring);
881
+ outline-offset: var(--rl-focus-offset);
882
+ }
883
+
884
+ .rl-agent-pager__pre {
885
+ box-sizing: border-box;
886
+ margin: 0;
887
+ padding: var(--rl-space-2) var(--rl-space-3);
888
+ font: var(--rl-type-mono);
889
+ white-space: pre-wrap;
890
+ overflow-wrap: anywhere;
891
+ }
892
+
893
+ .rl-agent-pager__empty {
894
+ margin: 0;
895
+ color: var(--rl-fg-muted);
896
+ font: var(--rl-type-meta);
897
+ }
898
+
899
+ .rl-agent-pager__error,
900
+ .rl-agent-pager__reason {
901
+ display: block;
902
+ overflow-wrap: anywhere;
903
+ }
904
+
905
+ .rl-agent-pager__reason {
906
+ color: var(--rl-fg-muted);
907
+ }
908
+
909
+ .rl-agent-pager__nav {
910
+ display: flex;
911
+ flex-wrap: wrap;
912
+ gap: var(--rl-space-1);
913
+ }
914
+
915
+ /* ---------- forced colours ---------- */
916
+ @media (forced-colors: active) {
917
+ .rl-agent-pager__scroll,
918
+ .rl-agent-pager__extent { border-color: CanvasText; }
919
+ .rl-agent-tool-chip,
920
+ .rl-agent-notice,
921
+ .rl-agent-tool-button { border: var(--rl-border-width) solid CanvasText; }
922
+ .rl-agent-diff__line[data-kind='add'],
923
+ .rl-agent-diff__line[data-kind='remove'] { background: Canvas; }
924
+ .rl-agent-diff__line[data-kind='add'] .rl-agent-diff__sign,
925
+ .rl-agent-diff__line[data-kind='remove'] .rl-agent-diff__sign { color: Highlight; }
926
+ .rl-agent-ops tr[data-danger] { outline: var(--rl-border-width) solid CanvasText; }
927
+ .rl-agent-tree__children { border-inline-start-color: CanvasText; }
928
+ .rl-agent-tree__children > .rl-agent-tree__node::before { border-block-start-color: CanvasText; }
929
+ }