@bastani/atomic 0.9.13-alpha.1 → 0.9.13-alpha.3

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 (1174) hide show
  1. package/CHANGELOG.md +144 -0
  2. package/README.md +36 -18
  3. package/dist/builtin/i-have-adhd/CHANGELOG.md +17 -0
  4. package/dist/builtin/i-have-adhd/LICENSE +21 -0
  5. package/dist/builtin/i-have-adhd/README.md +18 -0
  6. package/dist/builtin/i-have-adhd/index.ts +238 -0
  7. package/dist/builtin/i-have-adhd/package.json +56 -0
  8. package/dist/builtin/i-have-adhd/skills/i-have-adhd/SKILL.md +140 -0
  9. package/dist/builtin/intercom/CHANGELOG.md +33 -0
  10. package/dist/builtin/intercom/README.md +36 -15
  11. package/dist/builtin/intercom/broker/bounded-stderr-install.ts +18 -0
  12. package/dist/builtin/intercom/broker/bounded-stderr.ts +132 -0
  13. package/dist/builtin/intercom/broker/broker.ts +12 -23
  14. package/dist/builtin/intercom/broker/client.ts +70 -3
  15. package/dist/builtin/intercom/broker/paths.ts +9 -0
  16. package/dist/builtin/intercom/broker/presence-handler.ts +103 -0
  17. package/dist/builtin/intercom/broker/spawn.ts +128 -29
  18. package/dist/builtin/intercom/foreground-detach-handoff.ts +30 -14
  19. package/dist/builtin/intercom/group.ts +64 -25
  20. package/dist/builtin/intercom/incoming-message-delivery.ts +1 -1
  21. package/dist/builtin/intercom/index-heavy.ts +38 -5
  22. package/dist/builtin/intercom/index.ts +8 -4
  23. package/dist/builtin/intercom/intercom-tool.ts +83 -6
  24. package/dist/builtin/intercom/intercom-utils.ts +3 -6
  25. package/dist/builtin/intercom/lazy-subagent-ack.ts +11 -6
  26. package/dist/builtin/intercom/package.json +2 -3
  27. package/dist/builtin/intercom/result-renderers.ts +1 -1
  28. package/dist/builtin/intercom/runtime-group.ts +13 -0
  29. package/dist/builtin/intercom/session-target.ts +1 -15
  30. package/dist/builtin/intercom/skills/intercom/SKILL.md +35 -7
  31. package/dist/builtin/intercom/subagent-relay.ts +32 -16
  32. package/dist/builtin/intercom/terminal-ordering-barrier.ts +23 -6
  33. package/dist/builtin/intercom/types.ts +3 -1
  34. package/dist/builtin/intercom/ui/compose.ts +8 -6
  35. package/dist/builtin/intercom/ui/inline-message.ts +7 -5
  36. package/dist/builtin/intercom/ui/session-list.ts +30 -15
  37. package/dist/builtin/mcp/CHANGELOG.md +13 -0
  38. package/dist/builtin/mcp/glimpse-ui.ts +2 -1
  39. package/dist/builtin/mcp/index.ts +1 -11
  40. package/dist/builtin/mcp/mcp-panel.ts +35 -34
  41. package/dist/builtin/mcp/mcp-setup-panel.ts +35 -33
  42. package/dist/builtin/mcp/npx-resolver.ts +3 -2
  43. package/dist/builtin/mcp/package.json +3 -3
  44. package/dist/builtin/mcp/sampling-handler.ts +5 -1
  45. package/dist/builtin/mcp/server-manager.ts +4 -7
  46. package/dist/builtin/subagents/CHANGELOG.md +52 -0
  47. package/dist/builtin/subagents/README.md +140 -383
  48. package/dist/builtin/subagents/agents/worker.md +1 -1
  49. package/dist/builtin/subagents/package.json +5 -5
  50. package/dist/builtin/subagents/prompts/parallel-cleanup.md +1 -1
  51. package/dist/builtin/subagents/prompts/parallel-context-build.md +2 -2
  52. package/dist/builtin/subagents/prompts/parallel-handoff-plan.md +4 -4
  53. package/dist/builtin/subagents/prompts/parallel-review.md +1 -1
  54. package/dist/builtin/subagents/prompts/review-loop.md +2 -2
  55. package/dist/builtin/subagents/skills/subagent/SKILL.md +55 -154
  56. package/dist/builtin/subagents/skills/tmux/SKILL.md +1 -1
  57. package/dist/builtin/subagents/src/agents/agent-discovery.ts +1 -29
  58. package/dist/builtin/subagents/src/agents/agent-loaders.ts +1 -40
  59. package/dist/builtin/subagents/src/agents/agent-management-helpers.ts +6 -135
  60. package/dist/builtin/subagents/src/agents/agent-management.ts +52 -282
  61. package/dist/builtin/subagents/src/agents/agent-paths.ts +0 -22
  62. package/dist/builtin/subagents/src/agents/agent-types.ts +0 -40
  63. package/dist/builtin/subagents/src/agents/agents.ts +0 -3
  64. package/dist/builtin/subagents/src/agents/identity.ts +2 -4
  65. package/dist/builtin/subagents/src/agents/skills-paths.ts +8 -1
  66. package/dist/builtin/subagents/src/extension/control-notices.ts +2 -3
  67. package/dist/builtin/subagents/src/extension/doctor.ts +4 -36
  68. package/dist/builtin/subagents/src/extension/fanout-child.ts +1 -17
  69. package/dist/builtin/subagents/src/extension/index.ts +18 -77
  70. package/dist/builtin/subagents/src/extension/notification-content.ts +1 -1
  71. package/dist/builtin/subagents/src/extension/prompt-guidance.ts +3 -3
  72. package/dist/builtin/subagents/src/extension/schemas.ts +3 -165
  73. package/dist/builtin/subagents/src/extension/startup-maintenance.ts +0 -2
  74. package/dist/builtin/subagents/src/extension/tool-description.ts +6 -16
  75. package/dist/builtin/subagents/src/intercom/intercom-bridge.ts +7 -3
  76. package/dist/builtin/subagents/src/intercom/result-intercom.ts +25 -68
  77. package/dist/builtin/subagents/src/intercom/supervisor-authorization.ts +9 -2
  78. package/dist/builtin/subagents/src/runs/{background → foreground}/completion-notification.ts +10 -5
  79. package/dist/builtin/subagents/src/runs/foreground/execution-updates.ts +0 -5
  80. package/dist/builtin/subagents/src/runs/foreground/execution.ts +1 -4
  81. package/dist/builtin/subagents/src/runs/foreground/inprocess-run-sync.ts +119 -80
  82. package/dist/builtin/subagents/src/runs/{background → foreground}/notify.ts +58 -22
  83. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-context.ts +22 -50
  84. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-input.ts +10 -173
  85. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel-task.ts +9 -4
  86. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel.ts +11 -2
  87. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-runtime.ts +0 -5
  88. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-single.ts +39 -22
  89. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-status.ts +36 -16
  90. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-types.ts +2 -19
  91. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-worktree.ts +1 -14
  92. package/dist/builtin/subagents/src/runs/foreground/subagent-executor.ts +150 -69
  93. package/dist/builtin/subagents/src/runs/inprocess/index.ts +1 -1
  94. package/dist/builtin/subagents/src/runs/inprocess/runner.ts +348 -94
  95. package/dist/builtin/subagents/src/runs/inprocess/runtime-support/nested-api.ts +0 -7
  96. package/dist/builtin/subagents/src/runs/inprocess/runtime-support/nested-core.ts +0 -10
  97. package/dist/builtin/subagents/src/runs/inprocess/runtime-support/nested-projection.ts +3 -110
  98. package/dist/builtin/subagents/src/runs/inprocess/runtime-support/nested-sanitize.ts +1 -7
  99. package/dist/builtin/subagents/src/runs/shared/intercom-group.ts +23 -7
  100. package/dist/builtin/subagents/src/runs/shared/parallel-utils.ts +0 -86
  101. package/dist/builtin/subagents/src/runs/shared/subagent-control.ts +1 -1
  102. package/dist/builtin/subagents/src/runs/shared/worktree.ts +7 -2
  103. package/dist/builtin/subagents/src/shared/formatters.ts +5 -61
  104. package/dist/builtin/subagents/src/shared/model-resolution.ts +78 -0
  105. package/dist/builtin/subagents/src/shared/settings.ts +14 -350
  106. package/dist/builtin/subagents/src/shared/status-format.ts +4 -11
  107. package/dist/builtin/subagents/src/shared/types-config.ts +30 -31
  108. package/dist/builtin/subagents/src/shared/types-depth.ts +30 -56
  109. package/dist/builtin/subagents/src/shared/types-nested.ts +127 -0
  110. package/dist/builtin/subagents/src/shared/types-results.ts +11 -66
  111. package/dist/builtin/subagents/src/shared/types-runtime.ts +0 -10
  112. package/dist/builtin/subagents/src/shared/types.ts +1 -1
  113. package/dist/builtin/subagents/src/shared/utils.ts +6 -109
  114. package/dist/builtin/subagents/src/slash/bridge-settlement.ts +87 -0
  115. package/dist/builtin/subagents/src/slash/prompt-template-bridge.ts +47 -7
  116. package/dist/builtin/subagents/src/slash/slash-bridge.ts +27 -7
  117. package/dist/builtin/subagents/src/slash/slash-commands.ts +44 -99
  118. package/dist/builtin/subagents/src/slash/slash-live-state.ts +1 -92
  119. package/dist/builtin/subagents/src/tui/render-event-formatting.ts +2 -285
  120. package/dist/builtin/subagents/src/tui/render-layout.ts +4 -4
  121. package/dist/builtin/subagents/src/tui/render-progress.ts +89 -0
  122. package/dist/builtin/subagents/src/tui/render-result-compact.ts +43 -71
  123. package/dist/builtin/subagents/src/tui/render-result.ts +41 -99
  124. package/dist/builtin/subagents/src/tui/render-stable-output.ts +1 -39
  125. package/dist/builtin/subagents/src/tui/render.ts +0 -2
  126. package/dist/builtin/web-access/CHANGELOG.md +14 -0
  127. package/dist/builtin/web-access/chrome-cookies.ts +3 -2
  128. package/dist/builtin/web-access/github-api.ts +7 -6
  129. package/dist/builtin/web-access/github-extract.ts +2 -1
  130. package/dist/builtin/web-access/package.json +3 -3
  131. package/dist/builtin/web-access/subprocess.ts +3 -1
  132. package/dist/builtin/web-access/summary-review.ts +2 -2
  133. package/dist/builtin/web-access/web-search-features.ts +38 -22
  134. package/dist/builtin/web-access/web-search-summary.ts +2 -2
  135. package/dist/builtin/workflows/CHANGELOG.md +57 -0
  136. package/dist/builtin/workflows/README.md +44 -4
  137. package/dist/builtin/workflows/builtin/open-claude-design-utils.ts +3 -0
  138. package/dist/builtin/workflows/builtin/ralph-models.ts +25 -20
  139. package/dist/builtin/workflows/builtin/shared-prompts.ts +5 -2
  140. package/dist/builtin/workflows/package.json +2 -2
  141. package/dist/builtin/workflows/src/durable/backend.ts +29 -1
  142. package/dist/builtin/workflows/src/durable/completed-catalog-stage-groups.ts +123 -28
  143. package/dist/builtin/workflows/src/durable/completed-catalog.ts +230 -23
  144. package/dist/builtin/workflows/src/durable/completed-subtree.ts +22 -7
  145. package/dist/builtin/workflows/src/durable/dbos-backend.ts +42 -24
  146. package/dist/builtin/workflows/src/durable/dbos-envelope.ts +2 -1
  147. package/dist/builtin/workflows/src/durable/dbos-metadata.ts +4 -0
  148. package/dist/builtin/workflows/src/durable/local-command.ts +2 -1
  149. package/dist/builtin/workflows/src/durable/run-timing.ts +28 -7
  150. package/dist/builtin/workflows/src/durable/scoped-backend.ts +4 -0
  151. package/dist/builtin/workflows/src/durable/targeted-inspection.ts +110 -0
  152. package/dist/builtin/workflows/src/durable/types.ts +17 -1
  153. package/dist/builtin/workflows/src/durable/workflow-child-result.ts +3 -1
  154. package/dist/builtin/workflows/src/engine/primitives/workflow.ts +1 -1
  155. package/dist/builtin/workflows/src/engine/run-durable-finalize.ts +10 -2
  156. package/dist/builtin/workflows/src/engine/run-durable-stage-session.ts +2 -2
  157. package/dist/builtin/workflows/src/engine/run-durable-topology.ts +9 -2
  158. package/dist/builtin/workflows/src/engine/runtime.ts +19 -2
  159. package/dist/builtin/workflows/src/extension/atomic-stage-session.ts +7 -1
  160. package/dist/builtin/workflows/src/extension/companions.ts +1 -1
  161. package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +3 -0
  162. package/dist/builtin/workflows/src/extension/index.bundle.mjs +1624 -596
  163. package/dist/builtin/workflows/src/extension/lifecycle-notifications.ts +31 -3
  164. package/dist/builtin/workflows/src/extension/mcp.ts +13 -2
  165. package/dist/builtin/workflows/src/extension/render-result.ts +1 -0
  166. package/dist/builtin/workflows/src/extension/runtime-durable-resume.ts +6 -0
  167. package/dist/builtin/workflows/src/extension/ui-surface.ts +9 -20
  168. package/dist/builtin/workflows/src/extension/wiring.ts +33 -6
  169. package/dist/builtin/workflows/src/extension/workflow-command-registration.ts +6 -1
  170. package/dist/builtin/workflows/src/extension/workflow-ports.ts +14 -6
  171. package/dist/builtin/workflows/src/extension/workflow-prompts.ts +11 -6
  172. package/dist/builtin/workflows/src/extension/workflow-run-control-command.ts +8 -0
  173. package/dist/builtin/workflows/src/extension/workflow-targets.ts +18 -10
  174. package/dist/builtin/workflows/src/extension/workflow-tool-control.ts +2 -0
  175. package/dist/builtin/workflows/src/extension/workflow-tool-inspection.ts +31 -16
  176. package/dist/builtin/workflows/src/extension/workflow-tool-send.ts +75 -3
  177. package/dist/builtin/workflows/src/extension/workflow-tool.ts +53 -6
  178. package/dist/builtin/workflows/src/intercom/intercom-routing.ts +12 -6
  179. package/dist/builtin/workflows/src/intercom/result-intercom.ts +35 -4
  180. package/dist/builtin/workflows/src/runs/background/run-inspect.ts +5 -1
  181. package/dist/builtin/workflows/src/runs/background/status.ts +15 -0
  182. package/dist/builtin/workflows/src/runs/foreground/executor-abort.ts +11 -3
  183. package/dist/builtin/workflows/src/runs/foreground/executor-child-boundary.ts +2 -1
  184. package/dist/builtin/workflows/src/runs/foreground/executor-exit-manager.ts +26 -2
  185. package/dist/builtin/workflows/src/runs/foreground/executor-run-finalizers.ts +3 -2
  186. package/dist/builtin/workflows/src/runs/foreground/executor-stage-call.ts +94 -60
  187. package/dist/builtin/workflows/src/runs/foreground/executor-stage-context.ts +1 -1
  188. package/dist/builtin/workflows/src/runs/foreground/executor-stage-control.ts +7 -7
  189. package/dist/builtin/workflows/src/runs/foreground/executor-stage-factory.ts +25 -4
  190. package/dist/builtin/workflows/src/runs/foreground/executor-stage-types.ts +4 -1
  191. package/dist/builtin/workflows/src/runs/foreground/executor-types.ts +2 -0
  192. package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +142 -4
  193. package/dist/builtin/workflows/src/runs/foreground/stage-runner-types.ts +2 -0
  194. package/dist/builtin/workflows/src/runs/foreground/stage-session-heartbeat.ts +88 -0
  195. package/dist/builtin/workflows/src/runs/shared/worktree-git-runner.ts +5 -2
  196. package/dist/builtin/workflows/src/runs/shared/worktree-setup.ts +2 -0
  197. package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +5 -3
  198. package/dist/builtin/workflows/src/shared/authoring-contract-stage.ts +5 -3
  199. package/dist/builtin/workflows/src/shared/graph-store-snapshot.ts +34 -2
  200. package/dist/builtin/workflows/src/shared/persistence-restore-helpers.ts +23 -6
  201. package/dist/builtin/workflows/src/shared/stage-ui-broker.ts +10 -4
  202. package/dist/builtin/workflows/src/shared/store-public-types.ts +4 -2
  203. package/dist/builtin/workflows/src/shared/store-types.ts +1 -1
  204. package/dist/builtin/workflows/src/shared/workflow-artifact-env.ts +21 -0
  205. package/dist/builtin/workflows/src/shared/workflow-artifacts.ts +2 -5
  206. package/dist/builtin/workflows/src/tui/dispatch-confirm.ts +37 -2
  207. package/dist/builtin/workflows/src/tui/graph-view-constants.ts +0 -15
  208. package/dist/builtin/workflows/src/tui/graph-view-graph-render.ts +38 -47
  209. package/dist/builtin/workflows/src/tui/graph-view-input.ts +48 -45
  210. package/dist/builtin/workflows/src/tui/graph-view-layout.ts +266 -0
  211. package/dist/builtin/workflows/src/tui/graph-view-render-helpers.ts +1 -86
  212. package/dist/builtin/workflows/src/tui/graph-view-render.ts +209 -91
  213. package/dist/builtin/workflows/src/tui/graph-view-state.ts +5 -7
  214. package/dist/builtin/workflows/src/tui/graph-view-types.ts +13 -7
  215. package/dist/builtin/workflows/src/tui/inline-form-editor.ts +8 -6
  216. package/dist/builtin/workflows/src/tui/inline-form-overlay.ts +2 -1
  217. package/dist/builtin/workflows/src/tui/inputs-overlay.ts +7 -4
  218. package/dist/builtin/workflows/src/tui/inputs-picker-input.ts +66 -0
  219. package/dist/builtin/workflows/src/tui/keybindings-adapter.ts +1 -0
  220. package/dist/builtin/workflows/src/tui/node-card.ts +1 -1
  221. package/dist/builtin/workflows/src/tui/overlay-adapter.ts +18 -46
  222. package/dist/builtin/workflows/src/tui/overlay-terminal-modes.ts +15 -26
  223. package/dist/builtin/workflows/src/tui/run-detail.ts +25 -12
  224. package/dist/builtin/workflows/src/tui/session-overlays.ts +5 -2
  225. package/dist/builtin/workflows/src/tui/session-picker.ts +27 -0
  226. package/dist/builtin/workflows/src/tui/stage-chat-view-footer-status.ts +5 -14
  227. package/dist/builtin/workflows/src/tui/stage-chat-view-input.ts +8 -7
  228. package/dist/builtin/workflows/src/tui/stage-chat-view-state.ts +12 -3
  229. package/dist/builtin/workflows/src/tui/stage-chat-view-types.ts +1 -11
  230. package/dist/builtin/workflows/src/tui/stage-chat-view.ts +0 -8
  231. package/dist/builtin/workflows/src/tui/status-list.ts +1 -0
  232. package/dist/builtin/workflows/src/tui/store-widget-installer.ts +2 -6
  233. package/dist/builtin/workflows/src/tui/workflow-attach-pane-types.ts +0 -15
  234. package/dist/builtin/workflows/src/tui/workflow-attach-pane.ts +2 -26
  235. package/dist/builtin/workflows/src/tui/workflow-resume-selector.ts +1 -0
  236. package/dist/builtin/workflows/src/tui/workflow-status.ts +3 -3
  237. package/dist/bun/split-loader.js +2 -0
  238. package/dist/bun/split-loader.js.map +1 -1
  239. package/dist/cli/args.d.ts.map +1 -1
  240. package/dist/cli/args.js +6 -2
  241. package/dist/cli/args.js.map +1 -1
  242. package/dist/cli/auth-check.d.ts +35 -0
  243. package/dist/cli/auth-check.d.ts.map +1 -0
  244. package/dist/cli/auth-check.js +100 -0
  245. package/dist/cli/auth-check.js.map +1 -0
  246. package/dist/cli/auth-command.d.ts +27 -0
  247. package/dist/cli/auth-command.d.ts.map +1 -0
  248. package/dist/cli/auth-command.js +150 -0
  249. package/dist/cli/auth-command.js.map +1 -0
  250. package/dist/cli/config-selector.js +2 -2
  251. package/dist/cli/config-selector.js.map +1 -1
  252. package/dist/cli/credential-print.d.ts +18 -23
  253. package/dist/cli/credential-print.d.ts.map +1 -1
  254. package/dist/cli/credential-print.js +42 -88
  255. package/dist/cli/credential-print.js.map +1 -1
  256. package/dist/cli/experimental/auth.d.ts +16 -0
  257. package/dist/cli/experimental/auth.d.ts.map +1 -0
  258. package/dist/cli/experimental/auth.js +13 -0
  259. package/dist/cli/experimental/auth.js.map +1 -0
  260. package/dist/cli/experimental/cli.d.ts +6 -0
  261. package/dist/cli/experimental/cli.d.ts.map +1 -0
  262. package/dist/cli/experimental/cli.js +5 -0
  263. package/dist/cli/experimental/cli.js.map +1 -0
  264. package/dist/cli/experimental/command-options.d.ts +17 -0
  265. package/dist/cli/experimental/command-options.d.ts.map +1 -0
  266. package/dist/cli/experimental/command-options.js +35 -0
  267. package/dist/cli/experimental/command-options.js.map +1 -0
  268. package/dist/cli/experimental/command.d.ts +63 -0
  269. package/dist/cli/experimental/command.d.ts.map +1 -0
  270. package/dist/cli/experimental/command.js +127 -0
  271. package/dist/cli/experimental/command.js.map +1 -0
  272. package/dist/cli/experimental/commands/client.d.ts +13 -0
  273. package/dist/cli/experimental/commands/client.d.ts.map +1 -0
  274. package/dist/cli/experimental/commands/client.js +25 -0
  275. package/dist/cli/experimental/commands/client.js.map +1 -0
  276. package/dist/cli/experimental/commands/pi.d.ts +15 -0
  277. package/dist/cli/experimental/commands/pi.d.ts.map +1 -0
  278. package/dist/cli/experimental/commands/pi.js +28 -0
  279. package/dist/cli/experimental/commands/pi.js.map +1 -0
  280. package/dist/cli/experimental/commands/server.d.ts +13 -0
  281. package/dist/cli/experimental/commands/server.d.ts.map +1 -0
  282. package/dist/cli/experimental/commands/server.js +25 -0
  283. package/dist/cli/experimental/commands/server.js.map +1 -0
  284. package/dist/cli/experimental/transport-address.d.ts +10 -0
  285. package/dist/cli/experimental/transport-address.d.ts.map +1 -0
  286. package/dist/cli/experimental/transport-address.js +38 -0
  287. package/dist/cli/experimental/transport-address.js.map +1 -0
  288. package/dist/cli/session-picker.js +2 -2
  289. package/dist/cli/session-picker.js.map +1 -1
  290. package/dist/cli/startup-ui.d.ts.map +1 -1
  291. package/dist/cli/startup-ui.js +4 -10
  292. package/dist/cli/startup-ui.js.map +1 -1
  293. package/dist/cli.js +2 -0
  294. package/dist/cli.js.map +1 -1
  295. package/dist/client/index.d.ts +3 -0
  296. package/dist/client/index.d.ts.map +1 -0
  297. package/dist/client/index.js +3 -0
  298. package/dist/client/index.js.map +1 -0
  299. package/dist/client/remote-session.d.ts +64 -0
  300. package/dist/client/remote-session.d.ts.map +1 -0
  301. package/dist/client/remote-session.js +351 -0
  302. package/dist/client/remote-session.js.map +1 -0
  303. package/dist/client/transcript.d.ts +12 -0
  304. package/dist/client/transcript.d.ts.map +1 -0
  305. package/dist/client/transcript.js +98 -0
  306. package/dist/client/transcript.js.map +1 -0
  307. package/dist/core/agent-session-auto-compaction.d.ts +17 -13
  308. package/dist/core/agent-session-auto-compaction.d.ts.map +1 -1
  309. package/dist/core/agent-session-auto-compaction.js +146 -64
  310. package/dist/core/agent-session-auto-compaction.js.map +1 -1
  311. package/dist/core/agent-session-bash.d.ts.map +1 -1
  312. package/dist/core/agent-session-bash.js +2 -0
  313. package/dist/core/agent-session-bash.js.map +1 -1
  314. package/dist/core/agent-session-compaction.d.ts +3 -6
  315. package/dist/core/agent-session-compaction.d.ts.map +1 -1
  316. package/dist/core/agent-session-compaction.js +64 -28
  317. package/dist/core/agent-session-compaction.js.map +1 -1
  318. package/dist/core/agent-session-events.d.ts +1 -11
  319. package/dist/core/agent-session-events.d.ts.map +1 -1
  320. package/dist/core/agent-session-events.js +28 -25
  321. package/dist/core/agent-session-events.js.map +1 -1
  322. package/dist/core/agent-session-export.d.ts.map +1 -1
  323. package/dist/core/agent-session-export.js +2 -1
  324. package/dist/core/agent-session-export.js.map +1 -1
  325. package/dist/core/agent-session-extension-bindings.d.ts.map +1 -1
  326. package/dist/core/agent-session-extension-bindings.js +4 -2
  327. package/dist/core/agent-session-extension-bindings.js.map +1 -1
  328. package/dist/core/agent-session-methods.d.ts +14 -6
  329. package/dist/core/agent-session-methods.d.ts.map +1 -1
  330. package/dist/core/agent-session-methods.js.map +1 -1
  331. package/dist/core/agent-session-models.d.ts +1 -0
  332. package/dist/core/agent-session-models.d.ts.map +1 -1
  333. package/dist/core/agent-session-models.js +11 -4
  334. package/dist/core/agent-session-models.js.map +1 -1
  335. package/dist/core/agent-session-post-tool-compaction.d.ts.map +1 -1
  336. package/dist/core/agent-session-post-tool-compaction.js +22 -6
  337. package/dist/core/agent-session-post-tool-compaction.js.map +1 -1
  338. package/dist/core/agent-session-prompt.d.ts.map +1 -1
  339. package/dist/core/agent-session-prompt.js +5 -0
  340. package/dist/core/agent-session-prompt.js.map +1 -1
  341. package/dist/core/agent-session-runtime-auth.d.ts.map +1 -1
  342. package/dist/core/agent-session-runtime-auth.js +3 -0
  343. package/dist/core/agent-session-runtime-auth.js.map +1 -1
  344. package/dist/core/agent-session-summary.d.ts +21 -0
  345. package/dist/core/agent-session-summary.d.ts.map +1 -0
  346. package/dist/core/agent-session-summary.js +156 -0
  347. package/dist/core/agent-session-summary.js.map +1 -0
  348. package/dist/core/agent-session-tool-hooks.d.ts.map +1 -1
  349. package/dist/core/agent-session-tool-hooks.js +25 -14
  350. package/dist/core/agent-session-tool-hooks.js.map +1 -1
  351. package/dist/core/agent-session-tool-registry.d.ts.map +1 -1
  352. package/dist/core/agent-session-tool-registry.js +4 -4
  353. package/dist/core/agent-session-tool-registry.js.map +1 -1
  354. package/dist/core/agent-session-transfer.d.ts.map +1 -1
  355. package/dist/core/agent-session-transfer.js +0 -2
  356. package/dist/core/agent-session-transfer.js.map +1 -1
  357. package/dist/core/agent-session-tree.d.ts.map +1 -1
  358. package/dist/core/agent-session-tree.js +6 -0
  359. package/dist/core/agent-session-tree.js.map +1 -1
  360. package/dist/core/agent-session-types.d.ts +2 -0
  361. package/dist/core/agent-session-types.d.ts.map +1 -1
  362. package/dist/core/agent-session-types.js.map +1 -1
  363. package/dist/core/agent-session.d.ts +13 -3
  364. package/dist/core/agent-session.d.ts.map +1 -1
  365. package/dist/core/agent-session.js +38 -5
  366. package/dist/core/agent-session.js.map +1 -1
  367. package/dist/core/atomic-guide-command.d.ts.map +1 -1
  368. package/dist/core/atomic-guide-command.js +4 -5
  369. package/dist/core/atomic-guide-command.js.map +1 -1
  370. package/dist/core/auth-storage.d.ts +18 -1
  371. package/dist/core/auth-storage.d.ts.map +1 -1
  372. package/dist/core/auth-storage.js +83 -0
  373. package/dist/core/auth-storage.js.map +1 -1
  374. package/dist/core/bash-executor.d.ts +5 -0
  375. package/dist/core/bash-executor.d.ts.map +1 -1
  376. package/dist/core/bash-executor.js +43 -19
  377. package/dist/core/bash-executor.js.map +1 -1
  378. package/dist/core/builtin-packages.d.ts.map +1 -1
  379. package/dist/core/builtin-packages.js +6 -0
  380. package/dist/core/builtin-packages.js.map +1 -1
  381. package/dist/core/codex-fast-mode.d.ts.map +1 -1
  382. package/dist/core/codex-fast-mode.js +8 -3
  383. package/dist/core/codex-fast-mode.js.map +1 -1
  384. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  385. package/dist/core/compaction/branch-summarization.js +1 -0
  386. package/dist/core/compaction/branch-summarization.js.map +1 -1
  387. package/dist/core/compaction/index.d.ts +1 -0
  388. package/dist/core/compaction/index.d.ts.map +1 -1
  389. package/dist/core/compaction/index.js +1 -0
  390. package/dist/core/compaction/index.js.map +1 -1
  391. package/dist/core/compaction/session-summarization.d.ts +41 -0
  392. package/dist/core/compaction/session-summarization.d.ts.map +1 -0
  393. package/dist/core/compaction/session-summarization.js +97 -0
  394. package/dist/core/compaction/session-summarization.js.map +1 -0
  395. package/dist/core/exec.d.ts.map +1 -1
  396. package/dist/core/exec.js +4 -3
  397. package/dist/core/exec.js.map +1 -1
  398. package/dist/core/extensions/agent-events.d.ts +0 -1
  399. package/dist/core/extensions/agent-events.d.ts.map +1 -1
  400. package/dist/core/extensions/agent-events.js.map +1 -1
  401. package/dist/core/extensions/api-types.d.ts +5 -3
  402. package/dist/core/extensions/api-types.d.ts.map +1 -1
  403. package/dist/core/extensions/api-types.js.map +1 -1
  404. package/dist/core/extensions/context-types.d.ts +15 -0
  405. package/dist/core/extensions/context-types.d.ts.map +1 -1
  406. package/dist/core/extensions/context-types.js.map +1 -1
  407. package/dist/core/extensions/event-results.d.ts +5 -0
  408. package/dist/core/extensions/event-results.d.ts.map +1 -1
  409. package/dist/core/extensions/event-results.js.map +1 -1
  410. package/dist/core/extensions/index.d.ts +2 -1
  411. package/dist/core/extensions/index.d.ts.map +1 -1
  412. package/dist/core/extensions/index.js +1 -0
  413. package/dist/core/extensions/index.js.map +1 -1
  414. package/dist/core/extensions/loader-api.d.ts.map +1 -1
  415. package/dist/core/extensions/loader-api.js +14 -1
  416. package/dist/core/extensions/loader-api.js.map +1 -1
  417. package/dist/core/extensions/loader-discovery.d.ts.map +1 -1
  418. package/dist/core/extensions/loader-discovery.js +3 -23
  419. package/dist/core/extensions/loader-discovery.js.map +1 -1
  420. package/dist/core/extensions/loader-runtime.d.ts.map +1 -1
  421. package/dist/core/extensions/loader-runtime.js +20 -3
  422. package/dist/core/extensions/loader-runtime.js.map +1 -1
  423. package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
  424. package/dist/core/extensions/loader-virtual-modules.js +7 -1
  425. package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
  426. package/dist/core/extensions/message-types.d.ts +6 -0
  427. package/dist/core/extensions/message-types.d.ts.map +1 -1
  428. package/dist/core/extensions/message-types.js.map +1 -1
  429. package/dist/core/extensions/provider-types.d.ts +9 -3
  430. package/dist/core/extensions/provider-types.d.ts.map +1 -1
  431. package/dist/core/extensions/provider-types.js.map +1 -1
  432. package/dist/core/extensions/runner-registries.d.ts +2 -1
  433. package/dist/core/extensions/runner-registries.d.ts.map +1 -1
  434. package/dist/core/extensions/runner-registries.js +3 -0
  435. package/dist/core/extensions/runner-registries.js.map +1 -1
  436. package/dist/core/extensions/runner-ui.d.ts.map +1 -1
  437. package/dist/core/extensions/runner-ui.js +1 -0
  438. package/dist/core/extensions/runner-ui.js.map +1 -1
  439. package/dist/core/extensions/runner.d.ts +2 -1
  440. package/dist/core/extensions/runner.d.ts.map +1 -1
  441. package/dist/core/extensions/runner.js +6 -2
  442. package/dist/core/extensions/runner.js.map +1 -1
  443. package/dist/core/extensions/runtime-types.d.ts +4 -1
  444. package/dist/core/extensions/runtime-types.d.ts.map +1 -1
  445. package/dist/core/extensions/runtime-types.js.map +1 -1
  446. package/dist/core/extensions/stale-context.d.ts +5 -0
  447. package/dist/core/extensions/stale-context.d.ts.map +1 -0
  448. package/dist/core/extensions/stale-context.js +11 -0
  449. package/dist/core/extensions/stale-context.js.map +1 -0
  450. package/dist/core/extensions/ui-types.d.ts +16 -11
  451. package/dist/core/extensions/ui-types.d.ts.map +1 -1
  452. package/dist/core/extensions/ui-types.js.map +1 -1
  453. package/dist/core/footer-data-provider.d.ts.map +1 -1
  454. package/dist/core/footer-data-provider.js +3 -2
  455. package/dist/core/footer-data-provider.js.map +1 -1
  456. package/dist/core/index.d.ts +1 -1
  457. package/dist/core/index.d.ts.map +1 -1
  458. package/dist/core/index.js.map +1 -1
  459. package/dist/core/intercom-runtime-group.d.ts +13 -0
  460. package/dist/core/intercom-runtime-group.d.ts.map +1 -0
  461. package/dist/core/intercom-runtime-group.js +23 -0
  462. package/dist/core/intercom-runtime-group.js.map +1 -0
  463. package/dist/core/keybindings.d.ts +44 -4
  464. package/dist/core/keybindings.d.ts.map +1 -1
  465. package/dist/core/model-config.d.ts +39 -5
  466. package/dist/core/model-config.d.ts.map +1 -1
  467. package/dist/core/model-config.js +6 -0
  468. package/dist/core/model-config.js.map +1 -1
  469. package/dist/core/model-registry.d.ts +12 -5
  470. package/dist/core/model-registry.d.ts.map +1 -1
  471. package/dist/core/model-registry.js +20 -12
  472. package/dist/core/model-registry.js.map +1 -1
  473. package/dist/core/model-resolver-cli.d.ts.map +1 -1
  474. package/dist/core/model-resolver-cli.js +46 -14
  475. package/dist/core/model-resolver-cli.js.map +1 -1
  476. package/dist/core/model-resolver-defaults.d.ts.map +1 -1
  477. package/dist/core/model-resolver-defaults.js +2 -0
  478. package/dist/core/model-resolver-defaults.js.map +1 -1
  479. package/dist/core/model-resolver-scope.d.ts +2 -0
  480. package/dist/core/model-resolver-scope.d.ts.map +1 -1
  481. package/dist/core/model-resolver-scope.js +12 -9
  482. package/dist/core/model-resolver-scope.js.map +1 -1
  483. package/dist/core/model-resolver.d.ts +1 -1
  484. package/dist/core/model-resolver.d.ts.map +1 -1
  485. package/dist/core/model-resolver.js +1 -1
  486. package/dist/core/model-resolver.js.map +1 -1
  487. package/dist/core/model-runtime-snapshot.d.ts +10 -0
  488. package/dist/core/model-runtime-snapshot.d.ts.map +1 -1
  489. package/dist/core/model-runtime-snapshot.js +14 -1
  490. package/dist/core/model-runtime-snapshot.js.map +1 -1
  491. package/dist/core/model-runtime-streaming.d.ts +3 -1
  492. package/dist/core/model-runtime-streaming.d.ts.map +1 -1
  493. package/dist/core/model-runtime-streaming.js +16 -0
  494. package/dist/core/model-runtime-streaming.js.map +1 -1
  495. package/dist/core/model-runtime-types.d.ts +2 -0
  496. package/dist/core/model-runtime-types.d.ts.map +1 -1
  497. package/dist/core/model-runtime-types.js.map +1 -1
  498. package/dist/core/model-runtime.d.ts +37 -10
  499. package/dist/core/model-runtime.d.ts.map +1 -1
  500. package/dist/core/model-runtime.js +312 -113
  501. package/dist/core/model-runtime.js.map +1 -1
  502. package/dist/core/oauth-login.d.ts.map +1 -1
  503. package/dist/core/oauth-login.js +2 -1
  504. package/dist/core/oauth-login.js.map +1 -1
  505. package/dist/core/openai-responses-payload-sanitizer.d.ts.map +1 -1
  506. package/dist/core/openai-responses-payload-sanitizer.js +18 -2
  507. package/dist/core/openai-responses-payload-sanitizer.js.map +1 -1
  508. package/dist/core/package-manager-git.d.ts.map +1 -1
  509. package/dist/core/package-manager-git.js +56 -10
  510. package/dist/core/package-manager-git.js.map +1 -1
  511. package/dist/core/package-manager-manifest.d.ts +1 -1
  512. package/dist/core/package-manager-manifest.d.ts.map +1 -1
  513. package/dist/core/package-manager-manifest.js +19 -9
  514. package/dist/core/package-manager-manifest.js.map +1 -1
  515. package/dist/core/package-manager-resource-collector.js.map +1 -1
  516. package/dist/core/package-manager-resource-files.d.ts.map +1 -1
  517. package/dist/core/package-manager-resource-files.js +1 -2
  518. package/dist/core/package-manager-resource-files.js.map +1 -1
  519. package/dist/core/provider-composer-internal.d.ts +10 -2
  520. package/dist/core/provider-composer-internal.d.ts.map +1 -1
  521. package/dist/core/provider-composer-internal.js +7 -3
  522. package/dist/core/provider-composer-internal.js.map +1 -1
  523. package/dist/core/provider-composer.d.ts.map +1 -1
  524. package/dist/core/provider-composer.js +19 -12
  525. package/dist/core/provider-composer.js.map +1 -1
  526. package/dist/core/provider-display-names.d.ts.map +1 -1
  527. package/dist/core/provider-display-names.js +2 -0
  528. package/dist/core/provider-display-names.js.map +1 -1
  529. package/dist/core/remote-catalog-provider.d.ts.map +1 -1
  530. package/dist/core/remote-catalog-provider.js +77 -67
  531. package/dist/core/remote-catalog-provider.js.map +1 -1
  532. package/dist/core/resolve-config-value.d.ts.map +1 -1
  533. package/dist/core/resolve-config-value.js +3 -0
  534. package/dist/core/resolve-config-value.js.map +1 -1
  535. package/dist/core/resource-loader-context-files.d.ts.map +1 -1
  536. package/dist/core/resource-loader-context-files.js +13 -5
  537. package/dist/core/resource-loader-context-files.js.map +1 -1
  538. package/dist/core/runtime-credentials.d.ts +5 -5
  539. package/dist/core/runtime-credentials.d.ts.map +1 -1
  540. package/dist/core/runtime-credentials.js +8 -8
  541. package/dist/core/runtime-credentials.js.map +1 -1
  542. package/dist/core/session-manager-core.d.ts +3 -1
  543. package/dist/core/session-manager-core.d.ts.map +1 -1
  544. package/dist/core/session-manager-core.js +9 -1
  545. package/dist/core/session-manager-core.js.map +1 -1
  546. package/dist/core/session-manager-entries.d.ts +24 -1
  547. package/dist/core/session-manager-entries.d.ts.map +1 -1
  548. package/dist/core/session-manager-entries.js +48 -0
  549. package/dist/core/session-manager-entries.js.map +1 -1
  550. package/dist/core/session-manager-list.d.ts.map +1 -1
  551. package/dist/core/session-manager-list.js +13 -1
  552. package/dist/core/session-manager-list.js.map +1 -1
  553. package/dist/core/session-manager-types.d.ts +10 -1
  554. package/dist/core/session-manager-types.d.ts.map +1 -1
  555. package/dist/core/session-manager-types.js.map +1 -1
  556. package/dist/core/settings-manager-basic-accessors.d.ts +3 -0
  557. package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
  558. package/dist/core/settings-manager-basic-accessors.js +5 -0
  559. package/dist/core/settings-manager-basic-accessors.js.map +1 -1
  560. package/dist/core/settings-manager-ui-accessors.d.ts +8 -1
  561. package/dist/core/settings-manager-ui-accessors.d.ts.map +1 -1
  562. package/dist/core/settings-manager-ui-accessors.js +31 -0
  563. package/dist/core/settings-manager-ui-accessors.js.map +1 -1
  564. package/dist/core/settings-manager.d.ts +2 -1
  565. package/dist/core/settings-manager.d.ts.map +1 -1
  566. package/dist/core/settings-manager.js.map +1 -1
  567. package/dist/core/settings-merge.d.ts.map +1 -1
  568. package/dist/core/settings-merge.js +13 -16
  569. package/dist/core/settings-merge.js.map +1 -1
  570. package/dist/core/settings-types.d.ts +9 -0
  571. package/dist/core/settings-types.d.ts.map +1 -1
  572. package/dist/core/settings-types.js.map +1 -1
  573. package/dist/core/slash-commands.d.ts.map +1 -1
  574. package/dist/core/slash-commands.js +2 -4
  575. package/dist/core/slash-commands.js.map +1 -1
  576. package/dist/core/tools/ask-user-question/state/questionnaire-session.d.ts +2 -2
  577. package/dist/core/tools/ask-user-question/state/questionnaire-session.d.ts.map +1 -1
  578. package/dist/core/tools/ask-user-question/state/questionnaire-session.js +39 -2
  579. package/dist/core/tools/ask-user-question/state/questionnaire-session.js.map +1 -1
  580. package/dist/core/tools/bash-pty-native.d.ts.map +1 -1
  581. package/dist/core/tools/bash-pty-native.js +2 -1
  582. package/dist/core/tools/bash-pty-native.js.map +1 -1
  583. package/dist/core/tools/bash.d.ts +9 -15
  584. package/dist/core/tools/bash.d.ts.map +1 -1
  585. package/dist/core/tools/bash.js +36 -96
  586. package/dist/core/tools/bash.js.map +1 -1
  587. package/dist/core/tools/directory-tree.d.ts +11 -0
  588. package/dist/core/tools/directory-tree.d.ts.map +1 -1
  589. package/dist/core/tools/directory-tree.js +26 -0
  590. package/dist/core/tools/directory-tree.js.map +1 -1
  591. package/dist/core/tools/edit.d.ts +4 -0
  592. package/dist/core/tools/edit.d.ts.map +1 -1
  593. package/dist/core/tools/edit.js +12 -8
  594. package/dist/core/tools/edit.js.map +1 -1
  595. package/dist/core/tools/errno.d.ts +25 -0
  596. package/dist/core/tools/errno.d.ts.map +1 -0
  597. package/dist/core/tools/errno.js +29 -0
  598. package/dist/core/tools/errno.js.map +1 -0
  599. package/dist/core/tools/fetch-url.d.ts +12 -0
  600. package/dist/core/tools/fetch-url.d.ts.map +1 -1
  601. package/dist/core/tools/fetch-url.js +76 -10
  602. package/dist/core/tools/fetch-url.js.map +1 -1
  603. package/dist/core/tools/find.d.ts +8 -1
  604. package/dist/core/tools/find.d.ts.map +1 -1
  605. package/dist/core/tools/find.js +20 -15
  606. package/dist/core/tools/find.js.map +1 -1
  607. package/dist/core/tools/grep.d.ts.map +1 -1
  608. package/dist/core/tools/grep.js +5 -1
  609. package/dist/core/tools/grep.js.map +1 -1
  610. package/dist/core/tools/index.d.ts +7 -7
  611. package/dist/core/tools/index.d.ts.map +1 -1
  612. package/dist/core/tools/index.js +11 -11
  613. package/dist/core/tools/index.js.map +1 -1
  614. package/dist/core/tools/ls.d.ts +4 -0
  615. package/dist/core/tools/ls.d.ts.map +1 -1
  616. package/dist/core/tools/ls.js +5 -1
  617. package/dist/core/tools/ls.js.map +1 -1
  618. package/dist/core/tools/output-accumulator.d.ts +8 -1
  619. package/dist/core/tools/output-accumulator.d.ts.map +1 -1
  620. package/dist/core/tools/output-accumulator.js +50 -28
  621. package/dist/core/tools/output-accumulator.js.map +1 -1
  622. package/dist/core/tools/oversized-tool-result.d.ts.map +1 -1
  623. package/dist/core/tools/oversized-tool-result.js +129 -22
  624. package/dist/core/tools/oversized-tool-result.js.map +1 -1
  625. package/dist/core/tools/persisted-output-file.d.ts +80 -0
  626. package/dist/core/tools/persisted-output-file.d.ts.map +1 -0
  627. package/dist/core/tools/persisted-output-file.js +284 -0
  628. package/dist/core/tools/persisted-output-file.js.map +1 -0
  629. package/dist/core/tools/read.d.ts +10 -0
  630. package/dist/core/tools/read.d.ts.map +1 -1
  631. package/dist/core/tools/read.js +20 -8
  632. package/dist/core/tools/read.js.map +1 -1
  633. package/dist/core/tools/search.d.ts +4 -0
  634. package/dist/core/tools/search.d.ts.map +1 -1
  635. package/dist/core/tools/search.js +5 -1
  636. package/dist/core/tools/search.js.map +1 -1
  637. package/dist/core/tools/session-temp-cleanup.d.ts +133 -0
  638. package/dist/core/tools/session-temp-cleanup.d.ts.map +1 -0
  639. package/dist/core/tools/session-temp-cleanup.js +669 -0
  640. package/dist/core/tools/session-temp-cleanup.js.map +1 -0
  641. package/dist/core/tools/session-temp-dir.d.ts +116 -0
  642. package/dist/core/tools/session-temp-dir.d.ts.map +1 -0
  643. package/dist/core/tools/session-temp-dir.js +408 -0
  644. package/dist/core/tools/session-temp-dir.js.map +1 -0
  645. package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
  646. package/dist/core/tools/tool-definition-wrapper.js +2 -0
  647. package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
  648. package/dist/core/tools/tool-limits.d.ts +11 -0
  649. package/dist/core/tools/tool-limits.d.ts.map +1 -1
  650. package/dist/core/tools/tool-limits.js +11 -0
  651. package/dist/core/tools/tool-limits.js.map +1 -1
  652. package/dist/core/tools/windows-directory-security.d.ts +82 -0
  653. package/dist/core/tools/windows-directory-security.d.ts.map +1 -0
  654. package/dist/core/tools/windows-directory-security.js +238 -0
  655. package/dist/core/tools/windows-directory-security.js.map +1 -0
  656. package/dist/core/tools/write.d.ts +4 -0
  657. package/dist/core/tools/write.d.ts.map +1 -1
  658. package/dist/core/tools/write.js +8 -4
  659. package/dist/core/tools/write.js.map +1 -1
  660. package/dist/core/trust-manager.js +1 -1
  661. package/dist/core/trust-manager.js.map +1 -1
  662. package/dist/core/usage-totals.js +1 -1
  663. package/dist/core/usage-totals.js.map +1 -1
  664. package/dist/extensions/llama/huggingface-ui.d.ts +1 -1
  665. package/dist/extensions/llama/huggingface-ui.d.ts.map +1 -1
  666. package/dist/extensions/llama/huggingface-ui.js +6 -5
  667. package/dist/extensions/llama/huggingface-ui.js.map +1 -1
  668. package/dist/extensions/llama/index.d.ts.map +1 -1
  669. package/dist/extensions/llama/index.js +11 -2
  670. package/dist/extensions/llama/index.js.map +1 -1
  671. package/dist/extensions/llama/provider.d.ts.map +1 -1
  672. package/dist/extensions/llama/provider.js +24 -8
  673. package/dist/extensions/llama/provider.js.map +1 -1
  674. package/dist/extensions/llama/ui.d.ts.map +1 -1
  675. package/dist/extensions/llama/ui.js +5 -2
  676. package/dist/extensions/llama/ui.js.map +1 -1
  677. package/dist/index-extensions.d.ts +2 -2
  678. package/dist/index-extensions.d.ts.map +1 -1
  679. package/dist/index-extensions.js +1 -1
  680. package/dist/index-extensions.js.map +1 -1
  681. package/dist/index.d.ts +5 -2
  682. package/dist/index.d.ts.map +1 -1
  683. package/dist/index.js +6 -2
  684. package/dist/index.js.map +1 -1
  685. package/dist/main-runtime-api-key.d.ts +2 -2
  686. package/dist/main-runtime-api-key.d.ts.map +1 -1
  687. package/dist/main-runtime-api-key.js +7 -2
  688. package/dist/main-runtime-api-key.js.map +1 -1
  689. package/dist/main-session.js +2 -2
  690. package/dist/main-session.js.map +1 -1
  691. package/dist/main.d.ts.map +1 -1
  692. package/dist/main.js +130 -26
  693. package/dist/main.js.map +1 -1
  694. package/dist/modes/index.d.ts +1 -0
  695. package/dist/modes/index.d.ts.map +1 -1
  696. package/dist/modes/index.js.map +1 -1
  697. package/dist/modes/interactive/components/assistant-message.d.ts +6 -2
  698. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  699. package/dist/modes/interactive/components/assistant-message.js +18 -5
  700. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  701. package/dist/modes/interactive/components/bordered-loader.d.ts +1 -1
  702. package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
  703. package/dist/modes/interactive/components/bordered-loader.js +5 -4
  704. package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
  705. package/dist/modes/interactive/components/branch-summary-message.d.ts +2 -1
  706. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
  707. package/dist/modes/interactive/components/branch-summary-message.js +3 -2
  708. package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
  709. package/dist/modes/interactive/components/chat-message-renderer.d.ts +17 -7
  710. package/dist/modes/interactive/components/chat-message-renderer.d.ts.map +1 -1
  711. package/dist/modes/interactive/components/chat-message-renderer.js +35 -69
  712. package/dist/modes/interactive/components/chat-message-renderer.js.map +1 -1
  713. package/dist/modes/interactive/components/chat-session-host-actions.d.ts.map +1 -1
  714. package/dist/modes/interactive/components/chat-session-host-actions.js +11 -3
  715. package/dist/modes/interactive/components/chat-session-host-actions.js.map +1 -1
  716. package/dist/modes/interactive/components/chat-session-host-events.d.ts.map +1 -1
  717. package/dist/modes/interactive/components/chat-session-host-events.js +25 -15
  718. package/dist/modes/interactive/components/chat-session-host-events.js.map +1 -1
  719. package/dist/modes/interactive/components/chat-session-host-rendering.d.ts.map +1 -1
  720. package/dist/modes/interactive/components/chat-session-host-rendering.js +9 -4
  721. package/dist/modes/interactive/components/chat-session-host-rendering.js.map +1 -1
  722. package/dist/modes/interactive/components/chat-session-host-state.d.ts +2 -0
  723. package/dist/modes/interactive/components/chat-session-host-state.d.ts.map +1 -1
  724. package/dist/modes/interactive/components/chat-session-host-state.js +2 -0
  725. package/dist/modes/interactive/components/chat-session-host-state.js.map +1 -1
  726. package/dist/modes/interactive/components/chat-session-host.d.ts +9 -0
  727. package/dist/modes/interactive/components/chat-session-host.d.ts.map +1 -1
  728. package/dist/modes/interactive/components/chat-session-host.js +14 -0
  729. package/dist/modes/interactive/components/chat-session-host.js.map +1 -1
  730. package/dist/modes/interactive/components/chat-transcript.d.ts +32 -0
  731. package/dist/modes/interactive/components/chat-transcript.d.ts.map +1 -1
  732. package/dist/modes/interactive/components/chat-transcript.js +173 -5
  733. package/dist/modes/interactive/components/chat-transcript.js.map +1 -1
  734. package/dist/modes/interactive/components/config-selector-list.d.ts +1 -1
  735. package/dist/modes/interactive/components/config-selector-list.d.ts.map +1 -1
  736. package/dist/modes/interactive/components/config-selector-list.js +9 -8
  737. package/dist/modes/interactive/components/config-selector-list.js.map +1 -1
  738. package/dist/modes/interactive/components/custom-editor.d.ts +1 -1
  739. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  740. package/dist/modes/interactive/components/custom-editor.js +32 -10
  741. package/dist/modes/interactive/components/custom-editor.js.map +1 -1
  742. package/dist/modes/interactive/components/custom-message.d.ts +2 -1
  743. package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
  744. package/dist/modes/interactive/components/custom-message.js +3 -2
  745. package/dist/modes/interactive/components/custom-message.js.map +1 -1
  746. package/dist/modes/interactive/components/extension-editor.d.ts +1 -1
  747. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  748. package/dist/modes/interactive/components/extension-editor.js +3 -2
  749. package/dist/modes/interactive/components/extension-editor.js.map +1 -1
  750. package/dist/modes/interactive/components/extension-input.d.ts +1 -1
  751. package/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
  752. package/dist/modes/interactive/components/extension-input.js +1 -0
  753. package/dist/modes/interactive/components/extension-input.js.map +1 -1
  754. package/dist/modes/interactive/components/extension-selector.d.ts +1 -1
  755. package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
  756. package/dist/modes/interactive/components/extension-selector.js +4 -0
  757. package/dist/modes/interactive/components/extension-selector.js.map +1 -1
  758. package/dist/modes/interactive/components/fast-mode-selector.d.ts +1 -1
  759. package/dist/modes/interactive/components/fast-mode-selector.d.ts.map +1 -1
  760. package/dist/modes/interactive/components/fast-mode-selector.js +7 -5
  761. package/dist/modes/interactive/components/fast-mode-selector.js.map +1 -1
  762. package/dist/modes/interactive/components/first-time-setup.d.ts +1 -1
  763. package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
  764. package/dist/modes/interactive/components/first-time-setup.js +3 -0
  765. package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
  766. package/dist/modes/interactive/components/footer.js +2 -2
  767. package/dist/modes/interactive/components/footer.js.map +1 -1
  768. package/dist/modes/interactive/components/host-input-form.d.ts +1 -1
  769. package/dist/modes/interactive/components/host-input-form.d.ts.map +1 -1
  770. package/dist/modes/interactive/components/host-input-form.js +6 -5
  771. package/dist/modes/interactive/components/host-input-form.js.map +1 -1
  772. package/dist/modes/interactive/components/host-session-picker.d.ts.map +1 -1
  773. package/dist/modes/interactive/components/host-session-picker.js +1 -0
  774. package/dist/modes/interactive/components/host-session-picker.js.map +1 -1
  775. package/dist/modes/interactive/components/index.d.ts +1 -1
  776. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  777. package/dist/modes/interactive/components/index.js.map +1 -1
  778. package/dist/modes/interactive/components/login-dialog.d.ts +1 -1
  779. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  780. package/dist/modes/interactive/components/login-dialog.js +2 -1
  781. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  782. package/dist/modes/interactive/components/markdown-transform.d.ts +3 -0
  783. package/dist/modes/interactive/components/markdown-transform.d.ts.map +1 -0
  784. package/dist/modes/interactive/components/markdown-transform.js +19 -0
  785. package/dist/modes/interactive/components/markdown-transform.js.map +1 -0
  786. package/dist/modes/interactive/components/mermaid.d.ts +11 -0
  787. package/dist/modes/interactive/components/mermaid.d.ts.map +1 -0
  788. package/dist/modes/interactive/components/mermaid.js +81 -0
  789. package/dist/modes/interactive/components/mermaid.js.map +1 -0
  790. package/dist/modes/interactive/components/model-selector.d.ts +2 -2
  791. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  792. package/dist/modes/interactive/components/model-selector.js +9 -6
  793. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  794. package/dist/modes/interactive/components/oauth-selector.d.ts +1 -1
  795. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  796. package/dist/modes/interactive/components/oauth-selector.js +3 -2
  797. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  798. package/dist/modes/interactive/components/scoped-models-selector.d.ts +6 -2
  799. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  800. package/dist/modes/interactive/components/scoped-models-selector.js +39 -13
  801. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  802. package/dist/modes/interactive/components/session-selector-delete.d.ts.map +1 -1
  803. package/dist/modes/interactive/components/session-selector-delete.js +2 -1
  804. package/dist/modes/interactive/components/session-selector-delete.js.map +1 -1
  805. package/dist/modes/interactive/components/session-selector-list.d.ts +1 -1
  806. package/dist/modes/interactive/components/session-selector-list.d.ts.map +1 -1
  807. package/dist/modes/interactive/components/session-selector-list.js +41 -15
  808. package/dist/modes/interactive/components/session-selector-list.js.map +1 -1
  809. package/dist/modes/interactive/components/session-selector-search.js +1 -1
  810. package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
  811. package/dist/modes/interactive/components/session-selector.d.ts +1 -1
  812. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  813. package/dist/modes/interactive/components/session-selector.js +3 -3
  814. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  815. package/dist/modes/interactive/components/settings-selector-handlers.d.ts.map +1 -1
  816. package/dist/modes/interactive/components/settings-selector-handlers.js +9 -0
  817. package/dist/modes/interactive/components/settings-selector-handlers.js.map +1 -1
  818. package/dist/modes/interactive/components/settings-selector-items.d.ts.map +1 -1
  819. package/dist/modes/interactive/components/settings-selector-items.js +21 -0
  820. package/dist/modes/interactive/components/settings-selector-items.js.map +1 -1
  821. package/dist/modes/interactive/components/settings-selector-submenus.d.ts +3 -3
  822. package/dist/modes/interactive/components/settings-selector-submenus.d.ts.map +1 -1
  823. package/dist/modes/interactive/components/settings-selector-submenus.js +6 -1
  824. package/dist/modes/interactive/components/settings-selector-submenus.js.map +1 -1
  825. package/dist/modes/interactive/components/settings-selector-types.d.ts +8 -1
  826. package/dist/modes/interactive/components/settings-selector-types.d.ts.map +1 -1
  827. package/dist/modes/interactive/components/settings-selector-types.js.map +1 -1
  828. package/dist/modes/interactive/components/skill-invocation-message.d.ts +2 -1
  829. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
  830. package/dist/modes/interactive/components/skill-invocation-message.js +3 -2
  831. package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
  832. package/dist/modes/interactive/components/tool-execution.d.ts +2 -0
  833. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  834. package/dist/modes/interactive/components/tool-execution.js +50 -27
  835. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  836. package/dist/modes/interactive/components/tree-selector-component.d.ts +1 -1
  837. package/dist/modes/interactive/components/tree-selector-component.d.ts.map +1 -1
  838. package/dist/modes/interactive/components/tree-selector-component.js +2 -3
  839. package/dist/modes/interactive/components/tree-selector-component.js.map +1 -1
  840. package/dist/modes/interactive/components/tree-selector-content.d.ts.map +1 -1
  841. package/dist/modes/interactive/components/tree-selector-content.js +6 -0
  842. package/dist/modes/interactive/components/tree-selector-content.js.map +1 -1
  843. package/dist/modes/interactive/components/tree-selector-help.d.ts +1 -1
  844. package/dist/modes/interactive/components/tree-selector-help.d.ts.map +1 -1
  845. package/dist/modes/interactive/components/tree-selector-help.js +3 -1
  846. package/dist/modes/interactive/components/tree-selector-help.js.map +1 -1
  847. package/dist/modes/interactive/components/tree-selector-label-input.d.ts +1 -1
  848. package/dist/modes/interactive/components/tree-selector-label-input.d.ts.map +1 -1
  849. package/dist/modes/interactive/components/tree-selector-label-input.js +1 -0
  850. package/dist/modes/interactive/components/tree-selector-label-input.js.map +1 -1
  851. package/dist/modes/interactive/components/tree-selector-list.d.ts +1 -1
  852. package/dist/modes/interactive/components/tree-selector-list.d.ts.map +1 -1
  853. package/dist/modes/interactive/components/tree-selector-list.js +3 -0
  854. package/dist/modes/interactive/components/tree-selector-list.js.map +1 -1
  855. package/dist/modes/interactive/components/trust-selector.d.ts +1 -1
  856. package/dist/modes/interactive/components/trust-selector.d.ts.map +1 -1
  857. package/dist/modes/interactive/components/trust-selector.js +4 -0
  858. package/dist/modes/interactive/components/trust-selector.js.map +1 -1
  859. package/dist/modes/interactive/components/user-message-selector.d.ts +1 -1
  860. package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
  861. package/dist/modes/interactive/components/user-message-selector.js +4 -0
  862. package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  863. package/dist/modes/interactive/components/user-message.d.ts +4 -1
  864. package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
  865. package/dist/modes/interactive/components/user-message.js +10 -2
  866. package/dist/modes/interactive/components/user-message.js.map +1 -1
  867. package/dist/modes/interactive/external-editor.d.ts.map +1 -1
  868. package/dist/modes/interactive/external-editor.js +2 -1
  869. package/dist/modes/interactive/external-editor.js.map +1 -1
  870. package/dist/modes/interactive/interactive-agent-events.js +36 -18
  871. package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
  872. package/dist/modes/interactive/interactive-auth-login.js +9 -2
  873. package/dist/modes/interactive/interactive-auth-login.js.map +1 -1
  874. package/dist/modes/interactive/interactive-auth-routing.d.ts.map +1 -1
  875. package/dist/modes/interactive/interactive-auth-routing.js +5 -1
  876. package/dist/modes/interactive/interactive-auth-routing.js.map +1 -1
  877. package/dist/modes/interactive/interactive-bash-compact.js +16 -4
  878. package/dist/modes/interactive/interactive-bash-compact.js.map +1 -1
  879. package/dist/modes/interactive/interactive-deferred-startup.d.ts.map +1 -1
  880. package/dist/modes/interactive/interactive-deferred-startup.js +3 -0
  881. package/dist/modes/interactive/interactive-deferred-startup.js.map +1 -1
  882. package/dist/modes/interactive/interactive-editor-actions.js +2 -0
  883. package/dist/modes/interactive/interactive-editor-actions.js.map +1 -1
  884. package/dist/modes/interactive/interactive-extension-context.js +12 -7
  885. package/dist/modes/interactive/interactive-extension-context.js.map +1 -1
  886. package/dist/modes/interactive/interactive-extension-custom-ui.js +1 -0
  887. package/dist/modes/interactive/interactive-extension-custom-ui.js.map +1 -1
  888. package/dist/modes/interactive/interactive-extension-dialogs.js +7 -0
  889. package/dist/modes/interactive/interactive-extension-dialogs.js.map +1 -1
  890. package/dist/modes/interactive/interactive-extension-widgets.js +7 -24
  891. package/dist/modes/interactive/interactive-extension-widgets.js.map +1 -1
  892. package/dist/modes/interactive/interactive-input-handling.d.ts.map +1 -1
  893. package/dist/modes/interactive/interactive-input-handling.js +9 -8
  894. package/dist/modes/interactive/interactive-input-handling.js.map +1 -1
  895. package/dist/modes/interactive/interactive-mode-base.d.ts +52 -3
  896. package/dist/modes/interactive/interactive-mode-base.d.ts.map +1 -1
  897. package/dist/modes/interactive/interactive-mode-base.js +143 -5
  898. package/dist/modes/interactive/interactive-mode-base.js.map +1 -1
  899. package/dist/modes/interactive/interactive-mode-deps.d.ts +2 -2
  900. package/dist/modes/interactive/interactive-mode-deps.d.ts.map +1 -1
  901. package/dist/modes/interactive/interactive-mode-deps.js +2 -2
  902. package/dist/modes/interactive/interactive-mode-deps.js.map +1 -1
  903. package/dist/modes/interactive/interactive-mode-surface.d.ts +9 -3
  904. package/dist/modes/interactive/interactive-mode-surface.d.ts.map +1 -1
  905. package/dist/modes/interactive/interactive-mode-surface.js.map +1 -1
  906. package/dist/modes/interactive/interactive-mode.d.ts +1 -0
  907. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  908. package/dist/modes/interactive/interactive-mode.js +1 -0
  909. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  910. package/dist/modes/interactive/interactive-model-routing.js +107 -41
  911. package/dist/modes/interactive/interactive-model-routing.js.map +1 -1
  912. package/dist/modes/interactive/interactive-process-lifecycle.js +1 -1
  913. package/dist/modes/interactive/interactive-process-lifecycle.js.map +1 -1
  914. package/dist/modes/interactive/interactive-render-chat.js +24 -6
  915. package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
  916. package/dist/modes/interactive/interactive-selectors.js +44 -5
  917. package/dist/modes/interactive/interactive-selectors.js.map +1 -1
  918. package/dist/modes/interactive/interactive-session-runtime.js +1 -0
  919. package/dist/modes/interactive/interactive-session-runtime.js.map +1 -1
  920. package/dist/modes/interactive/interactive-slash-commands.js +9 -4
  921. package/dist/modes/interactive/interactive-slash-commands.js.map +1 -1
  922. package/dist/modes/interactive/interactive-startup.d.ts.map +1 -1
  923. package/dist/modes/interactive/interactive-startup.js +37 -18
  924. package/dist/modes/interactive/interactive-startup.js.map +1 -1
  925. package/dist/modes/interactive/interactive-tui.d.ts +21 -0
  926. package/dist/modes/interactive/interactive-tui.d.ts.map +1 -0
  927. package/dist/modes/interactive/interactive-tui.js +279 -0
  928. package/dist/modes/interactive/interactive-tui.js.map +1 -0
  929. package/dist/modes/interactive/streaming-assistant-message.d.ts +34 -0
  930. package/dist/modes/interactive/streaming-assistant-message.d.ts.map +1 -0
  931. package/dist/modes/interactive/streaming-assistant-message.js +76 -0
  932. package/dist/modes/interactive/streaming-assistant-message.js.map +1 -0
  933. package/dist/modes/interactive/theme/catppuccin-frappe.json +1 -0
  934. package/dist/modes/interactive/theme/catppuccin-latte.json +1 -0
  935. package/dist/modes/interactive/theme/catppuccin-macchiato.json +1 -0
  936. package/dist/modes/interactive/theme/catppuccin-mocha.json +1 -0
  937. package/dist/modes/interactive/theme/dark.json +1 -0
  938. package/dist/modes/interactive/theme/light.json +1 -0
  939. package/dist/modes/interactive/theme/terminal-detection.d.ts +10 -0
  940. package/dist/modes/interactive/theme/terminal-detection.d.ts.map +1 -1
  941. package/dist/modes/interactive/theme/terminal-detection.js +19 -0
  942. package/dist/modes/interactive/theme/terminal-detection.js.map +1 -1
  943. package/dist/modes/interactive/theme/theme-class.d.ts +2 -2
  944. package/dist/modes/interactive/theme/theme-class.d.ts.map +1 -1
  945. package/dist/modes/interactive/theme/theme-class.js +5 -1
  946. package/dist/modes/interactive/theme/theme-class.js.map +1 -1
  947. package/dist/modes/interactive/theme/theme-controller.d.ts +3 -1
  948. package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
  949. package/dist/modes/interactive/theme/theme-controller.js +10 -13
  950. package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
  951. package/dist/modes/interactive/theme/theme-loading.d.ts.map +1 -1
  952. package/dist/modes/interactive/theme/theme-loading.js +1 -0
  953. package/dist/modes/interactive/theme/theme-loading.js.map +1 -1
  954. package/dist/modes/interactive/theme/theme-schema.d.ts +4 -0
  955. package/dist/modes/interactive/theme/theme-schema.d.ts.map +1 -1
  956. package/dist/modes/interactive/theme/theme-schema.js +2 -1
  957. package/dist/modes/interactive/theme/theme-schema.js.map +1 -1
  958. package/dist/modes/interactive/theme/theme-schema.json +5 -1
  959. package/dist/modes/interactive/theme/theme.d.ts +1 -1
  960. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  961. package/dist/modes/interactive/theme/theme.js +1 -1
  962. package/dist/modes/interactive/theme/theme.js.map +1 -1
  963. package/dist/modes/interactive-engine/engine-custom-ui.d.ts +1 -1
  964. package/dist/modes/interactive-engine/engine-custom-ui.d.ts.map +1 -1
  965. package/dist/modes/interactive-engine/engine-custom-ui.js +28 -11
  966. package/dist/modes/interactive-engine/engine-custom-ui.js.map +1 -1
  967. package/dist/modes/interactive-engine/engine-render-service.js +3 -3
  968. package/dist/modes/interactive-engine/engine-render-service.js.map +1 -1
  969. package/dist/modes/interactive-engine/extension-ui-bridge.d.ts +2 -1
  970. package/dist/modes/interactive-engine/extension-ui-bridge.d.ts.map +1 -1
  971. package/dist/modes/interactive-engine/extension-ui-bridge.js +2 -2
  972. package/dist/modes/interactive-engine/extension-ui-bridge.js.map +1 -1
  973. package/dist/modes/interactive-engine/isolated-runtime.d.ts +7 -0
  974. package/dist/modes/interactive-engine/isolated-runtime.d.ts.map +1 -1
  975. package/dist/modes/interactive-engine/isolated-runtime.js +7 -0
  976. package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
  977. package/dist/modes/interactive-engine/protocol.d.ts +12 -10
  978. package/dist/modes/interactive-engine/protocol.d.ts.map +1 -1
  979. package/dist/modes/interactive-engine/protocol.js +18 -12
  980. package/dist/modes/interactive-engine/protocol.js.map +1 -1
  981. package/dist/modes/interactive-engine/remote-component.d.ts +11 -1
  982. package/dist/modes/interactive-engine/remote-component.d.ts.map +1 -1
  983. package/dist/modes/interactive-engine/remote-component.js +48 -8
  984. package/dist/modes/interactive-engine/remote-component.js.map +1 -1
  985. package/dist/modes/interactive-engine/terminal-mode-controller.d.ts +19 -12
  986. package/dist/modes/interactive-engine/terminal-mode-controller.d.ts.map +1 -1
  987. package/dist/modes/interactive-engine/terminal-mode-controller.js +54 -35
  988. package/dist/modes/interactive-engine/terminal-mode-controller.js.map +1 -1
  989. package/dist/modes/json-event.d.ts +28 -0
  990. package/dist/modes/json-event.d.ts.map +1 -0
  991. package/dist/modes/json-event.js +12 -0
  992. package/dist/modes/json-event.js.map +1 -0
  993. package/dist/modes/print-mode.d.ts.map +1 -1
  994. package/dist/modes/print-mode.js +2 -1
  995. package/dist/modes/print-mode.js.map +1 -1
  996. package/dist/modes/rpc/rpc-client-process.d.ts +1 -0
  997. package/dist/modes/rpc/rpc-client-process.d.ts.map +1 -1
  998. package/dist/modes/rpc/rpc-client-process.js +5 -1
  999. package/dist/modes/rpc/rpc-client-process.js.map +1 -1
  1000. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  1001. package/dist/modes/rpc/rpc-client.js +7 -2
  1002. package/dist/modes/rpc/rpc-client.js.map +1 -1
  1003. package/dist/modes/rpc/rpc-command-handler.js +1 -1
  1004. package/dist/modes/rpc/rpc-command-handler.js.map +1 -1
  1005. package/dist/modes/rpc/rpc-event-buffer.d.ts +9 -0
  1006. package/dist/modes/rpc/rpc-event-buffer.d.ts.map +1 -1
  1007. package/dist/modes/rpc/rpc-event-buffer.js +10 -5
  1008. package/dist/modes/rpc/rpc-event-buffer.js.map +1 -1
  1009. package/dist/modes/rpc/rpc-extension-ui.d.ts.map +1 -1
  1010. package/dist/modes/rpc/rpc-extension-ui.js +3 -0
  1011. package/dist/modes/rpc/rpc-extension-ui.js.map +1 -1
  1012. package/dist/modes/rpc/rpc-input.js +1 -1
  1013. package/dist/modes/rpc/rpc-input.js.map +1 -1
  1014. package/dist/modes/rpc/rpc-output-buffer.d.ts +9 -0
  1015. package/dist/modes/rpc/rpc-output-buffer.d.ts.map +1 -1
  1016. package/dist/modes/rpc/rpc-output-buffer.js +10 -5
  1017. package/dist/modes/rpc/rpc-output-buffer.js.map +1 -1
  1018. package/dist/modes/rpc/rpc-provider-auth.d.ts.map +1 -1
  1019. package/dist/modes/rpc/rpc-provider-auth.js +3 -0
  1020. package/dist/modes/rpc/rpc-provider-auth.js.map +1 -1
  1021. package/dist/modes/rpc/rpc-responses.d.ts +1 -1
  1022. package/dist/modes/rpc/rpc-responses.d.ts.map +1 -1
  1023. package/dist/modes/rpc/rpc-responses.js +13 -1
  1024. package/dist/modes/rpc/rpc-responses.js.map +1 -1
  1025. package/dist/modes/rpc/rpc-session-binding.d.ts.map +1 -1
  1026. package/dist/modes/rpc/rpc-session-binding.js +2 -1
  1027. package/dist/modes/rpc/rpc-session-binding.js.map +1 -1
  1028. package/dist/modes/rpc/rpc-types.d.ts +9 -2
  1029. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  1030. package/dist/modes/rpc/rpc-types.js.map +1 -1
  1031. package/dist/rpc-entry.js +2 -0
  1032. package/dist/rpc-entry.js.map +1 -1
  1033. package/dist/self-update-plan.d.ts.map +1 -1
  1034. package/dist/self-update-plan.js +5 -4
  1035. package/dist/self-update-plan.js.map +1 -1
  1036. package/dist/server/create-harness.d.ts +53 -0
  1037. package/dist/server/create-harness.d.ts.map +1 -0
  1038. package/dist/server/create-harness.js +349 -0
  1039. package/dist/server/create-harness.js.map +1 -0
  1040. package/dist/utils/agent-attribution.d.ts +2 -0
  1041. package/dist/utils/agent-attribution.d.ts.map +1 -0
  1042. package/dist/utils/agent-attribution.js +2 -0
  1043. package/dist/utils/agent-attribution.js.map +1 -0
  1044. package/dist/utils/child-process.d.ts +3 -1
  1045. package/dist/utils/child-process.d.ts.map +1 -1
  1046. package/dist/utils/child-process.js +24 -4
  1047. package/dist/utils/child-process.js.map +1 -1
  1048. package/dist/utils/clipboard-image.d.ts.map +1 -1
  1049. package/dist/utils/clipboard-image.js +2 -1
  1050. package/dist/utils/clipboard-image.js.map +1 -1
  1051. package/dist/utils/clipboard.d.ts.map +1 -1
  1052. package/dist/utils/clipboard.js +12 -3
  1053. package/dist/utils/clipboard.js.map +1 -1
  1054. package/dist/utils/management-http.d.ts +23 -0
  1055. package/dist/utils/management-http.d.ts.map +1 -0
  1056. package/dist/utils/management-http.js +50 -0
  1057. package/dist/utils/management-http.js.map +1 -0
  1058. package/dist/utils/open-browser.d.ts.map +1 -1
  1059. package/dist/utils/open-browser.js +2 -1
  1060. package/dist/utils/open-browser.js.map +1 -1
  1061. package/dist/utils/paths.d.ts +2 -0
  1062. package/dist/utils/paths.d.ts.map +1 -1
  1063. package/dist/utils/paths.js +13 -0
  1064. package/dist/utils/paths.js.map +1 -1
  1065. package/dist/utils/shell.d.ts.map +1 -1
  1066. package/dist/utils/shell.js +17 -4
  1067. package/dist/utils/shell.js.map +1 -1
  1068. package/dist/utils/tool-result-images.d.ts +17 -0
  1069. package/dist/utils/tool-result-images.d.ts.map +1 -0
  1070. package/dist/utils/tool-result-images.js +41 -0
  1071. package/dist/utils/tool-result-images.js.map +1 -0
  1072. package/dist/utils/tools-manager.d.ts.map +1 -1
  1073. package/dist/utils/tools-manager.js +7 -8
  1074. package/dist/utils/tools-manager.js.map +1 -1
  1075. package/dist/utils/version-check.d.ts +4 -0
  1076. package/dist/utils/version-check.d.ts.map +1 -1
  1077. package/dist/utils/version-check.js +20 -2
  1078. package/dist/utils/version-check.js.map +1 -1
  1079. package/docs/compaction.md +2 -1
  1080. package/docs/custom-provider.md +15 -7
  1081. package/docs/development.md +1 -0
  1082. package/docs/docs.json +1 -0
  1083. package/docs/environment-variables.md +5 -1
  1084. package/docs/extensions.md +102 -18
  1085. package/docs/i-have-adhd.md +36 -0
  1086. package/docs/intercom.md +45 -26
  1087. package/docs/json.md +2 -2
  1088. package/docs/keybindings.md +55 -12
  1089. package/docs/models/model-selection.md +34 -8
  1090. package/docs/models.md +28 -3
  1091. package/docs/providers.md +20 -2
  1092. package/docs/quickstart.md +10 -6
  1093. package/docs/rpc.md +18 -12
  1094. package/docs/sdk.md +44 -8
  1095. package/docs/security.md +10 -10
  1096. package/docs/session-format.md +15 -0
  1097. package/docs/sessions.md +10 -0
  1098. package/docs/settings.md +31 -5
  1099. package/docs/subagents.md +27 -54
  1100. package/docs/themes.md +5 -3
  1101. package/docs/tools.md +23 -5
  1102. package/docs/tui.md +41 -24
  1103. package/docs/usage.md +41 -15
  1104. package/docs/windows.md +3 -1
  1105. package/docs/workflows.md +262 -38
  1106. package/examples/extensions/custom-provider-anthropic/index.ts +9 -2
  1107. package/examples/extensions/custom-provider-gitlab-duo/index.ts +9 -2
  1108. package/examples/extensions/modal-editor.ts +8 -10
  1109. package/examples/extensions/rainbow-editor.ts +3 -2
  1110. package/examples/extensions/subagent/README.md +16 -45
  1111. package/examples/extensions/subagent/index.ts +6 -96
  1112. package/examples/extensions/subagent/render.ts +0 -78
  1113. package/examples/extensions/subagent/runner.ts +0 -3
  1114. package/examples/extensions/subagent/schemas.ts +0 -13
  1115. package/examples/extensions/subagent/types.ts +1 -2
  1116. package/examples/sdk/09-api-keys-and-oauth.ts +6 -2
  1117. package/examples/sdk/12-full-control.ts +8 -2
  1118. package/examples/sdk/README.md +4 -1
  1119. package/npm-shrinkwrap.json +191 -634
  1120. package/package.json +14 -7
  1121. package/dist/builtin/subagents/src/agents/chain-serializer.ts +0 -257
  1122. package/dist/builtin/subagents/src/runs/background/async-job-tracker.ts +0 -250
  1123. package/dist/builtin/subagents/src/runs/foreground/chain-execution-details.ts +0 -38
  1124. package/dist/builtin/subagents/src/runs/foreground/chain-execution-dynamic-step.ts +0 -280
  1125. package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-runner.ts +0 -217
  1126. package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-step.ts +0 -271
  1127. package/dist/builtin/subagents/src/runs/foreground/chain-execution-sequential-step.ts +0 -271
  1128. package/dist/builtin/subagents/src/runs/foreground/chain-execution-types.ts +0 -200
  1129. package/dist/builtin/subagents/src/runs/foreground/chain-execution.ts +0 -184
  1130. package/dist/builtin/subagents/src/runs/foreground/execution-structured-retries.ts +0 -19
  1131. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-async.ts +0 -190
  1132. package/dist/builtin/subagents/src/runs/foreground/subagent-executor-chain.ts +0 -109
  1133. package/dist/builtin/subagents/src/runs/inprocess/background-single.ts +0 -179
  1134. package/dist/builtin/subagents/src/runs/inprocess/background.ts +0 -89
  1135. package/dist/builtin/subagents/src/runs/shared/chain-outputs.ts +0 -126
  1136. package/dist/builtin/subagents/src/runs/shared/dynamic-fanout.ts +0 -393
  1137. package/dist/builtin/subagents/src/runs/shared/structured-output.ts +0 -150
  1138. package/dist/builtin/subagents/src/runs/shared/workflow-graph.ts +0 -232
  1139. package/dist/builtin/subagents/src/shared/types-async.ts +0 -270
  1140. package/dist/builtin/subagents/src/slash/saved-chain-mapping.ts +0 -60
  1141. package/dist/builtin/subagents/src/tui/render-chain-graph.ts +0 -341
  1142. package/dist/builtin/subagents/src/tui/render-widget-graph.ts +0 -266
  1143. package/dist/builtin/subagents/src/tui/render-widget.ts +0 -366
  1144. package/dist/core/async/format.d.ts +0 -3
  1145. package/dist/core/async/format.d.ts.map +0 -1
  1146. package/dist/core/async/format.js +0 -52
  1147. package/dist/core/async/format.js.map +0 -1
  1148. package/dist/core/async/job-manager.d.ts +0 -40
  1149. package/dist/core/async/job-manager.d.ts.map +0 -1
  1150. package/dist/core/async/job-manager.js +0 -293
  1151. package/dist/core/async/job-manager.js.map +0 -1
  1152. package/dist/core/async/session-manager.d.ts +0 -16
  1153. package/dist/core/async/session-manager.d.ts.map +0 -1
  1154. package/dist/core/async/session-manager.js +0 -34
  1155. package/dist/core/async/session-manager.js.map +0 -1
  1156. package/dist/core/async/types.d.ts +0 -23
  1157. package/dist/core/async/types.d.ts.map +0 -1
  1158. package/dist/core/async/types.js +0 -2
  1159. package/dist/core/async/types.js.map +0 -1
  1160. package/dist/core/tools/bash-async-execution.d.ts +0 -25
  1161. package/dist/core/tools/bash-async-execution.d.ts.map +0 -1
  1162. package/dist/core/tools/bash-async-execution.js +0 -78
  1163. package/dist/core/tools/bash-async-execution.js.map +0 -1
  1164. package/dist/core/tools/bash-async-jobs.d.ts +0 -30
  1165. package/dist/core/tools/bash-async-jobs.d.ts.map +0 -1
  1166. package/dist/core/tools/bash-async-jobs.js +0 -87
  1167. package/dist/core/tools/bash-async-jobs.js.map +0 -1
  1168. package/dist/core/tools/bash-async-output.d.ts +0 -12
  1169. package/dist/core/tools/bash-async-output.d.ts.map +0 -1
  1170. package/dist/core/tools/bash-async-output.js +0 -87
  1171. package/dist/core/tools/bash-async-output.js.map +0 -1
  1172. package/examples/extensions/subagent/prompts/implement-and-review.md +0 -10
  1173. package/examples/extensions/subagent/prompts/implement.md +0 -10
  1174. package/examples/extensions/subagent/prompts/scout-and-plan.md +0 -9
