@bastani/atomic 0.9.24 → 0.9.25-alpha.1

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 (416) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/builtin/intercom/index.bundle.mjs +5 -0
  3. package/dist/builtin/intercom/package.json +2 -2
  4. package/dist/builtin/mcp/CHANGELOG.md +11 -0
  5. package/dist/builtin/mcp/index.bundle.mjs +219 -71
  6. package/dist/builtin/mcp/package.json +6 -2
  7. package/dist/builtin/subagents/package.json +3 -3
  8. package/dist/builtin/subagents/src/extension/index.bundle.mjs +1 -0
  9. package/dist/builtin/web-access/index.bundle.mjs +7 -6
  10. package/dist/builtin/web-access/package.json +2 -2
  11. package/dist/builtin/workflows/CHANGELOG.md +6 -0
  12. package/dist/builtin/workflows/package.json +2 -2
  13. package/dist/builtin/workflows/skills/prompt-engineer/SKILL.md +1 -0
  14. package/dist/builtin/workflows/skills/prompt-engineer/references/gpt_6_1_sol.md +66 -0
  15. package/dist/builtin/workflows/src/extension/index.bundle.mjs +1 -0
  16. package/dist/cli/startup-ui.d.ts +3 -4
  17. package/dist/cli/startup-ui.d.ts.map +1 -1
  18. package/dist/cli/startup-ui.js +3 -4
  19. package/dist/cli/startup-ui.js.map +1 -1
  20. package/dist/config.d.ts +3 -0
  21. package/dist/config.d.ts.map +1 -1
  22. package/dist/config.js +17 -0
  23. package/dist/config.js.map +1 -1
  24. package/dist/core/agent-session-events.d.ts.map +1 -1
  25. package/dist/core/agent-session-events.js +5 -0
  26. package/dist/core/agent-session-events.js.map +1 -1
  27. package/dist/core/agent-session-export.d.ts.map +1 -1
  28. package/dist/core/agent-session-export.js +3 -0
  29. package/dist/core/agent-session-export.js.map +1 -1
  30. package/dist/core/agent-session-extension-bindings.d.ts.map +1 -1
  31. package/dist/core/agent-session-extension-bindings.js +4 -0
  32. package/dist/core/agent-session-extension-bindings.js.map +1 -1
  33. package/dist/core/agent-session-methods.d.ts +2 -1
  34. package/dist/core/agent-session-methods.d.ts.map +1 -1
  35. package/dist/core/agent-session-methods.js.map +1 -1
  36. package/dist/core/agent-session-nested-tools.d.ts +10 -0
  37. package/dist/core/agent-session-nested-tools.d.ts.map +1 -0
  38. package/dist/core/agent-session-nested-tools.js +76 -0
  39. package/dist/core/agent-session-nested-tools.js.map +1 -0
  40. package/dist/core/agent-session-runtime-auth.js +3 -1
  41. package/dist/core/agent-session-runtime-auth.js.map +1 -1
  42. package/dist/core/agent-session-state.d.ts +2 -0
  43. package/dist/core/agent-session-state.d.ts.map +1 -1
  44. package/dist/core/agent-session-state.js +11 -11
  45. package/dist/core/agent-session-state.js.map +1 -1
  46. package/dist/core/agent-session-tool-hooks.d.ts.map +1 -1
  47. package/dist/core/agent-session-tool-hooks.js +18 -3
  48. package/dist/core/agent-session-tool-hooks.js.map +1 -1
  49. package/dist/core/agent-session-tool-registry.d.ts.map +1 -1
  50. package/dist/core/agent-session-tool-registry.js +15 -3
  51. package/dist/core/agent-session-tool-registry.js.map +1 -1
  52. package/dist/core/agent-session-types.d.ts +6 -2
  53. package/dist/core/agent-session-types.d.ts.map +1 -1
  54. package/dist/core/agent-session-types.js.map +1 -1
  55. package/dist/core/compaction/utils.d.ts +1 -1
  56. package/dist/core/compaction/utils.d.ts.map +1 -1
  57. package/dist/core/compaction/utils.js +18 -18
  58. package/dist/core/compaction/utils.js.map +1 -1
  59. package/dist/core/execution-model-router.d.ts.map +1 -1
  60. package/dist/core/execution-model-router.js +24 -8
  61. package/dist/core/execution-model-router.js.map +1 -1
  62. package/dist/core/export-html/template.js +12 -0
  63. package/dist/core/extensions/agent-events.d.ts +3 -0
  64. package/dist/core/extensions/agent-events.d.ts.map +1 -1
  65. package/dist/core/extensions/agent-events.js.map +1 -1
  66. package/dist/core/extensions/api-types.d.ts +2 -0
  67. package/dist/core/extensions/api-types.d.ts.map +1 -1
  68. package/dist/core/extensions/api-types.js.map +1 -1
  69. package/dist/core/extensions/context-types.d.ts +9 -0
  70. package/dist/core/extensions/context-types.d.ts.map +1 -1
  71. package/dist/core/extensions/context-types.js.map +1 -1
  72. package/dist/core/extensions/event-results.d.ts +3 -0
  73. package/dist/core/extensions/event-results.d.ts.map +1 -1
  74. package/dist/core/extensions/event-results.js.map +1 -1
  75. package/dist/core/extensions/index.d.ts +2 -0
  76. package/dist/core/extensions/index.d.ts.map +1 -1
  77. package/dist/core/extensions/index.js.map +1 -1
  78. package/dist/core/extensions/loader-api.d.ts.map +1 -1
  79. package/dist/core/extensions/loader-api.js +4 -0
  80. package/dist/core/extensions/loader-api.js.map +1 -1
  81. package/dist/core/extensions/loader-core.d.ts.map +1 -1
  82. package/dist/core/extensions/loader-core.js +3 -5
  83. package/dist/core/extensions/loader-core.js.map +1 -1
  84. package/dist/core/extensions/loader-host-modules.d.ts.map +1 -1
  85. package/dist/core/extensions/loader-host-modules.js +7 -1
  86. package/dist/core/extensions/loader-host-modules.js.map +1 -1
  87. package/dist/core/extensions/loader-runtime.d.ts.map +1 -1
  88. package/dist/core/extensions/loader-runtime.js +3 -0
  89. package/dist/core/extensions/loader-runtime.js.map +1 -1
  90. package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
  91. package/dist/core/extensions/loader-virtual-modules.js +4 -0
  92. package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
  93. package/dist/core/extensions/provider-types.d.ts +2 -0
  94. package/dist/core/extensions/provider-types.d.ts.map +1 -1
  95. package/dist/core/extensions/provider-types.js.map +1 -1
  96. package/dist/core/extensions/runner-events.d.ts.map +1 -1
  97. package/dist/core/extensions/runner-events.js +16 -1
  98. package/dist/core/extensions/runner-events.js.map +1 -1
  99. package/dist/core/extensions/runner.d.ts +5 -0
  100. package/dist/core/extensions/runner.d.ts.map +1 -1
  101. package/dist/core/extensions/runner.js +34 -0
  102. package/dist/core/extensions/runner.js.map +1 -1
  103. package/dist/core/extensions/runtime-types.d.ts +5 -0
  104. package/dist/core/extensions/runtime-types.d.ts.map +1 -1
  105. package/dist/core/extensions/runtime-types.js.map +1 -1
  106. package/dist/core/extensions/tool-events.d.ts +4 -0
  107. package/dist/core/extensions/tool-events.d.ts.map +1 -1
  108. package/dist/core/extensions/tool-events.js.map +1 -1
  109. package/dist/core/extensions/tool-types.d.ts +34 -3
  110. package/dist/core/extensions/tool-types.d.ts.map +1 -1
  111. package/dist/core/extensions/tool-types.js.map +1 -1
  112. package/dist/core/extensions/wrapper.d.ts.map +1 -1
  113. package/dist/core/extensions/wrapper.js +14 -2
  114. package/dist/core/extensions/wrapper.js.map +1 -1
  115. package/dist/core/fast-model-routing-transport.d.ts.map +1 -1
  116. package/dist/core/fast-model-routing-transport.js +2 -1
  117. package/dist/core/fast-model-routing-transport.js.map +1 -1
  118. package/dist/core/fast-model-routing.d.ts +1 -2
  119. package/dist/core/fast-model-routing.d.ts.map +1 -1
  120. package/dist/core/fast-model-routing.js +13 -11
  121. package/dist/core/fast-model-routing.js.map +1 -1
  122. package/dist/core/fast-model-variants.d.ts +4 -1
  123. package/dist/core/fast-model-variants.d.ts.map +1 -1
  124. package/dist/core/fast-model-variants.js +42 -17
  125. package/dist/core/fast-model-variants.js.map +1 -1
  126. package/dist/core/model-registry.d.ts +4 -1
  127. package/dist/core/model-registry.d.ts.map +1 -1
  128. package/dist/core/model-registry.js +9 -0
  129. package/dist/core/model-registry.js.map +1 -1
  130. package/dist/core/model-resolver-defaults.js +1 -1
  131. package/dist/core/model-resolver-defaults.js.map +1 -1
  132. package/dist/core/model-routing-candidates.d.ts +4 -0
  133. package/dist/core/model-routing-candidates.d.ts.map +1 -1
  134. package/dist/core/model-routing-candidates.js +8 -3
  135. package/dist/core/model-routing-candidates.js.map +1 -1
  136. package/dist/core/model-routing-evals.d.ts.map +1 -1
  137. package/dist/core/model-routing-evals.js +4 -5
  138. package/dist/core/model-routing-evals.js.map +1 -1
  139. package/dist/core/model-runtime.d.ts +3 -2
  140. package/dist/core/model-runtime.d.ts.map +1 -1
  141. package/dist/core/model-runtime.js +19 -25
  142. package/dist/core/model-runtime.js.map +1 -1
  143. package/dist/core/nested-tool-calls.d.ts +64 -0
  144. package/dist/core/nested-tool-calls.d.ts.map +1 -0
  145. package/dist/core/nested-tool-calls.js +132 -0
  146. package/dist/core/nested-tool-calls.js.map +1 -0
  147. package/dist/core/package-manager-resolver.d.ts.map +1 -1
  148. package/dist/core/package-manager-resolver.js +21 -3
  149. package/dist/core/package-manager-resolver.js.map +1 -1
  150. package/dist/core/package-manager-resource-accumulator.d.ts.map +1 -1
  151. package/dist/core/package-manager-resource-accumulator.js +2 -0
  152. package/dist/core/package-manager-resource-accumulator.js.map +1 -1
  153. package/dist/core/package-manager-types.d.ts +2 -0
  154. package/dist/core/package-manager-types.d.ts.map +1 -1
  155. package/dist/core/package-manager-types.js.map +1 -1
  156. package/dist/core/package-manager.d.ts.map +1 -1
  157. package/dist/core/package-manager.js +1 -0
  158. package/dist/core/package-manager.js.map +1 -1
  159. package/dist/core/resource-loader-core.d.ts.map +1 -1
  160. package/dist/core/resource-loader-core.js +12 -6
  161. package/dist/core/resource-loader-core.js.map +1 -1
  162. package/dist/core/resource-loader-extensions.d.ts +1 -0
  163. package/dist/core/resource-loader-extensions.d.ts.map +1 -1
  164. package/dist/core/resource-loader-extensions.js +64 -4
  165. package/dist/core/resource-loader-extensions.js.map +1 -1
  166. package/dist/core/resource-loader-paths.d.ts.map +1 -1
  167. package/dist/core/resource-loader-paths.js +2 -1
  168. package/dist/core/resource-loader-paths.js.map +1 -1
  169. package/dist/core/resource-loader-reload.d.ts.map +1 -1
  170. package/dist/core/resource-loader-reload.js +5 -4
  171. package/dist/core/resource-loader-reload.js.map +1 -1
  172. package/dist/core/resource-loader-source-info.d.ts.map +1 -1
  173. package/dist/core/resource-loader-source-info.js +7 -5
  174. package/dist/core/resource-loader-source-info.js.map +1 -1
  175. package/dist/core/sdk-types.d.ts +1 -1
  176. package/dist/core/sdk-types.js.map +1 -1
  177. package/dist/core/session-manager-core.d.ts +2 -0
  178. package/dist/core/session-manager-core.d.ts.map +1 -1
  179. package/dist/core/session-manager-core.js +5 -1
  180. package/dist/core/session-manager-core.js.map +1 -1
  181. package/dist/core/session-manager-entries.d.ts +1 -1
  182. package/dist/core/session-manager-entries.d.ts.map +1 -1
  183. package/dist/core/session-manager-entries.js.map +1 -1
  184. package/dist/core/settings-manager-basic-accessors.d.ts +4 -0
  185. package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
  186. package/dist/core/settings-manager-basic-accessors.js +27 -1
  187. package/dist/core/settings-manager-basic-accessors.js.map +1 -1
  188. package/dist/core/settings-manager-core.d.ts +2 -0
  189. package/dist/core/settings-manager-core.d.ts.map +1 -1
  190. package/dist/core/settings-manager-core.js +4 -0
  191. package/dist/core/settings-manager-core.js.map +1 -1
  192. package/dist/core/settings-manager-ui-accessors.d.ts +3 -1
  193. package/dist/core/settings-manager-ui-accessors.d.ts.map +1 -1
  194. package/dist/core/settings-manager-ui-accessors.js +13 -0
  195. package/dist/core/settings-manager-ui-accessors.js.map +1 -1
  196. package/dist/core/settings-manager.d.ts +1 -1
  197. package/dist/core/settings-manager.d.ts.map +1 -1
  198. package/dist/core/settings-manager.js.map +1 -1
  199. package/dist/core/settings-merge.d.ts +1 -0
  200. package/dist/core/settings-merge.d.ts.map +1 -1
  201. package/dist/core/settings-merge.js +30 -1
  202. package/dist/core/settings-merge.js.map +1 -1
  203. package/dist/core/settings-types.d.ts +8 -1
  204. package/dist/core/settings-types.d.ts.map +1 -1
  205. package/dist/core/settings-types.js.map +1 -1
  206. package/dist/core/source-info.d.ts +3 -0
  207. package/dist/core/source-info.d.ts.map +1 -1
  208. package/dist/core/source-info.js +11 -0
  209. package/dist/core/source-info.js.map +1 -1
  210. package/dist/core/tool-loadout.d.ts +6 -0
  211. package/dist/core/tool-loadout.d.ts.map +1 -0
  212. package/dist/core/tool-loadout.js +63 -0
  213. package/dist/core/tool-loadout.js.map +1 -0
  214. package/dist/core/tools/ask-user-question/ask-user-question.d.ts.map +1 -1
  215. package/dist/core/tools/ask-user-question/ask-user-question.js +1 -0
  216. package/dist/core/tools/ask-user-question/ask-user-question.js.map +1 -1
  217. package/dist/core/tools/bash.d.ts.map +1 -1
  218. package/dist/core/tools/bash.js +31 -11
  219. package/dist/core/tools/bash.js.map +1 -1
  220. package/dist/core/tools/output-accumulator.d.ts +4 -0
  221. package/dist/core/tools/output-accumulator.d.ts.map +1 -1
  222. package/dist/core/tools/output-accumulator.js +32 -0
  223. package/dist/core/tools/output-accumulator.js.map +1 -1
  224. package/dist/core/tools/powershell.d.ts +27 -21
  225. package/dist/core/tools/powershell.d.ts.map +1 -1
  226. package/dist/core/tools/render-utils.d.ts +4 -0
  227. package/dist/core/tools/render-utils.d.ts.map +1 -1
  228. package/dist/core/tools/render-utils.js +19 -0
  229. package/dist/core/tools/render-utils.js.map +1 -1
  230. package/dist/core/tools/tool-concurrency.d.ts +1 -1
  231. package/dist/core/tools/tool-concurrency.d.ts.map +1 -1
  232. package/dist/core/tools/tool-concurrency.js +28 -3
  233. package/dist/core/tools/tool-concurrency.js.map +1 -1
  234. package/dist/core/tools/tool-definition-wrapper.d.ts +1 -1
  235. package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
  236. package/dist/core/tools/tool-definition-wrapper.js +4 -1
  237. package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
  238. package/dist/core/usage-totals.d.ts +2 -0
  239. package/dist/core/usage-totals.d.ts.map +1 -1
  240. package/dist/core/usage-totals.js +23 -0
  241. package/dist/core/usage-totals.js.map +1 -1
  242. package/dist/extensions/codemode/execute.d.ts +10 -0
  243. package/dist/extensions/codemode/execute.d.ts.map +1 -0
  244. package/dist/extensions/codemode/execute.js +313 -0
  245. package/dist/extensions/codemode/execute.js.map +1 -0
  246. package/dist/extensions/codemode/index.d.ts +11 -0
  247. package/dist/extensions/codemode/index.d.ts.map +1 -0
  248. package/dist/extensions/codemode/index.js +14 -0
  249. package/dist/extensions/codemode/index.js.map +1 -0
  250. package/dist/extensions/codemode/renderer.d.ts +4 -0
  251. package/dist/extensions/codemode/renderer.d.ts.map +1 -0
  252. package/dist/extensions/codemode/renderer.js +78 -0
  253. package/dist/extensions/codemode/renderer.js.map +1 -0
  254. package/dist/extensions/codemode/tool.d.ts +51 -0
  255. package/dist/extensions/codemode/tool.d.ts.map +1 -0
  256. package/dist/extensions/codemode/tool.js +134 -0
  257. package/dist/extensions/codemode/tool.js.map +1 -0
  258. package/dist/extensions/codemode/worker.d.ts +2 -0
  259. package/dist/extensions/codemode/worker.d.ts.map +1 -0
  260. package/dist/extensions/codemode/worker.js +2 -0
  261. package/dist/extensions/codemode/worker.js.map +1 -0
  262. package/dist/extensions/index.d.ts.map +1 -1
  263. package/dist/extensions/index.js +5 -1
  264. package/dist/extensions/index.js.map +1 -1
  265. package/dist/extensions/llama/provider.d.ts.map +1 -1
  266. package/dist/extensions/llama/provider.js +31 -10
  267. package/dist/extensions/llama/provider.js.map +1 -1
  268. package/dist/extensions/tool-search/index.d.ts +5 -0
  269. package/dist/extensions/tool-search/index.d.ts.map +1 -0
  270. package/dist/extensions/tool-search/index.js +6 -0
  271. package/dist/extensions/tool-search/index.js.map +1 -0
  272. package/dist/extensions/tool-search/tool.d.ts +41 -0
  273. package/dist/extensions/tool-search/tool.d.ts.map +1 -0
  274. package/dist/extensions/tool-search/tool.js +161 -0
  275. package/dist/extensions/tool-search/tool.js.map +1 -0
  276. package/dist/index.d.ts +7 -0
  277. package/dist/index.d.ts.map +1 -1
  278. package/dist/index.js +5 -0
  279. package/dist/index.js.map +1 -1
  280. package/dist/modes/interactive/components/chat-message-renderer.d.ts +1 -0
  281. package/dist/modes/interactive/components/chat-message-renderer.d.ts.map +1 -1
  282. package/dist/modes/interactive/components/chat-message-renderer.js +2 -0
  283. package/dist/modes/interactive/components/chat-message-renderer.js.map +1 -1
  284. package/dist/modes/interactive/components/config-selector-list.d.ts.map +1 -1
  285. package/dist/modes/interactive/components/config-selector-list.js +9 -1
  286. package/dist/modes/interactive/components/config-selector-list.js.map +1 -1
  287. package/dist/modes/interactive/components/config-selector-project-scope.d.ts.map +1 -1
  288. package/dist/modes/interactive/components/config-selector-project-scope.js +4 -1
  289. package/dist/modes/interactive/components/config-selector-project-scope.js.map +1 -1
  290. package/dist/modes/interactive/components/first-time-setup.d.ts +2 -2
  291. package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
  292. package/dist/modes/interactive/components/first-time-setup.js +1 -0
  293. package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
  294. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  295. package/dist/modes/interactive/components/footer.js +42 -7
  296. package/dist/modes/interactive/components/footer.js.map +1 -1
  297. package/dist/modes/interactive/components/settings-selector-handlers.d.ts.map +1 -1
  298. package/dist/modes/interactive/components/settings-selector-handlers.js +3 -0
  299. package/dist/modes/interactive/components/settings-selector-handlers.js.map +1 -1
  300. package/dist/modes/interactive/components/settings-selector-items.d.ts.map +1 -1
  301. package/dist/modes/interactive/components/settings-selector-items.js +13 -0
  302. package/dist/modes/interactive/components/settings-selector-items.js.map +1 -1
  303. package/dist/modes/interactive/components/settings-selector-submenus.d.ts.map +1 -1
  304. package/dist/modes/interactive/components/settings-selector-submenus.js +3 -1
  305. package/dist/modes/interactive/components/settings-selector-submenus.js.map +1 -1
  306. package/dist/modes/interactive/components/settings-selector-types.d.ts +3 -1
  307. package/dist/modes/interactive/components/settings-selector-types.d.ts.map +1 -1
  308. package/dist/modes/interactive/components/settings-selector-types.js.map +1 -1
  309. package/dist/modes/interactive/components/themed-text.d.ts +8 -0
  310. package/dist/modes/interactive/components/themed-text.d.ts.map +1 -0
  311. package/dist/modes/interactive/components/themed-text.js +14 -0
  312. package/dist/modes/interactive/components/themed-text.js.map +1 -0
  313. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  314. package/dist/modes/interactive/components/tool-execution.js +5 -3
  315. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  316. package/dist/modes/interactive/interactive-agent-events.js +2 -0
  317. package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
  318. package/dist/modes/interactive/interactive-mode-base.d.ts +2 -1
  319. package/dist/modes/interactive/interactive-mode-base.d.ts.map +1 -1
  320. package/dist/modes/interactive/interactive-mode-base.js +5 -0
  321. package/dist/modes/interactive/interactive-mode-base.js.map +1 -1
  322. package/dist/modes/interactive/interactive-resource-rendering.js +7 -10
  323. package/dist/modes/interactive/interactive-resource-rendering.js.map +1 -1
  324. package/dist/modes/interactive/interactive-selectors.js +5 -0
  325. package/dist/modes/interactive/interactive-selectors.js.map +1 -1
  326. package/dist/modes/interactive/interactive-session-runtime.js +1 -0
  327. package/dist/modes/interactive/interactive-session-runtime.js.map +1 -1
  328. package/dist/modes/interactive/interactive-startup.d.ts.map +1 -1
  329. package/dist/modes/interactive/interactive-startup.js +8 -3
  330. package/dist/modes/interactive/interactive-startup.js.map +1 -1
  331. package/dist/modes/interactive/interactive-tui.d.ts +2 -1
  332. package/dist/modes/interactive/interactive-tui.d.ts.map +1 -1
  333. package/dist/modes/interactive/interactive-tui.js +1 -0
  334. package/dist/modes/interactive/interactive-tui.js.map +1 -1
  335. package/dist/modes/interactive/theme/color-utils.d.ts.map +1 -1
  336. package/dist/modes/interactive/theme/color-utils.js +3 -0
  337. package/dist/modes/interactive/theme/color-utils.js.map +1 -1
  338. package/dist/modes/interactive/theme/export-colors.d.ts.map +1 -1
  339. package/dist/modes/interactive/theme/export-colors.js +4 -1
  340. package/dist/modes/interactive/theme/export-colors.js.map +1 -1
  341. package/dist/modes/interactive/theme/system-theme.d.ts +23 -0
  342. package/dist/modes/interactive/theme/system-theme.d.ts.map +1 -0
  343. package/dist/modes/interactive/theme/system-theme.js +462 -0
  344. package/dist/modes/interactive/theme/system-theme.js.map +1 -0
  345. package/dist/modes/interactive/theme/terminal-colors.d.ts +10 -0
  346. package/dist/modes/interactive/theme/terminal-colors.d.ts.map +1 -0
  347. package/dist/modes/interactive/theme/terminal-colors.js +36 -0
  348. package/dist/modes/interactive/theme/terminal-colors.js.map +1 -0
  349. package/dist/modes/interactive/theme/terminal-detection.d.ts +4 -6
  350. package/dist/modes/interactive/theme/terminal-detection.d.ts.map +1 -1
  351. package/dist/modes/interactive/theme/terminal-detection.js +12 -46
  352. package/dist/modes/interactive/theme/terminal-detection.js.map +1 -1
  353. package/dist/modes/interactive/theme/theme-class.d.ts +1 -0
  354. package/dist/modes/interactive/theme/theme-class.d.ts.map +1 -1
  355. package/dist/modes/interactive/theme/theme-class.js +2 -2
  356. package/dist/modes/interactive/theme/theme-class.js.map +1 -1
  357. package/dist/modes/interactive/theme/theme-controller.d.ts +16 -8
  358. package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
  359. package/dist/modes/interactive/theme/theme-controller.js +106 -64
  360. package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
  361. package/dist/modes/interactive/theme/theme-loading.d.ts.map +1 -1
  362. package/dist/modes/interactive/theme/theme-loading.js +23 -2
  363. package/dist/modes/interactive/theme/theme-loading.js.map +1 -1
  364. package/dist/modes/interactive/theme/theme-schema.js +1 -1
  365. package/dist/modes/interactive/theme/theme-schema.js.map +1 -1
  366. package/dist/modes/interactive/theme/theme-schema.json +2 -2
  367. package/dist/modes/interactive/theme/theme.d.ts +2 -0
  368. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  369. package/dist/modes/interactive/theme/theme.js +2 -0
  370. package/dist/modes/interactive/theme/theme.js.map +1 -1
  371. package/dist/modes/interactive-engine/engine-session-stats.d.ts +26 -0
  372. package/dist/modes/interactive-engine/engine-session-stats.d.ts.map +1 -0
  373. package/dist/modes/interactive-engine/engine-session-stats.js +71 -0
  374. package/dist/modes/interactive-engine/engine-session-stats.js.map +1 -0
  375. package/dist/modes/interactive-engine/extension-ui-bridge.d.ts +2 -0
  376. package/dist/modes/interactive-engine/extension-ui-bridge.d.ts.map +1 -1
  377. package/dist/modes/interactive-engine/extension-ui-bridge.js +4 -0
  378. package/dist/modes/interactive-engine/extension-ui-bridge.js.map +1 -1
  379. package/dist/modes/interactive-engine/isolated-runtime.d.ts +3 -0
  380. package/dist/modes/interactive-engine/isolated-runtime.d.ts.map +1 -1
  381. package/dist/modes/interactive-engine/isolated-runtime.js +27 -5
  382. package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
  383. package/dist/modes/rpc/rpc-provider-auth.d.ts.map +1 -1
  384. package/dist/modes/rpc/rpc-provider-auth.js +3 -1
  385. package/dist/modes/rpc/rpc-provider-auth.js.map +1 -1
  386. package/dist/package-manager-cli.d.ts.map +1 -1
  387. package/dist/package-manager-cli.js +8 -2
  388. package/dist/package-manager-cli.js.map +1 -1
  389. package/dist/utils/paths.d.ts.map +1 -1
  390. package/dist/utils/paths.js +2 -1
  391. package/dist/utils/paths.js.map +1 -1
  392. package/dist/utils/shell.d.ts +1 -3
  393. package/dist/utils/shell.d.ts.map +1 -1
  394. package/dist/utils/shell.js +3 -30
  395. package/dist/utils/shell.js.map +1 -1
  396. package/docs/extensions/api-reference.md +5 -1
  397. package/docs/extensions/authoring.md +31 -1
  398. package/docs/extensions/events.md +3 -1
  399. package/docs/extensions.md +14 -0
  400. package/docs/models/evals.md +45 -2
  401. package/docs/models/reference.md +33 -2
  402. package/docs/models.md +1 -0
  403. package/docs/packages.md +2 -0
  404. package/docs/providers.md +34 -7
  405. package/docs/reference/cli.md +4 -0
  406. package/docs/rpc/protocol.md +10 -0
  407. package/docs/sdk/reference.md +5 -1
  408. package/docs/sdk/structured-decisions.md +2 -2
  409. package/docs/session-format.md +5 -0
  410. package/docs/settings.md +19 -5
  411. package/docs/skills.md +1 -1
  412. package/docs/themes/reference.md +2 -1
  413. package/docs/themes.md +4 -2
  414. package/docs/tools.md +39 -0
  415. package/npm-shrinkwrap.json +115 -113
  416. package/package.json +12 -9
