@bastani/atomic 0.9.19-alpha.5 → 0.9.19-alpha.7

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 (209) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +2 -2
  3. package/dist/builtin/intercom/CHANGELOG.md +6 -0
  4. package/dist/builtin/intercom/broker/client.ts +19 -1
  5. package/dist/builtin/intercom/index.bundle.mjs +8 -1
  6. package/dist/builtin/intercom/package.json +1 -1
  7. package/dist/builtin/mcp/package.json +1 -1
  8. package/dist/builtin/subagents/CHANGELOG.md +6 -0
  9. package/dist/builtin/subagents/README.md +3 -1
  10. package/dist/builtin/subagents/agents/codebase-online-researcher.md +7 -7
  11. package/dist/builtin/subagents/package.json +1 -1
  12. package/dist/builtin/subagents/skills/subagent/SKILL.md +3 -1
  13. package/dist/builtin/subagents/src/extension/index.bundle.mjs +2 -1
  14. package/dist/builtin/web-access/CHANGELOG.md +13 -0
  15. package/dist/builtin/web-access/README.md +31 -24
  16. package/dist/builtin/web-access/index.bundle.mjs +16121 -80
  17. package/dist/builtin/web-access/package.json +2 -1
  18. package/dist/builtin/workflows/CHANGELOG.md +15 -0
  19. package/dist/builtin/workflows/README.md +1 -1
  20. package/dist/builtin/workflows/builtin/adversarial-verification.js +2 -2
  21. package/dist/builtin/workflows/builtin/{chunk-vhmnzdj9.js → chunk-1jth021m.js} +1 -1
  22. package/dist/builtin/workflows/builtin/{chunk-p8jjwfg6.js → chunk-2377r57g.js} +4 -2
  23. package/dist/builtin/workflows/builtin/{chunk-hbnwv56f.js → chunk-31j2gs7h.js} +2 -2
  24. package/dist/builtin/workflows/builtin/{chunk-n8zysf1t.js → chunk-ngkqkzej.js} +1 -1
  25. package/dist/builtin/workflows/builtin/{chunk-1nbq96fh.js → chunk-nkrafh9s.js} +1 -1
  26. package/dist/builtin/workflows/builtin/{chunk-1kx4aggw.js → chunk-wf741bv3.js} +2 -2
  27. package/dist/builtin/workflows/builtin/{chunk-t6x2d78s.js → chunk-z29qbehr.js} +1 -1
  28. package/dist/builtin/workflows/builtin/generate-and-filter.js +2 -2
  29. package/dist/builtin/workflows/builtin/goal.js +3 -3
  30. package/dist/builtin/workflows/builtin/index.js +7 -7
  31. package/dist/builtin/workflows/builtin/ralph.js +3 -3
  32. package/dist/builtin/workflows/builtin/tournament.js +2 -2
  33. package/dist/builtin/workflows/package.json +1 -1
  34. package/dist/builtin/workflows/src/extension/index.bundle.mjs +339 -31
  35. package/dist/builtin/workflows/src/index.js +67 -19
  36. package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +2 -0
  37. package/dist/core/agent-session-tool-registry.d.ts.map +1 -1
  38. package/dist/core/agent-session-tool-registry.js +10 -0
  39. package/dist/core/agent-session-tool-registry.js.map +1 -1
  40. package/dist/core/bash-executor.js.map +1 -1
  41. package/dist/core/tools/bash.d.ts +1 -1
  42. package/dist/core/tools/bash.d.ts.map +1 -1
  43. package/dist/core/tools/bash.js +3 -2
  44. package/dist/core/tools/bash.js.map +1 -1
  45. package/dist/core/tools/edit.d.ts +3 -0
  46. package/dist/core/tools/edit.d.ts.map +1 -1
  47. package/dist/core/tools/edit.js +91 -12
  48. package/dist/core/tools/edit.js.map +1 -1
  49. package/dist/core/tools/file-mutation-coordinator.d.ts +255 -0
  50. package/dist/core/tools/file-mutation-coordinator.d.ts.map +1 -0
  51. package/dist/core/tools/file-mutation-coordinator.js +300 -0
  52. package/dist/core/tools/file-mutation-coordinator.js.map +1 -0
  53. package/dist/core/tools/file-mutation-queue.d.ts +14 -1
  54. package/dist/core/tools/file-mutation-queue.d.ts.map +1 -1
  55. package/dist/core/tools/file-mutation-queue.js +15 -3
  56. package/dist/core/tools/file-mutation-queue.js.map +1 -1
  57. package/dist/core/tools/hashline.d.ts +9 -0
  58. package/dist/core/tools/hashline.d.ts.map +1 -1
  59. package/dist/core/tools/hashline.js +12 -1
  60. package/dist/core/tools/hashline.js.map +1 -1
  61. package/dist/core/tools/index.d.ts +9 -1
  62. package/dist/core/tools/index.d.ts.map +1 -1
  63. package/dist/core/tools/index.js +67 -12
  64. package/dist/core/tools/index.js.map +1 -1
  65. package/dist/core/tools/non-minting-snapshot-store.d.ts +49 -0
  66. package/dist/core/tools/non-minting-snapshot-store.d.ts.map +1 -0
  67. package/dist/core/tools/non-minting-snapshot-store.js +64 -0
  68. package/dist/core/tools/non-minting-snapshot-store.js.map +1 -0
  69. package/dist/core/tools/powershell.d.ts +2 -2
  70. package/dist/core/tools/powershell.d.ts.map +1 -1
  71. package/dist/core/tools/powershell.js +2 -5
  72. package/dist/core/tools/powershell.js.map +1 -1
  73. package/dist/core/tools/read-document-extract.js.map +1 -1
  74. package/dist/core/tools/render-utils.js.map +1 -1
  75. package/dist/core/tools/write.d.ts +30 -1
  76. package/dist/core/tools/write.d.ts.map +1 -1
  77. package/dist/core/tools/write.js +97 -8
  78. package/dist/core/tools/write.js.map +1 -1
  79. package/dist/index.d.ts +1 -1
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js.map +1 -1
  82. package/dist/modes/interactive/components/bash-execution.js.map +1 -1
  83. package/dist/modes/interactive/components/task-live-transcript.d.ts +1 -1
  84. package/dist/modes/interactive/components/task-live-transcript.d.ts.map +1 -1
  85. package/dist/modes/interactive/components/task-live-transcript.js +19 -11
  86. package/dist/modes/interactive/components/task-live-transcript.js.map +1 -1
  87. package/dist/modes/interactive/interactive-mode-base.d.ts +1 -0
  88. package/dist/modes/interactive/interactive-mode-base.d.ts.map +1 -1
  89. package/dist/modes/interactive/interactive-mode-base.js +3 -1
  90. package/dist/modes/interactive/interactive-mode-base.js.map +1 -1
  91. package/dist/modes/interactive/interactive-mode-surface.d.ts +1 -1
  92. package/dist/modes/interactive/interactive-mode-surface.d.ts.map +1 -1
  93. package/dist/modes/interactive/interactive-mode-surface.js.map +1 -1
  94. package/dist/modes/interactive/interactive-render-chat.js +28 -4
  95. package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
  96. package/dist/modes/interactive/interactive-startup.d.ts.map +1 -1
  97. package/dist/modes/interactive/interactive-startup.js +3 -0
  98. package/dist/modes/interactive/interactive-startup.js.map +1 -1
  99. package/dist/modes/interactive-engine/activity-watchdog.d.ts +2 -2
  100. package/dist/modes/interactive-engine/activity-watchdog.d.ts.map +1 -1
  101. package/dist/modes/interactive-engine/activity-watchdog.js.map +1 -1
  102. package/dist/modes/interactive-engine/engine-diagnostic-view.d.ts +3 -1
  103. package/dist/modes/interactive-engine/engine-diagnostic-view.d.ts.map +1 -1
  104. package/dist/modes/interactive-engine/engine-diagnostic-view.js +11 -0
  105. package/dist/modes/interactive-engine/engine-diagnostic-view.js.map +1 -1
  106. package/dist/modes/interactive-engine/isolated-runtime.js +2 -1
  107. package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
  108. package/dist/modes/rpc/rpc-client-process.d.ts +2 -0
  109. package/dist/modes/rpc/rpc-client-process.d.ts.map +1 -1
  110. package/dist/modes/rpc/rpc-client-process.js +23 -1
  111. package/dist/modes/rpc/rpc-client-process.js.map +1 -1
  112. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  113. package/dist/modes/rpc/rpc-client.js +20 -3
  114. package/dist/modes/rpc/rpc-client.js.map +1 -1
  115. package/dist/utils/markit.d.ts +2 -0
  116. package/dist/utils/markit.d.ts.map +1 -1
  117. package/dist/utils/markit.js +65 -5
  118. package/dist/utils/markit.js.map +1 -1
  119. package/docs/background-tasks.md +15 -11
  120. package/docs/build.md +51 -0
  121. package/docs/changelog.mdx +8 -8
  122. package/docs/compaction/reference.md +267 -0
  123. package/docs/compaction.md +36 -219
  124. package/docs/computer-use.md +35 -0
  125. package/docs/containerization.md +9 -5
  126. package/docs/custom-provider/api-reference.md +145 -0
  127. package/docs/custom-provider/oauth.md +131 -0
  128. package/docs/custom-provider/override.md +34 -0
  129. package/docs/custom-provider/registration.md +163 -0
  130. package/docs/custom-provider/streaming.md +214 -0
  131. package/docs/custom-provider.md +43 -607
  132. package/docs/development.md +87 -0
  133. package/docs/docs.json +199 -76
  134. package/docs/environment-variables.md +1 -1
  135. package/docs/extensions/api-reference.md +1001 -0
  136. package/docs/extensions/authoring.md +676 -0
  137. package/docs/extensions/events.md +793 -0
  138. package/docs/extensions/examples.md +94 -0
  139. package/docs/extensions/ui.md +470 -0
  140. package/docs/extensions.md +270 -2768
  141. package/docs/getting-started/authentication.md +55 -0
  142. package/docs/getting-started/first-session.md +172 -0
  143. package/docs/getting-started/installation.md +154 -0
  144. package/docs/getting-started/project-instructions.md +43 -0
  145. package/docs/guides/configuration.md +65 -0
  146. package/docs/guides/intercom.md +24 -0
  147. package/docs/guides/non-interactive.md +33 -0
  148. package/docs/guides/subagents.md +24 -0
  149. package/docs/guides/workflows.md +27 -0
  150. package/docs/guides.md +41 -0
  151. package/docs/index.md +13 -45
  152. package/docs/intercom/operations.md +178 -0
  153. package/docs/intercom/reference.md +146 -0
  154. package/docs/intercom.md +54 -259
  155. package/docs/json.md +17 -0
  156. package/docs/llama-cpp.md +5 -0
  157. package/docs/models/artificial-analysis-index.md +89 -0
  158. package/docs/models/evals.md +2 -2
  159. package/docs/models/model-selection.md +3 -3
  160. package/docs/models/pareto-efficiency.md +2 -2
  161. package/docs/models/reference.md +601 -0
  162. package/docs/models.md +45 -550
  163. package/docs/packages/authoring.md +88 -0
  164. package/docs/packages/reference.md +43 -0
  165. package/docs/packages.md +28 -107
  166. package/docs/programmatic.md +29 -0
  167. package/docs/prompt-templates.md +11 -0
  168. package/docs/providers/reference.md +23 -0
  169. package/docs/providers.md +10 -15
  170. package/docs/quickstart.md +44 -238
  171. package/docs/reference/cli.md +252 -0
  172. package/docs/reference.md +52 -0
  173. package/docs/rpc/examples.md +64 -0
  174. package/docs/rpc/extension-ui.md +198 -0
  175. package/docs/rpc/protocol.md +1341 -0
  176. package/docs/rpc.md +109 -1346
  177. package/docs/sdk/reference.md +1090 -0
  178. package/docs/sdk.md +56 -1002
  179. package/docs/session-format.md +2 -0
  180. package/docs/sessions.md +6 -10
  181. package/docs/settings.md +6 -45
  182. package/docs/skills/authoring.md +95 -0
  183. package/docs/skills/reference.md +60 -0
  184. package/docs/skills.md +20 -122
  185. package/docs/subagents/authoring.md +37 -0
  186. package/docs/subagents/reference.md +60 -0
  187. package/docs/subagents.md +42 -96
  188. package/docs/terminal-setup.md +1 -1
  189. package/docs/themes/reference.md +176 -0
  190. package/docs/themes.md +21 -135
  191. package/docs/tmux.md +5 -0
  192. package/docs/tools/edit.md +5 -0
  193. package/docs/tools.md +31 -0
  194. package/docs/tui/reference.md +343 -0
  195. package/docs/tui.md +23 -286
  196. package/docs/usage.md +26 -209
  197. package/docs/web-access.md +40 -0
  198. package/docs/windows.md +2 -1
  199. package/docs/workflows/api-reference.md +11 -4
  200. package/docs/workflows/authoring.md +4 -2
  201. package/docs/workflows/builtins.md +2 -2
  202. package/docs/workflows/operations.md +11 -7
  203. package/docs/workflows/reliable-design.md +21 -3
  204. package/docs/workflows/verification.md +8 -0
  205. package/examples/extensions/gondolin/index.ts +116 -148
  206. package/examples/extensions/gondolin/package.json +1 -1
  207. package/examples/extensions/ssh.ts +56 -34
  208. package/npm-shrinkwrap.json +33 -33
  209. package/package.json +4 -4