@@ -10,7 +10,7 @@ After editing `keybindings.json`, run `/reload` in Atomic to apply the changes w
10
10
 
11
11
  ## Key Format
12
12
 
13
- `modifier+key` where modifiers are `ctrl`, `shift`, `alt` (combinable) and keys are:
13
+ `modifier+key` where modifiers are `ctrl`, `shift`, `alt`, or `super` (combinable) and keys are:
14
14
 
15
15
  - **Letters:** `a-z`
16
16
  - **Digits:** `0-9`
@@ -18,7 +18,7 @@ After editing `keybindings.json`, run `/reload` in Atomic to apply the changes w
18
18
  - **Function:** `f1`-`f12`
19
19
  - **Symbols:** `` ` ``, `-`, `=`, `[`, `]`, `\`, `;`, `'`, `,`, `.`, `/`, `!`, `@`, `#`, `$`, `%`, `^`, `&`, `*`, `(`, `)`, `_`, `+`, `|`, `~`, `{`, `}`, `:`, `<`, `>`, `?`
20
20
 
21
- Modifier combinations: `ctrl+shift+x`, `alt+ctrl+x`, `ctrl+shift+alt+x`, `ctrl+1`, etc.
21
+ Modifier combinations: `ctrl+shift+x`, `alt+ctrl+x`, `ctrl+shift+alt+x`, `ctrl+super+x`, `ctrl+1`, etc. `super` depends on terminal support.
22
22
 
