@bastani/atomic 0.9.52-alpha.1 → 0.9.53-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.
- package/CHANGELOG.md +24 -0
- package/dist/builtin/intercom/package.json +1 -1
- package/dist/builtin/mcp/package.json +1 -1
- package/dist/builtin/subagents/package.json +1 -1
- package/dist/builtin/subagents/src/extension/index.bundle.mjs +13 -0
- package/dist/builtin/web-access/CHANGELOG.md +6 -0
- package/dist/builtin/web-access/package.json +1 -1
- package/dist/builtin/workflows/CHANGELOG.md +11 -0
- package/dist/builtin/workflows/package.json +1 -1
- package/dist/core/agent-session-extension-bindings.d.ts.map +1 -1
- package/dist/core/agent-session-extension-bindings.js +5 -0
- package/dist/core/agent-session-extension-bindings.js.map +1 -1
- package/dist/core/agent-session-types.d.ts +6 -0
- package/dist/core/agent-session-types.d.ts.map +1 -1
- package/dist/core/agent-session-types.js.map +1 -1
- package/dist/core/extensions/runner.d.ts +6 -0
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +9 -0
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/tasks/supervisor.d.ts +8 -0
- package/dist/core/tasks/supervisor.d.ts.map +1 -1
- package/dist/core/tasks/supervisor.js +49 -0
- package/dist/core/tasks/supervisor.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts +5 -0
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +13 -4
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/task-inspector.d.ts +7 -0
- package/dist/modes/interactive/components/task-inspector.d.ts.map +1 -1
- package/dist/modes/interactive/components/task-inspector.js +36 -4
- package/dist/modes/interactive/components/task-inspector.js.map +1 -1
- package/docs/background-tasks.md +2 -0
- package/npm-shrinkwrap.json +36 -36
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.9.53] - 2026-10-29
|
|
6
|
+
|
|
7
|
+
Task pages show their own status lines, and a dependency security fix.
|
|
8
|
+
|
|
9
|
+
- **A task's own status lines:** a subagent task's fullscreen detail and transcript pages show the extension statuses its session writes, live, and clear them when it ends ([#4103](https://github.com/bastani-inc/atomic/issues/4103))
|
|
10
|
+
- **Security update:** the bundled `@hono/node-server` moves to 2.1.5, which fixes a middleware bypass on static paths ([GHSA-rmxm-3fg6-px4f](https://github.com/advisories/GHSA-rmxm-3fg6-px4f))
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- A subagent task's fullscreen detail and transcript pages now show the extension status lines (such as a tokens-per-second counter) that the task's own session sets, in a row beneath the page footer that updates live and clears when the task ends. Status writes from a subagent child's extensions used to be dropped, so those pages showed no extension statuses at all; they are still kept out of the chat's own footer ([#4103](https://github.com/bastani-inc/atomic/issues/4103))
|
|
15
|
+
- Updated the bundled `@hono/node-server` dependency to 2.1.5, which fixes `serveStatic` decoding a request path a second time, a way to bypass middleware on static paths ([GHSA-rmxm-3fg6-px4f](https://github.com/advisories/GHSA-rmxm-3fg6-px4f))
|
|
16
|
+
|
|
17
|
+
## [0.9.53-alpha.1] - 2026-10-29
|
|
18
|
+
|
|
19
|
+
Task pages show their own status lines, and a dependency security fix.
|
|
20
|
+
|
|
21
|
+
- **A task's own status lines:** a subagent task's fullscreen detail and transcript pages show the extension statuses its session writes, live, and clear them when it ends ([#4103](https://github.com/bastani-inc/atomic/issues/4103))
|
|
22
|
+
- **Security update:** the bundled `@hono/node-server` moves to 2.1.5, which fixes a middleware bypass on static paths ([GHSA-rmxm-3fg6-px4f](https://github.com/advisories/GHSA-rmxm-3fg6-px4f))
|
|
23
|
+
|
|
24
|
+
### Fixed
|
|
25
|
+
|
|
26
|
+
- A subagent task's fullscreen detail and transcript pages now show the extension status lines (such as a tokens-per-second counter) that the task's own session sets, in a row beneath the page footer that updates live and clears when the task ends. Status writes from a subagent child's extensions used to be dropped, so those pages showed no extension statuses at all; they are still kept out of the chat's own footer ([#4103](https://github.com/bastani-inc/atomic/issues/4103))
|
|
27
|
+
- Updated the bundled `@hono/node-server` dependency to 2.1.5, which fixes `serveStatic` decoding a request path a second time, a way to bypass middleware on static paths ([GHSA-rmxm-3fg6-px4f](https://github.com/advisories/GHSA-rmxm-3fg6-px4f))
|
|
28
|
+
|
|
5
29
|
## [0.9.51] - 2026-10-29
|
|
6
30
|
|
|
7
31
|
Windows sessions resume as printed, and stay open.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bastani/intercom",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.53-alpha.1",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "Atomic extension providing a private coordination channel between parent and child agent sessions. Fork of: https://github.com/nicobailon/pi-intercom",
|
|
6
6
|
"contributors": [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bastani/subagents",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.53-alpha.1",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "Atomic extension for delegating tasks to subagents with parallel execution. Fork of: https://github.com/nicobailon/pi-subagents",
|
|
6
6
|
"contributors": [
|
|
@@ -10864,6 +10864,8 @@ ${launch.message}` : input.task,
|
|
|
10864
10864
|
}
|
|
10865
10865
|
} : {}
|
|
10866
10866
|
}),
|
|
10867
|
+
setExtensionStatus: context.setExtensionStatus,
|
|
10868
|
+
clearExtensionStatuses: context.clearExtensionStatuses,
|
|
10867
10869
|
bindChildSession: (session) => {
|
|
10868
10870
|
childSession = {
|
|
10869
10871
|
childSessionId: session.sessionId,
|
|
@@ -13069,6 +13071,7 @@ class SubagentControlRuntime {
|
|
|
13069
13071
|
let effectiveModelId = candidateModelId;
|
|
13070
13072
|
let effectiveThinking = initialThinkingForAttempt(candidateModelId, configuredThinking);
|
|
13071
13073
|
let transcriptManager;
|
|
13074
|
+
let statusesOpen = true;
|
|
13072
13075
|
let attemptedModels = candidateModelId ? [candidateModelId] : [];
|
|
13073
13076
|
const selectedModel = candidate.model ?? admitted.policy.model;
|
|
13074
13077
|
if (selectedModel)
|
|
@@ -13206,6 +13209,13 @@ class SubagentControlRuntime {
|
|
|
13206
13209
|
excludedTools: admitted.policy.excludedTools ? [...admitted.policy.excludedTools] : undefined
|
|
13207
13210
|
};
|
|
13208
13211
|
const inherited = admitted.spec.parent?.getChildSessionOptions?.(childOptions) ?? childOptions;
|
|
13212
|
+
const extensionBindings = taskHooks?.setExtensionStatus ? {
|
|
13213
|
+
...inherited.extensionBindings,
|
|
13214
|
+
onStatus: (statusKey, text) => {
|
|
13215
|
+
if (statusesOpen)
|
|
13216
|
+
taskHooks.setExtensionStatus?.(statusKey, text);
|
|
13217
|
+
}
|
|
13218
|
+
} : inherited.extensionBindings;
|
|
13209
13219
|
const agentDir = inherited.agentDir ?? getAgentDir2();
|
|
13210
13220
|
const settingsManager = inherited.settingsManager ?? SettingsManager.create(admitted.policy.cwd, agentDir);
|
|
13211
13221
|
const resourceLoader = new DefaultResourceLoader(inProcessChildResourceLoaderOptions({
|
|
@@ -13232,6 +13242,7 @@ class SubagentControlRuntime {
|
|
|
13232
13242
|
created = {
|
|
13233
13243
|
session: (await createAgentSession({
|
|
13234
13244
|
...inherited,
|
|
13245
|
+
extensionBindings,
|
|
13235
13246
|
customTools: admitted.policy.customTools ?? inherited.customTools,
|
|
13236
13247
|
resourceLoader,
|
|
13237
13248
|
resourceAdmissionSignal: AbortSignal.any([signals.abort, signals.interrupt]),
|
|
@@ -13486,6 +13497,8 @@ class SubagentControlRuntime {
|
|
|
13486
13497
|
unsubscribe?.();
|
|
13487
13498
|
} catch {}
|
|
13488
13499
|
const settleTranscript = () => {
|
|
13500
|
+
statusesOpen = false;
|
|
13501
|
+
taskHooks?.clearExtensionStatuses?.();
|
|
13489
13502
|
if (transcriptManager !== undefined)
|
|
13490
13503
|
taskHooks?.bindTranscript?.(settledTranscript(transcriptManager));
|
|
13491
13504
|
};
|
|
@@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [0.9.52] - 2026-10-29
|
|
8
|
+
|
|
9
|
+
### Fixed
|
|
10
|
+
|
|
11
|
+
- `web_search` no longer ends with `Search curation cancelled (stale).` when the search curator is enabled but cannot open (for example on a machine with no desktop browser), or when the session has no human to answer it, such as a subagent or workflow stage. It returns the raw results, with a note that points to `/curator off` when the curator failed to open. When no search provider is reachable, the error now names the `EXA_API_KEY`, `PERPLEXITY_API_KEY`, and `GEMINI_API_KEY` environment variables, the `exaApiKey`, `perplexityApiKey`, and `geminiApiKey` fields in `~/.atomic/web-search.json`, and `/curator` ([#4087](https://github.com/bastani-inc/atomic/issues/4087)).
|
|
12
|
+
|
|
7
13
|
## [0.9.52-alpha.1] - 2026-10-29
|
|
8
14
|
|
|
9
15
|
### Fixed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bastani/web-access",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.53-alpha.1",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "Atomic extension for web search, URL fetching, GitHub repo cloning, PDF/video extraction. Fork of: https://github.com/nicobailon/pi-web-access",
|
|
6
6
|
"contributors": [
|
|
@@ -6,6 +6,17 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.9.52] - 2026-10-29
|
|
10
|
+
|
|
11
|
+
Stage chats show their own status lines, and web search keeps its results.
|
|
12
|
+
|
|
13
|
+
- **A stage chat's own status lines:** an attached stage chat's footer shows the extension statuses its stage's session writes, such as a tokens-per-second counter, and no longer the main session's ([#4094](https://github.com/bastani-inc/atomic/issues/4094))
|
|
14
|
+
- **Web search results that arrive:** `web_search` returns its results when the search curator can't open or nobody can answer it, instead of `Search curation cancelled (stale).`, and says which keys or settings to configure when no search provider works ([#4087](https://github.com/bastani-inc/atomic/issues/4087))
|
|
15
|
+
|
|
16
|
+
### Fixed
|
|
17
|
+
|
|
18
|
+
- An attached stage chat's footer now shows the extension status lines (such as a tokens-per-second counter) written by that stage's own session, and no longer shows the main session's. Status writes from a stage's extensions used to be dropped, while the chat footer displayed the main chat's statuses: a sleeping stage showed a live counter driven by the main agent, and a streaming stage showed a stale one. The main chat footer keeps showing only the main session's statuses ([#4094](https://github.com/bastani-inc/atomic/issues/4094))
|
|
19
|
+
|
|
9
20
|
## [0.9.52-alpha.1] - 2026-10-29
|
|
10
21
|
|
|
11
22
|
Stage chats show their own status lines, and web search keeps its results.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session-extension-bindings.d.ts","sourceRoot":"","sources":["../../src/core/agent-session-extension-bindings.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,2BAA2B,IAAI,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE9F,OAAO,EAGN,KAAK,mBAAmB,EAExB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAQ7F,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAYxD,OAAO,KAAK,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAA0B,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAuBnF,cAAM,wBAAwB;IAC7B,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyC;IACjE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAyC;IACtE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAyB;IACvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,QAAQ,CAAC,mBAAmB,EAAE,4BAA4B,CAAC;IAC3D,OAAO,CAAC,gBAAgB,CAAS;IACjC,QAAQ,CAAC,WAAW,cAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAgB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,SAAS,CAAS;IAE1B,YACC,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,eAAe,EACvB,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,MAAM,OAAO,EACvB,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,EAMrC;IAED,KAAK,CAAC,MAAM,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAE9C;IAED,UAAU,CAAC,MAAM,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAEnD;IAED,WAAW,CAAC,MAAM,EAAE,MAAM,IAAI,GAAG,IAAI,CAgBpC;IAED,eAAe,IAAI,IAAI,CAItB;IAED,mBAAmB,IAAI,IAAI,CAI1B;IAEK,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAEpC;IAEK,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEtC;IAED,OAAO,IAAI,IAAI,CAKd;IAEK,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7B;YAEa,OAAO;IAYrB,OAAO,CAAC,MAAM;CAOd;
|
|
1
|
+
{"version":3,"file":"agent-session-extension-bindings.d.ts","sourceRoot":"","sources":["../../src/core/agent-session-extension-bindings.ts"],"names":[],"mappings":"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"}
|
|
@@ -157,6 +157,7 @@ const failedExtensionStarts = new WeakSet();
|
|
|
157
157
|
// Binding intent is session-local and survives runner reloads, even when a host object is reused.
|
|
158
158
|
const humanInputBindingRevisions = new WeakMap();
|
|
159
159
|
const presentationOnlyBindings = new WeakMap();
|
|
160
|
+
const statusSinks = new WeakMap();
|
|
160
161
|
const sessionSummaryBackfills = new WeakSet();
|
|
161
162
|
function startExtensions(session, runner, loader, event, finalize) {
|
|
162
163
|
const existing = extensionStarts.get(runner);
|
|
@@ -225,6 +226,8 @@ export async function bindExtensions(bindings) {
|
|
|
225
226
|
}
|
|
226
227
|
if (bindings.isPresentationOnly !== undefined)
|
|
227
228
|
presentationOnlyBindings.set(this, bindings.isPresentationOnly);
|
|
229
|
+
if (bindings.onStatus !== undefined)
|
|
230
|
+
statusSinks.set(this, bindings.onStatus);
|
|
228
231
|
if (bindings.commandContextActions !== undefined) {
|
|
229
232
|
this._extensionCommandContextActions = bindings.commandContextActions;
|
|
230
233
|
}
|
|
@@ -288,6 +291,7 @@ export function _applyExtensionBindings(runner) {
|
|
|
288
291
|
runner.setHostBindings(this._extensionHumanInput, this._extensionDiagnosticListener, humanInputBindingRevisions.get(this));
|
|
289
292
|
runner.setUIPromptObserver(uiPromptBindings.get(this));
|
|
290
293
|
runner.setUIContext(this._extensionUIContext, this._extensionMode, presentationOnlyBindings.get(this) ?? false);
|
|
294
|
+
runner.setStatusSink(statusSinks.get(this));
|
|
291
295
|
runner.bindCommandContext(this._extensionCommandContextActions);
|
|
292
296
|
runner.bindChildSessionOptions(liveChildSessionOptions(this));
|
|
293
297
|
runner.bindWorkflowJournal(this._workflowJournal, this._storageAgentDir);
|
|
@@ -870,6 +874,7 @@ async function reloadOwnedGeneration(retainedRuntimes, options) {
|
|
|
870
874
|
this._bindExtensionCore(candidateRunner, publication, startupToolNames, startupLoadout);
|
|
871
875
|
candidateRunner.setHostBindings(this._extensionHumanInput, this._extensionDiagnosticListener, humanInputBindingRevisions.get(this));
|
|
872
876
|
candidateRunner.setUIContext(this._extensionUIContext, this._extensionMode, presentationOnlyBindings.get(this) ?? false);
|
|
877
|
+
candidateRunner.setStatusSink(statusSinks.get(this));
|
|
873
878
|
candidateRunner.bindCommandContext(this._extensionCommandContextActions);
|
|
874
879
|
candidateRunner.bindChildSessionOptions(liveChildSessionOptions(this));
|
|
875
880
|
candidateRunner.bindWorkflowJournal(this._workflowJournal, this._storageAgentDir);
|