@bastani/atomic 0.8.25 → 0.8.26-alpha.10

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 (332) hide show
  1. package/CHANGELOG.md +84 -0
  2. package/README.md +5 -5
  3. package/dist/builtin/intercom/CHANGELOG.md +60 -0
  4. package/dist/builtin/intercom/index-heavy.ts +1754 -0
  5. package/dist/builtin/intercom/index.ts +374 -1746
  6. package/dist/builtin/intercom/package.json +2 -2
  7. package/dist/builtin/intercom/result-renderers.ts +77 -0
  8. package/dist/builtin/mcp/CHANGELOG.md +64 -0
  9. package/dist/builtin/mcp/index.ts +151 -57
  10. package/dist/builtin/mcp/package.json +3 -3
  11. package/dist/builtin/subagents/CHANGELOG.md +61 -0
  12. package/dist/builtin/subagents/agents/codebase-online-researcher.md +9 -9
  13. package/dist/builtin/subagents/agents/debugger.md +6 -6
  14. package/dist/builtin/subagents/package.json +4 -4
  15. package/dist/builtin/subagents/prompts/parallel-handoff-plan.md +1 -1
  16. package/dist/builtin/subagents/skills/browser/EXAMPLES.md +151 -0
  17. package/dist/builtin/subagents/skills/browser/LICENSE.txt +21 -0
  18. package/dist/builtin/subagents/skills/browser/REFERENCE.md +451 -0
  19. package/dist/builtin/subagents/skills/browser/SKILL.md +170 -0
  20. package/dist/builtin/subagents/skills/subagent/SKILL.md +4 -4
  21. package/dist/builtin/subagents/src/runs/background/subagent-runner.ts +55 -12
  22. package/dist/builtin/subagents/src/runs/foreground/execution.ts +71 -12
  23. package/dist/builtin/subagents/src/runs/shared/acceptance.ts +2 -1
  24. package/dist/builtin/subagents/src/runs/shared/final-drain.ts +34 -0
  25. package/dist/builtin/subagents/src/runs/shared/model-fallback.ts +416 -7
  26. package/dist/builtin/subagents/src/runs/shared/worktree.ts +2 -2
  27. package/dist/builtin/web-access/CHANGELOG.md +60 -0
  28. package/dist/builtin/web-access/index-heavy.ts +2060 -0
  29. package/dist/builtin/web-access/index.ts +182 -2274
  30. package/dist/builtin/web-access/package.json +2 -2
  31. package/dist/builtin/web-access/result-renderers.ts +364 -0
  32. package/dist/builtin/workflows/CHANGELOG.md +75 -0
  33. package/dist/builtin/workflows/README.md +10 -8
  34. package/dist/builtin/workflows/builtin/deep-research-codebase.ts +11 -8
  35. package/dist/builtin/workflows/builtin/goal.ts +137 -109
  36. package/dist/builtin/workflows/builtin/index.d.ts +2 -0
  37. package/dist/builtin/workflows/builtin/open-claude-design.ts +228 -151
  38. package/dist/builtin/workflows/builtin/ralph.d.ts +2 -0
  39. package/dist/builtin/workflows/builtin/ralph.ts +452 -279
  40. package/dist/builtin/workflows/package.json +2 -2
  41. package/dist/builtin/workflows/skills/create-spec/SKILL.md +14 -0
  42. package/dist/builtin/workflows/skills/research-codebase/SKILL.md +29 -10
  43. package/dist/builtin/workflows/src/extension/index.ts +23 -5
  44. package/dist/builtin/workflows/src/extension/runtime.ts +35 -3
  45. package/dist/builtin/workflows/src/extension/wiring.ts +13 -1
  46. package/dist/builtin/workflows/src/runs/background/status.ts +52 -6
  47. package/dist/builtin/workflows/src/runs/foreground/executor.ts +453 -21
  48. package/dist/builtin/workflows/src/runs/foreground/stage-runner.ts +130 -13
  49. package/dist/builtin/workflows/src/runs/shared/model-fallback.ts +402 -8
  50. package/dist/builtin/workflows/src/runs/shared/worktree.ts +2 -2
  51. package/dist/builtin/workflows/src/shared/authoring-contract.d.ts +2 -2
  52. package/dist/builtin/workflows/src/shared/persistence-restore.ts +182 -6
  53. package/dist/builtin/workflows/src/shared/persistence-session-entries.ts +76 -6
  54. package/dist/builtin/workflows/src/shared/stage-prompt.ts +33 -2
  55. package/dist/builtin/workflows/src/shared/store-types.ts +31 -0
  56. package/dist/builtin/workflows/src/shared/store.ts +160 -18
  57. package/dist/builtin/workflows/src/shared/types.ts +3 -3
  58. package/dist/builtin/workflows/src/shared/workflow-failures.ts +758 -132
  59. package/dist/builtin/workflows/src/tui/inline-form-overlay.ts +12 -3
  60. package/dist/builtin/workflows/src/tui/inline-form-store.ts +17 -6
  61. package/dist/builtin/workflows/src/tui/stage-chat-view.ts +39 -3
  62. package/dist/builtin/workflows/src/tui/store-widget-installer.ts +74 -74
  63. package/dist/core/agent-session-services.d.ts.map +1 -1
  64. package/dist/core/agent-session-services.js +13 -0
  65. package/dist/core/agent-session-services.js.map +1 -1
  66. package/dist/core/agent-session.d.ts +33 -6
  67. package/dist/core/agent-session.d.ts.map +1 -1
  68. package/dist/core/agent-session.js +157 -182
  69. package/dist/core/agent-session.js.map +1 -1
  70. package/dist/core/atomic-guide-command.d.ts.map +1 -1
  71. package/dist/core/atomic-guide-command.js +11 -9
  72. package/dist/core/atomic-guide-command.js.map +1 -1
  73. package/dist/core/compaction/branch-summarization.d.ts +1 -1
  74. package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  75. package/dist/core/compaction/branch-summarization.js +6 -3
  76. package/dist/core/compaction/branch-summarization.js.map +1 -1
  77. package/dist/core/compaction/compaction.d.ts.map +1 -1
  78. package/dist/core/compaction/compaction.js +23 -10
  79. package/dist/core/compaction/compaction.js.map +1 -1
  80. package/dist/core/compaction/context-compaction.d.ts +175 -0
  81. package/dist/core/compaction/context-compaction.d.ts.map +1 -0
  82. package/dist/core/compaction/context-compaction.js +1636 -0
  83. package/dist/core/compaction/context-compaction.js.map +1 -0
  84. package/dist/core/compaction/index.d.ts +1 -0
  85. package/dist/core/compaction/index.d.ts.map +1 -1
  86. package/dist/core/compaction/index.js +1 -0
  87. package/dist/core/compaction/index.js.map +1 -1
  88. package/dist/core/extensions/loader.d.ts.map +1 -1
  89. package/dist/core/extensions/loader.js +7 -0
  90. package/dist/core/extensions/loader.js.map +1 -1
  91. package/dist/core/extensions/types.d.ts +16 -3
  92. package/dist/core/extensions/types.d.ts.map +1 -1
  93. package/dist/core/extensions/types.js.map +1 -1
  94. package/dist/core/footer-data-provider.d.ts.map +1 -1
  95. package/dist/core/footer-data-provider.js +3 -0
  96. package/dist/core/footer-data-provider.js.map +1 -1
  97. package/dist/core/index.d.ts +1 -1
  98. package/dist/core/index.d.ts.map +1 -1
  99. package/dist/core/index.js.map +1 -1
  100. package/dist/core/package-manager.d.ts.map +1 -1
  101. package/dist/core/package-manager.js +14 -7
  102. package/dist/core/package-manager.js.map +1 -1
  103. package/dist/core/resource-loader.d.ts.map +1 -1
  104. package/dist/core/resource-loader.js +17 -0
  105. package/dist/core/resource-loader.js.map +1 -1
  106. package/dist/core/session-manager.d.ts +41 -1
  107. package/dist/core/session-manager.d.ts.map +1 -1
  108. package/dist/core/session-manager.js +146 -7
  109. package/dist/core/session-manager.js.map +1 -1
  110. package/dist/core/slash-commands.d.ts.map +1 -1
  111. package/dist/core/slash-commands.js +1 -1
  112. package/dist/core/slash-commands.js.map +1 -1
  113. package/dist/core/timings.d.ts +9 -0
  114. package/dist/core/timings.d.ts.map +1 -1
  115. package/dist/core/timings.js +28 -1
  116. package/dist/core/timings.js.map +1 -1
  117. package/dist/core/tools/ask-user-question/tool/format-answer.d.ts +5 -5
  118. package/dist/core/tools/ask-user-question/tool/format-answer.d.ts.map +1 -1
  119. package/dist/core/tools/ask-user-question/tool/format-answer.js +5 -5
  120. package/dist/core/tools/ask-user-question/tool/format-answer.js.map +1 -1
  121. package/dist/core/tools/ask-user-question/tool/response-envelope.d.ts +16 -3
  122. package/dist/core/tools/ask-user-question/tool/response-envelope.d.ts.map +1 -1
  123. package/dist/core/tools/ask-user-question/tool/response-envelope.js +21 -3
  124. package/dist/core/tools/ask-user-question/tool/response-envelope.js.map +1 -1
  125. package/dist/index.d.ts +4 -3
  126. package/dist/index.d.ts.map +1 -1
  127. package/dist/index.js +3 -2
  128. package/dist/index.js.map +1 -1
  129. package/dist/main.d.ts.map +1 -1
  130. package/dist/main.js +4 -2
  131. package/dist/main.js.map +1 -1
  132. package/dist/modes/index.d.ts +1 -1
  133. package/dist/modes/index.d.ts.map +1 -1
  134. package/dist/modes/index.js.map +1 -1
  135. package/dist/modes/interactive/components/chat-session-host.d.ts.map +1 -1
  136. package/dist/modes/interactive/components/chat-session-host.js +17 -0
  137. package/dist/modes/interactive/components/chat-session-host.js.map +1 -1
  138. package/dist/modes/interactive/components/context-compaction-summary-message.d.ts +17 -0
  139. package/dist/modes/interactive/components/context-compaction-summary-message.d.ts.map +1 -0
  140. package/dist/modes/interactive/components/context-compaction-summary-message.js +83 -0
  141. package/dist/modes/interactive/components/context-compaction-summary-message.js.map +1 -0
  142. package/dist/modes/interactive/components/custom-message.d.ts +1 -0
  143. package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
  144. package/dist/modes/interactive/components/custom-message.js +36 -4
  145. package/dist/modes/interactive/components/custom-message.js.map +1 -1
  146. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  147. package/dist/modes/interactive/components/footer.js +4 -1
  148. package/dist/modes/interactive/components/footer.js.map +1 -1
  149. package/dist/modes/interactive/components/index.d.ts +1 -0
  150. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  151. package/dist/modes/interactive/components/index.js +1 -0
  152. package/dist/modes/interactive/components/index.js.map +1 -1
  153. package/dist/modes/interactive/interactive-mode.d.ts +1 -0
  154. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  155. package/dist/modes/interactive/interactive-mode.js +94 -17
  156. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  157. package/dist/modes/rpc/rpc-client.d.ts +13 -8
  158. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  159. package/dist/modes/rpc/rpc-client.js +8 -1
  160. package/dist/modes/rpc/rpc-client.js.map +1 -1
  161. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  162. package/dist/modes/rpc/rpc-mode.js +4 -0
  163. package/dist/modes/rpc/rpc-mode.js.map +1 -1
  164. package/dist/modes/rpc/rpc-types.d.ts +14 -3
  165. package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  166. package/dist/modes/rpc/rpc-types.js.map +1 -1
  167. package/dist/utils/git-env.d.ts +10 -0
  168. package/dist/utils/git-env.d.ts.map +1 -0
  169. package/dist/utils/git-env.js +33 -0
  170. package/dist/utils/git-env.js.map +1 -0
  171. package/docs/compaction.md +185 -50
  172. package/docs/custom-provider.md +11 -9
  173. package/docs/extensions.md +46 -42
  174. package/docs/index.md +13 -6
  175. package/docs/json.md +15 -12
  176. package/docs/packages.md +2 -0
  177. package/docs/providers.md +4 -1
  178. package/docs/quickstart.md +18 -11
  179. package/docs/rpc.md +38 -23
  180. package/docs/sdk.md +17 -8
  181. package/docs/session-format.md +26 -13
  182. package/docs/sessions.md +3 -3
  183. package/docs/settings.md +2 -2
  184. package/docs/skills.md +1 -15
  185. package/docs/termux.md +9 -10
  186. package/docs/themes.md +2 -2
  187. package/docs/tmux.md +3 -3
  188. package/docs/tui.md +19 -32
  189. package/docs/usage.md +2 -2
  190. package/docs/workflows.md +60 -16
  191. package/package.json +6 -12
  192. package/dist/builtin/subagents/skills/browser-use/SKILL.md +0 -234
  193. package/dist/builtin/subagents/skills/browser-use/references/cdp-python.md +0 -76
  194. package/dist/builtin/subagents/skills/browser-use/references/multi-session.md +0 -92
  195. package/node_modules/@earendil-works/pi-tui/README.md +0 -779
  196. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts +0 -54
  197. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts.map +0 -1
  198. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js +0 -632
  199. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js.map +0 -1
  200. package/node_modules/@earendil-works/pi-tui/dist/components/box.d.ts +0 -22
  201. package/node_modules/@earendil-works/pi-tui/dist/components/box.d.ts.map +0 -1
  202. package/node_modules/@earendil-works/pi-tui/dist/components/box.js +0 -104
  203. package/node_modules/@earendil-works/pi-tui/dist/components/box.js.map +0 -1
  204. package/node_modules/@earendil-works/pi-tui/dist/components/cancellable-loader.d.ts +0 -22
  205. package/node_modules/@earendil-works/pi-tui/dist/components/cancellable-loader.d.ts.map +0 -1
  206. package/node_modules/@earendil-works/pi-tui/dist/components/cancellable-loader.js +0 -35
  207. package/node_modules/@earendil-works/pi-tui/dist/components/cancellable-loader.js.map +0 -1
  208. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts +0 -249
  209. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts.map +0 -1
  210. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js +0 -1857
  211. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js.map +0 -1
  212. package/node_modules/@earendil-works/pi-tui/dist/components/image.d.ts +0 -28
  213. package/node_modules/@earendil-works/pi-tui/dist/components/image.d.ts.map +0 -1
  214. package/node_modules/@earendil-works/pi-tui/dist/components/image.js +0 -89
  215. package/node_modules/@earendil-works/pi-tui/dist/components/image.js.map +0 -1
  216. package/node_modules/@earendil-works/pi-tui/dist/components/input.d.ts +0 -37
  217. package/node_modules/@earendil-works/pi-tui/dist/components/input.d.ts.map +0 -1
  218. package/node_modules/@earendil-works/pi-tui/dist/components/input.js +0 -378
  219. package/node_modules/@earendil-works/pi-tui/dist/components/input.js.map +0 -1
  220. package/node_modules/@earendil-works/pi-tui/dist/components/loader.d.ts +0 -31
  221. package/node_modules/@earendil-works/pi-tui/dist/components/loader.d.ts.map +0 -1
  222. package/node_modules/@earendil-works/pi-tui/dist/components/loader.js +0 -69
  223. package/node_modules/@earendil-works/pi-tui/dist/components/loader.js.map +0 -1
  224. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts +0 -96
  225. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts.map +0 -1
  226. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js +0 -644
  227. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js.map +0 -1
  228. package/node_modules/@earendil-works/pi-tui/dist/components/select-list.d.ts +0 -50
  229. package/node_modules/@earendil-works/pi-tui/dist/components/select-list.d.ts.map +0 -1
  230. package/node_modules/@earendil-works/pi-tui/dist/components/select-list.js +0 -159
  231. package/node_modules/@earendil-works/pi-tui/dist/components/select-list.js.map +0 -1
  232. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts +0 -50
  233. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts.map +0 -1
  234. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js +0 -185
  235. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js.map +0 -1
  236. package/node_modules/@earendil-works/pi-tui/dist/components/spacer.d.ts +0 -12
  237. package/node_modules/@earendil-works/pi-tui/dist/components/spacer.d.ts.map +0 -1
  238. package/node_modules/@earendil-works/pi-tui/dist/components/spacer.js +0 -23
  239. package/node_modules/@earendil-works/pi-tui/dist/components/spacer.js.map +0 -1
  240. package/node_modules/@earendil-works/pi-tui/dist/components/text.d.ts +0 -19
  241. package/node_modules/@earendil-works/pi-tui/dist/components/text.d.ts.map +0 -1
  242. package/node_modules/@earendil-works/pi-tui/dist/components/text.js +0 -89
  243. package/node_modules/@earendil-works/pi-tui/dist/components/text.js.map +0 -1
  244. package/node_modules/@earendil-works/pi-tui/dist/components/truncated-text.d.ts +0 -13
  245. package/node_modules/@earendil-works/pi-tui/dist/components/truncated-text.d.ts.map +0 -1
  246. package/node_modules/@earendil-works/pi-tui/dist/components/truncated-text.js +0 -51
  247. package/node_modules/@earendil-works/pi-tui/dist/components/truncated-text.js.map +0 -1
  248. package/node_modules/@earendil-works/pi-tui/dist/editor-component.d.ts +0 -39
  249. package/node_modules/@earendil-works/pi-tui/dist/editor-component.d.ts.map +0 -1
  250. package/node_modules/@earendil-works/pi-tui/dist/editor-component.js +0 -2
  251. package/node_modules/@earendil-works/pi-tui/dist/editor-component.js.map +0 -1
  252. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.d.ts +0 -16
  253. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.d.ts.map +0 -1
  254. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.js +0 -110
  255. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.js.map +0 -1
  256. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +0 -23
  257. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +0 -1
  258. package/node_modules/@earendil-works/pi-tui/dist/index.js +0 -32
  259. package/node_modules/@earendil-works/pi-tui/dist/index.js.map +0 -1
  260. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts +0 -193
  261. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts.map +0 -1
  262. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js +0 -174
  263. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js.map +0 -1
  264. package/node_modules/@earendil-works/pi-tui/dist/keys.d.ts +0 -184
  265. package/node_modules/@earendil-works/pi-tui/dist/keys.d.ts.map +0 -1
  266. package/node_modules/@earendil-works/pi-tui/dist/keys.js +0 -1173
  267. package/node_modules/@earendil-works/pi-tui/dist/keys.js.map +0 -1
  268. package/node_modules/@earendil-works/pi-tui/dist/kill-ring.d.ts +0 -28
  269. package/node_modules/@earendil-works/pi-tui/dist/kill-ring.d.ts.map +0 -1
  270. package/node_modules/@earendil-works/pi-tui/dist/kill-ring.js +0 -44
  271. package/node_modules/@earendil-works/pi-tui/dist/kill-ring.js.map +0 -1
  272. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.d.ts +0 -3
  273. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.d.ts.map +0 -1
  274. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js +0 -53
  275. package/node_modules/@earendil-works/pi-tui/dist/native-modifiers.js.map +0 -1
  276. package/node_modules/@earendil-works/pi-tui/dist/stdin-buffer.d.ts +0 -50
  277. package/node_modules/@earendil-works/pi-tui/dist/stdin-buffer.d.ts.map +0 -1
  278. package/node_modules/@earendil-works/pi-tui/dist/stdin-buffer.js +0 -361
  279. package/node_modules/@earendil-works/pi-tui/dist/stdin-buffer.js.map +0 -1
  280. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts +0 -90
  281. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.d.ts.map +0 -1
  282. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js +0 -366
  283. package/node_modules/@earendil-works/pi-tui/dist/terminal-image.js.map +0 -1
  284. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts +0 -113
  285. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +0 -1
  286. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +0 -472
  287. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +0 -1
  288. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts +0 -227
  289. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts.map +0 -1
  290. package/node_modules/@earendil-works/pi-tui/dist/tui.js +0 -1106
  291. package/node_modules/@earendil-works/pi-tui/dist/tui.js.map +0 -1
  292. package/node_modules/@earendil-works/pi-tui/dist/undo-stack.d.ts +0 -17
  293. package/node_modules/@earendil-works/pi-tui/dist/undo-stack.d.ts.map +0 -1
  294. package/node_modules/@earendil-works/pi-tui/dist/undo-stack.js +0 -25
  295. package/node_modules/@earendil-works/pi-tui/dist/undo-stack.js.map +0 -1
  296. package/node_modules/@earendil-works/pi-tui/dist/utils.d.ts +0 -84
  297. package/node_modules/@earendil-works/pi-tui/dist/utils.d.ts.map +0 -1
  298. package/node_modules/@earendil-works/pi-tui/dist/utils.js +0 -1029
  299. package/node_modules/@earendil-works/pi-tui/dist/utils.js.map +0 -1
  300. package/node_modules/@earendil-works/pi-tui/dist/word-navigation.d.ts +0 -25
  301. package/node_modules/@earendil-works/pi-tui/dist/word-navigation.d.ts.map +0 -1
  302. package/node_modules/@earendil-works/pi-tui/dist/word-navigation.js +0 -96
  303. package/node_modules/@earendil-works/pi-tui/dist/word-navigation.js.map +0 -1
  304. package/node_modules/@earendil-works/pi-tui/native/darwin/prebuilds/darwin-arm64/darwin-modifiers.node +0 -0
  305. package/node_modules/@earendil-works/pi-tui/native/darwin/prebuilds/darwin-x64/darwin-modifiers.node +0 -0
  306. package/node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-arm64/win32-console-mode.node +0 -0
  307. package/node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-x64/win32-console-mode.node +0 -0
  308. package/node_modules/@earendil-works/pi-tui/package.json +0 -47
  309. package/node_modules/get-east-asian-width/index.d.ts +0 -60
  310. package/node_modules/get-east-asian-width/index.js +0 -30
  311. package/node_modules/get-east-asian-width/license +0 -9
  312. package/node_modules/get-east-asian-width/lookup-data.js +0 -21
  313. package/node_modules/get-east-asian-width/lookup.js +0 -138
  314. package/node_modules/get-east-asian-width/package.json +0 -71
  315. package/node_modules/get-east-asian-width/readme.md +0 -65
  316. package/node_modules/get-east-asian-width/utilities.js +0 -24
  317. package/node_modules/marked/LICENSE.md +0 -44
  318. package/node_modules/marked/README.md +0 -106
  319. package/node_modules/marked/bin/main.js +0 -282
  320. package/node_modules/marked/bin/marked.js +0 -15
  321. package/node_modules/marked/lib/marked.cjs +0 -2211
  322. package/node_modules/marked/lib/marked.cjs.map +0 -7
  323. package/node_modules/marked/lib/marked.d.cts +0 -728
  324. package/node_modules/marked/lib/marked.d.ts +0 -728
  325. package/node_modules/marked/lib/marked.esm.js +0 -2189
  326. package/node_modules/marked/lib/marked.esm.js.map +0 -7
  327. package/node_modules/marked/lib/marked.umd.js +0 -2213
  328. package/node_modules/marked/lib/marked.umd.js.map +0 -7
  329. package/node_modules/marked/man/marked.1 +0 -111
  330. package/node_modules/marked/man/marked.1.md +0 -92
  331. package/node_modules/marked/marked.min.js +0 -69
  332. package/node_modules/marked/package.json +0 -111
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bastani/atomic",
3
- "version": "0.8.25",
3
+ "version": "0.8.26-alpha.10",
4
4
  "description": "Atomic coding agent CLI with read, bash, edit, write tools and session management",