23
23
  ## All Actions
24
24
 
@@ -32,12 +32,16 @@ Modifier combinations: `ctrl+shift+x`, `alt+ctrl+x`, `ctrl+shift+alt+x`, `ctrl+1
32
32
  | `tui.editor.cursorRight` | `right`, `ctrl+f` | Move cursor right |
33
33
  | `tui.editor.cursorWordLeft` | `alt+left`, `ctrl+left`, `alt+b` | Move cursor word left |
34
34
  | `tui.editor.cursorWordRight` | `alt+right`, `ctrl+right`, `alt+f` | Move cursor word right |
35
- | `tui.editor.cursorLineStart` | `home`, `ctrl+a` | Move to line start |
36
- | `tui.editor.cursorLineEnd` | `end`, `ctrl+e` | Move to line end |
35
+ | `tui.editor.historyPrevious` | *(none)* | Select the previous prompt history entry |
36
+ | `tui.editor.historyNext` | *(none)* | Select the next prompt history entry |
37
+ | `tui.editor.cursorLineStart` | `home`, `ctrl+home`, `ctrl+a` | Move to line start |
38
+ | `tui.editor.cursorLineEnd` | `end`, `ctrl+end`, `ctrl+e` | Move to line end |
37
39
  | `tui.editor.jumpForward` | `ctrl+]` | Jump forward to character |
38
40
  | `tui.editor.jumpBackward` | `ctrl+alt+]` | Jump backward to character |
39
- | `tui.editor.pageUp` | `pageUp` | Scroll up by page |
40
- | `tui.editor.pageDown` | `pageDown` | Scroll down by page |
41
+ | `tui.editor.pageUp` | `pageUp`, `ctrl+pageUp` | Scroll up by page |
42
+ | `tui.editor.pageDown` | `pageDown`, `ctrl+pageDown` | Scroll down by page |
43
+
44
+ The dedicated history actions always change history entries, regardless of the cursor position in a multiline prompt. Explicit history bindings take precedence over ordinary application action handlers while the main editor is focused, so binding `tui.editor.historyPrevious` to `ctrl+p` or `tui.editor.historyNext` to `ctrl+n` overrides those app actions without changing the same keys in selectors.
41
45
 
42
46
  ### TUI Editor Deletion
43
47
 
@@ -54,7 +58,7 @@ Modifier combinations: `ctrl+shift+x`, `alt+ctrl+x`, `ctrl+shift+alt+x`, `ctrl+1
54
58
 