package/docs/tools.md CHANGED
@@ -14,6 +14,45 @@ Atomic enables these coding tools in normal sessions by default: `read`, `write`
14
14
 
15
15
  Bundled integrations also provide [public repository search](#code_search), [web fetching](/web-access), and [MCP tools](/mcp-servers).
16
16
 
17
+ ## `codemode`
18
+
19
+ Codemode lets the model compose permitted tool calls in JavaScript and return only the useful output. It is shipped but inactive by default. Enable it alongside Atomic's defaults in `~/.atomic/agent/settings.json` or project `.atomic/settings.json`:
20
+
21
+ ```json
22
+ { "defaultTools": ["+codemode"] }
23
+ ```
24
+
25
+ For one invocation, `--tools` is a replacement allowlist: `atomic --tools read,search,find,codemode`. Include every tool you want available, including `intercom` when needed. `codemode({ code: "..." })` accepts top-level `await` and `return`, for example:
26
+
27
+ ```js
28
+ const files = await Promise.all([
29
+ tools.read({ path: "README.md" }),
30
+ tools.read({ path: "package.json" }),
31
+ ]);
32
+ return files.map((text) => text.slice(0, 1000));
33
+ ```
34
+
35
+ Scripts run in a fresh QuickJS worker with a 256 MiB memory limit. They have no direct Node, filesystem, network, modules, timers, or credential globals. Tool calls still run with the session's permissions and can have real side effects; a failed script does **not** undo them. Workflow, subagent, Intercom/supervisor, and user-question tools are model-only and cannot be called from scripts. Allowlists, exclusions, and deactivated direct MCP tools remain authoritative.
36
+
37
+ Use `text(value)`, `image(dataUrlOrImageContent)`, `console.log(...)`, or a top-level return for output; `exit()` ends early. An optional first line configures output and a caller-owned deadline:
38
+
39
+ ```js
40
+ // @options: {"max_output_tokens": 2000, "timeout_ms": 60000}
41
+ return await tools.read({ path: "README.md" });
42
+ ```
43
+
44
+ There is no default deadline. Text output defaults to 10,000 estimated tokens; longer output keeps its start and end and, when saving succeeds, names a temporary file containing the full text. Failed scripts retain partial output and report the error. Unawaited calls are cancelled when a script ends; await work you need to finish.
45
+
46
+ Tools with `outputSchema` return their `structuredContent` to scripts, including structured error results. Other tools return text and throw on errors. Completed `bash` calls provide structured output as described in the [SDK reference](/sdk/reference#bash-tool-behavior).
47
+
48
+ `ALL_TOOLS`, `searchTools(query, { limit, namespace })`, and `describeTool(name)` discover the currently permitted tools. `store(key, value)` and `load(key)` preserve JSON values across successful calls on the current session branch, including after resume. Failed scripts discard store writes, not tool side effects. `models.getModelsOfType`, `getAvailableOfType`, and `getModelOfType` expose public catalog metadata; `models.classify(model, context)` calls a registered classifier with host-resolved credentials, at most four concurrently. Reported classifier usage contributes to the script's session cost.
49
+
50
+ Set [codemode settings](/settings#tools) to control inline declaration size and whether ordinary direct tool declarations remain visible. Atomic's existing [MCP host](/mcp-servers) remains the only MCP connection/configuration owner: codemode calls the permitted gateway or direct tools, not a second MCP host. Use MCP discovery for server tools not yet registered in the session.
51
+
52
+ ## `tool_search`
53
+
54
+ `tool_search` is inactive by default. Enable it with `"defaultTools": ["+tool_search"]` or include it in `--tools`. It ranks currently registered `codemode` and `deferred` tools by their metadata and activates matching tools for the next model call. It does not bypass session tool restrictions or replace MCP server discovery.
55
+
17
56
  ## `code_search`
18
57
 
19
58
  The bundled web-access extension provides `code_search` for questions about code, architecture, and APIs in a public GitHub repository. It uses DeepWiki MCP at `https://mcp.deepwiki.com/mcp` without an API key or local MCP configuration.
@@ -1,21 +1,22 @@
1
1
  {
2
2
  "name": "@bastani/atomic",
3
- "version": "0.9.24",
3
+ "version": "0.9.25-alpha.1",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@bastani/atomic",
9
- "version": "0.9.24",
9
+ "version": "0.9.25-alpha.1",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
- "@bastani/atomic-natives": "0.9.24",
13
- "@bastani/pi-ai": "0.9.24",
12
+ "@bastani/atomic-natives": "0.9.25-alpha.1",
13
+ "@bastani/pi-ai": "0.9.25-alpha.1",
14
14
  "@dbos-inc/dbos-sdk": "4.25.14",
15
- "@earendil-works/pi-agent-core": "0.87.1",
16
- "@earendil-works/pi-client": "0.87.1",
17
- "@earendil-works/pi-protocol": "0.87.1",
18
- "@earendil-works/pi-tui": "0.87.1",
15
+ "@earendil-works/pi-agent-core": "0.99.1",
16
+ "@earendil-works/pi-client": "0.99.1",
17
+ "@earendil-works/pi-codemode": "0.99.1",
18
+ "@earendil-works/pi-protocol": "0.99.1",
19
+ "@earendil-works/pi-tui": "0.99.1",
19
20
  "@modelcontextprotocol/ext-apps": "^1.7.5",
20
21
  "@modelcontextprotocol/sdk": "1.30.0",
21
22
  "@mozilla/readability": "^0.6.0",
@@ -39,6 +40,7 @@
39
40
  "p-limit": "^7.3.2",
40
41
  "pg": "8.23.0",
41
42
  "proper-lockfile": "4.1.2",
43
+ "quickjs-wasi": "3.6.2",
42
44
  "semver": "7.8.5",
43
45
  "turndown": "^7.2.0",
44
46
  "typebox": "1.3.27",
@@ -429,18 +431,18 @@
429
431
  }
430
432
  },
431
433
  "node_modules/@bastani/atomic-natives": {
432
- "version": "0.9.24",
433
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives/-/atomic-natives-0.9.24.tgz",
434
+ "version": "0.9.25-alpha.1",
435
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives/-/atomic-natives-0.9.25-alpha.1.tgz",
434
436
  "license": "MIT",
435
437
  "optionalDependencies": {
436
- "@bastani/atomic-natives-darwin-arm64": "0.9.24",
437
- "@bastani/atomic-natives-darwin-x64": "0.9.24",
438
- "@bastani/atomic-natives-linux-arm64-gnu": "0.9.24",
439
- "@bastani/atomic-natives-linux-arm64-musl": "0.9.24",
440
- "@bastani/atomic-natives-linux-x64-gnu": "0.9.24",
441
- "@bastani/atomic-natives-linux-x64-musl": "0.9.24",
442
- "@bastani/atomic-natives-win32-arm64-msvc": "0.9.24",
443
- "@bastani/atomic-natives-win32-x64-msvc": "0.9.24"
438
+ "@bastani/atomic-natives-darwin-arm64": "0.9.25-alpha.1",
439
+ "@bastani/atomic-natives-darwin-x64": "0.9.25-alpha.1",
440
+ "@bastani/atomic-natives-linux-arm64-gnu": "0.9.25-alpha.1",
441
+ "@bastani/atomic-natives-linux-arm64-musl": "0.9.25-alpha.1",
442
+ "@bastani/atomic-natives-linux-x64-gnu": "0.9.25-alpha.1",
443
+ "@bastani/atomic-natives-linux-x64-musl": "0.9.25-alpha.1",
444
+ "@bastani/atomic-natives-win32-arm64-msvc": "0.9.25-alpha.1",
445
+ "@bastani/atomic-natives-win32-x64-msvc": "0.9.25-alpha.1"
444
446
  },
445
447
  "engines": {
446
448
  "bun": ">=1.4.2",
@@ -448,8 +450,8 @@
448
450
  }
449
451
  },
450
452
  "node_modules/@bastani/atomic-natives-darwin-arm64": {
451
- "version": "0.9.24",
452
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-arm64/-/atomic-natives-darwin-arm64-0.9.24.tgz",
453
+ "version": "0.9.25-alpha.1",
454
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-arm64/-/atomic-natives-darwin-arm64-0.9.25-alpha.1.tgz",
453
455
  "license": "MIT",
454
456
  "os": [
455
457
  "darwin"
@@ -460,8 +462,8 @@
460
462
  "optional": true
461
463
  },
462
464
  "node_modules/@bastani/atomic-natives-darwin-x64": {
463
- "version": "0.9.24",
464
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-x64/-/atomic-natives-darwin-x64-0.9.24.tgz",
465
+ "version": "0.9.25-alpha.1",
466
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-x64/-/atomic-natives-darwin-x64-0.9.25-alpha.1.tgz",
465
467
  "license": "MIT",
466
468
  "os": [
467
469
  "darwin"
@@ -472,8 +474,8 @@
472
474
  "optional": true
473
475
  },
474
476
  "node_modules/@bastani/atomic-natives-linux-arm64-gnu": {
475
- "version": "0.9.24",
476
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-gnu/-/atomic-natives-linux-arm64-gnu-0.9.24.tgz",
477
+ "version": "0.9.25-alpha.1",
478
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-gnu/-/atomic-natives-linux-arm64-gnu-0.9.25-alpha.1.tgz",
477
479
  "license": "MIT",
478
480
  "os": [
479
481
  "linux"
@@ -487,8 +489,8 @@
487
489
  "optional": true
488
490
  },
489
491
  "node_modules/@bastani/atomic-natives-linux-arm64-musl": {
490
- "version": "0.9.24",
491
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-musl/-/atomic-natives-linux-arm64-musl-0.9.24.tgz",
492
+ "version": "0.9.25-alpha.1",
493
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-musl/-/atomic-natives-linux-arm64-musl-0.9.25-alpha.1.tgz",
492
494
  "license": "MIT",
493
495
  "os": [
494
496
  "linux"
@@ -502,8 +504,8 @@
502
504
  "optional": true
503
505
  },
504
506
  "node_modules/@bastani/atomic-natives-linux-x64-gnu": {
505
- "version": "0.9.24",
506
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-gnu/-/atomic-natives-linux-x64-gnu-0.9.24.tgz",
507
+ "version": "0.9.25-alpha.1",
508
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-gnu/-/atomic-natives-linux-x64-gnu-0.9.25-alpha.1.tgz",
507
509
  "license": "MIT",
508
510
  "os": [
509
511
  "linux"
@@ -517,8 +519,8 @@
517
519
  "optional": true
518
520
  },
519
521
  "node_modules/@bastani/atomic-natives-linux-x64-musl": {
520
- "version": "0.9.24",
521
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-musl/-/atomic-natives-linux-x64-musl-0.9.24.tgz",
522
+ "version": "0.9.25-alpha.1",
523
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-musl/-/atomic-natives-linux-x64-musl-0.9.25-alpha.1.tgz",
522
524
  "license": "MIT",
523
525
  "os": [
524
526
  "linux"
@@ -532,8 +534,8 @@
532
534
  "optional": true
533
535
  },
534
536
  "node_modules/@bastani/atomic-natives-win32-arm64-msvc": {
535
- "version": "0.9.24",
536
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-arm64-msvc/-/atomic-natives-win32-arm64-msvc-0.9.24.tgz",
537
+ "version": "0.9.25-alpha.1",
538
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-arm64-msvc/-/atomic-natives-win32-arm64-msvc-0.9.25-alpha.1.tgz",
537
539
  "license": "MIT",
538
540
  "os": [
539
541
  "win32"
@@ -544,8 +546,8 @@
544
546
  "optional": true
545
547
  },
546
548
  "node_modules/@bastani/atomic-natives-win32-x64-msvc": {
547
- "version": "0.9.24",
548
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-x64-msvc/-/atomic-natives-win32-x64-msvc-0.9.24.tgz",
549
+ "version": "0.9.25-alpha.1",
550
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-x64-msvc/-/atomic-natives-win32-x64-msvc-0.9.25-alpha.1.tgz",
549
551
  "license": "MIT",
550
552
  "os": [
551
553
  "win32"
@@ -556,13 +558,13 @@
556
558
  "optional": true
557
559
  },
558
560
  "node_modules/@bastani/pi-ai": {
559
- "version": "0.9.24",
560
- "resolved": "https://registry.npmjs.org/@bastani/pi-ai/-/pi-ai-0.9.24.tgz",
561
+ "version": "0.9.25-alpha.1",
562
+ "resolved": "https://registry.npmjs.org/@bastani/pi-ai/-/pi-ai-0.9.25-alpha.1.tgz",
561
563
  "license": "MIT",
562
564
  "dependencies": {
563
565
  "@anthropic-ai/sdk": "0.124.0",
564
566
  "@aws-sdk/client-bedrock-runtime": "3.1127.0",
565
- "@earendil-works/pi-telemetry": "0.87.1",
567
+ "@earendil-works/pi-telemetry": "0.99.1",
566
568
  "@google/genai": "2.21.0",
567
569
  "@smithy/node-http-handler": "4.12.1",
568
570
  "http-proxy-agent": "9.1.0",
@@ -601,43 +603,6 @@
601
603
  "node": ">= 20"
602
604
  }
603
605
  },
604
- "node_modules/@bastani/pi-ai/node_modules/openai": {
605
- "version": "7.19.0",
606
- "resolved": "https://registry.npmjs.org/openai/-/openai-7.19.0.tgz",
607
- "integrity": "sha512-MX2s3u2L5racTO0CC/SWpCOasJQBCJrqLKXK+l82cAhdeF8mPMBEe/gxMm0ZFa2xpKpOFLRjxv5afYEZbBXmbQ==",
608
- "license": "Apache-2.0",
609
- "peerDependencies": {
610
- "@aws-sdk/credential-provider-node": ">=3.972.0 <4",
611
- "@smithy/hash-node": ">=4.3.0 <5",
612
- "@smithy/signature-v4": ">=5.4.0 <6",
613
- "undici": ">=5 <9",
614
- "ws": "^8.21.0",
615
- "zod": "^3.25 || ^4.0"
616
- },
617
- "peerDependenciesMeta": {
618
- "@aws-sdk/credential-provider-node": {
619
- "optional": true
620
- },
621
- "@smithy/hash-node": {
622
- "optional": true
623
- },
624
- "@smithy/signature-v4": {
625
- "optional": true
626
- },
627
- "undici": {
628
- "optional": true
629
- },
630
- "ws": {
631
- "optional": true
632
- },
633
- "zod": {
634
- "optional": true
635
- }
636
- },
637
- "engines": {
638
- "node": ">=22.0.0"
639
- }
640
- },
641
606
  "node_modules/@borewit/text-codec": {
642
607
  "version": "0.2.2",
643
608
  "resolved": "https://registry.npmjs.org/@borewit/text-codec/-/text-codec-0.2.2.tgz",
@@ -700,9 +665,9 @@
700
665
  }
701
666
  },
702
667
  "node_modules/@earendil-works/chord": {
703
- "version": "0.87.1",
704
- "resolved": "https://registry.npmjs.org/@earendil-works/chord/-/chord-0.87.1.tgz",
705
- "integrity": "sha512-bg7IkJGFcEaMqqYgOGUiq5Ky9RghpRfrlZ8I/v/1b4bBZ02A7t3E+6uhPRbadwWb/kWsnVFbZsqOKRN4a3LLCg==",
668
+ "version": "0.99.1",
669
+ "resolved": "https://registry.npmjs.org/@earendil-works/chord/-/chord-0.99.1.tgz",
670
+ "integrity": "sha512-4xyn0IBzJ+Xu/iOGi2hjXJGAR61QEhEWZsIqTDqr+GmItdquYwBO5jYFnqGiBaTqlY12/EpM7QHoEKSHbyvOug==",
706
671
  "license": "MIT",
707
672
  "dependencies": {
708
673
  "esbuild": "0.28.2"
@@ -712,14 +677,14 @@
712
677
  }
713
678
  },
714
679
  "node_modules/@earendil-works/pi-agent-core": {
715
- "version": "0.87.1",
716
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.87.1.tgz",
717
- "integrity": "sha512-Zev3B0HK7YS5A4EZQ2XnEqiJuirx6QBiltJ+LpmjV5a/+2IU0cfKtIfnkNkORK707XOvKBY2WRtk7cAwHpbh2Q==",
680
+ "version": "0.99.1",
681
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.99.1.tgz",
682
+ "integrity": "sha512-zywvWnj5FujeuFI/x/CJHwwxhcLIQgjqseTA+bQgX4O8gJTcgjRd/I8SZnQDqJvxC9QcV12ujiGLviv6EgwcCg==",
718
683
  "license": "MIT",
719
684
  "dependencies": {
720
- "@earendil-works/chord": "^0.87.1",
721
- "@earendil-works/pi-ai": "^0.87.1",
722
- "@earendil-works/pi-telemetry": "^0.87.1",
685
+ "@earendil-works/chord": "^0.99.1",
686
+ "@earendil-works/pi-ai": "^0.99.1",
687
+ "@earendil-works/pi-telemetry": "^0.99.1",
723
688
  "diff": "8.0.4",
724
689
  "ignore": "7.0.8",
725
690
  "typebox": "1.3.27",
@@ -730,19 +695,19 @@
730
695
  }
731
696
  },
732
697
  "node_modules/@earendil-works/pi-ai": {
733
- "version": "0.87.1",
734
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.87.1.tgz",
735
- "integrity": "sha512-X/3PfQBnnoeVdO9Cv8zHghUMglzlgNZYGNzoPnbRoGnHl3Rw3TlA2UKSUB7BRHUOxMryHXYa8dnjWZlbRheDZA==",
698
+ "version": "0.99.1",
699
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.99.1.tgz",
700
+ "integrity": "sha512-4nV9JKc94iPX8bwdGPc2nTuVPKIPsffhnp3WoN9NYCNqbtoOF8LhYcIs/+Sn/alroqJK/5QRu6/Z6Ck+n0hyBA==",
736
701
  "license": "MIT",
737
702
  "dependencies": {
738
703
  "@anthropic-ai/sdk": "0.124.0",
739
704
  "@aws-sdk/client-bedrock-runtime": "3.1127.0",
740
- "@earendil-works/pi-telemetry": "^0.87.1",
705
+ "@earendil-works/pi-telemetry": "^0.99.1",
741
706
  "@google/genai": "2.21.0",
742
707
  "@smithy/node-http-handler": "4.12.1",
743
708
  "http-proxy-agent": "9.1.0",
744
709
  "https-proxy-agent": "9.1.0",
745
- "openai": "6.40.0",
710
+ "openai": "7.19.0",
746
711
  "partial-json": "0.1.7",
747
712
  "typebox": "1.3.27"
748
713
  },
@@ -777,25 +742,37 @@
777
742
  }
778
743
  },
779
744
  "node_modules/@earendil-works/pi-client": {
780
- "version": "0.87.1",
781
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-client/-/pi-client-0.87.1.tgz",
782
- "integrity": "sha512-x8dfZ7ppAao9SDnZvD5/DErVdq2fI7hg4lFj7qEhtgo6wimrRafGSLsqLklFVjb6kxU2W3j9F4RZz0rRcb0cwA==",
745
+ "version": "0.99.1",
746
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-client/-/pi-client-0.99.1.tgz",
747
+ "integrity": "sha512-0wlRybJZK3mSJagJvKh8CDfVykhDQsoB9Mtn9JekZn/FK9WN1GWWv+gxnYRfBoS1sG9+u1J+ZN9VZsCKfRJm9g==",
748
+ "license": "MIT",
749
+ "dependencies": {
750
+ "@earendil-works/chord": "^0.99.1",
751
+ "@earendil-works/pi-protocol": "^0.99.1"
752
+ },
753
+ "engines": {
754
+ "node": ">=22.19.0"
755
+ }
756
+ },
757
+ "node_modules/@earendil-works/pi-codemode": {
758
+ "version": "0.99.1",
759
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-codemode/-/pi-codemode-0.99.1.tgz",
760
+ "integrity": "sha512-oh8TMsBI3SWTN3xTQtX8u5n+BKhnVXcFagroWumfn6/WWfBnDYL/LmeQtjLb83WRTb9rcu+ZdK8rFa4vggvCJg==",
783
761
  "license": "MIT",
784
762
  "dependencies": {
785
- "@earendil-works/chord": "^0.87.1",
786
- "@earendil-works/pi-protocol": "^0.87.1"
763
+ "quickjs-wasi": "3.6.2"
787
764
  },
788
765
  "engines": {
789
766
  "node": ">=22.19.0"
790
767
  }
791
768
  },
792
769
  "node_modules/@earendil-works/pi-protocol": {
793
- "version": "0.87.1",
794
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-protocol/-/pi-protocol-0.87.1.tgz",
795
- "integrity": "sha512-48WVjryAIiKOJXnKgO15h2MT/oeH5uf0S4DykcVj3ZrxMTDSGxcUaS5VtvHtFQ1rZSSIjkVcblE13k0GksBuoQ==",
770
+ "version": "0.99.1",
771
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-protocol/-/pi-protocol-0.99.1.tgz",
772
+ "integrity": "sha512-BNPwOMNCd/L1IqovKZ0+p1xDydqnHd4tIGHf9uVZNOQJTq9QacLRKXBMzRzgy/Yqv1rPnTDjauDiIcZeOgg2xA==",
796
773
  "license": "MIT",
797
774
  "dependencies": {
798
- "@earendil-works/chord": "^0.87.1",
775
+ "@earendil-works/chord": "^0.99.1",
799
776
  "typebox": "1.3.27"
800
777
  },
801
778
  "engines": {
@@ -803,18 +780,18 @@
803
780
  }
804
781
  },
805
782
  "node_modules/@earendil-works/pi-telemetry": {
806
- "version": "0.87.1",
807
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-telemetry/-/pi-telemetry-0.87.1.tgz",
808
- "integrity": "sha512-MC6TRQH5lgMXpcN+Vku2WMI2T8BsiUPzMQHGo81uqFZD3/9O79WWJAysEDGuzduP6R4tvtgwMLwmqIxynM10JQ==",
783
+ "version": "0.99.1",
784
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-telemetry/-/pi-telemetry-0.99.1.tgz",
785
+ "integrity": "sha512-9PBPjGk+TXRtuMianpqBbHBpYpyKusESF6rwdmgD0WTZSTUQXhcKEO0hAINRLuSwy4V7yPvXV+EVV0ONY7mbpQ==",
809
786
  "license": "MIT",
810
787
  "engines": {
811
788
  "node": ">=22.19.0"
812
789
  }
813
790
  },
814
791
  "node_modules/@earendil-works/pi-tui": {
815
- "version": "0.87.1",
816
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.87.1.tgz",
817
- "integrity": "sha512-YEH2vRyOeiO7hhN6j6AE6YwKSq2Kz2f3XR8bj1TbR+aGE/JsnY1hLPMI2pvaZfRM1n9Y00tejxFQ4zbzvF7nkQ==",
792
+ "version": "0.99.1",
793
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.99.1.tgz",
794
+ "integrity": "sha512-gZp0Guat96Fr1AuC/xqVz5B2lulZakp/PxD1lXx3lSgBdjiqmwYhJbcQ0HRrGAfy0WtMGn9b05RJr5qJf7oIuw==",
818
795
  "license": "MIT",
819
796
  "dependencies": {
820
797
  "get-east-asian-width": "1.6.0",
@@ -2072,9 +2049,9 @@
2072
2049
  "license": "MIT"
2073
2050
  },
2074
2051
  "node_modules/brace-expansion": {
2075
- "version": "5.0.9",
2076
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz",
2077
- "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==",
2052
+ "version": "5.0.12",
2053
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.12.tgz",
2054
+ "integrity": "sha512-YovQ3rzhaLMIrDjNDMkNS01tea93qhEhG5xy8f6+R0l+dw3Ki+5sCoIoI942iuLZTHWogWktgwVDhU09iNEimQ==",
2078
2055
  "license": "MIT",
2079
2056
  "dependencies": {
2080
2057
  "balanced-match": "^4.0.2"
@@ -2666,9 +2643,9 @@
2666
2643
  "license": "Unlicense"
2667
2644
  },
2668
2645
  "node_modules/fast-uri": {
2669
- "version": "3.1.7",
2670
- "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.7.tgz",
2671
- "integrity": "sha512-dOvZVzjdZdz7phd9v6jCbwxrBW3fK6n8Rc0CtdmM4bumzMnxywBYhuph6J819RRw/ku+rLbelwfMunktuzVVHg==",
2646
+ "version": "3.1.8",
2647
+ "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.8.tgz",
2648
+ "integrity": "sha512-GZMtZUTNRpOVIECoXwLNZS5xUGE+mVNbTB8h/7Rwh2TFWcBQiPzTgyZi05BF9UMZKkLJv8XBRJTlU7zg8+ZfMg==",
2672
2649
  "license": "BSD-3-Clause",
2673
2650
  "funding": [
2674
2651
  {
@@ -3920,21 +3897,40 @@
3920
3897
  }
3921
3898
  },
3922
3899
  "node_modules/openai": {
3923
- "version": "6.40.0",
3924
- "resolved": "https://registry.npmjs.org/openai/-/openai-6.40.0.tgz",
3925
- "integrity": "sha512-MWtTjd/gQt4jpbji61NTgFWJLoY/PdRJ6wG9/ZDRMYNMlBKrCrSlkLI+KgHP1vR1qT6LKSAyAqIxno6lcK9JiA==",
3900
+ "version": "7.19.0",
3901
+ "resolved": "https://registry.npmjs.org/openai/-/openai-7.19.0.tgz",
3902
+ "integrity": "sha512-MX2s3u2L5racTO0CC/SWpCOasJQBCJrqLKXK+l82cAhdeF8mPMBEe/gxMm0ZFa2xpKpOFLRjxv5afYEZbBXmbQ==",
3926
3903
  "license": "Apache-2.0",
3927
3904
  "peerDependencies": {
3928
- "ws": "^8.18.0",
3905
+ "@aws-sdk/credential-provider-node": ">=3.972.0 <4",
3906
+ "@smithy/hash-node": ">=4.3.0 <5",
3907
+ "@smithy/signature-v4": ">=5.4.0 <6",
3908
+ "undici": ">=5 <9",
3909
+ "ws": "^8.21.0",
3929
3910
  "zod": "^3.25 || ^4.0"
3930
3911
  },
3931
3912
  "peerDependenciesMeta": {
3913
+ "@aws-sdk/credential-provider-node": {
3914
+ "optional": true
3915
+ },
3916
+ "@smithy/hash-node": {
3917
+ "optional": true
3918
+ },
3919
+ "@smithy/signature-v4": {
3920
+ "optional": true
3921
+ },
3922
+ "undici": {
3923
+ "optional": true
3924
+ },
3932
3925
  "ws": {
3933
3926
  "optional": true
3934
3927
  },
3935
3928
  "zod": {
3936
3929
  "optional": true
3937
3930
  }
3931
+ },
3932
+ "engines": {
3933
+ "node": ">=22.0.0"
3938
3934
  }
3939
3935
  },
3940
3936
  "node_modules/option": {
@@ -4295,6 +4291,12 @@
4295
4291
  "url": "https://github.com/sponsors/ljharb"
4296
4292
  }
4297
4293
  },
4294
+ "node_modules/quickjs-wasi": {
4295
+ "version": "3.6.2",
4296
+ "resolved": "https://registry.npmjs.org/quickjs-wasi/-/quickjs-wasi-3.6.2.tgz",
4297
+ "integrity": "sha512-FCqGtGOrMgzUiIrMNMA2YnsOxCNwo31dzqXvclXUC6xeT35NJLKXQJsvbeCTjvoFAwZgEAPg8U6+KAPDGXn8Mg==",
4298
+ "license": "MIT"
4299
+ },
4298
4300
  "node_modules/range-parser": {
4299
4301
  "version": "1.3.0",
4300
4302
  "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.3.0.tgz",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bastani/atomic",
3
- "version": "0.9.24",
3
+ "version": "0.9.25-alpha.1",
4
4
  "description": "Atomic coding agent CLI with read, bash, edit, write tools and session management",
5
5
  "type": "module",
6
6
  "atomicConfig": {
@@ -65,9 +65,10 @@
65
65
  "dev": "tsc -p tsconfig.build.json --watch --preserveWatchOutput",
66
66
  "typecheck": "tsc -p tsconfig.build.json --noEmit && tsc -p tsconfig.typetests.json",
67
67
  "build": "tsc -p tsconfig.build.json && shx chmod +x dist/cli.js dist/rpc-entry.js && bun run copy-assets",
68
- "bundle:dev": "bun build src/bun/cli.ts --target=bun --minify --external mupdf --define process.env.ATOMIC_BUNDLED_BUILD=\"'1'\" --outfile dist-dev/cli.js",
68
+ "bundle:dev": "bun build src/bun/cli.ts --target=bun --minify --external mupdf --define process.env.ATOMIC_BUNDLED_BUILD=\"'1'\" --outfile dist-dev/cli.js && bun build src/extensions/codemode/worker.ts --target=bun --format=cjs --outfile dist-dev/codemode-worker.js && shx cp ../../node_modules/quickjs-wasi/quickjs.wasm dist-dev/",
69
69
  "start:fast": "bun run bundle:dev && bun dist-dev/cli.js",
70
- "build:binary": "bun run clean && bun run build && bun build --target=bun --format=cjs --minify-syntax --external mupdf --external=*native-modifiers.js ./dist/bun/cli.js --outfile dist/app.js && bun build --target=bun --format=cjs --external mupdf ./src/utils/image-resize-worker.ts --outfile dist/image-resize-worker.js && bun build --compile --bytecode --format=cjs --external mupdf --no-compile-autoload-dotenv --no-compile-autoload-bunfig ./dist/bun/split-loader.js --outfile dist/atomic && bun run copy-binary-assets && bun run assert-binary-assets",
70
+ "build:binary": "bun run clean && bun run build && bun build --target=bun --format=cjs --minify-syntax --external mupdf --external=*native-modifiers.js ./dist/bun/cli.js --outfile dist/app.js && bun build --target=bun --format=cjs --external mupdf ./src/utils/image-resize-worker.ts --outfile dist/image-resize-worker.js && bun run build:codemode-worker && bun build --compile --bytecode --format=cjs --external mupdf --no-compile-autoload-dotenv --no-compile-autoload-bunfig ./dist/bun/split-loader.js --outfile dist/atomic && bun run copy-binary-assets && bun run assert-binary-assets",
71
+ "build:codemode-worker": "bun build --target=bun --format=cjs ./src/extensions/codemode/worker.ts --outfile dist/codemode-worker.js && shx cp ../../node_modules/quickjs-wasi/quickjs.wasm dist/",
71
72
  "copy-assets": "shx mkdir -p dist/modes/interactive/theme && shx cp src/modes/interactive/theme/*.json dist/modes/interactive/theme/ && shx mkdir -p dist/modes/interactive/assets && shx cp src/modes/interactive/assets/*.png dist/modes/interactive/assets/ && shx mkdir -p dist/core/export-html/vendor dist/core/export-html/template-js && shx cp src/core/export-html/template.html src/core/export-html/template.css src/core/export-html/template.js dist/core/export-html/ && shx cp src/core/export-html/template-js/*.js dist/core/export-html/template-js/ && shx cp src/core/export-html/vendor/*.js dist/core/export-html/vendor/ && bun run copy-builtin-packages",
72
73
  "copy-binary-assets": "shx cp package.json dist/ && shx cp README.md dist/ && shx cp CHANGELOG.md dist/ && shx mkdir -p dist/theme && shx cp src/modes/interactive/theme/*.json dist/theme/ && shx mkdir -p dist/assets && shx cp src/modes/interactive/assets/*.png dist/assets/ && shx mkdir -p dist/export-html/vendor dist/export-html/template-js && shx cp src/core/export-html/template.html src/core/export-html/template.css src/core/export-html/template.js dist/export-html/ && shx cp src/core/export-html/template-js/*.js dist/export-html/template-js/ && shx cp src/core/export-html/vendor/*.js dist/export-html/vendor/ && shx cp ../../node_modules/@earendil-works/pi-tui/dist/native-modifiers.js dist/ && shx cp ../../node_modules/@earendil-works/pi-tui/dist/native-module-path.js dist/ && shx cp ../../node_modules/@earendil-works/pi-tui/dist/native-platform.js dist/ && shx mkdir -p dist/native/win32/prebuilds && shx cp -r ../../node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-* dist/native/win32/prebuilds/ && shx cp -r docs dist/ && shx cp -r examples dist/ && shx cp ../../node_modules/@silvia-odwyer/photon-node/photon_rs_bg.wasm dist/ && bun run copy-builtin-packages",
73
74
  "copy-builtin-packages": "bun run scripts/copy-builtin-packages.ts",
@@ -79,13 +80,14 @@
79
80
  "prepublishOnly": "bun run clean && bun run build && bun run shrinkwrap"
80
81
  },
81
82
  "dependencies": {
82
- "@bastani/atomic-natives": "0.9.24",
83
- "@bastani/pi-ai": "0.9.24",
83
+ "@bastani/atomic-natives": "0.9.25-alpha.1",
84
+ "@bastani/pi-ai": "0.9.25-alpha.1",
84
85
  "@dbos-inc/dbos-sdk": "4.25.14",
85
- "@earendil-works/pi-agent-core": "0.87.1",
86
- "@earendil-works/pi-client": "0.87.1",
87
- "@earendil-works/pi-protocol": "0.87.1",
88
- "@earendil-works/pi-tui": "0.87.1",
86
+ "@earendil-works/pi-agent-core": "0.99.1",
87
+ "@earendil-works/pi-client": "0.99.1",
88
+ "@earendil-works/pi-codemode": "0.99.1",
89
+ "@earendil-works/pi-protocol": "0.99.1",
90
+ "@earendil-works/pi-tui": "0.99.1",
89
91
  "@modelcontextprotocol/ext-apps": "^1.7.5",
90
92
  "@modelcontextprotocol/sdk": "1.30.0",
91
93
  "@mozilla/readability": "^0.6.0",
@@ -109,6 +111,7 @@
109
111
  "p-limit": "^7.3.2",
110
112
  "pg": "8.23.0",
111
113
  "proper-lockfile": "4.1.2",
114
+ "quickjs-wasi": "3.6.2",
112
115
  "semver": "7.8.5",
113
116
  "turndown": "^7.2.0",
114
117
  "typebox": "1.3.27",