@@ -14,10 +14,12 @@
14
14
  */
15
15
 
16
16
  import { spawn } from "node:child_process";
17
+ import { dirname } from "node:path";
17
18
  import type { ExtensionAPI } from "@bastani/atomic";
18
19
  import {
19
20
  type BashOperations,
20
21
  createBashTool,
22
+ createCodingTools,
21
23
  createEditTool,
22
24
  createReadTool,
23
25
  createWriteTool,
@@ -64,11 +66,48 @@ function createRemoteReadOps(remote: string, remoteCwd: string, localCwd: string
64
66
  function createRemoteWriteOps(remote: string, remoteCwd: string, localCwd: string): WriteOperations {
65
67
  const toRemote = (p: string) => p.replace(localCwd, remoteCwd);
66
68
  return {
67
- writeFile: async (p, content) => {
69
+ writeFile: async (p, content, options) => {
68
70
  const b64 = Buffer.from(content).toString("base64");
69
- await sshExec(remote, `echo ${JSON.stringify(b64)} | base64 -d > ${JSON.stringify(toRemote(p))}`);
71
+ const target = JSON.stringify(toRemote(p));
72
+ // `set -C` is the shell's noclobber, so `>` on an existing path fails instead of
73
+ // truncating it. That is the remote equivalent of `O_EXCL`, and it is what keeps the
74
+ // create path from silently taking a file that appeared since the read below.
75
+ const redirect = options?.exclusive ? `set -C; base64 -d > ${target}` : `base64 -d > ${target}`;
76
+ try {
77
+ await sshExec(remote, `echo ${JSON.stringify(b64)} | { ${redirect}; }`);
78
+ } catch (error) {
79
+ // A remote shell reports noclobber as a bare non-zero exit, carrying no `code` to read.
80
+ // `write` renders an exclusive-create failure as a `target_exists` conflict only when the
81
+ // rejection carries `EEXIST`, so the collision has to be named here; otherwise this backend
82
+ // alone surfaces an opaque SSH error where every other one reports a typed conflict.
83
+ if (!options?.exclusive) throw error;
84
+ // Re-probe rather than assume the failure was a collision. A permission error, a full disk,
85
+ // or a dropped connection fail the same write, and each of those stays itself.
86
+ const probe = await sshExec(
87
+ remote,
88
+ `{ test -e ${target} || test -L ${target}; } && echo yes || echo no`,
89
+ ).catch(() => undefined);
90
+ if (probe?.toString().trim() !== "yes") throw error;
91
+ throw Object.assign(new Error(`EEXIST: file already exists, open '${toRemote(p)}'`), { code: "EEXIST" });
92
+ }
70
93
  },
71
94
  mkdir: (dir) => sshExec(remote, `mkdir -p ${JSON.stringify(toRemote(dir))}`).then(() => {}),
95
+ // Reads the same filesystem the write lands on, which is the point: checking the local
96
+ // disk would let `write` decide what to do about a remote file by looking at a different
97
+ // machine. A missing path is `undefined`; anything else, including an unreadable one,
98
+ // stays a failure.
99
+ readFile: async (p) => {
100
+ const target = JSON.stringify(toRemote(p));
101
+ // `write` has already created the parent, so failure to enter it must remain
102
+ // an error. A subshell preserves the cwd used to resolve relative targets.
103
+ const parent = JSON.stringify(toRemote(dirname(p)));
104
+ const probe = await sshExec(
105
+ remote,
106
+ `(cd ${parent}) && { { test -e ${target} || test -L ${target}; } && echo yes || echo no; }`,
107
+ );
108
+ if (probe.toString().trim() === "no") return undefined;
109
+ return (await sshExec(remote, `cat ${target}`)).toString("utf8");
110
+ },
72
111
  };
73
112
  }
74
113
 
@@ -122,66 +161,42 @@ export default function (pi: ExtensionAPI) {
122
161
 
123
162
  // Resolved lazily on session_start (CLI flags not available during factory)
124
163
  let resolvedSsh: { remote: string; remoteCwd: string } | null = null;
164
+ // The bundle shares one snapshot store across read/edit/write until the next session.
165
+ let tools = createCodingTools(localCwd);
125
166
 
126
167
  const getSsh = () => resolvedSsh;
127
168
 
128
169
  pi.registerTool({
129
170
  ...localRead,
130
171
  async execute(id, params, signal, onUpdate, _ctx) {
131
- const ssh = getSsh();
132
- if (ssh) {
133
- const tool = createReadTool(localCwd, {
134
- operations: createRemoteReadOps(ssh.remote, ssh.remoteCwd, localCwd),
135
- });
136
- return tool.execute(id, params, signal, onUpdate);
137
- }
138
- return localRead.execute(id, params, signal, onUpdate);
172
+ return tools.find((tool) => tool.name === "read")!.execute(id, params, signal, onUpdate);
139
173
  },
140
174
  });
141
175
 
142
176
  pi.registerTool({
143
177
  ...localWrite,
144
178
  async execute(id, params, signal, onUpdate, _ctx) {
145
- const ssh = getSsh();
146
- if (ssh) {
147
- const tool = createWriteTool(localCwd, {
148
- operations: createRemoteWriteOps(ssh.remote, ssh.remoteCwd, localCwd),
149
- });
150
- return tool.execute(id, params, signal, onUpdate);
151
- }
152
- return localWrite.execute(id, params, signal, onUpdate);
179
+ return tools.find((tool) => tool.name === "write")!.execute(id, params, signal, onUpdate);
153
180
  },
154
181
  });
155
182
 
156
183
  pi.registerTool({
157
184
  ...localEdit,
158
185
  async execute(id, params, signal, onUpdate, _ctx) {
159
- const ssh = getSsh();
160
- if (ssh) {
161
- const tool = createEditTool(localCwd, {
162
- operations: createRemoteEditOps(ssh.remote, ssh.remoteCwd, localCwd),
163
- });
164
- return tool.execute(id, params, signal, onUpdate);
165
- }
166
- return localEdit.execute(id, params, signal, onUpdate);
186
+ return tools.find((tool) => tool.name === "edit")!.execute(id, params, signal, onUpdate);
167
187
  },
168
188
  });
169
189
 
170
190
  pi.registerTool({
171
191
  ...localBash,
172
192
  async execute(id, params, signal, onUpdate, _ctx) {
173
- const ssh = getSsh();
174
- if (ssh) {
175
- const tool = createBashTool(localCwd, {
176
- operations: createRemoteBashOps(ssh.remote, ssh.remoteCwd, localCwd),
177
- });
178
- return tool.execute(id, params, signal, onUpdate);
179
- }
180
- return localBash.execute(id, params, signal, onUpdate);
193
+ return tools.find((tool) => tool.name === "bash")!.execute(id, params, signal, onUpdate);
181
194
  },
182
195
  });
183
196
 
184
197
  pi.on("session_start", async (_event, ctx) => {
198
+ tools = createCodingTools(localCwd);
199
+ resolvedSsh = null;
185
200
  // Resolve SSH config now that CLI flags are available
186
201
  const arg = pi.getFlag("ssh") as string | undefined;
187
202
  if (arg) {
@@ -194,6 +209,13 @@ export default function (pi: ExtensionAPI) {
194
209
  const pwd = (await sshExec(remote, "pwd")).toString().trim();
195
210
  resolvedSsh = { remote, remoteCwd: pwd };
196
211
  }
212
+ const { remote, remoteCwd } = resolvedSsh;
213
+ tools = createCodingTools(localCwd, {
214
+ read: { operations: createRemoteReadOps(remote, remoteCwd, localCwd) },
215
+ write: { operations: createRemoteWriteOps(remote, remoteCwd, localCwd) },
216
+ edit: { operations: createRemoteEditOps(remote, remoteCwd, localCwd) },
217
+ bash: { operations: createRemoteBashOps(remote, remoteCwd, localCwd) },
218
+ });
197
219
  ctx.ui.setStatus("ssh", ctx.ui.theme.fg("accent", `SSH: ${resolvedSsh.remote}:${resolvedSsh.remoteCwd}`));
198
220
  ctx.ui.notify(`SSH mode: ${resolvedSsh.remote}:${resolvedSsh.remoteCwd}`, "info");
199
221
  }
@@ -1,23 +1,23 @@
1
1
  {
2
2
  "name": "@bastani/atomic",
3
- "version": "0.9.19-alpha.5",
3
+ "version": "0.9.19-alpha.7",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@bastani/atomic",
9
- "version": "0.9.19-alpha.5",
9
+ "version": "0.9.19-alpha.7",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
- "@bastani/atomic-natives": "0.9.19-alpha.5",
13
- "@bastani/pi-ai": "0.9.19-alpha.5",
12
+ "@bastani/atomic-natives": "0.9.19-alpha.7",
13
+ "@bastani/pi-ai": "0.9.19-alpha.7",
14
14
  "@dbos-inc/dbos-sdk": "4.25.14",
15
15
  "@earendil-works/pi-agent-core": "0.85.1",
16
16
  "@earendil-works/pi-client": "0.85.1",
17
17
  "@earendil-works/pi-protocol": "0.85.1",
18
18
  "@earendil-works/pi-tui": "0.85.1",
19
19
  "@modelcontextprotocol/ext-apps": "^1.7.5",
20
- "@modelcontextprotocol/sdk": "^1.30.0",
20
+ "@modelcontextprotocol/sdk": "1.30.0",
21
21
  "@mozilla/readability": "^0.6.0",
22
22
  "@silvia-odwyer/photon-node": "0.3.4",
23
23
  "chalk": "6.0.0",
@@ -518,18 +518,18 @@
518
518
  }
519
519
  },
520
520
  "node_modules/@bastani/atomic-natives": {
521
- "version": "0.9.19-alpha.5",
522
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives/-/atomic-natives-0.9.19-alpha.5.tgz",
521
+ "version": "0.9.19-alpha.7",
522
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives/-/atomic-natives-0.9.19-alpha.7.tgz",
523
523
  "license": "MIT",
524
524
  "optionalDependencies": {
525
- "@bastani/atomic-natives-darwin-arm64": "0.9.19-alpha.5",
526
- "@bastani/atomic-natives-darwin-x64": "0.9.19-alpha.5",
527
- "@bastani/atomic-natives-linux-arm64-gnu": "0.9.19-alpha.5",
528
- "@bastani/atomic-natives-linux-arm64-musl": "0.9.19-alpha.5",
529
- "@bastani/atomic-natives-linux-x64-gnu": "0.9.19-alpha.5",
530
- "@bastani/atomic-natives-linux-x64-musl": "0.9.19-alpha.5",
531
- "@bastani/atomic-natives-win32-arm64-msvc": "0.9.19-alpha.5",
532
- "@bastani/atomic-natives-win32-x64-msvc": "0.9.19-alpha.5"
525
+ "@bastani/atomic-natives-darwin-arm64": "0.9.19-alpha.7",
526
+ "@bastani/atomic-natives-darwin-x64": "0.9.19-alpha.7",
527
+ "@bastani/atomic-natives-linux-arm64-gnu": "0.9.19-alpha.7",
528
+ "@bastani/atomic-natives-linux-arm64-musl": "0.9.19-alpha.7",
529
+ "@bastani/atomic-natives-linux-x64-gnu": "0.9.19-alpha.7",
530
+ "@bastani/atomic-natives-linux-x64-musl": "0.9.19-alpha.7",
531
+ "@bastani/atomic-natives-win32-arm64-msvc": "0.9.19-alpha.7",
532
+ "@bastani/atomic-natives-win32-x64-msvc": "0.9.19-alpha.7"
533
533
  },
534
534
  "engines": {
535
535
  "bun": ">=1.4.2",
@@ -537,8 +537,8 @@
537
537
  }
538
538
  },
539
539
  "node_modules/@bastani/atomic-natives-darwin-arm64": {
540
- "version": "0.9.19-alpha.5",
541
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-arm64/-/atomic-natives-darwin-arm64-0.9.19-alpha.5.tgz",
540
+ "version": "0.9.19-alpha.7",
541
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-arm64/-/atomic-natives-darwin-arm64-0.9.19-alpha.7.tgz",
542
542
  "license": "MIT",
543
543
  "os": [
544
544
  "darwin"
@@ -549,8 +549,8 @@
549
549
  "optional": true
550
550
  },
551
551
  "node_modules/@bastani/atomic-natives-darwin-x64": {
552
- "version": "0.9.19-alpha.5",
553
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-x64/-/atomic-natives-darwin-x64-0.9.19-alpha.5.tgz",
552
+ "version": "0.9.19-alpha.7",
553
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-x64/-/atomic-natives-darwin-x64-0.9.19-alpha.7.tgz",
554
554
  "license": "MIT",
555
555
  "os": [
556
556
  "darwin"
@@ -561,8 +561,8 @@
561
561
  "optional": true
562
562
  },
563
563
  "node_modules/@bastani/atomic-natives-linux-arm64-gnu": {
564
- "version": "0.9.19-alpha.5",
565
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-gnu/-/atomic-natives-linux-arm64-gnu-0.9.19-alpha.5.tgz",
564
+ "version": "0.9.19-alpha.7",
565
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-gnu/-/atomic-natives-linux-arm64-gnu-0.9.19-alpha.7.tgz",
566
566
  "license": "MIT",
567
567
  "os": [
568
568
  "linux"
@@ -576,8 +576,8 @@
576
576
  "optional": true
577
577
  },
578
578
  "node_modules/@bastani/atomic-natives-linux-arm64-musl": {
579
- "version": "0.9.19-alpha.5",
580
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-musl/-/atomic-natives-linux-arm64-musl-0.9.19-alpha.5.tgz",
579
+ "version": "0.9.19-alpha.7",
580
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-musl/-/atomic-natives-linux-arm64-musl-0.9.19-alpha.7.tgz",
581
581
  "license": "MIT",
582
582
  "os": [
583
583
  "linux"
@@ -591,8 +591,8 @@
591
591
  "optional": true
592
592
  },
593
593
  "node_modules/@bastani/atomic-natives-linux-x64-gnu": {
594
- "version": "0.9.19-alpha.5",
595
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-gnu/-/atomic-natives-linux-x64-gnu-0.9.19-alpha.5.tgz",
594
+ "version": "0.9.19-alpha.7",
595
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-gnu/-/atomic-natives-linux-x64-gnu-0.9.19-alpha.7.tgz",
596
596
  "license": "MIT",
597
597
  "os": [
598
598
  "linux"
@@ -606,8 +606,8 @@
606
606
  "optional": true
607
607
  },
608
608
  "node_modules/@bastani/atomic-natives-linux-x64-musl": {
609
- "version": "0.9.19-alpha.5",
610
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-musl/-/atomic-natives-linux-x64-musl-0.9.19-alpha.5.tgz",
609
+ "version": "0.9.19-alpha.7",
610
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-musl/-/atomic-natives-linux-x64-musl-0.9.19-alpha.7.tgz",
611
611
  "license": "MIT",
612
612
  "os": [
613
613
  "linux"
@@ -621,8 +621,8 @@
621
621
  "optional": true
622
622
  },
623
623
  "node_modules/@bastani/atomic-natives-win32-arm64-msvc": {
624
- "version": "0.9.19-alpha.5",
625
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-arm64-msvc/-/atomic-natives-win32-arm64-msvc-0.9.19-alpha.5.tgz",
624
+ "version": "0.9.19-alpha.7",
625
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-arm64-msvc/-/atomic-natives-win32-arm64-msvc-0.9.19-alpha.7.tgz",
626
626
  "license": "MIT",
627
627
  "os": [
628
628
  "win32"
@@ -633,8 +633,8 @@
633
633
  "optional": true
634
634
  },
635
635
  "node_modules/@bastani/atomic-natives-win32-x64-msvc": {
636
- "version": "0.9.19-alpha.5",
637
- "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-x64-msvc/-/atomic-natives-win32-x64-msvc-0.9.19-alpha.5.tgz",
636
+ "version": "0.9.19-alpha.7",
637
+ "resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-x64-msvc/-/atomic-natives-win32-x64-msvc-0.9.19-alpha.7.tgz",
638
638
  "license": "MIT",
639
639
  "os": [
640
640
  "win32"
@@ -645,8 +645,8 @@
645
645
  "optional": true
646
646
  },
647
647
  "node_modules/@bastani/pi-ai": {
648
- "version": "0.9.19-alpha.5",
649
- "resolved": "https://registry.npmjs.org/@bastani/pi-ai/-/pi-ai-0.9.19-alpha.5.tgz",
648
+ "version": "0.9.19-alpha.7",
649
+ "resolved": "https://registry.npmjs.org/@bastani/pi-ai/-/pi-ai-0.9.19-alpha.7.tgz",
650
650
  "license": "MIT",
651
651
  "dependencies": {
652
652
  "@anthropic-ai/sdk": "0.124.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bastani/atomic",
3
- "version": "0.9.19-alpha.5",
3
+ "version": "0.9.19-alpha.7",
4
4
  "description": "Atomic coding agent CLI with read, bash, edit, write tools and session management",
5
5
  "type": "module",
6
6
  "atomicConfig": {
@@ -79,15 +79,15 @@
79
79
  "prepublishOnly": "bun run clean && bun run build && bun run shrinkwrap"
80
80
  },
81
81
  "dependencies": {
82
- "@bastani/atomic-natives": "0.9.19-alpha.5",
83
- "@bastani/pi-ai": "0.9.19-alpha.5",
82
+ "@bastani/atomic-natives": "0.9.19-alpha.7",
83
+ "@bastani/pi-ai": "0.9.19-alpha.7",
84
84
  "@dbos-inc/dbos-sdk": "4.25.14",
85
85
  "@earendil-works/pi-agent-core": "0.85.1",
86
86
  "@earendil-works/pi-client": "0.85.1",
87
87
  "@earendil-works/pi-protocol": "0.85.1",
88
88
  "@earendil-works/pi-tui": "0.85.1",
89
89
  "@modelcontextprotocol/ext-apps": "^1.7.5",
90
- "@modelcontextprotocol/sdk": "^1.30.0",
90
+ "@modelcontextprotocol/sdk": "1.30.0",
91
91
  "@mozilla/readability": "^0.6.0",
92
92
  "@silvia-odwyer/photon-node": "0.3.4",
93
93
  "chalk": "6.0.0",