55
59
  | Keybinding id | Default | Description |
56
60
  |--------|---------|-------------|
57
- | `tui.input.newLine` | `shift+enter` | Insert new line |
61
+ | `tui.input.newLine` | `shift+enter`, `ctrl+j` | Insert new line |
58
62
  | `tui.input.submit` | `enter` | Submit input |
59
63
  | `tui.input.tab` | `tab` | Tab / autocomplete |
60
64
 
@@ -78,6 +82,37 @@ Modifier combinations: `ctrl+shift+x`, `alt+ctrl+x`, `ctrl+shift+alt+x`, `ctrl+1
78
82
  | `tui.select.confirm` | `enter` | Confirm selection |
79
83
  | `tui.select.cancel` | `escape`, `ctrl+c` | Cancel selection |
80
84
 
85
+ ### TUI Fullscreen Viewport
86
+
87
+ Interactive sessions always use this fullscreen viewport for the primary transcript scroll region. Mouse-wheel input scrolls the region under the pointer, falling back to the transcript over the fixed editor/status/footer dock. Clicking an OSC 8 hyperlink opens it in the default handler. Dragging with the primary mouse button selects text and copies it to the clipboard.
88
+
89
+
90
+ Fullscreen text selection comes from the installed pi-tui 0.84.1 renderer. Drag with the primary button to select characters; double-click selects a word and triple-click selects a line. Focus changes and non-drag clicks clear transient selection state, preventing a stale highlight from appearing. The renderer also reduces mouse tracking in tmux, Zellij, and GNU Screen.
91
+ Fullscreen transcript bindings take precedence over editor bindings while the main editor has focus. The default unmodified navigation keys therefore control the transcript, while their `ctrl` variants continue to control the editor. When a fullscreen overlay or inline custom component has focus, Atomic sends matching viewport bindings to that component first. Returning `true` keeps the key local. For an in-process component, returning `false`, `undefined`, or `void` lets transcript scrolling handle it. A remote component's correlated reply falls through on `false`, failure, or timeout; `undefined` after disposal is dropped because that component no longer owns focus.
92
+
93
+ | Key | Editor action | Fullscreen action |
94
+ |-----|---------------|------------------|
95
+ | `home`, `end` | Editor | Transcript |
96
+ | `ctrl+home`, `ctrl+end` | Editor | Editor |
97
+ | `pageUp`, `pageDown` | Editor | Transcript |
98
+ | `ctrl+pageUp`, `ctrl+pageDown` | Editor | Editor |
99
+
100
+ This routing remains configurable through the ordinary action bindings. For example, `"tui.altScreen.pageUp": "ctrl+pageUp"` makes `pageUp` control the editor and `ctrl+pageUp` control the transcript in fullscreen mode. Bind `tui.altScreen.halfPageUp` and `tui.altScreen.halfPageDown` for smaller transcript steps while keeping the full-page bindings. Setting `"tui.altScreen.pageUp": []` disables that transcript shortcut entirely. User bindings replace the defaults for that action.
101
+ When a fullscreen overlay or inline custom component owns focus, it receives matching `pageUp`, `pageDown`, `home`, `end`, and custom `tui.altScreen.*` bindings before transcript scrolling. Its handler returns `true` when it consumes the key; an unhandled result lets transcript scrolling proceed. Remote components receive a correlated reply and have a bounded fallback if the engine stalls. Mouse-wheel and click sequences follow the same focused-component route, so workflow graphs and stage chats can consume them before unhandled events fall through to the fullscreen viewport.
102
+
103
+ | Keybinding id | Default | Description |
104
+ |--------|---------|-------------|
105
+ | `tui.altScreen.pageUp` | `pageUp` | Scroll the transcript up by one page |
106
+ | `tui.altScreen.pageDown` | `pageDown` | Scroll the transcript down by one page |
107
+ | `tui.altScreen.halfPageUp` | *(none)* | Scroll the transcript up by half a page |
108
+ | `tui.altScreen.halfPageDown` | *(none)* | Scroll the transcript down by half a page |
109
+ | `tui.altScreen.previousPrompt` | `ctrl+shift+up` | Jump to the previous marked message |
110
+ | `tui.altScreen.nextPrompt` | `ctrl+shift+down` | Jump to the next marked message |
111
+ | `tui.altScreen.top` | `home` | Scroll to the beginning of the transcript |
112
+ | `tui.altScreen.bottom` | `end` | Scroll to the transcript end and follow new output |
113
+
114
+ On Windows, pressing the secondary mouse button in fullscreen pastes text from the system clipboard into the focused component.
115
+
81
116
  ### Application
82
117
 
83
118
  | Keybinding id | Default | Description |
@@ -87,11 +122,19 @@ Modifier combinations: `ctrl+shift+x`, `alt+ctrl+x`, `ctrl+shift+alt+x`, `ctrl+1
87
122
  | `app.exit` | `ctrl+d` | Exit (when editor empty) |