5
5
  "type": "module",
6
6
  "atomicConfig": {
@@ -63,20 +63,18 @@
63
63
  "copy-builtin-workflows": "bun run copy-builtin-packages",
64
64
  "docs:check": "bun run scripts/validate-docs-links.ts",
65
65
  "verify:workflow-types": "bun run scripts/verify-workflow-sdk-types.ts",
66
- "verify:bundled-pi-tui": "bun run scripts/verify-bundled-pi-tui-install.ts",
67
66
  "test": "vitest --run",
68
- "prepack": "bun run scripts/materialize-bundled-pi-tui.ts",
69
- "postpack": "bun run scripts/materialize-bundled-pi-tui.ts --clean",
70
67
  "prepublishOnly": "bun run clean && bun run build"
71
68
  },
72
69
  "dependencies": {
73
- "@earendil-works/pi-agent-core": "^0.78.0",
74
- "@earendil-works/pi-ai": "^0.78.0",
75
- "@earendil-works/pi-tui": "^0.78.0",
70
+ "@earendil-works/pi-agent-core": "^0.78.1",
71
+ "@earendil-works/pi-ai": "^0.78.1",
72
+ "@earendil-works/pi-tui": "^0.78.1",
76
73
  "@modelcontextprotocol/ext-apps": "^1.7.2",
77
74
  "@modelcontextprotocol/sdk": "^1.25.1",
78
75
  "@mozilla/readability": "^0.6.0",
79
76
  "@silvia-odwyer/photon-node": "^0.3.4",
77
+ "better-sqlite3": "12.10.0",
80
78
  "chalk": "^5.5.0",
81
79
  "cross-spawn": "7.0.6",
82
80
  "diff": "^8.0.2",
@@ -97,11 +95,6 @@
97
95
  "yaml": "^2.9.0",
98
96
  "zod": "^3.25.0 || ^4.0.0"
99
97
  },
