@bastani/atomic 0.9.19-alpha.2 → 0.9.19-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/builtin/intercom/CHANGELOG.md +7 -0
- package/dist/builtin/intercom/broker/broker.ts +8 -0
- package/dist/builtin/intercom/broker/client.ts +18 -0
- package/dist/builtin/intercom/broker/send-handler.ts +9 -0
- package/dist/builtin/intercom/index.bundle.mjs +44 -4
- package/dist/builtin/intercom/package.json +1 -1
- package/dist/builtin/intercom/types.ts +2 -1
- package/dist/builtin/mcp/package.json +1 -1
- package/dist/builtin/subagents/CHANGELOG.md +6 -0
- package/dist/builtin/subagents/README.md +2 -2
- package/dist/builtin/subagents/package.json +1 -1
- package/dist/builtin/subagents/src/extension/index.bundle.mjs +2 -2
- package/dist/builtin/web-access/package.json +1 -1
- package/dist/builtin/workflows/CHANGELOG.md +13 -0
- package/dist/builtin/workflows/package.json +1 -1
- package/dist/builtin/workflows/src/extension/index.bundle.mjs +56 -33
- package/dist/builtin/workflows/src/index.js +14 -4
- package/dist/core/agent-session-message-queue.d.ts.map +1 -1
- package/dist/core/agent-session-message-queue.js +2 -2
- package/dist/core/agent-session-message-queue.js.map +1 -1
- package/dist/core/agent-session-methods.d.ts +3 -0
- package/dist/core/agent-session-methods.d.ts.map +1 -1
- package/dist/core/agent-session-methods.js.map +1 -1
- package/dist/core/agent-session-tasks.d.ts +5 -0
- package/dist/core/agent-session-tasks.d.ts.map +1 -1
- package/dist/core/agent-session-tasks.js +8 -1
- package/dist/core/agent-session-tasks.js.map +1 -1
- package/dist/core/extensions/loader-api.d.ts.map +1 -1
- package/dist/core/extensions/loader-api.js +3 -0
- package/dist/core/extensions/loader-api.js.map +1 -1
- package/dist/core/extensions/loader-host-modules.d.ts +1 -1
- package/dist/core/extensions/loader-host-modules.d.ts.map +1 -1
- package/dist/core/extensions/loader-host-modules.js +2 -1
- package/dist/core/extensions/loader-host-modules.js.map +1 -1
- package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
- package/dist/core/extensions/loader-virtual-modules.js +4 -1
- package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
- package/dist/core/retry-policy.d.ts +1 -0
- package/dist/core/retry-policy.d.ts.map +1 -1
- package/dist/core/retry-policy.js +2 -1
- package/dist/core/retry-policy.js.map +1 -1
- package/dist/core/settings-manager-basic-accessors.d.ts +1 -0
- package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-basic-accessors.js +2 -0
- package/dist/core/settings-manager-basic-accessors.js.map +1 -1
- package/dist/core/settings-types.d.ts +1 -0
- package/dist/core/settings-types.d.ts.map +1 -1
- package/dist/core/settings-types.js.map +1 -1
- package/dist/core/tasks/agent-adapter.d.ts +9 -0
- package/dist/core/tasks/agent-adapter.d.ts.map +1 -1
- package/dist/core/tasks/agent-adapter.js +36 -2
- package/dist/core/tasks/agent-adapter.js.map +1 -1
- package/dist/core/tasks/pause.d.ts +4 -0
- package/dist/core/tasks/pause.d.ts.map +1 -0
- package/dist/core/tasks/pause.js +49 -0
- package/dist/core/tasks/pause.js.map +1 -0
- package/dist/core/tasks/supervisor.d.ts +3 -1
- package/dist/core/tasks/supervisor.d.ts.map +1 -1
- package/dist/core/tasks/supervisor.js +48 -22
- package/dist/core/tasks/supervisor.js.map +1 -1
- package/dist/core/tools/bash.d.ts +2 -0
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +1 -1
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/powershell.d.ts.map +1 -1
- package/dist/core/tools/powershell.js +1 -0
- package/dist/core/tools/powershell.js.map +1 -1
- package/dist/core/tools/resource-selectors.d.ts +1 -1
- package/dist/core/tools/resource-selectors.d.ts.map +1 -1
- package/dist/core/tools/resource-selectors.js +7 -4
- package/dist/core/tools/resource-selectors.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host.js +3 -2
- package/dist/modes/interactive/components/chat-session-host.js.map +1 -1
- package/docs/background-tasks.md +7 -1
- package/docs/development.md +23 -74
- package/docs/extensions.md +4 -0
- package/docs/herdr.md +25 -78
- package/docs/intercom.md +4 -0
- package/docs/models/evals.md +2 -0
- package/docs/models/model-selection.md +10 -7
- package/docs/settings.md +4 -0
- package/docs/subagents.md +3 -1
- package/docs/tools.md +4 -0
- package/docs/workflows/api-reference.md +1 -1
- package/docs/workflows/operations.md +8 -3
- package/npm-shrinkwrap.json +59 -59
- package/package.json +3 -3
package/docs/subagents.md
CHANGED
|
@@ -71,6 +71,8 @@ Runtime-created session contexts bind single launches to their actual session or
|
|
|
71
71
|
|
|
72
72
|
The agent may choose foreground-first or background observation for each authorized call without asking the user merely to select a mode. When a foreground observation expires, the returned task is still running. Wait for terminal completion before using its result in dependent work. See [Choosing how long to wait](/background-tasks#choose-how-long-to-wait) for shell and subagent defaults and the separate execution-timeout behavior.
|
|
73
73
|
|
|
74
|
+
User steering or an incoming Intercom ask/send admitted to the waiting parent releases its active subagent observations, including both foreground launches and `action: "wait"`. This applies to main chat and live workflow-stage chat. The parent can handle the queued message and reply without cancelling the child, closing its owner, or interrupting another owner's waits. User input yields with reason `input-needed`; Intercom coordination yields with reason `intercom-coordination`. The original task can be observed again after handling the message.
|
|
75
|
+
|
|
74
76
|
An Intercom peer-message yield keeps the original execution alive. Terminal completion is recorded separately and admitted as a readable `task-completion` custom message. Background completions show a visible notification in main or owning workflow-stage chat, without requiring the parent model to reply. Its text names the available agent/task, outcome, error, and response excerpt; the receipt remains in structured details. Failed delivery retains the same persisted completion identity for retry. Parallel launches admit accepted slots independently of foreground/background observation and keep execution queued under the configured concurrency limit. Intercom yields do not skip queued siblings. Existing unbound SDK callers retain their legacy result fields.
|
|
75
77
|
|
|
76
78
|
Durable `ctx.tool` callbacks wait for tasks admitted inside their callback before checkpointing, even when the launching observation yielded. Session lifetime closure cancels session-owned work; stage generation closure, not pane detach or fallback session replacement, owns stage tasks.
|
|
@@ -217,7 +219,7 @@ Observation yields do not release these worktrees. Cancelling a queued child bef
|
|
|
217
219
|
|
|
218
220
|
Fresh child sessions use normal Atomic package discovery when an agent omits `extensions`, so bundled lightweight MCP and web-access wrappers are available just as they are in the parent. An explicit `extensions` field, including an empty list, switches optional extensions to allowlist mode and excludes unlisted optional builtins; mandatory bundled Intercom remains loaded. The child does not inherit the parent's normal optional discovery set.
|
|
219
221
|
|
|
220
|
-
Top-level parallel calls support up to 50 subagents after expanding each task's optional `count`. The extension's `parallel.maxTasks` setting defaults to 50 and can enforce a lower task limit; `parallel.concurrency` independently controls how many of those children run at once,
|
|
222
|
+
Top-level parallel calls support up to 50 subagents after expanding each task's optional `count`. The extension's `parallel.maxTasks` setting defaults to 50 and can enforce a lower task limit; `parallel.concurrency` defaults to 3 and independently controls how many of those children run at once. Explicit configuration overrides that default, and per-call `concurrency` takes precedence over configuration. The separate Rust turn limiter still admits at most four running turns per parent.
|
|
221
223
|
|
|
222
224
|
When one assistant response emits several sibling execution-mode `subagent` tool calls, Atomic collects that synchronous burst before starting a child and runs it as one indexed parallel set. Each original tool call still receives one result containing only the children it requested, and its live result, progress, control, and artifact updates are projected to that same route without sibling data. The TUI redraws the shared run as one aggregate parallel widget rather than retaining one widget per original call. A single call keeps its original SINGLE or PARALLEL mode, calls awaited in sequence remain separate runs, and management actions bypass collection. An execution call that arrives after a child has started still receives the existing in-progress rejection. Prefer one explicit `{ tasks: [...] }` call when planning parallel work; burst collection handles sibling calls emitted by a model.
|
|
223
225
|
|
package/docs/tools.md
CHANGED
|
@@ -32,6 +32,10 @@ When explicitly enabled in settings, built-in bash interceptor rules block commo
|
|
|
32
32
|
|
|
33
33
|
Shell internal-URL expansion is intentionally conservative: commands containing a resolved URL must use only plain unquoted words, spaces/tabs, and basic `;`, `|`, or `&` operators. For example, `printf %s local://notes.txt` is supported and the resolved path is shell-quoted automatically, including paths containing spaces or shell metacharacters. Quotes anywhere in such a command, substitutions, escapes, newlines, redirections and heredocs are rejected before execution; use a filesystem path instead for those forms. Commands without resolved internal URLs retain normal shell syntax. URL expansion in structured `cwd` and `env` values is unchanged.
|
|
34
34
|
|
|
35
|
+
The `powershell` tool uses PowerShell single-quoted literals for resolved paths, doubling both ASCII apostrophes and PowerShell's smart single-quote delimiters (U+2018–U+201B). Bash keeps POSIX quoting, including when Bash runs on Windows. SDK adapters using `createBashToolDefinition` with custom PowerShell operations can set `shellDialect: "powershell"` for generated path literals; this option does not select the executable or rewrite deliberate shell code.
|
|
36
|
+
|
|
37
|
+
Configured command prefixes and SDK `spawnHook` rewrites remain executable shell syntax, not a sandbox. Balanced setup commands such as quoted exports remain supported. A prefix that leaves a quote, substitution, or heredoc open across the following command can invalidate the generated path quoting; automatic URL expansion does not validate that composed shell context. Do not combine URL expansion with such wrappers. Use structured `cwd` and `env` for path data instead.
|
|
38
|
+
|
|
35
39
|
```json
|
|
36
40
|
{
|
|
37
41
|
"bashInterceptor": { "enabled": true }
|
|
@@ -736,7 +736,7 @@ readonly concurrency?: number;
|
|
|
736
736
|
readonly failFast?: boolean;
|
|
737
737
|
```
|
|
738
738
|
|
|
739
|
-
`WorkflowParallelOptions` uses `concurrency` to bound active tasks in an authored `ctx.parallel(...)`. When omitted, the runtime uses the workflow's `defaultConcurrency` setting, which defaults to `
|
|
739
|
+
`WorkflowParallelOptions` uses `concurrency` to bound active tasks in an authored `ctx.parallel(...)`. When omitted, the runtime uses the workflow's `defaultConcurrency` setting, which defaults to `3`; explicit configuration and per-call concurrency remain honored. Parallel execution is fail-fast unless `failFast` is explicitly `false`.
|
|
740
740
|
|
|
741
741
|
### Stage prompt options (`StagePromptOptions`)
|
|
742
742
|
|
|
@@ -27,6 +27,8 @@ Send material updates through Intercom to every affected workflow stage, includi
|
|
|
27
27
|
|
|
28
28
|
At 80 columns and wider, each `BACKGROUND` card keeps the full run identity and preserves its mode, progress, live-tool details, and elapsed/status metadata. When the remaining single-row budget permits, it adds bounded pending-stage details: a target is either shown exactly or replaced by a `stage`-labeled canonical ID, and `… N more` reports omitted pending stages. If no bounded pending-stage form fits, the pending label is omitted entirely rather than displacing the existing metadata. Tool nodes are read-only durable graph nodes, not attachable stage chats. Below 80 columns, the panel keeps its aggregate collapsed form and omits run IDs, stage identities, targets, and tool names.
|
|
29
29
|
|
|
30
|
+
The panel's stage progress includes recursively nested child workflows and updates as new stages appear. The numerator counts completed, failed, and skipped stages; the denominator counts all currently materialized stages, not future work. Expanded children replace their workflow boundary rather than counting both, and durable tool nodes are not stages. A failed, skipped, missing, or invalid child expansion keeps its boundary summary. `single`/`chain` follows this same stage count.
|
|
31
|
+
|
|
30
32
|
For chat surfaces such as workflow status, run detail, dispatch confirmation, and the run picker, a full id wraps onto continuation rows when the card is narrower than the id. Pending-stage targets in run detail use the same rule: the exact address wraps instead of being ellipsized, and narrow status cards wrap the canonical stage ID or drop its display-name decoration rather than rendering a partial ID. The renderer keeps the card border closed at its minimum layout width, while terminals below that floor — including sub-30-column terminals — can hard-clip the box. An awaiting-input attribution banner is titled `AWAITING INPUT` and contains the same two identity rows — `?` plus the full run id, then the workflow name and optional metadata — while the existing prompt question and options remain below it in the normal prompt UI.
|
|
31
33
|
|
|
32
34
|
The `/workflow connect` run picker shows five runs at a time; use the arrow keys or mouse wheel to scroll through additional retained runs.
|
|
@@ -188,7 +190,7 @@ Mounted HIL and custom prompts take precedence: a `/skill:` answer is literal pr
|
|
|
188
190
|
|
|
189
191
|
`/tasks` opens the owner task list locally, never a skill or model message. Empty and populated lists use the same compact picker as main chat, without combining tasks from other chats. Enter inspects the selected task; focused actions offer retained transcript inspection, foreground waiting, confirmed cancellation, and stdin when available. Terminal tasks omit live actions. Escape returns to the picker with selection preserved, then to chat. A stage question arriving during inspection remains pending and is shown when you leave the inspector. Task navigation does not create a main-chat input-needed notice; genuine main-chat prompts waiting behind a visible graph still do.
|
|
190
192
|
|
|
191
|
-
`/tasks` is also suggested in the stage slash menu independently of `enableSkillCommands`. Its [background-task status](/background-tasks) appears below MCP status;
|
|
193
|
+
`/tasks` is also suggested in the stage slash menu independently of `enableSkillCommands`. Its [background-task status](/background-tasks) appears below MCP status; the graph-return shortcut does not overwrite the task-inspection hint. Pausing a workflow stage cancels its active and admitted queued background agents and commands and waits for cleanup. It blocks fresh launches immediately; already-in-flight command setup may briefly start during the transition but must drain and be cancelled before pause completes. Stage-scoped pause leaves main-chat tasks and sibling stages alone. Merely detaching the chat or ending a foreground turn does not cancel background work. Closing the stage generation still cancels remaining owned work.
|
|
192
194
|
|
|
193
195
|
If inspection fails, the host displays the error and keeps your input for retry. It does not send the command to the model.
|
|
194
196
|
|
|
@@ -247,6 +249,8 @@ Control behavior:
|
|
|
247
249
|
- `status` / `status <runId>` show terminal `ctx.exit(...)` statuses (`completed`, `skipped`, `cancelled`, or `blocked`) and the optional exit reason when one was supplied.
|
|
248
250
|
- `stages` lists stage summaries, including flattened stages from nested `ctx.workflow(...)` imports and `sessionFile`/`transcriptPath` when a stage has a persisted session. Use `statusFilter: "all"` to include completed, failed, skipped, and pending stages.
|
|
249
251
|
- `stage` returns details for one stage by exact stage id or exact stage name, including nested child stages shown in the expanded graph and the persisted `sessionFile` when available. User-facing graph and control messages print full stage IDs; pass one back verbatim, or use the stage's exact name. Prefixes and partial names no longer resolve. Two stages sharing an exact name return an ambiguity diagnostic rather than selecting one.
|
|
252
|
+
- Local and retained/durable `stages` listings use the same expanded graph as `stage` and `transcript`: pass the listed ID back unchanged with that listing's `runId`. Valid nested boundaries are replaced by their descendants; missing, empty, or invalid children retain an inspectable boundary summary. Detail/transcript results identify the actual owning run and local stage ID.
|
|
253
|
+
- Intercom's slash-separated `target` is a messaging address, not a `workflow` `stageId`. An Intercom stage row also includes its owning `runId` and local `stageId`; pass that pair to `stage` or `transcript`, or use the expanded ID from `workflow stages` with the root run ID.
|
|
250
254
|
- `transcript` is reference-first with a small preview by default: it returns metadata, transcript paths, and up to 5 recent entries. For targeted lookup, quote the exact `sessionFile`/`transcriptPath` value without changing platform separators (preserve Windows backslashes), search it with `rg` or `grep`, then read only small surrounding ranges. Text results include JSON-escaped `sessionFileJson`/`transcriptPathJson` lines for copy-safe path literals. Pass explicit `tail` or `limit` to override the 5-entry preview; `tail` overrides `limit`; `includeToolOutput` includes captured snapshot tool output in snapshot transcript results.
|
|
251
255
|
- `answer` responds only to a pending primitive or structured human-input prompt. It accepts `promptId` plus `response`, `text`, or `message`, preserves prompt-kind validation, and never sends stage chat, steers, resumes, or starts a model turn.
|
|
252
256
|
- Send free-form updates through ordinary Intercom to `workflow:<rootRunId>/<segment>[/<segment>...]`; `*` matches one segment and `**` any depth. Use `intercom list` inside the invocation group to see live, pending, and possible future targets. Atomic delivers immediately to live stages and queues matching future stages, delivering them before their first model turn. `workflow:<rootRunId>/**` remains sticky for every future descendant until root termination; narrower name and pattern sends reach every future match. Valid paths outside the known set queue with a `notInKnownSet` warning and settle undeliverable at terminal only if never delivered. Use `ask` once the target has a reply-capable live session. Use `workflow resume` only for paused workflow control.
|
|
@@ -258,6 +262,7 @@ Control behavior:
|
|
|
258
262
|
- A targeted tool abort reports the node outcome and the run separately: `status: "cancelled"` for the node it cancelled, `stageId` for that node, `abandoned` when the callback ignored its signal, and `workflowStatus` for the run status *observed* when the action returned. It never reports `paused`, and it never predicts what the run does next.
|
|
259
263
|
- `pause` never accepts a tool node: `ctx.tool` has no turn boundary to stop at, so Atomic rejects it with `Tool nodes cannot be paused; ... Use interrupt or quit to abort it.` instead of a silent no-op.
|
|
260
264
|
- `interrupt` and `pause` preserve resumable live work. With no active stage/tool handle (including initialization and between-node waits), they keep the same executor paused rather than quitting it. Run-level `resume` on that live process releases the barrier exactly once; later tracked steps, cached replay, and run completion wait for that explicit resume. An already-started untracked JavaScript await or non-cancellable I/O may still finish; pause cannot physically freeze arbitrary author code or roll back effects. A stage declared during this pause defers registration until its asynchronous method runs after resume; synchronous session access requires resume first.
|
|
265
|
+
- A stage pause cancels that generation's owned task executions, not its queued messages or future workflow stages. User and Intercom messages remain held until resume; resume allows fresh tasks and never restarts the cancelled executions. Cancellation and cleanup failures reject the pause rather than reporting a successful stop.
|
|
261
266
|
- A whole-run executor-only pause also holds already-live owned child workflows, including children with no tracked node yet. Resume persists the root's running transition before releasing those child executors; a child-scoped control leaves sibling workflows alone.
|
|
262
267
|
- Live executor resume does not require a checkpoint. Cross-process resume still requires durable checkpoint or pending-prompt progress: losing a zero-progress live owner cannot reconstruct its JavaScript continuation. Cancelling the original startup request before acknowledgement remains terminal cancellation, not this live pause.
|
|
263
268
|
- `resume` can target a stage with `stageId`; the target may be an exact stage id or an exact stage name. `message` is forwarded to paused work. For a live interrupted streaming prompt, Atomic preserves the existing prompt loop without duplicating the user message and injects `Continue where you left off. If you believe you are finished with your original task (or a redefined task if the user told you), stop.` when required before normal readiness-gate completion. For a paused stage that was idle waiting for a new stage-chat turn, a non-empty message resumes the stage and starts exactly one fresh prompt containing that message; an empty resume releases the pause without creating a prompt.
|
|
@@ -745,7 +750,7 @@ Example config:
|
|
|
745
750
|
"team": { "path": "./workflows/team.ts" },
|
|
746
751
|
"shared": { "path": "/shared/team/workflows" }
|
|
747
752
|
},
|
|
748
|
-
"defaultConcurrency":
|
|
753
|
+
"defaultConcurrency": 3,
|
|
749
754
|
"maxDepth": 4,
|
|
750
755
|
"budget": { "maxDurationMs": 0, "maxTokens": 0, "maxCost": 0, "warnAtPercent": 80 },
|
|
751
756
|
"persistRuns": true,
|
|
@@ -765,7 +770,7 @@ Runtime config defaults:
|
|
|
765
770
|
|
|
766
771
|
| Key | Default | Purpose |
|
|
767
772
|
|-----|---------|---------|
|
|
768
|
-
| `defaultConcurrency` | `
|
|
773
|
+
| `defaultConcurrency` | `3` | Default stage concurrency and concurrency for authored `ctx.parallel(...)` execution |
|
|
769
774
|
| `maxDepth` | `4` | Maximum workflow nesting depth |
|
|
770
775
|
| `budget` | `{ maxDurationMs: 0, maxTokens: 0, maxCost: 0, warnAtPercent: 80 }` | Default per-run budget declaration; `0` disables a dimension; warnings default to `80` percent |
|
|
771
776
|
| `persistRuns` | `true` | Persist run metadata for status/resume/history |
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bastani/atomic",
|
|
3
|
-
"version": "0.9.19-alpha.
|
|
3
|
+
"version": "0.9.19-alpha.3",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@bastani/atomic",
|
|
9
|
-
"version": "0.9.19-alpha.
|
|
9
|
+
"version": "0.9.19-alpha.3",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@bastani/atomic-natives": "0.9.19-alpha.
|
|
13
|
-
"@bastani/pi-ai": "0.9.19-alpha.
|
|
12
|
+
"@bastani/atomic-natives": "0.9.19-alpha.3",
|
|
13
|
+
"@bastani/pi-ai": "0.9.19-alpha.3",
|
|
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",
|
|
@@ -518,18 +518,18 @@
|
|
|
518
518
|
}
|
|
519
519
|
},
|
|
520
520
|
"node_modules/@bastani/atomic-natives": {
|
|
521
|
-
"version": "0.9.19-alpha.
|
|
522
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives/-/atomic-natives-0.9.19-alpha.
|
|
521
|
+
"version": "0.9.19-alpha.3",
|
|
522
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives/-/atomic-natives-0.9.19-alpha.3.tgz",
|
|
523
523
|
"license": "MIT",
|
|
524
524
|
"optionalDependencies": {
|
|
525
|
-
"@bastani/atomic-natives-darwin-arm64": "0.9.19-alpha.
|
|
526
|
-
"@bastani/atomic-natives-darwin-x64": "0.9.19-alpha.
|
|
527
|
-
"@bastani/atomic-natives-linux-arm64-gnu": "0.9.19-alpha.
|
|
528
|
-
"@bastani/atomic-natives-linux-arm64-musl": "0.9.19-alpha.
|
|
529
|
-
"@bastani/atomic-natives-linux-x64-gnu": "0.9.19-alpha.
|
|
530
|
-
"@bastani/atomic-natives-linux-x64-musl": "0.9.19-alpha.
|
|
531
|
-
"@bastani/atomic-natives-win32-arm64-msvc": "0.9.19-alpha.
|
|
532
|
-
"@bastani/atomic-natives-win32-x64-msvc": "0.9.19-alpha.
|
|
525
|
+
"@bastani/atomic-natives-darwin-arm64": "0.9.19-alpha.3",
|
|
526
|
+
"@bastani/atomic-natives-darwin-x64": "0.9.19-alpha.3",
|
|
527
|
+
"@bastani/atomic-natives-linux-arm64-gnu": "0.9.19-alpha.3",
|
|
528
|
+
"@bastani/atomic-natives-linux-arm64-musl": "0.9.19-alpha.3",
|
|
529
|
+
"@bastani/atomic-natives-linux-x64-gnu": "0.9.19-alpha.3",
|
|
530
|
+
"@bastani/atomic-natives-linux-x64-musl": "0.9.19-alpha.3",
|
|
531
|
+
"@bastani/atomic-natives-win32-arm64-msvc": "0.9.19-alpha.3",
|
|
532
|
+
"@bastani/atomic-natives-win32-x64-msvc": "0.9.19-alpha.3"
|
|
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.
|
|
541
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-arm64/-/atomic-natives-darwin-arm64-0.9.19-alpha.
|
|
540
|
+
"version": "0.9.19-alpha.3",
|
|
541
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-arm64/-/atomic-natives-darwin-arm64-0.9.19-alpha.3.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.
|
|
553
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-x64/-/atomic-natives-darwin-x64-0.9.19-alpha.
|
|
552
|
+
"version": "0.9.19-alpha.3",
|
|
553
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-darwin-x64/-/atomic-natives-darwin-x64-0.9.19-alpha.3.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.
|
|
565
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-gnu/-/atomic-natives-linux-arm64-gnu-0.9.19-alpha.
|
|
564
|
+
"version": "0.9.19-alpha.3",
|
|
565
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-gnu/-/atomic-natives-linux-arm64-gnu-0.9.19-alpha.3.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.
|
|
580
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-musl/-/atomic-natives-linux-arm64-musl-0.9.19-alpha.
|
|
579
|
+
"version": "0.9.19-alpha.3",
|
|
580
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-arm64-musl/-/atomic-natives-linux-arm64-musl-0.9.19-alpha.3.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.
|
|
595
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-gnu/-/atomic-natives-linux-x64-gnu-0.9.19-alpha.
|
|
594
|
+
"version": "0.9.19-alpha.3",
|
|
595
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-gnu/-/atomic-natives-linux-x64-gnu-0.9.19-alpha.3.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.
|
|
610
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-musl/-/atomic-natives-linux-x64-musl-0.9.19-alpha.
|
|
609
|
+
"version": "0.9.19-alpha.3",
|
|
610
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-linux-x64-musl/-/atomic-natives-linux-x64-musl-0.9.19-alpha.3.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.
|
|
625
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-arm64-msvc/-/atomic-natives-win32-arm64-msvc-0.9.19-alpha.
|
|
624
|
+
"version": "0.9.19-alpha.3",
|
|
625
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-arm64-msvc/-/atomic-natives-win32-arm64-msvc-0.9.19-alpha.3.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.
|
|
637
|
-
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-x64-msvc/-/atomic-natives-win32-x64-msvc-0.9.19-alpha.
|
|
636
|
+
"version": "0.9.19-alpha.3",
|
|
637
|
+
"resolved": "https://registry.npmjs.org/@bastani/atomic-natives-win32-x64-msvc/-/atomic-natives-win32-x64-msvc-0.9.19-alpha.3.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.
|
|
649
|
-
"resolved": "https://registry.npmjs.org/@bastani/pi-ai/-/pi-ai-0.9.19-alpha.
|
|
648
|
+
"version": "0.9.19-alpha.3",
|
|
649
|
+
"resolved": "https://registry.npmjs.org/@bastani/pi-ai/-/pi-ai-0.9.19-alpha.3.tgz",
|
|
650
650
|
"license": "MIT",
|
|
651
651
|
"dependencies": {
|
|
652
652
|
"@anthropic-ai/sdk": "0.124.0",
|
|
@@ -816,6 +816,33 @@
|
|
|
816
816
|
"packages/*"
|
|
817
817
|
]
|
|
818
818
|
},
|
|
819
|
+
"node_modules/@dbos-inc/dbos-sdk/node_modules/copy-anything": {
|
|
820
|
+
"version": "3.0.5",
|
|
821
|
+
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
|
|
822
|
+
"integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==",
|
|
823
|
+
"license": "MIT",
|
|
824
|
+
"dependencies": {
|
|
825
|
+
"is-what": "^4.1.8"
|
|
826
|
+
},
|
|
827
|
+
"engines": {
|
|
828
|
+
"node": ">=12.13"
|
|
829
|
+
},
|
|
830
|
+
"funding": {
|
|
831
|
+
"url": "https://github.com/sponsors/mesqueeb"
|
|
832
|
+
}
|
|
833
|
+
},
|
|
834
|
+
"node_modules/@dbos-inc/dbos-sdk/node_modules/superjson": {
|
|
835
|
+
"version": "1.13.3",
|
|
836
|
+
"resolved": "https://registry.npmjs.org/superjson/-/superjson-1.13.3.tgz",
|
|
837
|
+
"integrity": "sha512-mJiVjfd2vokfDxsQPOwJ/PtanO87LhpYY88ubI5dUB1Ab58Txbyje3+jpm+/83R/fevaq/107NNhtYBLuoTrFg==",
|
|
838
|
+
"license": "MIT",
|
|
839
|
+
"dependencies": {
|
|
840
|
+
"copy-anything": "^3.0.2"
|
|
841
|
+
},
|
|
842
|
+
"engines": {
|
|
843
|
+
"node": ">=10"
|
|
844
|
+
}
|
|
845
|
+
},
|
|
819
846
|
"node_modules/@earendil-works/chord": {
|
|
820
847
|
"version": "0.85.1",
|
|
821
848
|
"resolved": "https://registry.npmjs.org/@earendil-works/chord/-/chord-0.85.1.tgz",
|
|
@@ -2397,21 +2424,6 @@
|
|
|
2397
2424
|
"node": ">=6.6.0"
|
|
2398
2425
|
}
|
|
2399
2426
|
},
|
|
2400
|
-
"node_modules/copy-anything": {
|
|
2401
|
-
"version": "3.0.5",
|
|
2402
|
-
"resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz",
|
|
2403
|
-
"integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==",
|
|
2404
|
-
"license": "MIT",
|
|
2405
|
-
"dependencies": {
|
|
2406
|
-
"is-what": "^4.1.8"
|
|
2407
|
-
},
|
|
2408
|
-
"engines": {
|
|
2409
|
-
"node": ">=12.13"
|
|
2410
|
-
},
|
|
2411
|
-
"funding": {
|
|
2412
|
-
"url": "https://github.com/sponsors/mesqueeb"
|
|
2413
|
-
}
|
|
2414
|
-
},
|
|
2415
2427
|
"node_modules/core-util-is": {
|
|
2416
2428
|
"version": "1.0.3",
|
|
2417
2429
|
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
|
|
@@ -4839,18 +4851,6 @@
|
|
|
4839
4851
|
"url": "https://github.com/sponsors/Borewit"
|
|
4840
4852
|
}
|
|
4841
4853
|
},
|
|
4842
|
-
"node_modules/superjson": {
|
|
4843
|
-
"version": "1.13.3",
|
|
4844
|
-
"resolved": "https://registry.npmjs.org/superjson/-/superjson-1.13.3.tgz",
|
|
4845
|
-
"integrity": "sha512-mJiVjfd2vokfDxsQPOwJ/PtanO87LhpYY88ubI5dUB1Ab58Txbyje3+jpm+/83R/fevaq/107NNhtYBLuoTrFg==",
|
|
4846
|
-
"license": "MIT",
|
|
4847
|
-
"dependencies": {
|
|
4848
|
-
"copy-anything": "^3.0.2"
|
|
4849
|
-
},
|
|
4850
|
-
"engines": {
|
|
4851
|
-
"node": ">=10"
|
|
4852
|
-
}
|
|
4853
|
-
},
|
|
4854
4854
|
"node_modules/toidentifier": {
|
|
4855
4855
|
"version": "1.0.1",
|
|
4856
4856
|
"resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bastani/atomic",
|
|
3
|
-
"version": "0.9.19-alpha.
|
|
3
|
+
"version": "0.9.19-alpha.3",
|
|
4
4
|
"description": "Atomic coding agent CLI with read, bash, edit, write tools and session management",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"atomicConfig": {
|
|
@@ -79,8 +79,8 @@
|
|
|
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.
|
|
83
|
-
"@bastani/pi-ai": "0.9.19-alpha.
|
|
82
|
+
"@bastani/atomic-natives": "0.9.19-alpha.3",
|
|
83
|
+
"@bastani/pi-ai": "0.9.19-alpha.3",
|
|
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",
|