88
123
  | `app.suspend` | `ctrl+z` (none on Windows) | Suspend to background |
89
124
  | `app.editor.external` | `ctrl+g` | Open in external editor (`$VISUAL` or `$EDITOR`) |
90
- | `app.clipboard.pasteImage` | `ctrl+v` (`alt+v` on Windows) | Paste image from clipboard |
125
+ | `app.clipboard.pasteImage` | `ctrl+v` (`alt+v` on Windows) | Paste image or text from clipboard |
91
126
  | `app.message.copy` | `ctrl+x` | Copy the last assistant message (or the selected message in `/tree`) |
92
127
 
128
+ In fullscreen mode, a successful `app.message.copy` shortcut shows a short `Copied!` flash without adding a row to the fixed status dock. The `/copy` command keeps its normal status-line confirmation.
129
+
93
130
  When `app.clipboard.pasteImage` finds text rather than an image, Atomic inserts that clipboard text into the editor instead of reporting an image-paste failure.
94
131
 
132
+ On macOS, native `Cmd+V` also pastes a clipboard image when the copy was image-only. Terminals may deliver that as an empty bracketed-paste event or (with Kitty keyboard protocol, e.g. Ghostty) as `super+v`. Text under `Cmd+V` still goes through normal terminal paste when the terminal sends a paste event. `Cmd+V` is not a configurable Atomic keybinding.
133
+
134
+ Inside tmux on macOS, `Ctrl+V` is the reliable image-paste shortcut; native `Cmd+V` depends on terminal forwarding. VS Code's terminal may forward the empty bracketed-paste route through tmux, while Ghostty may not forward its Kitty `super+v` route through tmux. This is terminal forwarding behavior, not an Atomic defect.
135
+
136
+ When the clipboard has both text and an image, behavior depends on the terminal: empty-paste terminals may insert the text on `Cmd+V`, while Kitty-protocol terminals that deliver `super+v` go through the image path (same preference as `Ctrl+V`). `Ctrl+V` always prefers the image. Apple Terminal may send nothing for image-only paste; use Ghostty/iTerm/Kitty or `Ctrl+V` in that case.
137
+
95
138
  A held paused queue by itself is idle for Ctrl+C handling. After an interruption settles, the next Ctrl+C clears the editor without releasing or dequeuing the hold, and a second quick idle press exits normally.