100
- "bundleDependencies": [
101
- "@earendil-works/pi-tui",
102
- "get-east-asian-width",
103
- "marked"
104
- ],
105
98
  "overrides": {
106
99
  "rimraf": "6.1.2",
107
100
  "gaxios": {
@@ -112,6 +105,7 @@
112
105
  "@mariozechner/clipboard": "^0.3.6"
113
106
  },
114
107
  "devDependencies": {
108
+ "@types/better-sqlite3": "7.6.13",
115
109
  "@types/cross-spawn": "6.0.6",
116
110
  "@types/diff": "^7.0.2",
117
111
  "@types/hosted-git-info": "^3.0.5",
@@ -1,234 +0,0 @@
1
- ---
2
- name: browser-use
3
- description: Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, or extract information from web pages.
4
- allowed-tools: Bash(browser-use:*)
5
- ---
6
-
7
- # Browser Automation with browser-use CLI
8
-
9
- The `browser-use` command provides fast, persistent browser automation. A background daemon keeps the browser open across commands, giving ~50ms latency per call.
10
-
11
- ## Prerequisites
12
-
13
- ```bash
14
- browser-use doctor # Verify installation
15
- ```
16
-
17
- For setup details, see https://github.com/browser-use/browser-use/blob/main/browser_use/skill_cli/README.md
18
-
19
- ## Core Workflow
20
-
21
- 1. **Navigate**: `browser-use open <url>` — launches headless browser and opens page
22
- 2. **Inspect**: `browser-use state` — returns clickable elements with indices
23
- 3. **Interact**: use indices from state (`browser-use click 5`, `browser-use input 3 "text"`)
24
- 4. **Verify**: `browser-use state` or `browser-use screenshot` to confirm
25
- 5. **Repeat**: browser stays open between commands
26
-
27
- If a command fails, run `browser-use close` first to clear any broken session, then retry.
28
-
29
- To use the user's existing Chrome (preserves logins/cookies): run `browser-use connect` first.
30
- To use a cloud browser instead: run `browser-use cloud connect` first.
31
- After either, commands work the same way.
32
-
33
- ### If `browser-use connect` fails
34
-
35
- When `browser-use connect` cannot find a running Chrome with remote debugging, prompt the user with two options:
36
-
37
- 1. **Use their real Chrome browser** — they need to enable remote debugging first:
38
- - Open `chrome://inspect/#remote-debugging` in Chrome, or relaunch Chrome with `--remote-debugging-port=9222`
39
- - Then retry `browser-use connect`
40
- 2. **Use managed Chromium with their Chrome profile** — no Chrome setup needed:
41
- - Run `browser-use profile list` to show available profiles
42
- - Ask which profile they want, then use `browser-use --profile "ProfileName" open <url>`
43
- - This launches a separate Chromium instance with their profile data (cookies, logins, extensions)
44
-
45
- Let the user choose — don't assume one path over the other.
46
-
47
- ## Browser Modes
48
-
49
- ```bash
50
- browser-use open <url> # Default: headless Chromium (no setup needed)
51
- browser-use --headed open <url> # Visible window (for debugging)
52
- browser-use connect # Connect to user's Chrome (preserves logins/cookies)
53
- browser-use cloud connect # Cloud browser (zero-config, requires API key)
54
- browser-use --profile "Default" open <url> # Real Chrome with specific profile
55
- ```
56
-
57
- After `connect` or `cloud connect`, all subsequent commands go to that browser — no extra flags needed.
58
-
59
- ## Commands
60
-
61
- ```bash
62
- # Navigation
63
- browser-use open <url> # Navigate to URL
64
- browser-use back # Go back in history
65
- browser-use scroll down # Scroll down (--amount N for pixels)
66
- browser-use scroll up # Scroll up
67
- browser-use tab list # List all tabs
68
- browser-use tab new [url] # Open a new tab (blank or with URL)
69
- browser-use tab switch <index> # Switch to tab by index
70
- browser-use tab close <index> [index...] # Close one or more tabs
71
-
72
- # Page State — always run state first to get element indices
73
- browser-use state # URL, title, clickable elements with indices
74
- browser-use screenshot [path.png] # Screenshot (base64 if no path, --full for full page)
75
-
76
- # Interactions — use indices from state
77
- browser-use click <index> # Click element by index
78
- browser-use click <x> <y> # Click at pixel coordinates
79
- browser-use type "text" # Type into focused element
80
- browser-use input <index> "text" # Click element, clear existing text, then type
81
- browser-use input <index> "" # Clear a field without typing new text
82
- browser-use keys "Enter" # Send keyboard keys (also "Control+a", etc.)
83
- browser-use select <index> "option" # Select dropdown option
84
- browser-use upload <index> <path> # Upload file to file input
85
- browser-use hover <index> # Hover over element
86
- browser-use dblclick <index> # Double-click element
87
- browser-use rightclick <index> # Right-click element
88
-
89
- # Data Extraction
90
- browser-use eval "js code" # Execute JavaScript, return result
91
- browser-use get title # Page title
92
- browser-use get html [--selector "h1"] # Page HTML (or scoped to selector)
93
- browser-use get text <index> # Element text content
94
- browser-use get value <index> # Input/textarea value
95
- browser-use get attributes <index> # Element attributes
96
- browser-use get bbox <index> # Bounding box (x, y, width, height)
97
-
98
- # Wait
99
- browser-use wait selector "css" # Wait for element (--state visible|hidden|attached|detached, --timeout ms)
100
- browser-use wait text "text" # Wait for text to appear
101
-
102
- # Cookies
103
- browser-use cookies get [--url <url>] # Get cookies (optionally filtered)
104
- browser-use cookies set <name> <value> # Set cookie (--domain, --secure, --http-only, --same-site, --expires)
105
- browser-use cookies clear [--url <url>] # Clear cookies
106
- browser-use cookies export <file> # Export to JSON
107
- browser-use cookies import <file> # Import from JSON
108
-
109
- # Session
110
- browser-use close # Close browser and stop daemon
111
- browser-use sessions # List active sessions
112
- browser-use close --all # Close all sessions
113
- ```
114
-
115
- For advanced browser control (CDP, device emulation, tab activation), see `references/cdp-python.md`.
116
-
117
- ## Cloud API
118
-
119
- ```bash
120
- browser-use cloud connect # Provision cloud browser and connect (zero-config)
121
- browser-use cloud login <api-key> # Save API key (or set BROWSER_USE_API_KEY)
122
- browser-use cloud logout # Remove API key
123
- browser-use cloud v2 GET /browsers # REST passthrough (v2 or v3)
124
- browser-use cloud v2 POST /tasks '{"task":"...","url":"..."}'
125
- browser-use cloud v2 poll <task-id> # Poll task until done
126
- browser-use cloud v2 --help # Show API endpoints
127
- ```
128
-
129
- `cloud connect` provisions a cloud browser with a persistent profile (auto-created on first use), connects via CDP, and prints a live URL. `browser-use close` disconnects AND stops the cloud browser. For custom browser settings (proxy, timeout, specific profile), use `cloud v2 POST /browsers` directly with the desired parameters.
130
-
131
- ### Agent Self-Registration
132
-
133
- Only use this if you don't already have an API key (check `browser-use doctor` to see if api_key is set). If already logged in, skip this entirely.
134
-
135
- 1. `browser-use cloud signup` — get a challenge
136
- 2. Solve the challenge
137
- 3. `browser-use cloud signup --verify <challenge-id> <answer>` — verify and save API key
138
- 4. `browser-use cloud signup --claim` — generate URL for a human to claim the account
139
-
140
- ## Tunnels
141
-
142
- ```bash
143
- browser-use tunnel <port> # Start Cloudflare tunnel (idempotent)
144
- browser-use tunnel list # Show active tunnels
145
- browser-use tunnel stop <port> # Stop tunnel
146
- browser-use tunnel stop --all # Stop all tunnels
147
- ```
148
-
149
- ## Profile Management
150
-
151
- ```bash
152
- browser-use profile list # List detected browsers and profiles
153
- browser-use profile sync --all # Sync profiles to cloud
154
- browser-use profile update # Download/update profile-use binary
155
- ```
156
-
157
- ## Command Chaining
158
-
159
- Commands can be chained with `&&`. The browser persists via the daemon, so chaining is safe and efficient.
160
-
161
- ```bash
162
- browser-use open https://example.com && browser-use state
163
- browser-use input 5 "user@example.com" && browser-use input 6 "password" && browser-use click 7
164
- ```
165
-
166
- Chain when you don't need intermediate output. Run separately when you need to parse `state` to discover indices first.
167
-
168
- ## Common Workflows
169
-
170
- ### Authenticated Browsing
171
-
172
- When a task requires an authenticated site (Gmail, GitHub, internal tools), use Chrome profiles:
173
-
174
- ```bash
175
- browser-use profile list # Check available profiles
176
- # Ask the user which profile to use, then:
177
- browser-use --profile "Default" open https://github.com # Already logged in
178
- ```
179
-
180
- ### Exposing Local Dev Servers
181
-
182
- ```bash
183
- browser-use tunnel 3000 # → https://abc.trycloudflare.com
184
- browser-use open https://abc.trycloudflare.com # Browse the tunnel
185
- ```
186
-
187
- ## Multiple Browsers
188
-
189
- For subagent workflows or running multiple browsers in parallel, use `--session NAME`. Each session gets its own browser. See `references/multi-session.md`.
190
-
191
- ## Configuration
192
-
193
- ```bash
194
- browser-use config list # Show all config values
195
- browser-use config set cloud_connect_proxy jp # Set a value
196
- browser-use config get cloud_connect_proxy # Get a value
197
- browser-use config unset cloud_connect_timeout # Remove a value
198
- browser-use doctor # Shows config + diagnostics
199
- browser-use setup # Interactive post-install setup
200
- ```
201
-
202
- Config stored in `~/.browser-use/config.json`.
203
-
204
- ## Global Options
205
-
206
- | Option | Description |
207
- |--------|-------------|
208
- | `--headed` | Show browser window |
209
- | `--profile [NAME]` | Use real Chrome (bare `--profile` uses "Default") |
210
- | `--cdp-url <url>` | Connect via CDP URL (`http://` or `ws://`) |
211
- | `--session NAME` | Target a named session (default: "default") |
212
- | `--json` | Output as JSON |
213
- | `--mcp` | Run as MCP server via stdin/stdout |
214
-
215
- ## Tips
216
-
217
- 1. **Always run `state` first** to see available elements and their indices
218
- 2. **Use `--headed` for debugging** to see what the browser is doing
219
- 3. **Sessions persist** — browser stays open between commands
220
- 4. **CLI aliases**: `bu`, `browser`, and `browseruse` all work
221
- 5. **If commands fail**, run `browser-use close` first, then retry
222
-
223
- ## Troubleshooting
224
-
225
- - **Browser won't start?** `browser-use close` then `browser-use --headed open <url>`
226
- - **Element not found?** `browser-use scroll down` then `browser-use state`
227
- - **Run diagnostics:** `browser-use doctor`
228
-
229
- ## Cleanup
230
-
231
- ```bash
232
- browser-use close # Close browser session
233
- browser-use tunnel stop --all # Stop tunnels (if any)
234
- ```
@@ -1,76 +0,0 @@
1
- # Raw CDP & Python Session Reference
2
-
3
- The CLI commands handle most browser interactions. Use `browser-use python` with raw CDP when you need browser-level control the CLI doesn't expose — activating a tab so the user sees it, intercepting network requests, emulating devices, or working with Chrome target IDs directly.
4
-
5
- ## How the Python session works
6
-
7
- `browser-use python "statement"` executes one Python statement per call. Variables persist across calls — set a value in one call, use it in the next.
8
-
9
- A `browser` object is pre-injected with sync wrappers for common operations (`browser.goto()`, `browser.click()`, etc.). For anything beyond those, two internals give you full access:
10
-
11
- - `browser._run(coroutine)` — run any async coroutine synchronously (60s timeout)
12
- - `browser._session` — the raw `BrowserSession` with full CDP client access
13
-
14
- ## Getting a CDP client
15
-
16
- ```bash
17
- browser-use python "cdp = browser._run(browser._session.get_or_create_cdp_session())"
18
- ```
19
-
20
- After this, `cdp` persists across calls. Use `cdp.cdp_client.send.<Domain>.<method>()` for any CDP command and `cdp.session_id` for the session parameter.
21
-
22
- ## Recipes
23
-
24
- ### Activate a tab (make it visible to the user)
25
-
26
- The CLI's `tab switch` only changes the agent's internal focus — Chrome's visible tab doesn't change. To actually show the user a specific tab:
27
-
28
- ```bash
29
- # Get all targets to find the target ID
30
- browser-use python "targets = browser._session.session_manager.get_all_page_targets()"
31
- browser-use python "print([(i, t.url) for i, t in enumerate(targets)])"
32
-
33
- # Activate target at index 1 so the user sees it
34
- browser-use python "cdp = browser._run(browser._session.get_or_create_cdp_session(target_id=None, focus=False))"
35
- browser-use python "browser._run(cdp.cdp_client.send.Target.activateTarget(params={'targetId': targets[1].target_id}))"
36
- ```
37
-
38
- ### List all tabs with target IDs
39
-
40
- ```bash
41
- browser-use python "targets = browser._session.session_manager.get_all_page_targets()"
42
- browser-use python "
43
- for i, t in enumerate(targets):
44
- print(f'{i}: {t.target_id[:12]}... {t.url}')
45
- "
46
- ```
47
-
48
- ### Run JavaScript and get the result
49
-
50
- ```bash
51
- browser-use python "cdp = browser._run(browser._session.get_or_create_cdp_session())"
52
- browser-use python "result = browser._run(cdp.cdp_client.send.Runtime.evaluate(params={'expression': 'document.title', 'returnByValue': True}, session_id=cdp.session_id))"
53
- browser-use python "print(result['result']['value'])"
54
- ```
55
-
56
- ### Emulate a mobile device
57
-
58
- ```bash
59
- browser-use python "cdp = browser._run(browser._session.get_or_create_cdp_session())"
60
- browser-use python "browser._run(cdp.cdp_client.send.Emulation.setDeviceMetricsOverride(params={'width': 375, 'height': 812, 'deviceScaleFactor': 3, 'mobile': True}, session_id=cdp.session_id))"
61
- ```
62
-
63
- ### Get cookies via CDP
64
-
65
- ```bash
66
- browser-use python "cdp = browser._run(browser._session.get_or_create_cdp_session())"
67
- browser-use python "cookies = browser._run(cdp.cdp_client.send.Network.getCookies(params={}, session_id=cdp.session_id))"
68
- browser-use python "print(cookies)"
69
- ```
70
-
71
- ## Tips
72
-
73
- - Each `browser-use python` call is one statement. Multi-line strings work for `for` loops and `if` blocks, but you can't mix statements and expressions. Use multiple calls.
74
- - Variables persist: set `cdp = ...` in one call, use `cdp` in the next.
75
- - The `browser._run()` bridge has a 60-second timeout. For long operations, increase it or use the async internals directly.
76
- - All CDP domains are available via `cdp.cdp_client.send.<Domain>.<method>()`. See the [Chrome DevTools Protocol docs](https://chromedevtools.github.io/devtools-protocol/) for the full API.
@@ -1,92 +0,0 @@
1
- # Multiple Browser Sessions
2
-
3
- ## Why use multiple sessions
4
-
5
- When you need more than one browser at a time:
6
- - Cloud browser for scraping + local Chrome for authenticated tasks
7
- - Two different Chrome profiles simultaneously
8
- - Isolated browser for testing that won't affect the user's browsing
9
- - Running a headed browser for debugging while headless runs in background
10
-
11
- ## How sessions are isolated
12
-
13
- Each `--session NAME` gets:
14
- - Its own daemon process
15
- - Its own Unix socket (`~/.browser-use/{name}.sock`)
16
- - Its own PID file and state file
17
- - Its own browser instance (completely independent)
18
- - Its own tab ownership state (multi-agent locks don't cross sessions)
19
-
20
- ## The `--session` flag
21
-
22
- Must be passed on every command targeting that session:
23
-
24
- ```bash
25
- browser-use --session work open <url> # goes to 'work' daemon
26
- browser-use --session work state # reads from 'work' daemon
27
- browser-use state # goes to 'default' daemon (different browser)
28
- ```
29
-
30
- If you forget `--session`, the command goes to the `default` session. This is the most common mistake — you'll interact with the wrong browser.
31
-
32
- ## Combining sessions with browser modes
33
-
34
- ```bash
35
- # Session 1: cloud browser
36
- browser-use --session cloud cloud connect
37
-
38
- # Session 2: connect to user's Chrome
39
- browser-use --session chrome connect
40
-
41
- # Session 3: headed Chromium for debugging
42
- browser-use --session debug --headed open <url>
43
- ```
44
-
45
- Each session is fully independent. The cloud session talks to a remote browser, the chrome session talks to the user's Chrome, and the debug session manages its own Chromium — all running simultaneously.
46
-
47
- ## Listing and managing sessions
48
-
49
- ```bash
50
- browser-use sessions
51
- ```
52
-
53
- Output:
54
- ```
55
- SESSION PHASE PID CONFIG
56
- cloud running 12345 cloud
57
- chrome running 12346 cdp
58
- debug ready 12347 headed
59
- ```
60
-
61
- PHASE shows the daemon lifecycle state: `initializing`, `ready`, `starting`, `running`, `shutting_down`, `stopped`, `failed`.
62
-
63
- ```bash
64
- browser-use --session cloud close # close one session
65
- browser-use close --all # close every session
66
- ```
67
-
68
- ## Common patterns
69
-
70
- **Cloud + local authenticated:**
71
- ```bash
72
- browser-use --session scraper cloud connect
73
- browser-use --session scraper open https://example.com
74
- # ... scrape data ...
75
-
76
- browser-use --session auth --profile "Default" open https://github.com
77
- browser-use --session auth state
78
- # ... interact with authenticated site ...
79
- ```
80
-
81
- **Throwaway test browser:**
82
- ```bash
83
- browser-use --session test --headed open https://localhost:3000
84
- # ... test, debug, inspect ...
85
- browser-use --session test close # done, clean up
86
- ```
87
-
88
- **Environment variable:**
89
- ```bash
90
- export BROWSER_USE_SESSION=work
91
- browser-use open <url> # uses 'work' session without --session flag
92
- ```