96
139
 
97
140
  In interactive sessions the agent runs in a supervised engine child (see [Extensions](/extensions#interactive-callback-isolation)). Escape there requests the engine's cooperative cancellation and waits for it with no deadline; it never terminates or replaces the engine.
@@ -174,8 +217,8 @@ Create `~/.atomic/agent/keybindings.json`:
174
217
 
175
218
  ```json
176
219
  {
177
- "tui.editor.cursorUp": ["up", "ctrl+p"],
178
- "tui.editor.cursorDown": ["down", "ctrl+n"],
220
+ "tui.editor.historyPrevious": "ctrl+p",
221
+ "tui.editor.historyNext": "ctrl+n",
179
222
  "tui.editor.deleteWordBackward": ["ctrl+w", "alt+backspace"]
180
223
  }
181
224
  ```
@@ -188,8 +231,8 @@ On native Windows, `app.suspend` has no default binding because Windows terminal
188
231
 
189
232
  ```json
190
233
  {
191
- "tui.editor.cursorUp": ["up", "ctrl+p"],
192
- "tui.editor.cursorDown": ["down", "ctrl+n"],
234
+ "tui.editor.historyPrevious": "ctrl+p",
235
+ "tui.editor.historyNext": "ctrl+n",
193
236
  "tui.editor.cursorLeft": ["left", "ctrl+b"],
194
237
  "tui.editor.cursorRight": ["right", "ctrl+f"],
195
238
  "tui.editor.cursorWordLeft": ["alt+left", "alt+b"],
@@ -17,11 +17,22 @@ It is a **static reference**. It does not change runtime model routing — routi
17
17
  The table below is a snapshot of the [DeepSWE](https://deepswe.datacurve.ai/) leaderboard (v1.1, best effort per model), a long-horizon coding-agent benchmark reporting `pass@1` and average dollars per task. Benchmarks and pricing drift and new models ship constantly, so **treat the live leaderboards as authoritative** and refresh this page from them rather than hand-maintaining scores. See [Benchmark sources & when to reference each](/models/artificial-analysis-index). **Last compiled: 2026-07-17.**
18
18
  </Note>
19
19
 
20
+ ## Benchmark levels are measurement settings
21
+
22
+ The thinking level in brackets in the chart is the **measurement configuration used for that benchmark result**, not a universal workflow default. A score measured at `max` does not mean every stage using that model should use `max`; benchmark model identity and production thinking effort are separate choices. When authoring a workflow, choose effort from the stage role and cost of being wrong, then verify that the configured model catalog supports the level.
23
+
24
+ ## Pin model identity
25
+
26
+ When a workflow needs an exact model, call `workflow({ action: "models" })` and pin a returned `fullId`. Do not pin a
27
+ bare model ID: the same exact model ID can belong to more than one provider. For a bare exact `--model` ID, Atomic
28
+ uses the sole matching provider with configured authentication; if none or more than one match is authenticated, it
29
+ reports the ambiguity. Use `--provider <provider> --model <id>` or `--model <provider>/<id>` to choose explicitly.
30
+
20
31
  ## Recommendation chart
21
32
 
22
33
  The Pareto frontier — models where nothing else is both cheaper and more accurate — is currently **gpt-5.6-sol** (accuracy ceiling), **gpt-5.6-terra**, **kimi-k3**, **gpt-5.6-luna**, **grok-4.5**, and **muse-spark-1.1**. Everything else is dominated and earns a place only through role fit or provider diversity. For the frontier reasoning, see [Pareto Efficiency](/models/pareto-efficiency).
23
34
 
24
- | Model [level] | pass@1 | $/task | Verdict | Use it for |
35
+ | Model [benchmark measurement level] | pass@1 | $/task | Verdict | Use it for |
25
36
  | --- | --- | --- | --- | --- |
26
37
  | gpt-5.6-sol [max] | 73% | $8.39 | Accuracy ceiling / frontier | Judgment gates where a wrong verdict wastes a whole loop, and the hardest debugging; current top scorer |
27
38
  | gpt-5.6-terra [max] | 70% | $4.95 | Frontier — best top-tier value | High-accuracy default for reviewers and planners; matches fable-5's accuracy at ~4× lower cost |
@@ -44,17 +55,32 @@ The Pareto frontier — models where nothing else is both cheaper and more accur
44
55
  Scores above are DeepSWE `pass@1` with ±CI omitted for readability; see the [live leaderboard](https://deepswe.datacurve.ai/) for confidence intervals, output-token, and step counts. A model absent from both DeepSWE and Artificial Analysis should be marked **unmeasured** rather than assigned a guessed score — unmeasured models may still remain operational defaults.
45
56
  </Note>
46
57
 
58
+ ## Role-based thinking effort
59
+
60
+ Use this table when the user has not requested a thinking level. It is a production default by stage role, not a claim about the level used by any benchmark row:
61
+
62
+ | Stage role | Default thinking level | Why |
63
+ | --- | --- | --- |
64
+ | Security, identity, adversarial challenge, final approval | `max` | A wrong judgment can create a high-risk false approval or waste a full downstream loop. |
65
+ | Codebase mapping, lifecycle analysis, compatibility, planning, synthesis, triage, repair | `high` | These stages must resolve demanding uncertainty and preserve evidence across handoffs; routine synthesis may use `medium` when evidence quality holds. |
66
+ | User-impact review and final reporting | `medium` | Clear evidence-backed summaries usually do not need the deepest reasoning. |
67
+ | Deterministic checks | No model call | Run typechecks, tests, schema checks, runtime probes, and artifact checks as durable tool nodes. |
68
+
69
+ Reserve `max` for a high-cost-of-error role or an explicit user request. An explicit request wins over this role default, but the requested level still must appear in the configured catalog; do not invent an unsupported suffix. For each primary and fallback, choose a level for the same stage role independently. A fallback is not a reason to inherit `max` mechanically: use the role default at a supported level, choose another catalog model when needed, or leave the stage unpinned rather than guessing.
70
+
47
71
  ## Scenario-based guidance
48
72
 
49
73
  Pick by the cost of being wrong in each role, not by raw accuracy. Match the role to the benchmark that best measures it (see [Benchmark sources](/models/artificial-analysis-index)).
50
74
 
51
- - **Reviewer / judgment gates** — a wrong verdict discards an entire loop, so pay for accuracy: `gpt-5.6-sol [max]` primary, `gpt-5.6-terra` as reviewer-B, and a different family (`kimi-k3` or `glm-5.2`) as reviewer-C for decorrelated errors. Benchmark to weight: DeepSWE pass@1 and the AA Agentic Index.
52
- - **Planner** — `gpt-5.6-terra [max]` for high-accuracy planning at reasonable cost; `gpt-5.6-sol` when the plan gates an expensive loop.
53
- - **Debugger** — `gpt-5.6-sol [max]` primary; deep reasoning pays off where root-causing is expensive. Benchmark to weight: DeepSWE pass@1, Terminal-Bench.
54
- - **Research** — `gpt-5.6-luna [max]` as the workhorse, with `kimi-k3` in the fallback chain for provider diversity. Benchmark to weight: AA-LCR (long context), AA-Omniscience (factual reliability).
55
- - **Orchestrator / worker / cheap loops** — `gpt-5.6-luna [max]` for the main worker and code-simplifier subagents; `grok-4.5 [high]` or `muse-spark-1.1 [xhigh]` for trivial mechanical one-shots.
56
- - **Design** — a quality-first, unbenchmarked domain; keep a top-tier model (`gpt-5.6-sol` or `claude-fable-5`) here and rely on human judgment rather than a score.
57
- - **Interactive coding sessions** — `gpt-5.6-terra [max]` as a balanced default.
75
+ - **Reviewer / judgment gates** — use `max` when the reviewer makes a security, identity, adversarial, or final-approval decision whose wrong verdict discards an entire loop. `gpt-5.6-sol` remains the accuracy-first model recommendation; use a different family for reviewer-B/C when decorrelated errors matter. Benchmark to weight: DeepSWE pass@1 and the AA Agentic Index.
76
+ - **Codebase mapping / planner** — start at `high` for repository mapping, lifecycle analysis, compatibility, and plans. `gpt-5.6-terra` is a strong fit; raise to `max` only when the plan itself gates a high-cost loop or the user asks for it.
77
+ - **Debugger / triage / repair** — start at `high`; deep reasoning pays off when root-causing or repairing is costly, but `max` is not the blanket debugger setting. Benchmark to weight: DeepSWE pass@1 and Terminal-Bench.
78
+ - **Research / synthesis** — use `high` for demanding research and evidence reconciliation; use `medium` for routine synthesis when the evidence is already strong. `gpt-5.6-luna` is the workhorse model recommendation. Benchmark to weight: AA-LCR (long context) and AA-Omniscience (factual reliability).
79
+ - **Orchestrator / worker / cheap loops** — use `high` for demanding workers and `medium` or lower for routine or mechanical loops when their evidence remains sufficient. `gpt-5.6-luna`, `grok-4.5`, and `muse-spark-1.1` are role-fit choices; their bracketed chart levels are measurements, not defaults.
80
+ - **User-impact review / final reporting** — use `medium` for impact summaries and reports that preserve the evidence needed by the user. Do not spend `max` here unless the user explicitly requests it or the role has become a high-cost-of-error approval.
81
+ - **Design** — a quality-first, unbenchmarked domain; keep a top-tier model (`gpt-5.6-sol` or `claude-fable-5`) when the design decision has high failure cost, and choose effort by the review or approval role rather than by the benchmark row.
82
+ - **Interactive coding sessions** — use `high` for complex, multi-step coding and `medium` for routine edits; reserve `max` for a high-cost-of-error judgment or an explicit user request.
83
+ - **Deterministic checks** — make typechecks, tests, schema validation, runtime probes, and artifact inspection tool nodes with no model call. Model self-report is not verification evidence.
58
84
 
59
85
  ## Related
60
86
 
package/docs/models.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Add custom providers and models (Ollama, vLLM, LM Studio, proxies) via the single `models.json` in the active Atomic agent directory, normally `~/.atomic/agent/models.json`, or the directory selected by `ATOMIC_CODING_AGENT_DIR`/`PI_CODING_AGENT_DIR`. Atomic reads only that file: it does not read project-scoped `.atomic/models.json`, fall back to `~/.pi/agent/models.json`, or merge `.pi` and `.atomic` model configuration files. The legacy `.pi` read fallback remains available for configuration surfaces that explicitly use layered config paths, such as `auth.json`; it does not apply to `models.json`.
4
4
 
5
- The interactive `/model` selector renders the current authenticated snapshot immediately and refreshes network-backed catalogs in the background for up to 15 seconds. The direct `/model <model_name>` route searches under the same deadline and falls back to cached models when refresh stalls or fails. The terminal owns that deadline: it stops waiting and replaces `Refreshing model catalogs…` with a cached-model timeout or error status even when lower-level work rejects or ignores cancellation. In isolated-engine sessions the same deadline covers both credential reload and catalog work inside the engine, and model selection does not queue behind the refresh. Login and logout publish credential changes independently of catalog refresh, and a refresh that started against an older credential generation is discarded instead of restoring stale provider availability. A slow catalog therefore falls back to cached models without requiring an `auth.json` or `~/.atomic` reset.
5
+ The interactive `/model` selector and `/scoped-models` render the current authenticated snapshot immediately and refresh network-backed catalogs in the background for up to 15 seconds. A direct `/model <model_name>` checks an exact cached match first; only a miss waits for the same bounded refresh, then falls back to the current cache when refresh stalls or fails. Closing either selector cancels its background refresh. The terminal owns that deadline: it stops waiting and replaces `Refreshing model catalogs…` with a cached-model timeout or error status even when lower-level work rejects or ignores cancellation. In isolated-engine sessions the same deadline covers both credential reload and catalog work inside the engine, and model selection does not queue behind the refresh. Login and logout publish credential changes independently of catalog refresh, and a refresh that started against an older credential generation is discarded instead of restoring stale provider availability. A slow catalog therefore falls back to cached models without requiring an `auth.json` or `~/.atomic` reset.
6
6
 
7
7
  A complete `defaultProvider`/`defaultModel` pair in `settings.json` is resolved after built-in, configured, and extension providers register. If the provider remains unsupported, interactive mode reports a generic saved-configuration warning and leaves model selection open instead of routing the session to a different provider. Print and JSON modes write that diagnostic to stderr and exit nonzero before prompting, keeping JSON stdout JSONL-clean. RPC rejects `prompt` with the same correlated diagnostic until an explicit successful `set_model` selects an available model or an explicit model cycle returns a different available model. A null or unchanged cycle result does not clear the condition. If the provider is supported but the model is unknown or lacks authentication, normal automatic selection of an available authenticated model continues. Valid custom- and extension-provider defaults resolve once their provider registration is available. See [Settings](/settings#model--thinking).
8
8
 
@@ -196,6 +196,8 @@ If your command is slow, expensive, rate-limited, or should keep using a previou
196
196
  }
197
197
  ```
198
198
 
199
+ In `models.json`, `headers` values must be strings. A `null` suppression marker is supplied only by provider/catalog auth or a `before_provider_headers` extension hook; when present there, `null` suppresses the provider's default header with the same name.
200
+
199
201
  ## Model Configuration
200
202
 
201
203
  | Field | Required | Default | Description |
@@ -208,6 +210,7 @@ If your command is slow, expensive, rate-limited, or should keep using a previou
208
210
  | `input` | No | `["text"]` | Input types: `["text"]` or `["text", "image"]` |
209
211
  | `contextWindow` | No | `128000` | Default/effective context window size in tokens |
210
212
  | `maxTokens` | No | `16384` | Maximum output tokens |
213
+ | `samplingParams` | No | omitted | Sampling parameters merged verbatim into every request body for OpenAI-compatible APIs (see below) |
211
214
  | `cost` | No | all zeros | Complete base rates per million tokens plus optional request-wide `tiers` (see below) |
212
215
  | `compat` | No | provider `compat` | Provider compatibility overrides. Merged with provider-level `compat` when both are set. |
213
216
  | `deferredToolsMode` | No | omitted | Deferred tool-loading protocol; set to `"kimi"` for Kimi-compatible deferred tools |
@@ -217,6 +220,26 @@ Current behavior:
217
220
  - The configured `name` is used for model matching and secondary model detail text. It does not replace the footer/status-bar model id.
218
221
 
219
222
 
223
+ ### Sampling Parameters
224
+
225
+ `samplingParams` is a free-form object merged into every request body for an OpenAI-compatible model after the fields Atomic sets, so its keys win. Use it to send parameters that Atomic does not model, including server-specific values such as llama.cpp's `min_p` or vLLM's `top_k`:
226
+
227
+ ```json
228
+ {
229
+ "id": "deepseek-v4-flash",
230
+ "samplingParams": {
231
+ "temperature": 1.0,
232
+ "top_p": 0.95,
233
+ "top_k": 0,
234
+ "min_p": 0
235
+ }
236
+ }
237
+ ```
238
+
239
+ Only OpenAI-compatible APIs apply these values (`openai-completions`, `openai-responses`, and `azure-openai-responses`); other APIs ignore them. Per-request keys override model defaults and named request fields. In `modelOverrides`, `samplingParams` merges per key with the base model's values. Keys are provider-defined and remain unchanged; malformed `samplingParams` values are rejected while loading `models.json`.
240
+
241
+ For vLLM OpenAI-compatible models that share the reasoning and answer budgets, set `compat.supportsThinkingTokenBudget` to `true`. Atomic sends the opt-in `thinking_token_budget` value for an enabled thinking level and always leaves 1024 tokens for the final answer. Pi's defaults are 1024, 2048, 8192, and 16384 tokens for `minimal`, `low`, `medium`, and `high`; the `thinkingBudgets` settings override them. `xhigh` and `max` use the `high` budget, and Atomic omits the field when no positive budget remains after reserving answer space.
242
+
220
243
  Model references resolve the complete, unmodified ID before Atomic interprets thinking suffixes or glob syntax. For example, if the catalog contains the literal ID `provider/literal[free]:high`, that complete model wins and `:high` remains part of its ID; it does not become a thinking-level suffix and `[free]` is not treated as a character class. Only when the complete ID is absent does Atomic parse a valid thinking suffix, try the stripped exact ID, then apply glob/fuzzy matching. This preserves literal provider IDs without changing ordinary `*`, `?`, bracket-glob, ambiguity, ordering, or deduplication behavior.
221
244
  ### Request-wide Cost Tiers
222
245
 
@@ -416,7 +439,7 @@ Use `modelOverrides` to customize specific models without replacing the provider
416
439
  }
417
440
  ```
418
441
 
419
- `modelOverrides` supports these fields per model: `name`, `reasoning`, `thinkingLevelMap`, `input`, `cost` (partial scalar rates plus optional full tier-array replacement), `contextWindow`, `maxTokens`, `headers`, `compat`.
442
+ `modelOverrides` supports these fields per model: `name`, `reasoning`, `thinkingLevelMap`, `input`, `cost` (partial scalar rates plus optional full tier-array replacement), `contextWindow`, `maxTokens`, `samplingParams` (merged per key), `headers`, `compat`.
420
443
 
421
444
  Atomic reads one `models.json` from the active agent directory. It does not layer model overrides from `.pi` and `.atomic` files.
422
445
 
@@ -494,6 +517,8 @@ For providers with partial OpenAI compatibility, use the `compat` field.
494
517
  | `supportsDeveloperRole` | Use `developer` vs `system` role |
495
518
  | `supportsReasoningEffort` | Support for `reasoning_effort` parameter |
496
519
  | `supportsUsageInStreaming` | Supports `stream_options: { include_usage: true }` (default: `true`) |
520
+ | `supportsFinishReason` | Whether streamed responses include `finish_reason`. When `false`, Atomic infers `stop` or `toolUse` when the stream ends. Default: `true`. |
521
+ | `supportsThinkingTokenBudget` | Whether the endpoint accepts top-level vLLM `thinking_token_budget`; use it with reasoning models that share the response budget. Default: `false`. |
497
522
  | `maxTokensField` | Use `max_completion_tokens` or `max_tokens` |
498
523
  | `requiresToolResultName` | Include `name` on tool result messages |
499
524
  | `requiresAssistantAfterToolResult` | Insert an assistant message before a user message after tool results |
@@ -518,7 +543,7 @@ Strict JSON-schema support currently includes OpenAI, Anthropic, capable Bedrock
518
543
 
519
544
  ### Catalog freshness and precedence
520
545
 
521
- Authenticated remote catalogs are cached in `models-store.json`. Atomic revalidates pi.dev catalogs with the stored ETag through `If-None-Match`; an empty `304 Not Modified` is success and retains the cached body while updating its check time. A newer bundled catalog wins over an older persisted overlay even when package file mtimes are misleading. Final visibility is built-ins, persisted/remote data subject to freshness, configured `.pi` then `.atomic` layers, and live provider catalogs/overrides. Provider failures retain the last usable provider-specific snapshot.
546
+ Authenticated remote catalogs are cached in `models-store.json`. Atomic revalidates pi.dev catalogs with the stored ETag through `If-None-Match`; an empty `304 Not Modified` is success and retains the cached body while updating its check time. A newer bundled catalog wins over an older persisted overlay even when package file mtimes are misleading. Final visibility is built-ins, persisted/remote data subject to freshness, the single active-agent `models.json` configuration, and live provider catalogs/overrides; Atomic does not merge project `.atomic`/`.pi` model files or a legacy agent-directory fallback. Provider failures retain the last usable provider-specific snapshot.
522
547
 
523
548
  Claude Opus 5 is present in the generated Anthropic and Amazon Bedrock catalogs. Its metadata enables adaptive thinking, including `xhigh` where advertised. Bedrock uses its generated inference-profile ID, prompt-caching and strict-tool metadata, and preserves provider/AWS validation errors. Custom entries must reproduce those capabilities honestly rather than copying a display name alone.
524
549
  `openrouter` uses `reasoning: { effort }`. `together` uses `reasoning: { enabled }` and also `reasoning_effort` when `supportsReasoningEffort` is enabled. `qwen` uses top-level `enable_thinking`. Use `qwen-chat-template` for local Qwen-compatible servers that require `chat_template_kwargs.enable_thinking` and `preserve_thinking`. Use `chat-template` for vLLM/Hugging Face chat templates that need configurable `chat_template_kwargs`, such as `chatTemplateKwargs: { "thinking": { "$var": "thinking.enabled" } }` for DeepSeek V3.x templates.
package/docs/providers.md CHANGED
@@ -5,6 +5,7 @@ Atomic supports subscription-based providers via OAuth and API-key providers via
5
5
  ## Table of Contents
6
6
 
7
7
  - [Subscriptions](#subscriptions)
8
+ - [Verify readiness before a session](#verify-readiness-before-a-session)
8
9
  - [API Keys](#api-keys)
9
10
  - [Auth File](#auth-file)
10
11
  - [Cloud Providers](#cloud-providers)
@@ -35,6 +36,12 @@ Use `/logout` to clear credentials. Logout immediately invalidates authenticatio
35
36
 
36
37
  A stored OAuth token is refreshed once fewer than **five minutes** of validity remain, rather than at expiry, so a long turn is not started on a credential that dies mid-request. The refresh runs inside the `auth.json` lock and re-checks the stored expiry after taking it, so concurrent sessions sharing one credential file — subagents, workflow stages, RPC children — refresh it once between them rather than once each, and a session that arrives after the rotation finds nothing to do. A token still outside the window is not touched.
37
38
 
39
+ ### Verify Readiness Before a Session
40
+
41
+ Run `atomic auth check --provider <provider>` to verify the effective credential a provider would use without starting a session. You can pass `--model <model>` instead, including a `provider/model` ID, when that is the value your automation already has. The command prints `ready`, `not_ready`, or `invalid`; `--json` adds the resolved provider when one is found, credential type, and reason for a non-ready result.
42
+
43
+ Checks refresh expired OAuth credentials by default through the ordinary locked `auth.json` path. Use `--no-refresh` for a read-only probe: it neither creates nor mutates an auth file and reads Atomic's primary `~/.atomic/agent/auth.json` plus legacy `~/.pi/agent/auth.json` paths with the normal precedence. Readiness output contains no credential material unless you explicitly ask for `--credentials` with `--provider` or an exact `--model` target. That opt-in treats stdout or the JSON `credentials` field as a credential export; it refuses an OAuth token with less than 30 minutes of life when `--no-refresh` prevents a refresh.
44
+
38
45
  ### OpenAI Codex
39
46
 
40
47
  - Requires ChatGPT Plus or Pro subscription
@@ -44,7 +51,7 @@ If the Codex backend reports that an OAuth/auth token was invalidated or revoked
44
51
 
45
52
  ### Codex Fast Mode
46
53
 
47
- Run `/fast` in interactive mode to enable OpenAI priority service tier separately for normal chat and workflow-stage sessions. The command is shown only when the current model scope includes a supported `openai/*` or `openai-codex/*` model. Workflow stages use the workflow setting, not the chat setting. When enabled for the active supported model, the UI appends `fast` after the model name in the chat footer and workflow stage model labels. Fast mode intentionally does not apply to `github-copilot/*`, Azure OpenAI, OpenRouter, or custom OpenAI-compatible providers. Use workflow fast mode deliberately because parallel workflow fan-out can multiply priority-tier usage.
54
+ Run `/fast` in interactive mode to enable OpenAI priority service tier separately for normal chat and workflow-stage sessions. The command is shown only when the current model scope includes a supported `openai/*` or `openai-codex/*` model. Workflow stages, nested `ctx.workflow(...)` stages, and subagents launched by those stages use the workflow setting, not the chat setting. Each fallback attempt is evaluated against its effective model, so an eligible fallback gets the tier and an ineligible provider does not. When enabled for the active supported model, the UI appends `fast` after the model name in the chat footer, workflow stage model labels, and stage-launched subagent results. Fast mode intentionally does not apply to `github-copilot/*`, Azure OpenAI, OpenRouter, or custom OpenAI-compatible providers. Use workflow fast mode deliberately because parallel workflow fan-out can multiply priority-tier usage.
48
55
 
49
56
  ### Claude Pro/Max
50
57
 
@@ -130,18 +137,22 @@ Remote pi.dev catalogs persist their ETag and are revalidated with `If-None-Matc
130
137
  | Hugging Face | `HF_TOKEN` | `huggingface` |
131
138
  | Fireworks | `FIREWORKS_API_KEY` | `fireworks` |
132
139
  | Together AI | `TOGETHER_API_KEY` | `together` |
140
+ | Baseten | `BASETEN_API_KEY` | `baseten` |
133
141
  | Kimi For Coding | `KIMI_API_KEY` | `kimi-coding` |
134
142
  | MiniMax | `MINIMAX_API_KEY` | `minimax` |
135
143
  | MiniMax (China) | `MINIMAX_CN_API_KEY` | `minimax-cn` |
136
144
  | Moonshot AI | `MOONSHOT_API_KEY` | `moonshotai` |
137
145
  | Moonshot AI (China) | `MOONSHOT_API_KEY` | `moonshotai-cn` |
138
- | Qwen Token Plan | `QWEN_TOKEN_PLAN_API_KEY` | `qwen-token-plan` |
146
+ | Qwen Token Plan (existing catalog) | `QWEN_TOKEN_PLAN_API_KEY` | `qwen-token-plan` |
147
+ | Qwen Token Plan (Individual) | `QWEN_TOKEN_PLAN_API_KEY` | `qwen-token-plan-individual` |
139
148
  | Qwen Token Plan (China) | `QWEN_TOKEN_PLAN_CN_API_KEY` | `qwen-token-plan-cn` |
140
149
  | Xiaomi MiMo | `XIAOMI_API_KEY` | `xiaomi` |
141
150
  | Xiaomi MiMo Token Plan (China) | `XIAOMI_TOKEN_PLAN_CN_API_KEY` | `xiaomi-token-plan-cn` |
142
151
  | Xiaomi MiMo Token Plan (Amsterdam) | `XIAOMI_TOKEN_PLAN_AMS_API_KEY` | `xiaomi-token-plan-ams` |
143
152
  | Xiaomi MiMo Token Plan (Singapore) | `XIAOMI_TOKEN_PLAN_SGP_API_KEY` | `xiaomi-token-plan-sgp` |
144
153
 
154
+ Baseten's built-in default is `zai-org/GLM-5.2`; its catalog supplies the provider-specific thinking levels. Qwen Token Plan Individual defaults to `qwen3.8-max` and uses the international `QWEN_TOKEN_PLAN_API_KEY` shared with the existing Qwen Token Plan provider.
155
+
145
156
  Reference for environment variables and `auth.json` keys: `findEnvKeys()` / `getEnvApiKey()` in the installed `@earendil-works/pi-ai` dependency (`node_modules/@earendil-works/pi-ai/dist/env-api-keys.d.ts`). The private provider map those functions use is in `node_modules/@earendil-works/pi-ai/dist/env-api-keys.js`; Atomic does not include a separate `packages/ai` source directory in this monorepo.
146
157
 
147
158
  #### Auth File
@@ -157,9 +168,11 @@ Store credentials in `~/.atomic/agent/auth.json`:
157
168
  "nvidia": { "type": "api_key", "key": "nvapi-..." },
158
169
  "google": { "type": "api_key", "key": "..." },
159
170
  "opencode": { "type": "api_key", "key": "..." },
171
+ "baseten": { "type": "api_key", "key": "..." },
160
172
  "opencode-go": { "type": "api_key", "key": "..." },
161
173
  "together": { "type": "api_key", "key": "..." },
162
174
  "qwen-token-plan": { "type": "api_key", "key": "sk-sp-..." },
175
+ "qwen-token-plan-individual": { "type": "api_key", "key": "sk-sp-..." },
163
176
  "qwen-token-plan-cn": { "type": "api_key", "key": "sk-sp-..." },
164
177
  "xiaomi": { "type": "api_key", "key": "..." },
165
178
  "xiaomi-token-plan-cn": { "type": "api_key", "key": "..." },
@@ -168,6 +181,11 @@ Store credentials in `~/.atomic/agent/auth.json`:
168
181
  }
169
182
  ```
170
183
 
184
+ `qwen-token-plan-individual` uses the same international endpoint and `QWEN_TOKEN_PLAN_API_KEY` as
185
+ `qwen-token-plan`, but limits the picker to the models documented for Individual subscriptions. The existing
186
+ provider keeps its broader catalog for backward compatibility. When using `auth.json`, store the credential
187
+ under the provider you select; an environment variable is shared by both international providers.
188
+
171
189
  The file is created with `0600` permissions (user read/write only). Auth file credentials take priority over environment variables.
172
190
 
173
191
  API-key credentials may include provider-scoped `env` values. They take precedence over process environment variables while resolving the credential key, provider/model headers, and provider configuration such as Cloudflare account IDs, Azure settings, Vertex project/location, Bedrock settings, cache retention, and `HTTP_PROXY`/`HTTPS_PROXY`:
@@ -5,7 +5,7 @@ This page gets you from install to a useful first Atomic session. Atomic is the
5
5
  ## Prerequisites
6
6
 
7
7
  - **Node.js 24 LTS or newer** — Atomic requires the latest Node LTS runtime. Check with `node --version`.
8
- - **A package manager** — use npm (included with Node), pnpm, Yarn, or Bun. Use Bun 1.3.14+ for Bun installs or workflow-authoring examples.
8
+ - **A package manager** — use npm (included with Node), pnpm, Yarn, or Bun. Bun installs need Bun 1.3.14+.
9
9
  - **Model-provider access** — Use `/login` after startup. Supports provider subscriptions and APIs.
10
10
 
11
11
  ## Install
@@ -32,6 +32,10 @@ bun add -g @bastani/atomic
32
32
 
33
33
  Atomic does not require package install scripts. If you want to disable dependency lifecycle scripts during the Atomic install, you can add `--ignore-scripts` to the install command.
34
34
 
35
+ ### Which runtime runs your workflows
36
+
37
+ How you install Atomic decides which runtime hosts it: a package-manager install runs under Node, while the standalone binaries are Bun-compiled and run under Bun. Authored workflows execute inside whichever host is active, so a workflow that reaches for a `Bun.*` global runs only under the standalone binary and fails with `Bun is not defined` under an npm install. Installing Bun separately does not change that — the npm install still runs on Node. Write workflow code against APIs both hosts provide, such as `node:child_process` and `node:fs`; see [Workflows](/workflows) for the rule and worked examples.
38
+
35
39
  ### Alpine and musl Linux archives
36
40
 
37
41
  For Alpine Linux, use `atomic-linux-x64-musl.tar.gz` on x64 or `atomic-linux-arm64-musl.tar.gz` on arm64. These archives provide native search and PTY bindings. Install their runtime libraries with `apk add --no-cache libgcc libstdc++`, then see the [Alpine and musl Linux archive notes](/index#alpine-and-musl-linux-archives) for the clipboard fallback and external Postgres or Docker requirement for durable workflows.
@@ -108,7 +112,7 @@ Atomic ships with nine workflows you can run immediately. Use `/workflow list` t
108
112
  | `loop-until-done` | Iterate with a durable ledger until completion or bound exhaustion. | `/workflow loop-until-done prompt="Repair failures until the test suite passes"` |
109
113
  | `goal` | Autonomous work that needs a durable ledger, bounded sub-agent orchestration, receipts, and reviewer-gated completion. | `/workflow goal objective="Update the CLI docs, add one example, and validate the docs build"` |
110
114
  | `ralph` | Research-first autonomous work with prompt refinement, delegated implementation, and iterative multi-model review. | `/workflow ralph prompt="Implement specs/rate-limit.md and validate burst traffic"` |
111
- | `open-claude-design` | UI and design-system work with separate generate and feedback chains and a live `preview.html`. | `/workflow open-claude-design prompt="Refresh the settings page hierarchy as a page"` |
115
+ | `open-claude-design` | UI and design-system work with separate generate and feedback passes and a live `preview.html`. | `/workflow open-claude-design prompt="Refresh the settings page hierarchy as a page"` |
112
116
 
113
117
  <p align="center"><img src="images/workflow-list.png" alt="Workflow List" width="600" /></p>
114
118
 
@@ -227,10 +231,10 @@ Atomic loads context files at startup. Add an `AGENTS.md` file to tell it how to
227
231
 
228
232
  Atomic loads:
229
233
 
230
- - `~/.atomic/agent/AGENTS.md` for global instructions
231
- - `AGENTS.md` or `CLAUDE.md` from parent directories and the current directory
234
+ - `~/.atomic/agent/AGENTS.override.md`, `AGENTS.md`, or `CLAUDE.md` for global instructions (legacy `~/.pi/agent/` also works)
235
+ - `AGENTS.override.md`, `AGENTS.md`, or `CLAUDE.md` from parent directories and the current directory
232
236
 
233
- Restart Atomic, or run `/reload`, after changing context files.
237
+ An `AGENTS.override.md` file replaces the other context files in its directory. Restart Atomic, or run `/reload`, after changing context files.
234
238
 
235
239
  ## Common things to try
236
240
 
@@ -243,7 +247,7 @@ atomic @README.md "Summarize this"
243
247
  atomic @src/app.ts @src/app.test.ts "Review these together"
244
248
  ```
245
249
 
246
- Images can be pasted with CTRL+V (ALT+V on Windows) or dragged into supported terminals.
250
+ Images can be pasted with native macOS Cmd+V, Ctrl+V (Alt+V on Windows), or dragged into supported terminals. Inside tmux on macOS, use `Ctrl+V` for reliable image paste; native `Cmd+V` depends on terminal forwarding. VS Code's terminal may forward the empty bracketed-paste route through tmux, while Ghostty may not forward its Kitty `super+v` route through tmux. When the clipboard has both text and an image, Ctrl+V prefers the image; Cmd+V may paste text or the image depending on how the terminal delivers the gesture.
247
251
 
248
252
  ### Run shell commands
249
253
 
package/docs/rpc.md CHANGED
@@ -526,7 +526,7 @@ While the command runs, Atomic emits ordered deltas correlated by the command `i
526
526
 
527
527
  `channel` is exactly `"stdout"` or `"stderr"`. Deltas preserve the order observed for that request; concurrent bash requests may interleave globally but never share IDs. Request ownership survives `new_session`, `switch_session`, `import_session`, fork, and clone while the command is running: later deltas still stream under the original ID, the replacement session is not contaminated, and exactly one ordinary `response` remains the terminal record for completion, cancellation, or error.
528
528
 
529
- If output was truncated, includes `fullOutputPath`:
529
+ If output was truncated, includes `fullOutputPath`. Persisted bash output lives in the owner- and session-scoped temp tree (`<tmpdir>/atomic-<uid>/<session-id>/`), not at the temp root — see [Tools](/tools#persisted-tool-output) for the layout, permissions, size cap, and retention:
530
530
  ```json
531
531
  {
532
532
  "type": "response",
@@ -537,11 +537,13 @@ If output was truncated, includes `fullOutputPath`:
537
537
  "exitCode": 0,
538
538
  "cancelled": false,
539
539
  "truncated": true,
540
- "fullOutputPath": "/tmp/atomic-bash-abc123.log"
540
+ "fullOutputPath": "/tmp/atomic-501/019fdf86-cf98-7327-8a73-21365028f6ae/atomic-bash-abc123.log"
541
541
  }
542
542
  }
543
543
  ```
544
544
 
545
+ `fullOutputPath` is `null` when the temp directory could not be created or the write was refused; treat it as absent rather than assuming a path exists.
546
+
545
547
  **How bash results reach the LLM:**
546
548
 
547
549
  The `bash` command executes immediately and returns a `BashResult`. Internally, a `BashExecutionMessage` is created and stored exactly once in the session where that request started, even if an RPC session replacement completes before the command. The message does NOT emit an event.
@@ -952,17 +954,21 @@ Emitted when a message begins and completes. The `message` field contains an `Ag
952
954
 
953
955
  ### message_update (Streaming)
954
956
 
955
- Emitted during streaming of assistant messages. Contains both the partial message and a streaming delta event.
957
+ Emitted during streaming of assistant messages. Carries only the streaming delta.
958
+
959
+ `message_update` deliberately omits any cumulative snapshot: there is no `message`
960
+ field, and `assistantMessageEvent` has no `partial`. `message_start` provides the
961
+ initial message, the deltas build it, and `message_end` provides the final
962
+ authoritative message. Repeating a snapshot on every frame would make the bytes
963
+ written per assistant turn grow with the square of its length.
956
964
 
957
965
  ```json
958
966
  {
959
967
  "type": "message_update",
960
- "message": {...},
961
968
  "assistantMessageEvent": {
962
969
  "type": "text_delta",
963
970
  "contentIndex": 0,
964
- "delta": "Hello ",
965
- "partial": {...}
971
+ "delta": "Hello "
966
972
  }
967
973
  }
968
974
  ```
@@ -986,10 +992,10 @@ The `assistantMessageEvent` field contains one of these delta types:
986
992
 
987
993
  Example streaming a text response:
988
994
  ```json
989
- {"type":"message_update","message":{...},"assistantMessageEvent":{"type":"text_start","contentIndex":0,"partial":{...}}}
990
- {"type":"message_update","message":{...},"assistantMessageEvent":{"type":"text_delta","contentIndex":0,"delta":"Hello","partial":{...}}}
991
- {"type":"message_update","message":{...},"assistantMessageEvent":{"type":"text_delta","contentIndex":0,"delta":" world","partial":{...}}}
992
- {"type":"message_update","message":{...},"assistantMessageEvent":{"type":"text_end","contentIndex":0,"content":"Hello world","partial":{...}}}
995
+ {"type":"message_update","assistantMessageEvent":{"type":"text_start","contentIndex":0}}
996
+ {"type":"message_update","assistantMessageEvent":{"type":"text_delta","contentIndex":0,"delta":"Hello"}}
997
+ {"type":"message_update","assistantMessageEvent":{"type":"text_delta","contentIndex":0,"delta":" world"}}
998
+ {"type":"message_update","assistantMessageEvent":{"type":"text_end","contentIndex":0,"content":"Hello world"}}
993
999
  ```
994
1000
 
995
1001
  ### tool_execution_start / tool_execution_update / tool_execution_end
@@ -1189,7 +1195,7 @@ Some `ExtensionUIContext` methods are not supported or degraded in RPC mode beca
1189
1195
  - `custom()` returns `undefined`
1190
1196
  - `setWorkingMessage()`, `setWorkingIndicator()`, `setFooter()`, `setHeader()`, `setEditorComponent()` are no-ops
1191
1197
  - `getEditorText()` returns `""`
1192
- - `setToolsExpanded()` and `getToolsExpanded()` maintain context-local expansion state; `getChatRenderSettings().toolOutputExpanded` reports the same value. This state is not sent through the client extension-UI protocol.
1198
+ - `setToolsExpanded()` and `getToolsExpanded()` maintain context-local expansion state; `getChatRenderSettings().toolOutputExpanded` reports the same value. A same-value `setToolsExpanded()` call is a no-op and does not request a custom-UI render. This state is not sent through the client extension-UI protocol.
1193
1199
  - `pasteToEditor()` delegates to `setEditorText()` (no paste/collapse handling)
1194
1200
  - `getAllThemes()` returns `[]`
1195
1201
  - `getTheme()` returns `undefined`
@@ -1459,7 +1465,7 @@ The `content` field can be a string or an array of `TextContent`/`ImageContent`
1459
1465
  }
1460
1466
  ```
1461
1467
 
1462
- Stop reasons: `"stop"`, `"length"`, `"toolUse"`, `"error"`, `"aborted"`. A partial message inside a `message_update` event carries `"pending"` until the terminal event replaces it, so a client that switches on the reason needs that case; a completed message never carries it.
1468
+ Stop reasons: `"stop"`, `"length"`, `"toolUse"`, `"error"`, `"aborted"`. A streaming message carries `"pending"` until the terminal event replaces it, so a client that switches on the reason needs that case; a completed message never carries it. On the wire the pending reason appears on the `message_start` message — `message_update` frames carry no message at all — and `message_end` carries the terminal reason.
1463
1469
 
1464
1470
  ### ToolResultMessage
1465
1471