@bastani/atomic 0.9.13-alpha.1 → 0.9.13-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 +144 -0
- package/README.md +36 -18
- package/dist/builtin/i-have-adhd/CHANGELOG.md +17 -0
- package/dist/builtin/i-have-adhd/LICENSE +21 -0
- package/dist/builtin/i-have-adhd/README.md +18 -0
- package/dist/builtin/i-have-adhd/index.ts +238 -0
- package/dist/builtin/i-have-adhd/package.json +56 -0
- package/dist/builtin/i-have-adhd/skills/i-have-adhd/SKILL.md +140 -0
- package/dist/builtin/intercom/CHANGELOG.md +33 -0
- package/dist/builtin/intercom/README.md +36 -15
- package/dist/builtin/intercom/broker/bounded-stderr-install.ts +18 -0
- package/dist/builtin/intercom/broker/bounded-stderr.ts +132 -0
- package/dist/builtin/intercom/broker/broker.ts +12 -23
- package/dist/builtin/intercom/broker/client.ts +70 -3
- package/dist/builtin/intercom/broker/paths.ts +9 -0
- package/dist/builtin/intercom/broker/presence-handler.ts +103 -0
- package/dist/builtin/intercom/broker/spawn.ts +128 -29
- package/dist/builtin/intercom/foreground-detach-handoff.ts +30 -14
- package/dist/builtin/intercom/group.ts +64 -25
- package/dist/builtin/intercom/incoming-message-delivery.ts +1 -1
- package/dist/builtin/intercom/index-heavy.ts +38 -5
- package/dist/builtin/intercom/index.ts +8 -4
- package/dist/builtin/intercom/intercom-tool.ts +83 -6
- package/dist/builtin/intercom/intercom-utils.ts +3 -6
- package/dist/builtin/intercom/lazy-subagent-ack.ts +11 -6
- package/dist/builtin/intercom/package.json +2 -3
- package/dist/builtin/intercom/result-renderers.ts +1 -1
- package/dist/builtin/intercom/runtime-group.ts +13 -0
- package/dist/builtin/intercom/session-target.ts +1 -15
- package/dist/builtin/intercom/skills/intercom/SKILL.md +35 -7
- package/dist/builtin/intercom/subagent-relay.ts +32 -16
- package/dist/builtin/intercom/terminal-ordering-barrier.ts +23 -6
- package/dist/builtin/intercom/types.ts +3 -1
- package/dist/builtin/intercom/ui/compose.ts +8 -6
- package/dist/builtin/intercom/ui/inline-message.ts +7 -5
- package/dist/builtin/intercom/ui/session-list.ts +30 -15
- package/dist/builtin/mcp/CHANGELOG.md +13 -0
- package/dist/builtin/mcp/glimpse-ui.ts +2 -1
- package/dist/builtin/mcp/index.ts +1 -11
- package/dist/builtin/mcp/mcp-panel.ts +35 -34
- package/dist/builtin/mcp/mcp-setup-panel.ts +35 -33
- package/dist/builtin/mcp/npx-resolver.ts +3 -2
- package/dist/builtin/mcp/package.json +3 -3
- package/dist/builtin/mcp/sampling-handler.ts +5 -1
- package/dist/builtin/mcp/server-manager.ts +4 -7
- package/dist/builtin/subagents/CHANGELOG.md +52 -0
- package/dist/builtin/subagents/README.md +140 -383
- package/dist/builtin/subagents/agents/worker.md +1 -1
- package/dist/builtin/subagents/package.json +5 -5
- package/dist/builtin/subagents/prompts/parallel-cleanup.md +1 -1
- package/dist/builtin/subagents/prompts/parallel-context-build.md +2 -2
- package/dist/builtin/subagents/prompts/parallel-handoff-plan.md +4 -4
- package/dist/builtin/subagents/prompts/parallel-review.md +1 -1
- package/dist/builtin/subagents/prompts/review-loop.md +2 -2
- package/dist/builtin/subagents/skills/subagent/SKILL.md +55 -154
- package/dist/builtin/subagents/skills/tmux/SKILL.md +1 -1
- package/dist/builtin/subagents/src/agents/agent-discovery.ts +1 -29
- package/dist/builtin/subagents/src/agents/agent-loaders.ts +1 -40
- package/dist/builtin/subagents/src/agents/agent-management-helpers.ts +6 -135
- package/dist/builtin/subagents/src/agents/agent-management.ts +52 -282
- package/dist/builtin/subagents/src/agents/agent-paths.ts +0 -22
- package/dist/builtin/subagents/src/agents/agent-types.ts +0 -40
- package/dist/builtin/subagents/src/agents/agents.ts +0 -3
- package/dist/builtin/subagents/src/agents/identity.ts +2 -4
- package/dist/builtin/subagents/src/agents/skills-paths.ts +8 -1
- package/dist/builtin/subagents/src/extension/control-notices.ts +2 -3
- package/dist/builtin/subagents/src/extension/doctor.ts +4 -36
- package/dist/builtin/subagents/src/extension/fanout-child.ts +1 -17
- package/dist/builtin/subagents/src/extension/index.ts +18 -77
- package/dist/builtin/subagents/src/extension/notification-content.ts +1 -1
- package/dist/builtin/subagents/src/extension/prompt-guidance.ts +3 -3
- package/dist/builtin/subagents/src/extension/schemas.ts +3 -165
- package/dist/builtin/subagents/src/extension/startup-maintenance.ts +0 -2
- package/dist/builtin/subagents/src/extension/tool-description.ts +6 -16
- package/dist/builtin/subagents/src/intercom/intercom-bridge.ts +7 -3
- package/dist/builtin/subagents/src/intercom/result-intercom.ts +25 -68
- package/dist/builtin/subagents/src/intercom/supervisor-authorization.ts +9 -2
- package/dist/builtin/subagents/src/runs/{background → foreground}/completion-notification.ts +10 -5
- package/dist/builtin/subagents/src/runs/foreground/execution-updates.ts +0 -5
- package/dist/builtin/subagents/src/runs/foreground/execution.ts +1 -4
- package/dist/builtin/subagents/src/runs/foreground/inprocess-run-sync.ts +119 -80
- package/dist/builtin/subagents/src/runs/{background → foreground}/notify.ts +58 -22
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-context.ts +22 -50
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-input.ts +10 -173
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel-task.ts +9 -4
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-parallel.ts +11 -2
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-runtime.ts +0 -5
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-single.ts +39 -22
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-status.ts +36 -16
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-types.ts +2 -19
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-worktree.ts +1 -14
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor.ts +150 -69
- package/dist/builtin/subagents/src/runs/inprocess/index.ts +1 -1
- package/dist/builtin/subagents/src/runs/inprocess/runner.ts +348 -94
- package/dist/builtin/subagents/src/runs/inprocess/runtime-support/nested-api.ts +0 -7
- package/dist/builtin/subagents/src/runs/inprocess/runtime-support/nested-core.ts +0 -10
- package/dist/builtin/subagents/src/runs/inprocess/runtime-support/nested-projection.ts +3 -110
- package/dist/builtin/subagents/src/runs/inprocess/runtime-support/nested-sanitize.ts +1 -7
- package/dist/builtin/subagents/src/runs/shared/intercom-group.ts +23 -7
- package/dist/builtin/subagents/src/runs/shared/parallel-utils.ts +0 -86
- package/dist/builtin/subagents/src/runs/shared/subagent-control.ts +1 -1
- package/dist/builtin/subagents/src/runs/shared/worktree.ts +7 -2
- package/dist/builtin/subagents/src/shared/formatters.ts +5 -61
- package/dist/builtin/subagents/src/shared/model-resolution.ts +78 -0
- package/dist/builtin/subagents/src/shared/settings.ts +14 -350
- package/dist/builtin/subagents/src/shared/status-format.ts +4 -11
- package/dist/builtin/subagents/src/shared/types-config.ts +30 -31
- package/dist/builtin/subagents/src/shared/types-depth.ts +30 -56
- package/dist/builtin/subagents/src/shared/types-nested.ts +127 -0
- package/dist/builtin/subagents/src/shared/types-results.ts +11 -66
- package/dist/builtin/subagents/src/shared/types-runtime.ts +0 -10
- package/dist/builtin/subagents/src/shared/types.ts +1 -1
- package/dist/builtin/subagents/src/shared/utils.ts +6 -109
- package/dist/builtin/subagents/src/slash/bridge-settlement.ts +87 -0
- package/dist/builtin/subagents/src/slash/prompt-template-bridge.ts +47 -7
- package/dist/builtin/subagents/src/slash/slash-bridge.ts +27 -7
- package/dist/builtin/subagents/src/slash/slash-commands.ts +44 -99
- package/dist/builtin/subagents/src/slash/slash-live-state.ts +1 -92
- package/dist/builtin/subagents/src/tui/render-event-formatting.ts +2 -285
- package/dist/builtin/subagents/src/tui/render-layout.ts +4 -4
- package/dist/builtin/subagents/src/tui/render-progress.ts +89 -0
- package/dist/builtin/subagents/src/tui/render-result-compact.ts +43 -71
- package/dist/builtin/subagents/src/tui/render-result.ts +41 -99
- package/dist/builtin/subagents/src/tui/render-stable-output.ts +1 -39
- package/dist/builtin/subagents/src/tui/render.ts +0 -2
- package/dist/builtin/web-access/CHANGELOG.md +14 -0
- package/dist/builtin/web-access/chrome-cookies.ts +3 -2
- package/dist/builtin/web-access/github-api.ts +7 -6
- package/dist/builtin/web-access/github-extract.ts +2 -1
- package/dist/builtin/web-access/package.json +3 -3
- package/dist/builtin/web-access/subprocess.ts +3 -1
- package/dist/builtin/web-access/summary-review.ts +2 -2
- package/dist/builtin/web-access/web-search-features.ts +38 -22
- package/dist/builtin/web-access/web-search-summary.ts +2 -2
- package/dist/builtin/workflows/CHANGELOG.md +57 -0
- package/dist/builtin/workflows/README.md +44 -4
- package/dist/builtin/workflows/builtin/open-claude-design-utils.ts +3 -0
- package/dist/builtin/workflows/builtin/ralph-models.ts +25 -20
- package/dist/builtin/workflows/builtin/shared-prompts.ts +5 -2
- package/dist/builtin/workflows/package.json +2 -2
- package/dist/builtin/workflows/src/durable/backend.ts +29 -1
- package/dist/builtin/workflows/src/durable/completed-catalog-stage-groups.ts +123 -28
- package/dist/builtin/workflows/src/durable/completed-catalog.ts +230 -23
- package/dist/builtin/workflows/src/durable/completed-subtree.ts +22 -7
- package/dist/builtin/workflows/src/durable/dbos-backend.ts +42 -24
- package/dist/builtin/workflows/src/durable/dbos-envelope.ts +2 -1
- package/dist/builtin/workflows/src/durable/dbos-metadata.ts +4 -0
- package/dist/builtin/workflows/src/durable/local-command.ts +2 -1
- package/dist/builtin/workflows/src/durable/run-timing.ts +28 -7
- package/dist/builtin/workflows/src/durable/scoped-backend.ts +4 -0
- package/dist/builtin/workflows/src/durable/targeted-inspection.ts +110 -0
- package/dist/builtin/workflows/src/durable/types.ts +17 -1
- package/dist/builtin/workflows/src/durable/workflow-child-result.ts +3 -1
- package/dist/builtin/workflows/src/engine/primitives/workflow.ts +1 -1
- package/dist/builtin/workflows/src/engine/run-durable-finalize.ts +10 -2
- package/dist/builtin/workflows/src/engine/run-durable-stage-session.ts +2 -2
- package/dist/builtin/workflows/src/engine/run-durable-topology.ts +9 -2
- package/dist/builtin/workflows/src/engine/runtime.ts +19 -2
- package/dist/builtin/workflows/src/extension/atomic-stage-session.ts +7 -1
- package/dist/builtin/workflows/src/extension/companions.ts +1 -1
- package/dist/builtin/workflows/src/extension/extension-runtime-state.ts +3 -0
- package/dist/builtin/workflows/src/extension/index.bundle.mjs +1624 -596
- package/dist/builtin/workflows/src/extension/lifecycle-notifications.ts +31 -3
- package/dist/builtin/workflows/src/extension/mcp.ts +13 -2
- package/dist/builtin/workflows/src/extension/render-result.ts +1 -0
- package/dist/builtin/workflows/src/extension/runtime-durable-resume.ts +6 -0
- package/dist/builtin/workflows/src/extension/ui-surface.ts +9 -20
- package/dist/builtin/workflows/src/extension/wiring.ts +33 -6
- package/dist/builtin/workflows/src/extension/workflow-command-registration.ts +6 -1
- package/dist/builtin/workflows/src/extension/workflow-ports.ts +14 -6
- package/dist/builtin/workflows/src/extension/workflow-prompts.ts +11 -6
- package/dist/builtin/workflows/src/extension/workflow-run-control-command.ts +8 -0
- package/dist/builtin/workflows/src/extension/workflow-targets.ts +18 -10
- package/dist/builtin/workflows/src/extension/workflow-tool-control.ts +2 -0
- package/dist/builtin/workflows/src/extension/workflow-tool-inspection.ts +31 -16
- package/dist/builtin/workflows/src/extension/workflow-tool-send.ts +75 -3
- package/dist/builtin/workflows/src/extension/workflow-tool.ts +53 -6
- package/dist/builtin/workflows/src/intercom/intercom-routing.ts +12 -6
- package/dist/builtin/workflows/src/intercom/result-intercom.ts +35 -4
- package/dist/builtin/workflows/src/runs/background/run-inspect.ts +5 -1
- package/dist/builtin/workflows/src/runs/background/status.ts +15 -0
- package/dist/builtin/workflows/src/runs/foreground/executor-abort.ts +11 -3
- package/dist/builtin/workflows/src/runs/foreground/executor-child-boundary.ts +2 -1
- package/dist/builtin/workflows/src/runs/foreground/executor-exit-manager.ts +26 -2
- package/dist/builtin/workflows/src/runs/foreground/executor-run-finalizers.ts +3 -2
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-call.ts +94 -60
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-context.ts +1 -1
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-control.ts +7 -7
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-factory.ts +25 -4
- package/dist/builtin/workflows/src/runs/foreground/executor-stage-types.ts +4 -1
- package/dist/builtin/workflows/src/runs/foreground/executor-types.ts +2 -0
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-controller.ts +142 -4
- package/dist/builtin/workflows/src/runs/foreground/stage-runner-types.ts +2 -0
- package/dist/builtin/workflows/src/runs/foreground/stage-session-heartbeat.ts +88 -0
- package/dist/builtin/workflows/src/runs/shared/worktree-git-runner.ts +5 -2
- package/dist/builtin/workflows/src/runs/shared/worktree-setup.ts +2 -0
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +5 -3
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.ts +5 -3
- package/dist/builtin/workflows/src/shared/graph-store-snapshot.ts +34 -2
- package/dist/builtin/workflows/src/shared/persistence-restore-helpers.ts +23 -6
- package/dist/builtin/workflows/src/shared/stage-ui-broker.ts +10 -4
- package/dist/builtin/workflows/src/shared/store-public-types.ts +4 -2
- package/dist/builtin/workflows/src/shared/store-types.ts +1 -1
- package/dist/builtin/workflows/src/shared/workflow-artifact-env.ts +21 -0
- package/dist/builtin/workflows/src/shared/workflow-artifacts.ts +2 -5
- package/dist/builtin/workflows/src/tui/dispatch-confirm.ts +37 -2
- package/dist/builtin/workflows/src/tui/graph-view-constants.ts +0 -15
- package/dist/builtin/workflows/src/tui/graph-view-graph-render.ts +38 -47
- package/dist/builtin/workflows/src/tui/graph-view-input.ts +48 -45
- package/dist/builtin/workflows/src/tui/graph-view-layout.ts +266 -0
- package/dist/builtin/workflows/src/tui/graph-view-render-helpers.ts +1 -86
- package/dist/builtin/workflows/src/tui/graph-view-render.ts +209 -91
- package/dist/builtin/workflows/src/tui/graph-view-state.ts +5 -7
- package/dist/builtin/workflows/src/tui/graph-view-types.ts +13 -7
- package/dist/builtin/workflows/src/tui/inline-form-editor.ts +8 -6
- package/dist/builtin/workflows/src/tui/inline-form-overlay.ts +2 -1
- package/dist/builtin/workflows/src/tui/inputs-overlay.ts +7 -4
- package/dist/builtin/workflows/src/tui/inputs-picker-input.ts +66 -0
- package/dist/builtin/workflows/src/tui/keybindings-adapter.ts +1 -0
- package/dist/builtin/workflows/src/tui/node-card.ts +1 -1
- package/dist/builtin/workflows/src/tui/overlay-adapter.ts +18 -46
- package/dist/builtin/workflows/src/tui/overlay-terminal-modes.ts +15 -26
- package/dist/builtin/workflows/src/tui/run-detail.ts +25 -12
- package/dist/builtin/workflows/src/tui/session-overlays.ts +5 -2
- package/dist/builtin/workflows/src/tui/session-picker.ts +27 -0
- package/dist/builtin/workflows/src/tui/stage-chat-view-footer-status.ts +5 -14
- package/dist/builtin/workflows/src/tui/stage-chat-view-input.ts +8 -7
- package/dist/builtin/workflows/src/tui/stage-chat-view-state.ts +12 -3
- package/dist/builtin/workflows/src/tui/stage-chat-view-types.ts +1 -11
- package/dist/builtin/workflows/src/tui/stage-chat-view.ts +0 -8
- package/dist/builtin/workflows/src/tui/status-list.ts +1 -0
- package/dist/builtin/workflows/src/tui/store-widget-installer.ts +2 -6
- package/dist/builtin/workflows/src/tui/workflow-attach-pane-types.ts +0 -15
- package/dist/builtin/workflows/src/tui/workflow-attach-pane.ts +2 -26
- package/dist/builtin/workflows/src/tui/workflow-resume-selector.ts +1 -0
- package/dist/builtin/workflows/src/tui/workflow-status.ts +3 -3
- package/dist/bun/split-loader.js +2 -0
- package/dist/bun/split-loader.js.map +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +6 -2
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/auth-check.d.ts +35 -0
- package/dist/cli/auth-check.d.ts.map +1 -0
- package/dist/cli/auth-check.js +100 -0
- package/dist/cli/auth-check.js.map +1 -0
- package/dist/cli/auth-command.d.ts +27 -0
- package/dist/cli/auth-command.d.ts.map +1 -0
- package/dist/cli/auth-command.js +150 -0
- package/dist/cli/auth-command.js.map +1 -0
- package/dist/cli/config-selector.js +2 -2
- package/dist/cli/config-selector.js.map +1 -1
- package/dist/cli/credential-print.d.ts +18 -23
- package/dist/cli/credential-print.d.ts.map +1 -1
- package/dist/cli/credential-print.js +42 -88
- package/dist/cli/credential-print.js.map +1 -1
- package/dist/cli/experimental/auth.d.ts +16 -0
- package/dist/cli/experimental/auth.d.ts.map +1 -0
- package/dist/cli/experimental/auth.js +13 -0
- package/dist/cli/experimental/auth.js.map +1 -0
- package/dist/cli/experimental/cli.d.ts +6 -0
- package/dist/cli/experimental/cli.d.ts.map +1 -0
- package/dist/cli/experimental/cli.js +5 -0
- package/dist/cli/experimental/cli.js.map +1 -0
- package/dist/cli/experimental/command-options.d.ts +17 -0
- package/dist/cli/experimental/command-options.d.ts.map +1 -0
- package/dist/cli/experimental/command-options.js +35 -0
- package/dist/cli/experimental/command-options.js.map +1 -0
- package/dist/cli/experimental/command.d.ts +63 -0
- package/dist/cli/experimental/command.d.ts.map +1 -0
- package/dist/cli/experimental/command.js +127 -0
- package/dist/cli/experimental/command.js.map +1 -0
- package/dist/cli/experimental/commands/client.d.ts +13 -0
- package/dist/cli/experimental/commands/client.d.ts.map +1 -0
- package/dist/cli/experimental/commands/client.js +25 -0
- package/dist/cli/experimental/commands/client.js.map +1 -0
- package/dist/cli/experimental/commands/pi.d.ts +15 -0
- package/dist/cli/experimental/commands/pi.d.ts.map +1 -0
- package/dist/cli/experimental/commands/pi.js +28 -0
- package/dist/cli/experimental/commands/pi.js.map +1 -0
- package/dist/cli/experimental/commands/server.d.ts +13 -0
- package/dist/cli/experimental/commands/server.d.ts.map +1 -0
- package/dist/cli/experimental/commands/server.js +25 -0
- package/dist/cli/experimental/commands/server.js.map +1 -0
- package/dist/cli/experimental/transport-address.d.ts +10 -0
- package/dist/cli/experimental/transport-address.d.ts.map +1 -0
- package/dist/cli/experimental/transport-address.js +38 -0
- package/dist/cli/experimental/transport-address.js.map +1 -0
- package/dist/cli/session-picker.js +2 -2
- package/dist/cli/session-picker.js.map +1 -1
- package/dist/cli/startup-ui.d.ts.map +1 -1
- package/dist/cli/startup-ui.js +4 -10
- package/dist/cli/startup-ui.js.map +1 -1
- package/dist/cli.js +2 -0
- package/dist/cli.js.map +1 -1
- package/dist/client/index.d.ts +3 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +3 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/remote-session.d.ts +64 -0
- package/dist/client/remote-session.d.ts.map +1 -0
- package/dist/client/remote-session.js +351 -0
- package/dist/client/remote-session.js.map +1 -0
- package/dist/client/transcript.d.ts +12 -0
- package/dist/client/transcript.d.ts.map +1 -0
- package/dist/client/transcript.js +98 -0
- package/dist/client/transcript.js.map +1 -0
- package/dist/core/agent-session-auto-compaction.d.ts +17 -13
- package/dist/core/agent-session-auto-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-auto-compaction.js +146 -64
- package/dist/core/agent-session-auto-compaction.js.map +1 -1
- package/dist/core/agent-session-bash.d.ts.map +1 -1
- package/dist/core/agent-session-bash.js +2 -0
- package/dist/core/agent-session-bash.js.map +1 -1
- package/dist/core/agent-session-compaction.d.ts +3 -6
- package/dist/core/agent-session-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-compaction.js +64 -28
- package/dist/core/agent-session-compaction.js.map +1 -1
- package/dist/core/agent-session-events.d.ts +1 -11
- package/dist/core/agent-session-events.d.ts.map +1 -1
- package/dist/core/agent-session-events.js +28 -25
- package/dist/core/agent-session-events.js.map +1 -1
- package/dist/core/agent-session-export.d.ts.map +1 -1
- package/dist/core/agent-session-export.js +2 -1
- package/dist/core/agent-session-export.js.map +1 -1
- package/dist/core/agent-session-extension-bindings.d.ts.map +1 -1
- package/dist/core/agent-session-extension-bindings.js +4 -2
- package/dist/core/agent-session-extension-bindings.js.map +1 -1
- package/dist/core/agent-session-methods.d.ts +14 -6
- 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-models.d.ts +1 -0
- package/dist/core/agent-session-models.d.ts.map +1 -1
- package/dist/core/agent-session-models.js +11 -4
- package/dist/core/agent-session-models.js.map +1 -1
- package/dist/core/agent-session-post-tool-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-post-tool-compaction.js +22 -6
- package/dist/core/agent-session-post-tool-compaction.js.map +1 -1
- package/dist/core/agent-session-prompt.d.ts.map +1 -1
- package/dist/core/agent-session-prompt.js +5 -0
- package/dist/core/agent-session-prompt.js.map +1 -1
- package/dist/core/agent-session-runtime-auth.d.ts.map +1 -1
- package/dist/core/agent-session-runtime-auth.js +3 -0
- package/dist/core/agent-session-runtime-auth.js.map +1 -1
- package/dist/core/agent-session-summary.d.ts +21 -0
- package/dist/core/agent-session-summary.d.ts.map +1 -0
- package/dist/core/agent-session-summary.js +156 -0
- package/dist/core/agent-session-summary.js.map +1 -0
- package/dist/core/agent-session-tool-hooks.d.ts.map +1 -1
- package/dist/core/agent-session-tool-hooks.js +25 -14
- package/dist/core/agent-session-tool-hooks.js.map +1 -1
- package/dist/core/agent-session-tool-registry.d.ts.map +1 -1
- package/dist/core/agent-session-tool-registry.js +4 -4
- package/dist/core/agent-session-tool-registry.js.map +1 -1
- package/dist/core/agent-session-transfer.d.ts.map +1 -1
- package/dist/core/agent-session-transfer.js +0 -2
- package/dist/core/agent-session-transfer.js.map +1 -1
- package/dist/core/agent-session-tree.d.ts.map +1 -1
- package/dist/core/agent-session-tree.js +6 -0
- package/dist/core/agent-session-tree.js.map +1 -1
- package/dist/core/agent-session-types.d.ts +2 -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/agent-session.d.ts +13 -3
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +38 -5
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/atomic-guide-command.d.ts.map +1 -1
- package/dist/core/atomic-guide-command.js +4 -5
- package/dist/core/atomic-guide-command.js.map +1 -1
- package/dist/core/auth-storage.d.ts +18 -1
- package/dist/core/auth-storage.d.ts.map +1 -1
- package/dist/core/auth-storage.js +83 -0
- package/dist/core/auth-storage.js.map +1 -1
- package/dist/core/bash-executor.d.ts +5 -0
- package/dist/core/bash-executor.d.ts.map +1 -1
- package/dist/core/bash-executor.js +43 -19
- package/dist/core/bash-executor.js.map +1 -1
- package/dist/core/builtin-packages.d.ts.map +1 -1
- package/dist/core/builtin-packages.js +6 -0
- package/dist/core/builtin-packages.js.map +1 -1
- package/dist/core/codex-fast-mode.d.ts.map +1 -1
- package/dist/core/codex-fast-mode.js +8 -3
- package/dist/core/codex-fast-mode.js.map +1 -1
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
- package/dist/core/compaction/branch-summarization.js +1 -0
- package/dist/core/compaction/branch-summarization.js.map +1 -1
- package/dist/core/compaction/index.d.ts +1 -0
- package/dist/core/compaction/index.d.ts.map +1 -1
- package/dist/core/compaction/index.js +1 -0
- package/dist/core/compaction/index.js.map +1 -1
- package/dist/core/compaction/session-summarization.d.ts +41 -0
- package/dist/core/compaction/session-summarization.d.ts.map +1 -0
- package/dist/core/compaction/session-summarization.js +97 -0
- package/dist/core/compaction/session-summarization.js.map +1 -0
- package/dist/core/exec.d.ts.map +1 -1
- package/dist/core/exec.js +4 -3
- package/dist/core/exec.js.map +1 -1
- package/dist/core/extensions/agent-events.d.ts +0 -1
- package/dist/core/extensions/agent-events.d.ts.map +1 -1
- package/dist/core/extensions/agent-events.js.map +1 -1
- package/dist/core/extensions/api-types.d.ts +5 -3
- package/dist/core/extensions/api-types.d.ts.map +1 -1
- package/dist/core/extensions/api-types.js.map +1 -1
- package/dist/core/extensions/context-types.d.ts +15 -0
- package/dist/core/extensions/context-types.d.ts.map +1 -1
- package/dist/core/extensions/context-types.js.map +1 -1
- package/dist/core/extensions/event-results.d.ts +5 -0
- package/dist/core/extensions/event-results.d.ts.map +1 -1
- package/dist/core/extensions/event-results.js.map +1 -1
- package/dist/core/extensions/index.d.ts +2 -1
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js +1 -0
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/loader-api.d.ts.map +1 -1
- package/dist/core/extensions/loader-api.js +14 -1
- package/dist/core/extensions/loader-api.js.map +1 -1
- package/dist/core/extensions/loader-discovery.d.ts.map +1 -1
- package/dist/core/extensions/loader-discovery.js +3 -23
- package/dist/core/extensions/loader-discovery.js.map +1 -1
- package/dist/core/extensions/loader-runtime.d.ts.map +1 -1
- package/dist/core/extensions/loader-runtime.js +20 -3
- package/dist/core/extensions/loader-runtime.js.map +1 -1
- package/dist/core/extensions/loader-virtual-modules.d.ts.map +1 -1
- package/dist/core/extensions/loader-virtual-modules.js +7 -1
- package/dist/core/extensions/loader-virtual-modules.js.map +1 -1
- package/dist/core/extensions/message-types.d.ts +6 -0
- package/dist/core/extensions/message-types.d.ts.map +1 -1
- package/dist/core/extensions/message-types.js.map +1 -1
- package/dist/core/extensions/provider-types.d.ts +9 -3
- package/dist/core/extensions/provider-types.d.ts.map +1 -1
- package/dist/core/extensions/provider-types.js.map +1 -1
- package/dist/core/extensions/runner-registries.d.ts +2 -1
- package/dist/core/extensions/runner-registries.d.ts.map +1 -1
- package/dist/core/extensions/runner-registries.js +3 -0
- package/dist/core/extensions/runner-registries.js.map +1 -1
- package/dist/core/extensions/runner-ui.d.ts.map +1 -1
- package/dist/core/extensions/runner-ui.js +1 -0
- package/dist/core/extensions/runner-ui.js.map +1 -1
- package/dist/core/extensions/runner.d.ts +2 -1
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +6 -2
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/runtime-types.d.ts +4 -1
- package/dist/core/extensions/runtime-types.d.ts.map +1 -1
- package/dist/core/extensions/runtime-types.js.map +1 -1
- package/dist/core/extensions/stale-context.d.ts +5 -0
- package/dist/core/extensions/stale-context.d.ts.map +1 -0
- package/dist/core/extensions/stale-context.js +11 -0
- package/dist/core/extensions/stale-context.js.map +1 -0
- package/dist/core/extensions/ui-types.d.ts +16 -11
- package/dist/core/extensions/ui-types.d.ts.map +1 -1
- package/dist/core/extensions/ui-types.js.map +1 -1
- package/dist/core/footer-data-provider.d.ts.map +1 -1
- package/dist/core/footer-data-provider.js +3 -2
- package/dist/core/footer-data-provider.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/intercom-runtime-group.d.ts +13 -0
- package/dist/core/intercom-runtime-group.d.ts.map +1 -0
- package/dist/core/intercom-runtime-group.js +23 -0
- package/dist/core/intercom-runtime-group.js.map +1 -0
- package/dist/core/keybindings.d.ts +44 -4
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/model-config.d.ts +39 -5
- package/dist/core/model-config.d.ts.map +1 -1
- package/dist/core/model-config.js +6 -0
- package/dist/core/model-config.js.map +1 -1
- package/dist/core/model-registry.d.ts +12 -5
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +20 -12
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-resolver-cli.d.ts.map +1 -1
- package/dist/core/model-resolver-cli.js +46 -14
- package/dist/core/model-resolver-cli.js.map +1 -1
- package/dist/core/model-resolver-defaults.d.ts.map +1 -1
- package/dist/core/model-resolver-defaults.js +2 -0
- package/dist/core/model-resolver-defaults.js.map +1 -1
- package/dist/core/model-resolver-scope.d.ts +2 -0
- package/dist/core/model-resolver-scope.d.ts.map +1 -1
- package/dist/core/model-resolver-scope.js +12 -9
- package/dist/core/model-resolver-scope.js.map +1 -1
- package/dist/core/model-resolver.d.ts +1 -1
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js +1 -1
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/model-runtime-snapshot.d.ts +10 -0
- package/dist/core/model-runtime-snapshot.d.ts.map +1 -1
- package/dist/core/model-runtime-snapshot.js +14 -1
- package/dist/core/model-runtime-snapshot.js.map +1 -1
- package/dist/core/model-runtime-streaming.d.ts +3 -1
- package/dist/core/model-runtime-streaming.d.ts.map +1 -1
- package/dist/core/model-runtime-streaming.js +16 -0
- package/dist/core/model-runtime-streaming.js.map +1 -1
- package/dist/core/model-runtime-types.d.ts +2 -0
- package/dist/core/model-runtime-types.d.ts.map +1 -1
- package/dist/core/model-runtime-types.js.map +1 -1
- package/dist/core/model-runtime.d.ts +37 -10
- package/dist/core/model-runtime.d.ts.map +1 -1
- package/dist/core/model-runtime.js +312 -113
- package/dist/core/model-runtime.js.map +1 -1
- package/dist/core/oauth-login.d.ts.map +1 -1
- package/dist/core/oauth-login.js +2 -1
- package/dist/core/oauth-login.js.map +1 -1
- package/dist/core/openai-responses-payload-sanitizer.d.ts.map +1 -1
- package/dist/core/openai-responses-payload-sanitizer.js +18 -2
- package/dist/core/openai-responses-payload-sanitizer.js.map +1 -1
- package/dist/core/package-manager-git.d.ts.map +1 -1
- package/dist/core/package-manager-git.js +56 -10
- package/dist/core/package-manager-git.js.map +1 -1
- package/dist/core/package-manager-manifest.d.ts +1 -1
- package/dist/core/package-manager-manifest.d.ts.map +1 -1
- package/dist/core/package-manager-manifest.js +19 -9
- package/dist/core/package-manager-manifest.js.map +1 -1
- package/dist/core/package-manager-resource-collector.js.map +1 -1
- package/dist/core/package-manager-resource-files.d.ts.map +1 -1
- package/dist/core/package-manager-resource-files.js +1 -2
- package/dist/core/package-manager-resource-files.js.map +1 -1
- package/dist/core/provider-composer-internal.d.ts +10 -2
- package/dist/core/provider-composer-internal.d.ts.map +1 -1
- package/dist/core/provider-composer-internal.js +7 -3
- package/dist/core/provider-composer-internal.js.map +1 -1
- package/dist/core/provider-composer.d.ts.map +1 -1
- package/dist/core/provider-composer.js +19 -12
- package/dist/core/provider-composer.js.map +1 -1
- package/dist/core/provider-display-names.d.ts.map +1 -1
- package/dist/core/provider-display-names.js +2 -0
- package/dist/core/provider-display-names.js.map +1 -1
- package/dist/core/remote-catalog-provider.d.ts.map +1 -1
- package/dist/core/remote-catalog-provider.js +77 -67
- package/dist/core/remote-catalog-provider.js.map +1 -1
- package/dist/core/resolve-config-value.d.ts.map +1 -1
- package/dist/core/resolve-config-value.js +3 -0
- package/dist/core/resolve-config-value.js.map +1 -1
- package/dist/core/resource-loader-context-files.d.ts.map +1 -1
- package/dist/core/resource-loader-context-files.js +13 -5
- package/dist/core/resource-loader-context-files.js.map +1 -1
- package/dist/core/runtime-credentials.d.ts +5 -5
- package/dist/core/runtime-credentials.d.ts.map +1 -1
- package/dist/core/runtime-credentials.js +8 -8
- package/dist/core/runtime-credentials.js.map +1 -1
- package/dist/core/session-manager-core.d.ts +3 -1
- package/dist/core/session-manager-core.d.ts.map +1 -1
- package/dist/core/session-manager-core.js +9 -1
- package/dist/core/session-manager-core.js.map +1 -1
- package/dist/core/session-manager-entries.d.ts +24 -1
- package/dist/core/session-manager-entries.d.ts.map +1 -1
- package/dist/core/session-manager-entries.js +48 -0
- package/dist/core/session-manager-entries.js.map +1 -1
- package/dist/core/session-manager-list.d.ts.map +1 -1
- package/dist/core/session-manager-list.js +13 -1
- package/dist/core/session-manager-list.js.map +1 -1
- package/dist/core/session-manager-types.d.ts +10 -1
- package/dist/core/session-manager-types.d.ts.map +1 -1
- package/dist/core/session-manager-types.js.map +1 -1
- package/dist/core/settings-manager-basic-accessors.d.ts +3 -0
- package/dist/core/settings-manager-basic-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-basic-accessors.js +5 -0
- package/dist/core/settings-manager-basic-accessors.js.map +1 -1
- package/dist/core/settings-manager-ui-accessors.d.ts +8 -1
- package/dist/core/settings-manager-ui-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-ui-accessors.js +31 -0
- package/dist/core/settings-manager-ui-accessors.js.map +1 -1
- package/dist/core/settings-manager.d.ts +2 -1
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/settings-merge.d.ts.map +1 -1
- package/dist/core/settings-merge.js +13 -16
- package/dist/core/settings-merge.js.map +1 -1
- package/dist/core/settings-types.d.ts +9 -0
- package/dist/core/settings-types.d.ts.map +1 -1
- package/dist/core/settings-types.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +2 -4
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/tools/ask-user-question/state/questionnaire-session.d.ts +2 -2
- package/dist/core/tools/ask-user-question/state/questionnaire-session.d.ts.map +1 -1
- package/dist/core/tools/ask-user-question/state/questionnaire-session.js +39 -2
- package/dist/core/tools/ask-user-question/state/questionnaire-session.js.map +1 -1
- package/dist/core/tools/bash-pty-native.d.ts.map +1 -1
- package/dist/core/tools/bash-pty-native.js +2 -1
- package/dist/core/tools/bash-pty-native.js.map +1 -1
- package/dist/core/tools/bash.d.ts +9 -15
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +36 -96
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/directory-tree.d.ts +11 -0
- package/dist/core/tools/directory-tree.d.ts.map +1 -1
- package/dist/core/tools/directory-tree.js +26 -0
- package/dist/core/tools/directory-tree.js.map +1 -1
- package/dist/core/tools/edit.d.ts +4 -0
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +12 -8
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/errno.d.ts +25 -0
- package/dist/core/tools/errno.d.ts.map +1 -0
- package/dist/core/tools/errno.js +29 -0
- package/dist/core/tools/errno.js.map +1 -0
- package/dist/core/tools/fetch-url.d.ts +12 -0
- package/dist/core/tools/fetch-url.d.ts.map +1 -1
- package/dist/core/tools/fetch-url.js +76 -10
- package/dist/core/tools/fetch-url.js.map +1 -1
- package/dist/core/tools/find.d.ts +8 -1
- package/dist/core/tools/find.d.ts.map +1 -1
- package/dist/core/tools/find.js +20 -15
- package/dist/core/tools/find.js.map +1 -1
- package/dist/core/tools/grep.d.ts.map +1 -1
- package/dist/core/tools/grep.js +5 -1
- package/dist/core/tools/grep.js.map +1 -1
- package/dist/core/tools/index.d.ts +7 -7
- package/dist/core/tools/index.d.ts.map +1 -1
- package/dist/core/tools/index.js +11 -11
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/tools/ls.d.ts +4 -0
- package/dist/core/tools/ls.d.ts.map +1 -1
- package/dist/core/tools/ls.js +5 -1
- package/dist/core/tools/ls.js.map +1 -1
- package/dist/core/tools/output-accumulator.d.ts +8 -1
- package/dist/core/tools/output-accumulator.d.ts.map +1 -1
- package/dist/core/tools/output-accumulator.js +50 -28
- package/dist/core/tools/output-accumulator.js.map +1 -1
- package/dist/core/tools/oversized-tool-result.d.ts.map +1 -1
- package/dist/core/tools/oversized-tool-result.js +129 -22
- package/dist/core/tools/oversized-tool-result.js.map +1 -1
- package/dist/core/tools/persisted-output-file.d.ts +80 -0
- package/dist/core/tools/persisted-output-file.d.ts.map +1 -0
- package/dist/core/tools/persisted-output-file.js +284 -0
- package/dist/core/tools/persisted-output-file.js.map +1 -0
- package/dist/core/tools/read.d.ts +10 -0
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js +20 -8
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/search.d.ts +4 -0
- package/dist/core/tools/search.d.ts.map +1 -1
- package/dist/core/tools/search.js +5 -1
- package/dist/core/tools/search.js.map +1 -1
- package/dist/core/tools/session-temp-cleanup.d.ts +133 -0
- package/dist/core/tools/session-temp-cleanup.d.ts.map +1 -0
- package/dist/core/tools/session-temp-cleanup.js +669 -0
- package/dist/core/tools/session-temp-cleanup.js.map +1 -0
- package/dist/core/tools/session-temp-dir.d.ts +116 -0
- package/dist/core/tools/session-temp-dir.d.ts.map +1 -0
- package/dist/core/tools/session-temp-dir.js +408 -0
- package/dist/core/tools/session-temp-dir.js.map +1 -0
- package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
- package/dist/core/tools/tool-definition-wrapper.js +2 -0
- package/dist/core/tools/tool-definition-wrapper.js.map +1 -1
- package/dist/core/tools/tool-limits.d.ts +11 -0
- package/dist/core/tools/tool-limits.d.ts.map +1 -1
- package/dist/core/tools/tool-limits.js +11 -0
- package/dist/core/tools/tool-limits.js.map +1 -1
- package/dist/core/tools/windows-directory-security.d.ts +82 -0
- package/dist/core/tools/windows-directory-security.d.ts.map +1 -0
- package/dist/core/tools/windows-directory-security.js +238 -0
- package/dist/core/tools/windows-directory-security.js.map +1 -0
- package/dist/core/tools/write.d.ts +4 -0
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +8 -4
- package/dist/core/tools/write.js.map +1 -1
- package/dist/core/trust-manager.js +1 -1
- package/dist/core/trust-manager.js.map +1 -1
- package/dist/core/usage-totals.js +1 -1
- package/dist/core/usage-totals.js.map +1 -1
- package/dist/extensions/llama/huggingface-ui.d.ts +1 -1
- package/dist/extensions/llama/huggingface-ui.d.ts.map +1 -1
- package/dist/extensions/llama/huggingface-ui.js +6 -5
- package/dist/extensions/llama/huggingface-ui.js.map +1 -1
- package/dist/extensions/llama/index.d.ts.map +1 -1
- package/dist/extensions/llama/index.js +11 -2
- package/dist/extensions/llama/index.js.map +1 -1
- package/dist/extensions/llama/provider.d.ts.map +1 -1
- package/dist/extensions/llama/provider.js +24 -8
- package/dist/extensions/llama/provider.js.map +1 -1
- package/dist/extensions/llama/ui.d.ts.map +1 -1
- package/dist/extensions/llama/ui.js +5 -2
- package/dist/extensions/llama/ui.js.map +1 -1
- package/dist/index-extensions.d.ts +2 -2
- package/dist/index-extensions.d.ts.map +1 -1
- package/dist/index-extensions.js +1 -1
- package/dist/index-extensions.js.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/main-runtime-api-key.d.ts +2 -2
- package/dist/main-runtime-api-key.d.ts.map +1 -1
- package/dist/main-runtime-api-key.js +7 -2
- package/dist/main-runtime-api-key.js.map +1 -1
- package/dist/main-session.js +2 -2
- package/dist/main-session.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +130 -26
- package/dist/main.js.map +1 -1
- package/dist/modes/index.d.ts +1 -0
- package/dist/modes/index.d.ts.map +1 -1
- package/dist/modes/index.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts +6 -2
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +18 -5
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts +1 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.js +5 -4
- package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts +2 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.js +3 -2
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/chat-message-renderer.d.ts +17 -7
- package/dist/modes/interactive/components/chat-message-renderer.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-message-renderer.js +35 -69
- package/dist/modes/interactive/components/chat-message-renderer.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-actions.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-actions.js +11 -3
- package/dist/modes/interactive/components/chat-session-host-actions.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-events.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-events.js +25 -15
- package/dist/modes/interactive/components/chat-session-host-events.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-rendering.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-rendering.js +9 -4
- package/dist/modes/interactive/components/chat-session-host-rendering.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-state.d.ts +2 -0
- package/dist/modes/interactive/components/chat-session-host-state.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host-state.js +2 -0
- package/dist/modes/interactive/components/chat-session-host-state.js.map +1 -1
- package/dist/modes/interactive/components/chat-session-host.d.ts +9 -0
- package/dist/modes/interactive/components/chat-session-host.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-session-host.js +14 -0
- package/dist/modes/interactive/components/chat-session-host.js.map +1 -1
- package/dist/modes/interactive/components/chat-transcript.d.ts +32 -0
- package/dist/modes/interactive/components/chat-transcript.d.ts.map +1 -1
- package/dist/modes/interactive/components/chat-transcript.js +173 -5
- package/dist/modes/interactive/components/chat-transcript.js.map +1 -1
- package/dist/modes/interactive/components/config-selector-list.d.ts +1 -1
- package/dist/modes/interactive/components/config-selector-list.d.ts.map +1 -1
- package/dist/modes/interactive/components/config-selector-list.js +9 -8
- package/dist/modes/interactive/components/config-selector-list.js.map +1 -1
- package/dist/modes/interactive/components/custom-editor.d.ts +1 -1
- package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-editor.js +32 -10
- package/dist/modes/interactive/components/custom-editor.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts +2 -1
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js +3 -2
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/extension-editor.d.ts +1 -1
- package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-editor.js +3 -2
- package/dist/modes/interactive/components/extension-editor.js.map +1 -1
- package/dist/modes/interactive/components/extension-input.d.ts +1 -1
- package/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-input.js +1 -0
- package/dist/modes/interactive/components/extension-input.js.map +1 -1
- package/dist/modes/interactive/components/extension-selector.d.ts +1 -1
- package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-selector.js +4 -0
- package/dist/modes/interactive/components/extension-selector.js.map +1 -1
- package/dist/modes/interactive/components/fast-mode-selector.d.ts +1 -1
- package/dist/modes/interactive/components/fast-mode-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/fast-mode-selector.js +7 -5
- package/dist/modes/interactive/components/fast-mode-selector.js.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.d.ts +1 -1
- package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.js +3 -0
- package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
- package/dist/modes/interactive/components/footer.js +2 -2
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/host-input-form.d.ts +1 -1
- package/dist/modes/interactive/components/host-input-form.d.ts.map +1 -1
- package/dist/modes/interactive/components/host-input-form.js +6 -5
- package/dist/modes/interactive/components/host-input-form.js.map +1 -1
- package/dist/modes/interactive/components/host-session-picker.d.ts.map +1 -1
- package/dist/modes/interactive/components/host-session-picker.js +1 -0
- package/dist/modes/interactive/components/host-session-picker.js.map +1 -1
- package/dist/modes/interactive/components/index.d.ts +1 -1
- package/dist/modes/interactive/components/index.d.ts.map +1 -1
- package/dist/modes/interactive/components/index.js.map +1 -1
- package/dist/modes/interactive/components/login-dialog.d.ts +1 -1
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
- package/dist/modes/interactive/components/login-dialog.js +2 -1
- package/dist/modes/interactive/components/login-dialog.js.map +1 -1
- package/dist/modes/interactive/components/markdown-transform.d.ts +3 -0
- package/dist/modes/interactive/components/markdown-transform.d.ts.map +1 -0
- package/dist/modes/interactive/components/markdown-transform.js +19 -0
- package/dist/modes/interactive/components/markdown-transform.js.map +1 -0
- package/dist/modes/interactive/components/mermaid.d.ts +11 -0
- package/dist/modes/interactive/components/mermaid.d.ts.map +1 -0
- package/dist/modes/interactive/components/mermaid.js +81 -0
- package/dist/modes/interactive/components/mermaid.js.map +1 -0
- package/dist/modes/interactive/components/model-selector.d.ts +2 -2
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js +9 -6
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts +1 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.js +3 -2
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts +6 -2
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +39 -13
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/session-selector-delete.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector-delete.js +2 -1
- package/dist/modes/interactive/components/session-selector-delete.js.map +1 -1
- package/dist/modes/interactive/components/session-selector-list.d.ts +1 -1
- package/dist/modes/interactive/components/session-selector-list.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector-list.js +41 -15
- package/dist/modes/interactive/components/session-selector-list.js.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.js +1 -1
- package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js +3 -3
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-handlers.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-handlers.js +9 -0
- package/dist/modes/interactive/components/settings-selector-handlers.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-items.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-items.js +21 -0
- package/dist/modes/interactive/components/settings-selector-items.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-submenus.d.ts +3 -3
- package/dist/modes/interactive/components/settings-selector-submenus.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-submenus.js +6 -1
- package/dist/modes/interactive/components/settings-selector-submenus.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-types.d.ts +8 -1
- package/dist/modes/interactive/components/settings-selector-types.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-types.js.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts +2 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.js +3 -2
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts +2 -0
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +50 -27
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector-component.d.ts +1 -1
- package/dist/modes/interactive/components/tree-selector-component.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector-component.js +2 -3
- package/dist/modes/interactive/components/tree-selector-component.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector-content.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector-content.js +6 -0
- package/dist/modes/interactive/components/tree-selector-content.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector-help.d.ts +1 -1
- package/dist/modes/interactive/components/tree-selector-help.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector-help.js +3 -1
- package/dist/modes/interactive/components/tree-selector-help.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector-label-input.d.ts +1 -1
- package/dist/modes/interactive/components/tree-selector-label-input.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector-label-input.js +1 -0
- package/dist/modes/interactive/components/tree-selector-label-input.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector-list.d.ts +1 -1
- package/dist/modes/interactive/components/tree-selector-list.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector-list.js +3 -0
- package/dist/modes/interactive/components/tree-selector-list.js.map +1 -1
- package/dist/modes/interactive/components/trust-selector.d.ts +1 -1
- package/dist/modes/interactive/components/trust-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/trust-selector.js +4 -0
- package/dist/modes/interactive/components/trust-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.js +4 -0
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message.d.ts +4 -1
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message.js +10 -2
- package/dist/modes/interactive/components/user-message.js.map +1 -1
- package/dist/modes/interactive/external-editor.d.ts.map +1 -1
- package/dist/modes/interactive/external-editor.js +2 -1
- package/dist/modes/interactive/external-editor.js.map +1 -1
- package/dist/modes/interactive/interactive-agent-events.js +36 -18
- package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
- package/dist/modes/interactive/interactive-auth-login.js +9 -2
- package/dist/modes/interactive/interactive-auth-login.js.map +1 -1
- package/dist/modes/interactive/interactive-auth-routing.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-auth-routing.js +5 -1
- package/dist/modes/interactive/interactive-auth-routing.js.map +1 -1
- package/dist/modes/interactive/interactive-bash-compact.js +16 -4
- package/dist/modes/interactive/interactive-bash-compact.js.map +1 -1
- package/dist/modes/interactive/interactive-deferred-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-deferred-startup.js +3 -0
- package/dist/modes/interactive/interactive-deferred-startup.js.map +1 -1
- package/dist/modes/interactive/interactive-editor-actions.js +2 -0
- package/dist/modes/interactive/interactive-editor-actions.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-context.js +12 -7
- package/dist/modes/interactive/interactive-extension-context.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-custom-ui.js +1 -0
- package/dist/modes/interactive/interactive-extension-custom-ui.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-dialogs.js +7 -0
- package/dist/modes/interactive/interactive-extension-dialogs.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-widgets.js +7 -24
- package/dist/modes/interactive/interactive-extension-widgets.js.map +1 -1
- package/dist/modes/interactive/interactive-input-handling.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-input-handling.js +9 -8
- package/dist/modes/interactive/interactive-input-handling.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-base.d.ts +52 -3
- package/dist/modes/interactive/interactive-mode-base.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-base.js +143 -5
- package/dist/modes/interactive/interactive-mode-base.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-deps.d.ts +2 -2
- package/dist/modes/interactive/interactive-mode-deps.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-deps.js +2 -2
- package/dist/modes/interactive/interactive-mode-deps.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-surface.d.ts +9 -3
- package/dist/modes/interactive/interactive-mode-surface.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-surface.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +1 -0
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/interactive-model-routing.js +107 -41
- package/dist/modes/interactive/interactive-model-routing.js.map +1 -1
- package/dist/modes/interactive/interactive-process-lifecycle.js +1 -1
- package/dist/modes/interactive/interactive-process-lifecycle.js.map +1 -1
- package/dist/modes/interactive/interactive-render-chat.js +24 -6
- package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
- package/dist/modes/interactive/interactive-selectors.js +44 -5
- package/dist/modes/interactive/interactive-selectors.js.map +1 -1
- package/dist/modes/interactive/interactive-session-runtime.js +1 -0
- package/dist/modes/interactive/interactive-session-runtime.js.map +1 -1
- package/dist/modes/interactive/interactive-slash-commands.js +9 -4
- package/dist/modes/interactive/interactive-slash-commands.js.map +1 -1
- package/dist/modes/interactive/interactive-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-startup.js +37 -18
- package/dist/modes/interactive/interactive-startup.js.map +1 -1
- package/dist/modes/interactive/interactive-tui.d.ts +21 -0
- package/dist/modes/interactive/interactive-tui.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-tui.js +279 -0
- package/dist/modes/interactive/interactive-tui.js.map +1 -0
- package/dist/modes/interactive/streaming-assistant-message.d.ts +34 -0
- package/dist/modes/interactive/streaming-assistant-message.d.ts.map +1 -0
- package/dist/modes/interactive/streaming-assistant-message.js +76 -0
- package/dist/modes/interactive/streaming-assistant-message.js.map +1 -0
- package/dist/modes/interactive/theme/catppuccin-frappe.json +1 -0
- package/dist/modes/interactive/theme/catppuccin-latte.json +1 -0
- package/dist/modes/interactive/theme/catppuccin-macchiato.json +1 -0
- package/dist/modes/interactive/theme/catppuccin-mocha.json +1 -0
- package/dist/modes/interactive/theme/dark.json +1 -0
- package/dist/modes/interactive/theme/light.json +1 -0
- package/dist/modes/interactive/theme/terminal-detection.d.ts +10 -0
- package/dist/modes/interactive/theme/terminal-detection.d.ts.map +1 -1
- package/dist/modes/interactive/theme/terminal-detection.js +19 -0
- package/dist/modes/interactive/theme/terminal-detection.js.map +1 -1
- package/dist/modes/interactive/theme/theme-class.d.ts +2 -2
- package/dist/modes/interactive/theme/theme-class.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-class.js +5 -1
- package/dist/modes/interactive/theme/theme-class.js.map +1 -1
- package/dist/modes/interactive/theme/theme-controller.d.ts +3 -1
- package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-controller.js +10 -13
- package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
- package/dist/modes/interactive/theme/theme-loading.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-loading.js +1 -0
- package/dist/modes/interactive/theme/theme-loading.js.map +1 -1
- package/dist/modes/interactive/theme/theme-schema.d.ts +4 -0
- package/dist/modes/interactive/theme/theme-schema.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-schema.js +2 -1
- package/dist/modes/interactive/theme/theme-schema.js.map +1 -1
- package/dist/modes/interactive/theme/theme-schema.json +5 -1
- package/dist/modes/interactive/theme/theme.d.ts +1 -1
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +1 -1
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/interactive-engine/engine-custom-ui.d.ts +1 -1
- package/dist/modes/interactive-engine/engine-custom-ui.d.ts.map +1 -1
- package/dist/modes/interactive-engine/engine-custom-ui.js +28 -11
- package/dist/modes/interactive-engine/engine-custom-ui.js.map +1 -1
- package/dist/modes/interactive-engine/engine-render-service.js +3 -3
- package/dist/modes/interactive-engine/engine-render-service.js.map +1 -1
- package/dist/modes/interactive-engine/extension-ui-bridge.d.ts +2 -1
- package/dist/modes/interactive-engine/extension-ui-bridge.d.ts.map +1 -1
- package/dist/modes/interactive-engine/extension-ui-bridge.js +2 -2
- package/dist/modes/interactive-engine/extension-ui-bridge.js.map +1 -1
- package/dist/modes/interactive-engine/isolated-runtime.d.ts +7 -0
- package/dist/modes/interactive-engine/isolated-runtime.d.ts.map +1 -1
- package/dist/modes/interactive-engine/isolated-runtime.js +7 -0
- package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
- package/dist/modes/interactive-engine/protocol.d.ts +12 -10
- package/dist/modes/interactive-engine/protocol.d.ts.map +1 -1
- package/dist/modes/interactive-engine/protocol.js +18 -12
- package/dist/modes/interactive-engine/protocol.js.map +1 -1
- package/dist/modes/interactive-engine/remote-component.d.ts +11 -1
- package/dist/modes/interactive-engine/remote-component.d.ts.map +1 -1
- package/dist/modes/interactive-engine/remote-component.js +48 -8
- package/dist/modes/interactive-engine/remote-component.js.map +1 -1
- package/dist/modes/interactive-engine/terminal-mode-controller.d.ts +19 -12
- package/dist/modes/interactive-engine/terminal-mode-controller.d.ts.map +1 -1
- package/dist/modes/interactive-engine/terminal-mode-controller.js +54 -35
- package/dist/modes/interactive-engine/terminal-mode-controller.js.map +1 -1
- package/dist/modes/json-event.d.ts +28 -0
- package/dist/modes/json-event.d.ts.map +1 -0
- package/dist/modes/json-event.js +12 -0
- package/dist/modes/json-event.js.map +1 -0
- package/dist/modes/print-mode.d.ts.map +1 -1
- package/dist/modes/print-mode.js +2 -1
- package/dist/modes/print-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-client-process.d.ts +1 -0
- package/dist/modes/rpc/rpc-client-process.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client-process.js +5 -1
- package/dist/modes/rpc/rpc-client-process.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js +7 -2
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/modes/rpc/rpc-command-handler.js +1 -1
- package/dist/modes/rpc/rpc-command-handler.js.map +1 -1
- package/dist/modes/rpc/rpc-event-buffer.d.ts +9 -0
- package/dist/modes/rpc/rpc-event-buffer.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-event-buffer.js +10 -5
- package/dist/modes/rpc/rpc-event-buffer.js.map +1 -1
- package/dist/modes/rpc/rpc-extension-ui.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-extension-ui.js +3 -0
- package/dist/modes/rpc/rpc-extension-ui.js.map +1 -1
- package/dist/modes/rpc/rpc-input.js +1 -1
- package/dist/modes/rpc/rpc-input.js.map +1 -1
- package/dist/modes/rpc/rpc-output-buffer.d.ts +9 -0
- package/dist/modes/rpc/rpc-output-buffer.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-output-buffer.js +10 -5
- package/dist/modes/rpc/rpc-output-buffer.js.map +1 -1
- package/dist/modes/rpc/rpc-provider-auth.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-provider-auth.js +3 -0
- package/dist/modes/rpc/rpc-provider-auth.js.map +1 -1
- package/dist/modes/rpc/rpc-responses.d.ts +1 -1
- package/dist/modes/rpc/rpc-responses.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-responses.js +13 -1
- package/dist/modes/rpc/rpc-responses.js.map +1 -1
- package/dist/modes/rpc/rpc-session-binding.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-session-binding.js +2 -1
- package/dist/modes/rpc/rpc-session-binding.js.map +1 -1
- package/dist/modes/rpc/rpc-types.d.ts +9 -2
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-types.js.map +1 -1
- package/dist/rpc-entry.js +2 -0
- package/dist/rpc-entry.js.map +1 -1
- package/dist/self-update-plan.d.ts.map +1 -1
- package/dist/self-update-plan.js +5 -4
- package/dist/self-update-plan.js.map +1 -1
- package/dist/server/create-harness.d.ts +53 -0
- package/dist/server/create-harness.d.ts.map +1 -0
- package/dist/server/create-harness.js +349 -0
- package/dist/server/create-harness.js.map +1 -0
- package/dist/utils/agent-attribution.d.ts +2 -0
- package/dist/utils/agent-attribution.d.ts.map +1 -0
- package/dist/utils/agent-attribution.js +2 -0
- package/dist/utils/agent-attribution.js.map +1 -0
- package/dist/utils/child-process.d.ts +3 -1
- package/dist/utils/child-process.d.ts.map +1 -1
- package/dist/utils/child-process.js +24 -4
- package/dist/utils/child-process.js.map +1 -1
- package/dist/utils/clipboard-image.d.ts.map +1 -1
- package/dist/utils/clipboard-image.js +2 -1
- package/dist/utils/clipboard-image.js.map +1 -1
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js +12 -3
- package/dist/utils/clipboard.js.map +1 -1
- package/dist/utils/management-http.d.ts +23 -0
- package/dist/utils/management-http.d.ts.map +1 -0
- package/dist/utils/management-http.js +50 -0
- package/dist/utils/management-http.js.map +1 -0
- package/dist/utils/open-browser.d.ts.map +1 -1
- package/dist/utils/open-browser.js +2 -1
- package/dist/utils/open-browser.js.map +1 -1
- package/dist/utils/paths.d.ts +2 -0
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js +13 -0
- package/dist/utils/paths.js.map +1 -1
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js +17 -4
- package/dist/utils/shell.js.map +1 -1
- package/dist/utils/tool-result-images.d.ts +17 -0
- package/dist/utils/tool-result-images.d.ts.map +1 -0
- package/dist/utils/tool-result-images.js +41 -0
- package/dist/utils/tool-result-images.js.map +1 -0
- package/dist/utils/tools-manager.d.ts.map +1 -1
- package/dist/utils/tools-manager.js +7 -8
- package/dist/utils/tools-manager.js.map +1 -1
- package/dist/utils/version-check.d.ts +4 -0
- package/dist/utils/version-check.d.ts.map +1 -1
- package/dist/utils/version-check.js +20 -2
- package/dist/utils/version-check.js.map +1 -1
- package/docs/compaction.md +2 -1
- package/docs/custom-provider.md +15 -7
- package/docs/development.md +1 -0
- package/docs/docs.json +1 -0
- package/docs/environment-variables.md +5 -1
- package/docs/extensions.md +102 -18
- package/docs/i-have-adhd.md +36 -0
- package/docs/intercom.md +45 -26
- package/docs/json.md +2 -2
- package/docs/keybindings.md +55 -12
- package/docs/models/model-selection.md +34 -8
- package/docs/models.md +28 -3
- package/docs/providers.md +20 -2
- package/docs/quickstart.md +10 -6
- package/docs/rpc.md +18 -12
- package/docs/sdk.md +44 -8
- package/docs/security.md +10 -10
- package/docs/session-format.md +15 -0
- package/docs/sessions.md +10 -0
- package/docs/settings.md +31 -5
- package/docs/subagents.md +27 -54
- package/docs/themes.md +5 -3
- package/docs/tools.md +23 -5
- package/docs/tui.md +41 -24
- package/docs/usage.md +41 -15
- package/docs/windows.md +3 -1
- package/docs/workflows.md +262 -38
- package/examples/extensions/custom-provider-anthropic/index.ts +9 -2
- package/examples/extensions/custom-provider-gitlab-duo/index.ts +9 -2
- package/examples/extensions/modal-editor.ts +8 -10
- package/examples/extensions/rainbow-editor.ts +3 -2
- package/examples/extensions/subagent/README.md +16 -45
- package/examples/extensions/subagent/index.ts +6 -96
- package/examples/extensions/subagent/render.ts +0 -78
- package/examples/extensions/subagent/runner.ts +0 -3
- package/examples/extensions/subagent/schemas.ts +0 -13
- package/examples/extensions/subagent/types.ts +1 -2
- package/examples/sdk/09-api-keys-and-oauth.ts +6 -2
- package/examples/sdk/12-full-control.ts +8 -2
- package/examples/sdk/README.md +4 -1
- package/npm-shrinkwrap.json +191 -634
- package/package.json +14 -7
- package/dist/builtin/subagents/src/agents/chain-serializer.ts +0 -257
- package/dist/builtin/subagents/src/runs/background/async-job-tracker.ts +0 -250
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-details.ts +0 -38
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-dynamic-step.ts +0 -280
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-runner.ts +0 -217
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-parallel-step.ts +0 -271
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-sequential-step.ts +0 -271
- package/dist/builtin/subagents/src/runs/foreground/chain-execution-types.ts +0 -200
- package/dist/builtin/subagents/src/runs/foreground/chain-execution.ts +0 -184
- package/dist/builtin/subagents/src/runs/foreground/execution-structured-retries.ts +0 -19
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-async.ts +0 -190
- package/dist/builtin/subagents/src/runs/foreground/subagent-executor-chain.ts +0 -109
- package/dist/builtin/subagents/src/runs/inprocess/background-single.ts +0 -179
- package/dist/builtin/subagents/src/runs/inprocess/background.ts +0 -89
- package/dist/builtin/subagents/src/runs/shared/chain-outputs.ts +0 -126
- package/dist/builtin/subagents/src/runs/shared/dynamic-fanout.ts +0 -393
- package/dist/builtin/subagents/src/runs/shared/structured-output.ts +0 -150
- package/dist/builtin/subagents/src/runs/shared/workflow-graph.ts +0 -232
- package/dist/builtin/subagents/src/shared/types-async.ts +0 -270
- package/dist/builtin/subagents/src/slash/saved-chain-mapping.ts +0 -60
- package/dist/builtin/subagents/src/tui/render-chain-graph.ts +0 -341
- package/dist/builtin/subagents/src/tui/render-widget-graph.ts +0 -266
- package/dist/builtin/subagents/src/tui/render-widget.ts +0 -366
- package/dist/core/async/format.d.ts +0 -3
- package/dist/core/async/format.d.ts.map +0 -1
- package/dist/core/async/format.js +0 -52
- package/dist/core/async/format.js.map +0 -1
- package/dist/core/async/job-manager.d.ts +0 -40
- package/dist/core/async/job-manager.d.ts.map +0 -1
- package/dist/core/async/job-manager.js +0 -293
- package/dist/core/async/job-manager.js.map +0 -1
- package/dist/core/async/session-manager.d.ts +0 -16
- package/dist/core/async/session-manager.d.ts.map +0 -1
- package/dist/core/async/session-manager.js +0 -34
- package/dist/core/async/session-manager.js.map +0 -1
- package/dist/core/async/types.d.ts +0 -23
- package/dist/core/async/types.d.ts.map +0 -1
- package/dist/core/async/types.js +0 -2
- package/dist/core/async/types.js.map +0 -1
- package/dist/core/tools/bash-async-execution.d.ts +0 -25
- package/dist/core/tools/bash-async-execution.d.ts.map +0 -1
- package/dist/core/tools/bash-async-execution.js +0 -78
- package/dist/core/tools/bash-async-execution.js.map +0 -1
- package/dist/core/tools/bash-async-jobs.d.ts +0 -30
- package/dist/core/tools/bash-async-jobs.d.ts.map +0 -1
- package/dist/core/tools/bash-async-jobs.js +0 -87
- package/dist/core/tools/bash-async-jobs.js.map +0 -1
- package/dist/core/tools/bash-async-output.d.ts +0 -12
- package/dist/core/tools/bash-async-output.d.ts.map +0 -1
- package/dist/core/tools/bash-async-output.js +0 -87
- package/dist/core/tools/bash-async-output.js.map +0 -1
- package/examples/extensions/subagent/prompts/implement-and-review.md +0 -10
- package/examples/extensions/subagent/prompts/implement.md +0 -10
- package/examples/extensions/subagent/prompts/scout-and-plan.md +0 -9
|
@@ -107,7 +107,9 @@ export function createTrackedStageCaller(input: {
|
|
|
107
107
|
const suppressQueuedContinuation = reason === "paused-queued-user-message";
|
|
108
108
|
if (suppressQueuedContinuation) runtime.state.suppressQueuedUserMessageContinuation = true;
|
|
109
109
|
try {
|
|
110
|
-
result = (await
|
|
110
|
+
result = (await runtime.raceStageSessionHeartbeat(
|
|
111
|
+
raceAbort(runtime.innerCtx.prompt(RESUME_CONTINUATION_PROMPT), runtime.signal),
|
|
112
|
+
)) as T;
|
|
111
113
|
} finally {
|
|
112
114
|
if (suppressQueuedContinuation) runtime.state.suppressQueuedUserMessageContinuation = false;
|
|
113
115
|
}
|
|
@@ -134,61 +136,69 @@ export function createTrackedStageCaller(input: {
|
|
|
134
136
|
}
|
|
135
137
|
|
|
136
138
|
const trackStageLifecycle = !runtime.state.stageFinalized;
|
|
137
|
-
let
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
const actualParentIds = runtime.scheduler.tracker.currentParents();
|
|
145
|
-
const sameParents =
|
|
146
|
-
actualParentIds.length === runtime.stageSnapshot.parentIds.length &&
|
|
147
|
-
actualParentIds.every((value) => runtime.stageSnapshot.parentIds.includes(value));
|
|
148
|
-
if (!sameParents) {
|
|
149
|
-
runtime.scheduler.tracker.replaceParents(runtime.stageId, actualParentIds);
|
|
150
|
-
refreshedParentIds = actualParentIds;
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
if (trackStageLifecycle) {
|
|
154
|
-
const now = Date.now();
|
|
155
|
-
const hasNoExplicitModelConfig =
|
|
156
|
-
input.options?.model === undefined && input.options?.fallbackModels === undefined;
|
|
157
|
-
const promptAdapterHandlesInitialPrompt = input.adapters.prompt !== undefined;
|
|
139
|
+
let applyTerminalStageState: (() => void) | undefined;
|
|
140
|
+
// Set only alongside the successful "completed" terminal state, so a failed
|
|
141
|
+
// final durable checkpoint can replace it without touching a real
|
|
142
|
+
// failure/skip classification recorded by the catch block.
|
|
143
|
+
let terminalStateIsSuccess = false;
|
|
144
|
+
try {
|
|
145
|
+
let refreshedParentIds: readonly string[] | undefined;
|
|
158
146
|
if (
|
|
159
|
-
|
|
160
|
-
!
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
model: input.options?.model,
|
|
164
|
-
fallbackModels: input.options?.fallbackModels,
|
|
165
|
-
models: runtime.opts.models,
|
|
166
|
-
})))
|
|
147
|
+
trackStageLifecycle &&
|
|
148
|
+
!input.hasContinuation &&
|
|
149
|
+
runtime.stageSnapshot.startedAt === undefined &&
|
|
150
|
+
!input.hasScopedParents
|
|
167
151
|
) {
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
runtime.
|
|
171
|
-
|
|
172
|
-
|
|
152
|
+
const actualParentIds = runtime.scheduler.tracker.currentParents();
|
|
153
|
+
const sameParents =
|
|
154
|
+
actualParentIds.length === runtime.stageSnapshot.parentIds.length &&
|
|
155
|
+
actualParentIds.every((value) => runtime.stageSnapshot.parentIds.includes(value));
|
|
156
|
+
if (!sameParents) {
|
|
157
|
+
runtime.scheduler.tracker.replaceParents(runtime.stageId, actualParentIds);
|
|
158
|
+
refreshedParentIds = actualParentIds;
|
|
173
159
|
}
|
|
174
160
|
}
|
|
175
|
-
if (
|
|
176
|
-
|
|
161
|
+
if (trackStageLifecycle) {
|
|
162
|
+
const now = Date.now();
|
|
163
|
+
const hasNoExplicitModelConfig =
|
|
164
|
+
input.options?.model === undefined && input.options?.fallbackModels === undefined;
|
|
165
|
+
const promptAdapterHandlesInitialPrompt = input.adapters.prompt !== undefined;
|
|
166
|
+
if (
|
|
167
|
+
callOptions.eagerSession &&
|
|
168
|
+
!promptAdapterHandlesInitialPrompt &&
|
|
169
|
+
(hasNoExplicitModelConfig ||
|
|
170
|
+
(await hasExplicitFastModeCandidate({
|
|
171
|
+
model: input.options?.model,
|
|
172
|
+
fallbackModels: input.options?.fallbackModels,
|
|
173
|
+
models: runtime.opts.models,
|
|
174
|
+
})))
|
|
175
|
+
) {
|
|
176
|
+
try {
|
|
177
|
+
await runtime.innerCtx.__ensureSession();
|
|
178
|
+
} catch (err) {
|
|
179
|
+
if (!(err instanceof Error && err.message.includes("prompt adapter not configured"))) throw err;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
if (refreshedParentIds !== undefined) {
|
|
183
|
+
runtime.scheduler.setStageParentIds(runtime.stageSnapshot, refreshedParentIds);
|
|
184
|
+
}
|
|
185
|
+
runtime.stageSnapshot.status = "running";
|
|
186
|
+
runtime.stageSnapshot.startedAt ??= rebasedStageStartedAt(input.options?.durableAccumulatedDurationMs, now);
|
|
187
|
+
runtime.applyModelFallbackMeta(runtime.innerCtx.__modelFallbackMeta());
|
|
188
|
+
// Publish every graph-visible live write before this task can yield.
|
|
189
|
+
runtime.activeStore.recordStageStart(runtime.runId, runtime.stageSnapshot);
|
|
190
|
+
runtime.appendStageStartOnce();
|
|
191
|
+
const sessionMeta = runtime.innerCtx.__sessionMeta();
|
|
192
|
+
if (sessionMeta.sessionId !== undefined || sessionMeta.sessionFile !== undefined) {
|
|
193
|
+
await runtime.captureStageSessionMeta({ awaitDurable: true });
|
|
194
|
+
}
|
|
195
|
+
runtime.startStageSessionHeartbeat();
|
|
196
|
+
} else {
|
|
197
|
+
runtime.applyModelFallbackMeta(runtime.innerCtx.__modelFallbackMeta());
|
|
177
198
|
}
|
|
178
|
-
runtime.stageSnapshot.status = "running";
|
|
179
|
-
runtime.stageSnapshot.startedAt ??= rebasedStageStartedAt(input.options?.durableAccumulatedDurationMs, now);
|
|
180
|
-
runtime.applyModelFallbackMeta(runtime.innerCtx.__modelFallbackMeta());
|
|
181
|
-
// Publish every graph-visible live write before this task can yield.
|
|
182
|
-
runtime.activeStore.recordStageStart(runtime.runId, runtime.stageSnapshot);
|
|
183
|
-
runtime.appendStageStartOnce();
|
|
184
|
-
} else {
|
|
185
|
-
runtime.applyModelFallbackMeta(runtime.innerCtx.__modelFallbackMeta());
|
|
186
|
-
}
|
|
187
199
|
|
|
188
|
-
|
|
200
|
+
runtime.mcpScope.apply();
|
|
189
201
|
|
|
190
|
-
let applyTerminalStageState: (() => void) | undefined;
|
|
191
|
-
try {
|
|
192
202
|
const abortSession = (): void => {
|
|
193
203
|
void runtime.innerCtx.abort().catch(() => {});
|
|
194
204
|
};
|
|
@@ -198,7 +208,7 @@ export function createTrackedStageCaller(input: {
|
|
|
198
208
|
try {
|
|
199
209
|
runtime.state.askUserQuestionObservedThisTurn = false;
|
|
200
210
|
runtime.state.chatAnswerObservedThisTurn = false;
|
|
201
|
-
result = await raceAbort(call(), runtime.signal);
|
|
211
|
+
result = await runtime.raceStageSessionHeartbeat(raceAbort(call(), runtime.signal));
|
|
202
212
|
const initialDrain = await drainResumeContinuations(result);
|
|
203
213
|
result = initialDrain.result;
|
|
204
214
|
let repeatReadinessAfterChatTurn = initialDrain.chatAnswerObserved;
|
|
@@ -226,12 +236,14 @@ export function createTrackedStageCaller(input: {
|
|
|
226
236
|
runtime.state.chatAnswerObservedThisTurn = false;
|
|
227
237
|
runtime.state.waitingForStageChatTurn = true;
|
|
228
238
|
try {
|
|
229
|
-
await
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
239
|
+
await runtime.raceStageSessionHeartbeat(
|
|
240
|
+
raceAbort(
|
|
241
|
+
new Promise<void>((resolve) => {
|
|
242
|
+
resolveNextTurnEnd = resolve;
|
|
243
|
+
runtime.state.wakeWaitingForStageChatTurn = resolve;
|
|
244
|
+
}),
|
|
245
|
+
runtime.signal,
|
|
246
|
+
),
|
|
235
247
|
);
|
|
236
248
|
} finally {
|
|
237
249
|
runtime.state.wakeWaitingForStageChatTurn = undefined;
|
|
@@ -254,7 +266,7 @@ export function createTrackedStageCaller(input: {
|
|
|
254
266
|
runtime.signal.removeEventListener("abort", abortSession);
|
|
255
267
|
}
|
|
256
268
|
await runtime.innerCtx.__closeGeneration();
|
|
257
|
-
runtime.captureStageSessionMeta();
|
|
269
|
+
await runtime.captureStageSessionMeta({ awaitDurable: true });
|
|
258
270
|
runtime.applyModelFallbackMeta(runtime.innerCtx.__modelFallbackMeta());
|
|
259
271
|
if (
|
|
260
272
|
trackStageLifecycle &&
|
|
@@ -267,6 +279,7 @@ export function createTrackedStageCaller(input: {
|
|
|
267
279
|
if (trackStageLifecycle && runtime.state.stageFinalized) throw runtime.parallelFailFastError();
|
|
268
280
|
if (trackStageLifecycle) {
|
|
269
281
|
const assistantText = runtime.innerCtx.__getLastAssistantText();
|
|
282
|
+
terminalStateIsSuccess = true;
|
|
270
283
|
applyTerminalStageState = () => {
|
|
271
284
|
runtime.stageSnapshot.status = "completed";
|
|
272
285
|
if (assistantText !== undefined) runtime.stageSnapshot.result = assistantText;
|
|
@@ -294,15 +307,36 @@ export function createTrackedStageCaller(input: {
|
|
|
294
307
|
// If finalizeStageSnapshot() throws, the limiter must still be released
|
|
295
308
|
// so the concurrency semaphore is not leaked.
|
|
296
309
|
// cross-ref: issue #1498 — durable finalization failures must not leak the stage limiter.
|
|
297
|
-
runtime.mcpScope.clear();
|
|
298
310
|
let finalizationError: { readonly thrown: true; readonly error: unknown } | undefined;
|
|
311
|
+
// Tracked separately from `finalizationError`: only a failed final durable
|
|
312
|
+
// checkpoint may rewrite an otherwise-successful terminal stage state.
|
|
313
|
+
let durableCheckpointError: { readonly thrown: true; readonly error: unknown } | undefined;
|
|
299
314
|
try {
|
|
300
|
-
|
|
301
|
-
runtime.captureStageSessionMeta();
|
|
315
|
+
runtime.mcpScope.clear();
|
|
302
316
|
} catch (err) {
|
|
303
317
|
finalizationError = { thrown: true, error: err };
|
|
304
318
|
}
|
|
319
|
+
try {
|
|
320
|
+
// Drain rather than stop: a checkpoint still in flight must be awaited
|
|
321
|
+
// here, or its late rejection is discarded with the cancelled timer.
|
|
322
|
+
await runtime.drainStageSessionHeartbeat();
|
|
323
|
+
} catch (err) {
|
|
324
|
+
durableCheckpointError = { thrown: true, error: err };
|
|
325
|
+
}
|
|
326
|
+
try {
|
|
327
|
+
await runtime.innerCtx.__closeGeneration();
|
|
328
|
+
await runtime.captureStageSessionMeta({ awaitDurable: true });
|
|
329
|
+
} catch (err) {
|
|
330
|
+
durableCheckpointError ??= { thrown: true, error: err };
|
|
331
|
+
}
|
|
332
|
+
finalizationError ??= durableCheckpointError;
|
|
305
333
|
if (trackStageLifecycle) {
|
|
334
|
+
// A stage whose final durability checkpoint failed must never be
|
|
335
|
+
// persisted as `completed` while its caller receives that rejection.
|
|
336
|
+
if (durableCheckpointError !== undefined && terminalStateIsSuccess) {
|
|
337
|
+
const failure = runtime.classifyExecutorFailure(durableCheckpointError.error);
|
|
338
|
+
applyTerminalStageState = () => applyFailureToStage(runtime.stageSnapshot, failure);
|
|
339
|
+
}
|
|
306
340
|
if (!runtime.state.stageFinalized) applyTerminalStageState?.();
|
|
307
341
|
// `finalizeStageSnapshot` calls the version-bumping `recordStageEnd`
|
|
308
342
|
// before its first yield, so the live write cannot outpace the cache.
|
|
@@ -28,7 +28,7 @@ export function createStageControlHandle(runtime: LiveStageRuntime): StageContro
|
|
|
28
28
|
const sessionFile = messagePreparation().sessionFile;
|
|
29
29
|
if (sessionFile === undefined) return;
|
|
30
30
|
await runtime.innerCtx.__ensureSessionFromFile(sessionFile);
|
|
31
|
-
runtime.captureStageSessionMeta();
|
|
31
|
+
await runtime.captureStageSessionMeta({ awaitDurable: true });
|
|
32
32
|
};
|
|
33
33
|
const toolExecutions = new StageToolExecutionBuffer();
|
|
34
34
|
const queuedUserMessages = new StageQueuedUserMessageBuffer();
|
|
@@ -75,7 +75,7 @@ export function createStageControlHandle(runtime: LiveStageRuntime): StageContro
|
|
|
75
75
|
await ensureMessagingSession();
|
|
76
76
|
await runtime.innerCtx.__ensureSession();
|
|
77
77
|
runtime.throwIfStageMutationBlocked();
|
|
78
|
-
runtime.captureStageSessionMeta();
|
|
78
|
+
await runtime.captureStageSessionMeta({ awaitDurable: true });
|
|
79
79
|
},
|
|
80
80
|
async sendUserMessage(text, options, beforeDelivery) {
|
|
81
81
|
runtime.throwIfStageMutationBlocked();
|
|
@@ -91,7 +91,7 @@ export function createStageControlHandle(runtime: LiveStageRuntime): StageContro
|
|
|
91
91
|
}
|
|
92
92
|
return action;
|
|
93
93
|
} finally {
|
|
94
|
-
runtime.captureStageSessionMeta();
|
|
94
|
+
void runtime.captureStageSessionMeta();
|
|
95
95
|
}
|
|
96
96
|
},
|
|
97
97
|
async prompt(text: string) {
|
|
@@ -106,7 +106,7 @@ export function createStageControlHandle(runtime: LiveStageRuntime): StageContro
|
|
|
106
106
|
preparation,
|
|
107
107
|
);
|
|
108
108
|
} finally {
|
|
109
|
-
runtime.captureStageSessionMeta();
|
|
109
|
+
void runtime.captureStageSessionMeta();
|
|
110
110
|
}
|
|
111
111
|
if (action !== "handled") runtime.throwIfStageMutationBlocked();
|
|
112
112
|
},
|
|
@@ -124,7 +124,7 @@ export function createStageControlHandle(runtime: LiveStageRuntime): StageContro
|
|
|
124
124
|
await runtime.innerCtx.steer(text);
|
|
125
125
|
if (queuedIntoInFlightTurn) runtime.state.resumeContinuationPending = "queued-user-message";
|
|
126
126
|
} finally {
|
|
127
|
-
runtime.captureStageSessionMeta();
|
|
127
|
+
void runtime.captureStageSessionMeta();
|
|
128
128
|
}
|
|
129
129
|
},
|
|
130
130
|
async followUp(text: string) {
|
|
@@ -137,7 +137,7 @@ export function createStageControlHandle(runtime: LiveStageRuntime): StageContro
|
|
|
137
137
|
await runtime.innerCtx.followUp(text);
|
|
138
138
|
if (queuedIntoInFlightTurn) runtime.state.resumeContinuationPending = "queued-user-message";
|
|
139
139
|
} finally {
|
|
140
|
-
runtime.captureStageSessionMeta();
|
|
140
|
+
void runtime.captureStageSessionMeta();
|
|
141
141
|
}
|
|
142
142
|
},
|
|
143
143
|
async pause() {
|
|
@@ -206,7 +206,7 @@ export function createStageControlHandle(runtime: LiveStageRuntime): StageContro
|
|
|
206
206
|
}
|
|
207
207
|
throw err;
|
|
208
208
|
} finally {
|
|
209
|
-
runtime.captureStageSessionMeta();
|
|
209
|
+
void runtime.captureStageSessionMeta();
|
|
210
210
|
}
|
|
211
211
|
},
|
|
212
212
|
subscribe(listener: AgentSessionEventListener) {
|
|
@@ -40,6 +40,7 @@ import {
|
|
|
40
40
|
type InternalStageContext,
|
|
41
41
|
type StageAdapters,
|
|
42
42
|
} from "./stage-runner.js";
|
|
43
|
+
import { createStageSessionHeartbeat } from "./stage-session-heartbeat.js";
|
|
43
44
|
|
|
44
45
|
export function createWorkflowStageFactory(input: {
|
|
45
46
|
readonly runId: string;
|
|
@@ -151,6 +152,15 @@ export function createWorkflowStageFactory(input: {
|
|
|
151
152
|
if (meta.modelAttempts !== undefined) stageSnapshot.modelAttempts = meta.modelAttempts;
|
|
152
153
|
};
|
|
153
154
|
|
|
155
|
+
let runtime!: LiveStageRuntime;
|
|
156
|
+
const stageSessionHeartbeat = createStageSessionHeartbeat(async () => {
|
|
157
|
+
try {
|
|
158
|
+
await runtime.captureStageSessionMeta({ awaitDurable: true });
|
|
159
|
+
} catch (error) {
|
|
160
|
+
await runtime.innerCtx.abort().catch(() => {});
|
|
161
|
+
throw error;
|
|
162
|
+
}
|
|
163
|
+
});
|
|
154
164
|
const innerCtx = createInnerStageContext({
|
|
155
165
|
stageId,
|
|
156
166
|
stageName: name,
|
|
@@ -166,6 +176,11 @@ export function createWorkflowStageFactory(input: {
|
|
|
166
176
|
applyModelFallbackMeta(meta);
|
|
167
177
|
if (stageSnapshot.status === "running") input.activeStore.recordStageStart(input.runId, stageSnapshot);
|
|
168
178
|
},
|
|
179
|
+
async onSessionReady() {
|
|
180
|
+
if (stageSnapshot.status !== "running") return;
|
|
181
|
+
await runtime.captureStageSessionMeta({ awaitDurable: true });
|
|
182
|
+
runtime.startStageSessionHeartbeat();
|
|
183
|
+
},
|
|
169
184
|
});
|
|
170
185
|
|
|
171
186
|
const state: LiveStageMutableState = {
|
|
@@ -234,21 +249,23 @@ export function createWorkflowStageFactory(input: {
|
|
|
234
249
|
await innerCtx.__dispose();
|
|
235
250
|
};
|
|
236
251
|
|
|
237
|
-
|
|
238
|
-
const captureStageSessionMeta = (checkpointOptions?: StageSessionCheckpointOptions): unknown => {
|
|
252
|
+
const captureStageSessionMeta = async (checkpointOptions?: StageSessionCheckpointOptions): Promise<void> => {
|
|
239
253
|
const meta = innerCtx.__sessionMeta();
|
|
240
254
|
if (meta.sessionId !== undefined) stageSnapshot.sessionId = meta.sessionId;
|
|
241
255
|
if (meta.sessionFile !== undefined) stageSnapshot.sessionFile = meta.sessionFile;
|
|
242
256
|
if (meta.sessionId !== undefined || meta.sessionFile !== undefined)
|
|
243
257
|
input.activeStore.recordStageSession(input.runId, stageId, meta);
|
|
244
258
|
const pending = input.opts.onStageSession?.(input.runId, stageSnapshot, checkpointOptions);
|
|
245
|
-
if (checkpointOptions?.forceDurable === true)
|
|
259
|
+
if (checkpointOptions?.forceDurable === true || checkpointOptions?.awaitDurable === true) {
|
|
260
|
+
await pending;
|
|
261
|
+
return;
|
|
262
|
+
}
|
|
246
263
|
void Promise.resolve(pending).catch(() => {});
|
|
247
|
-
return undefined;
|
|
248
264
|
};
|
|
249
265
|
const releaseLiveHandle = async (): Promise<void> => {
|
|
250
266
|
if (state.liveHandleReleased) return;
|
|
251
267
|
state.liveHandleReleased = true;
|
|
268
|
+
stageSessionHeartbeat.stop();
|
|
252
269
|
runtime.dropStageControlHandle();
|
|
253
270
|
runtime.unregisterStageHandle();
|
|
254
271
|
await disposeInnerContext();
|
|
@@ -282,6 +299,7 @@ export function createWorkflowStageFactory(input: {
|
|
|
282
299
|
};
|
|
283
300
|
|
|
284
301
|
const finalizeStageSnapshot = async (): Promise<boolean> => {
|
|
302
|
+
stageSessionHeartbeat.stop();
|
|
285
303
|
if (state.stageFinalized) return false;
|
|
286
304
|
if (stageSnapshot.endedAt !== undefined && isTerminalStage(stageSnapshot)) {
|
|
287
305
|
state.stageFinalized = true;
|
|
@@ -371,6 +389,9 @@ export function createWorkflowStageFactory(input: {
|
|
|
371
389
|
dropStageControlHandle: () => {},
|
|
372
390
|
unregisterWorkflowExitCleanup: () => {},
|
|
373
391
|
captureStageSessionMeta,
|
|
392
|
+
startStageSessionHeartbeat: stageSessionHeartbeat.start,
|
|
393
|
+
drainStageSessionHeartbeat: stageSessionHeartbeat.drain,
|
|
394
|
+
raceStageSessionHeartbeat: stageSessionHeartbeat.race,
|
|
374
395
|
applyModelFallbackMeta,
|
|
375
396
|
appendStageStartOnce,
|
|
376
397
|
finalizeStageSnapshot,
|
|
@@ -51,7 +51,10 @@ export interface LiveStageRuntime {
|
|
|
51
51
|
unregisterStageHandle: () => void;
|
|
52
52
|
dropStageControlHandle: () => void;
|
|
53
53
|
unregisterWorkflowExitCleanup: () => void;
|
|
54
|
-
readonly captureStageSessionMeta: (options?: StageSessionCheckpointOptions) =>
|
|
54
|
+
readonly captureStageSessionMeta: (options?: StageSessionCheckpointOptions) => Promise<void>;
|
|
55
|
+
readonly startStageSessionHeartbeat: () => void;
|
|
56
|
+
readonly drainStageSessionHeartbeat: () => Promise<void>;
|
|
57
|
+
readonly raceStageSessionHeartbeat: <T>(work: Promise<T>) => Promise<T>;
|
|
55
58
|
readonly applyModelFallbackMeta: (meta: ReturnType<InternalStageContext["__modelFallbackMeta"]>) => void;
|
|
56
59
|
readonly appendStageStartOnce: () => void;
|
|
57
60
|
readonly finalizeStageSnapshot: () => Promise<boolean>;
|
|
@@ -34,6 +34,8 @@ export interface RunContinuationOpts {
|
|
|
34
34
|
|
|
35
35
|
export interface StageSessionCheckpointOptions {
|
|
36
36
|
readonly forceDurable?: boolean;
|
|
37
|
+
/** Await and surface the persistence result without bypassing duration bucketing. */
|
|
38
|
+
readonly awaitDurable?: boolean;
|
|
37
39
|
}
|
|
38
40
|
export interface RunOpts
|
|
39
41
|
extends Omit<
|
|
@@ -14,6 +14,7 @@ import type {
|
|
|
14
14
|
StageUserMessageContent,
|
|
15
15
|
WorkflowModelAttempt,
|
|
16
16
|
WorkflowModelCatalogPort,
|
|
17
|
+
WorkflowModelUsage,
|
|
17
18
|
} from "../../shared/types.js";
|
|
18
19
|
import {
|
|
19
20
|
buildModelCandidatesFromCatalog,
|
|
@@ -67,6 +68,58 @@ import {
|
|
|
67
68
|
|
|
68
69
|
type RetryPauseResume = NonNullable<ReturnType<StageSessionPause["currentResume"]>>;
|
|
69
70
|
|
|
71
|
+
type StageMessage = StageSessionRuntime["messages"][number];
|
|
72
|
+
type StageAssistantMessage = Extract<StageMessage, { role: "assistant" }>;
|
|
73
|
+
|
|
74
|
+
type AttemptUsageTotals = {
|
|
75
|
+
input: number;
|
|
76
|
+
output: number;
|
|
77
|
+
cacheRead: number;
|
|
78
|
+
cacheWrite: number;
|
|
79
|
+
cost: number;
|
|
80
|
+
turns: number;
|
|
81
|
+
};
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* A present usage object is meaningful when any token bucket, the total token
|
|
85
|
+
* count, or the provider-reported total cost is positive. Reject the entire
|
|
86
|
+
* provider record when any aggregated value is non-finite or negative so
|
|
87
|
+
* malformed telemetry cannot poison a durable stage checkpoint.
|
|
88
|
+
*/
|
|
89
|
+
function hasMeaningfulUsage(usage: StageAssistantMessage["usage"] | undefined): boolean {
|
|
90
|
+
if (usage === undefined) return false;
|
|
91
|
+
const values = [usage.input, usage.output, usage.cacheRead, usage.cacheWrite, usage.totalTokens, usage.cost.total];
|
|
92
|
+
return values.every((value) => Number.isFinite(value) && value >= 0) && values.some((value) => value > 0);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Aggregate the assistant-message usage admitted since the latched attempt
|
|
97
|
+
* boundary, plus usage accrued from error assistants that a retry restoration
|
|
98
|
+
* removed from the live transcript. Returns undefined when nothing meaningful
|
|
99
|
+
* was seen, so no `usage: undefined` enters the serializable attempt record.
|
|
100
|
+
*/
|
|
101
|
+
function usageForAttempt(
|
|
102
|
+
messages: readonly StageMessage[],
|
|
103
|
+
start: number,
|
|
104
|
+
discarded: AttemptUsageTotals,
|
|
105
|
+
): WorkflowModelUsage | undefined {
|
|
106
|
+
const totals = { ...discarded };
|
|
107
|
+
let meaningful = totals.turns > 0;
|
|
108
|
+
|
|
109
|
+
for (const message of messages.slice(start)) {
|
|
110
|
+
if (message.role !== "assistant" || !hasMeaningfulUsage(message.usage)) continue;
|
|
111
|
+
totals.input += message.usage.input;
|
|
112
|
+
totals.output += message.usage.output;
|
|
113
|
+
totals.cacheRead += message.usage.cacheRead;
|
|
114
|
+
totals.cacheWrite += message.usage.cacheWrite;
|
|
115
|
+
totals.cost += message.usage.cost.total;
|
|
116
|
+
totals.turns += 1;
|
|
117
|
+
meaningful = true;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
return meaningful ? totals : undefined;
|
|
121
|
+
}
|
|
122
|
+
|
|
70
123
|
interface ThrownErrorRetryState {
|
|
71
124
|
readonly controller: AbortController;
|
|
72
125
|
pauseResume?: RetryPauseResume;
|
|
@@ -159,6 +212,17 @@ export class StageSessionController {
|
|
|
159
212
|
private sessionPromise: Promise<StageSessionRuntime> | undefined;
|
|
160
213
|
private reattachSessionFile: string | undefined;
|
|
161
214
|
private lastPromptStartIndex: number | undefined;
|
|
215
|
+
/** Message index latched once per high-level candidate prompt; never re-read later. */
|
|
216
|
+
private attemptUsageStartIndex: number | undefined;
|
|
217
|
+
/** Usage accrued from error assistants removed by retry restoration. */
|
|
218
|
+
private discardedAttemptUsage: AttemptUsageTotals = {
|
|
219
|
+
input: 0,
|
|
220
|
+
output: 0,
|
|
221
|
+
cacheRead: 0,
|
|
222
|
+
cacheWrite: 0,
|
|
223
|
+
cost: 0,
|
|
224
|
+
turns: 0,
|
|
225
|
+
};
|
|
162
226
|
private readonly terminatingToolCallIds = new Set<string>();
|
|
163
227
|
private latestStructuredOutputToolErrorValue: string | undefined;
|
|
164
228
|
private unsubscribeTerminateWatcher: (() => void) | undefined;
|
|
@@ -418,6 +482,7 @@ export class StageSessionController {
|
|
|
418
482
|
this.activeCandidateIndex = index;
|
|
419
483
|
this.selectedModel = candidate.id;
|
|
420
484
|
this.notifyModelFallbackMetaChange();
|
|
485
|
+
this.beginAttemptUsage(activeSession);
|
|
421
486
|
const { terminalScanStartIndex } = await this.promptWithThrownErrorRetry(
|
|
422
487
|
activeSession,
|
|
423
488
|
promptText,
|
|
@@ -563,6 +628,49 @@ export class StageSessionController {
|
|
|
563
628
|
}
|
|
564
629
|
return undefined;
|
|
565
630
|
}
|
|
631
|
+
/**
|
|
632
|
+
* Latch a fresh high-level usage window against the active session. The
|
|
633
|
+
* boundary is the message length before the candidate prompt, so retries,
|
|
634
|
+
* pause/re-prompts, and recording never re-read a later index.
|
|
635
|
+
*/
|
|
636
|
+
private beginAttemptUsage(session: StageSessionRuntime): void {
|
|
637
|
+
this.attemptUsageStartIndex = session.messages.length;
|
|
638
|
+
this.discardedAttemptUsage = { input: 0, output: 0, cacheRead: 0, cacheWrite: 0, cost: 0, turns: 0 };
|
|
639
|
+
}
|
|
640
|
+
|
|
641
|
+
/**
|
|
642
|
+
* Consume the current window exactly once. A session-creation failure has no
|
|
643
|
+
* window: clear the latch instead of reading a previous session's messages.
|
|
644
|
+
*/
|
|
645
|
+
private takeAttemptUsage(session: StageSessionRuntime | undefined): WorkflowModelUsage | undefined {
|
|
646
|
+
const start = this.attemptUsageStartIndex;
|
|
647
|
+
const usage =
|
|
648
|
+
session === undefined || start === undefined
|
|
649
|
+
? undefined
|
|
650
|
+
: usageForAttempt(session.messages, start, this.discardedAttemptUsage);
|
|
651
|
+
this.clearAttemptUsage();
|
|
652
|
+
return usage;
|
|
653
|
+
}
|
|
654
|
+
|
|
655
|
+
private clearAttemptUsage(): void {
|
|
656
|
+
this.attemptUsageStartIndex = undefined;
|
|
657
|
+
this.discardedAttemptUsage = { input: 0, output: 0, cacheRead: 0, cacheWrite: 0, cost: 0, turns: 0 };
|
|
658
|
+
}
|
|
659
|
+
|
|
660
|
+
/**
|
|
661
|
+
* Keep the usage of an error assistant that a retry restoration is about to
|
|
662
|
+
* remove from the live transcript, so the final attempt total still counts it.
|
|
663
|
+
*/
|
|
664
|
+
private accrueDiscardedAttemptUsage(message: StageAssistantMessage): void {
|
|
665
|
+
if (!hasMeaningfulUsage(message.usage)) return;
|
|
666
|
+
this.discardedAttemptUsage.input += message.usage.input;
|
|
667
|
+
this.discardedAttemptUsage.output += message.usage.output;
|
|
668
|
+
this.discardedAttemptUsage.cacheRead += message.usage.cacheRead;
|
|
669
|
+
this.discardedAttemptUsage.cacheWrite += message.usage.cacheWrite;
|
|
670
|
+
this.discardedAttemptUsage.cost += message.usage.cost.total;
|
|
671
|
+
this.discardedAttemptUsage.turns += 1;
|
|
672
|
+
}
|
|
673
|
+
|
|
566
674
|
/**
|
|
567
675
|
* Drop this attempt's failed input from live state before a same-candidate
|
|
568
676
|
* retry, keeping unrelated concurrent messages. The durable transcript keeps
|
|
@@ -581,6 +689,12 @@ export class StageSessionController {
|
|
|
581
689
|
): StageSessionRuntime["messages"][number] | undefined {
|
|
582
690
|
const snapshotMessages = new Set(snapshot);
|
|
583
691
|
const admitted = session.messages.filter((message) => !snapshotMessages.has(message));
|
|
692
|
+
// Error assistants the filter below removes still carry real provider
|
|
693
|
+
// usage; accrue it before the splice so the retry total keeps it.
|
|
694
|
+
for (const message of admitted) {
|
|
695
|
+
if (message.role !== "assistant" || message.stopReason !== "error") continue;
|
|
696
|
+
this.accrueDiscardedAttemptUsage(message);
|
|
697
|
+
}
|
|
584
698
|
const failedAssistantIndex = admitted.findLastIndex(
|
|
585
699
|
(message) => message.role === "assistant" && message.stopReason === "error",
|
|
586
700
|
);
|
|
@@ -1054,9 +1168,12 @@ export class StageSessionController {
|
|
|
1054
1168
|
throw new Error(`atomic-workflows: stage "${this.opts.stageName}" session has been disposed`);
|
|
1055
1169
|
throw this.staleCreationReason(startGeneration);
|
|
1056
1170
|
}
|
|
1057
|
-
|
|
1171
|
+
const session = attachCreatedStageSession(created, this.disposed, this.opts.stageName, (result) =>
|
|
1058
1172
|
this.attachSession(result),
|
|
1059
1173
|
);
|
|
1174
|
+
if (session instanceof Promise) return await session;
|
|
1175
|
+
await this.opts.onSessionReady?.();
|
|
1176
|
+
return session;
|
|
1060
1177
|
}
|
|
1061
1178
|
|
|
1062
1179
|
private attachSession(created: StageSessionRuntime | StageSessionCreateResult): StageSessionRuntime {
|
|
@@ -1175,11 +1292,17 @@ export class StageSessionController {
|
|
|
1175
1292
|
const resumedSession = this.session;
|
|
1176
1293
|
const resumedLabel = this.selectedModel ?? workflowModelId(resumedSession.model) ?? candidates[0]!.id;
|
|
1177
1294
|
this.notifyModelFallbackMetaChange();
|
|
1295
|
+
this.beginAttemptUsage(resumedSession);
|
|
1178
1296
|
try {
|
|
1179
1297
|
const { terminalScanStartIndex } = await this.promptWithThrownErrorRetry(resumedSession, text, sdkOptions);
|
|
1180
1298
|
const terminalFailure = latestTerminalAssistantFailureSince(resumedSession.messages, terminalScanStartIndex);
|
|
1181
1299
|
if (terminalFailure === undefined || this.capturedStructuredOutputForAttempt()) {
|
|
1182
|
-
this.
|
|
1300
|
+
const usage = this.takeAttemptUsage(resumedSession);
|
|
1301
|
+
this.modelAttempts.push({
|
|
1302
|
+
model: resumedLabel,
|
|
1303
|
+
success: true,
|
|
1304
|
+
...(usage === undefined ? {} : { usage }),
|
|
1305
|
+
});
|
|
1183
1306
|
this.pendingFallbackWarnings.length = 0;
|
|
1184
1307
|
this.resumeCurrentSession = true;
|
|
1185
1308
|
return true;
|
|
@@ -1187,13 +1310,24 @@ export class StageSessionController {
|
|
|
1187
1310
|
throw new WorkflowPromptModelFailure(terminalFailure);
|
|
1188
1311
|
} catch (err) {
|
|
1189
1312
|
if (this.capturedStructuredOutputForAttempt() && isRetryableModelFailure(err)) {
|
|
1190
|
-
this.
|
|
1313
|
+
const usage = this.takeAttemptUsage(resumedSession);
|
|
1314
|
+
this.modelAttempts.push({
|
|
1315
|
+
model: resumedLabel,
|
|
1316
|
+
success: true,
|
|
1317
|
+
...(usage === undefined ? {} : { usage }),
|
|
1318
|
+
});
|
|
1191
1319
|
this.pendingFallbackWarnings.length = 0;
|
|
1192
1320
|
this.resumeCurrentSession = true;
|
|
1193
1321
|
return true;
|
|
1194
1322
|
}
|
|
1195
1323
|
const message = errorMessage(err);
|
|
1196
|
-
this.
|
|
1324
|
+
const usage = this.takeAttemptUsage(resumedSession);
|
|
1325
|
+
this.modelAttempts.push({
|
|
1326
|
+
model: resumedLabel,
|
|
1327
|
+
success: false,
|
|
1328
|
+
...(usage === undefined ? {} : { usage }),
|
|
1329
|
+
error: message,
|
|
1330
|
+
});
|
|
1197
1331
|
if (this.opts.signal?.aborted || !isRetryableModelFailure(err)) {
|
|
1198
1332
|
this.modelWarnings.push(...this.pendingFallbackWarnings);
|
|
1199
1333
|
this.pendingFallbackWarnings.length = 0;
|
|
@@ -1233,10 +1367,12 @@ export class StageSessionController {
|
|
|
1233
1367
|
this.recordSuccessfulAttempt(candidate);
|
|
1234
1368
|
return "handled";
|
|
1235
1369
|
}
|
|
1370
|
+
const usage = this.takeAttemptUsage(this.session);
|
|
1236
1371
|
this.modelAttempts.push({
|
|
1237
1372
|
model: candidate.id,
|
|
1238
1373
|
success: false,
|
|
1239
1374
|
...modelAttemptReasoning(candidate, this.effectiveStageOptions?.thinkingLevel),
|
|
1375
|
+
...(usage === undefined ? {} : { usage }),
|
|
1240
1376
|
error: message,
|
|
1241
1377
|
});
|
|
1242
1378
|
if (this.opts.signal?.aborted || !isRetryableModelFailure(err) || index === candidates.length - 1) {
|
|
@@ -1258,10 +1394,12 @@ export class StageSessionController {
|
|
|
1258
1394
|
}
|
|
1259
1395
|
|
|
1260
1396
|
private recordSuccessfulAttempt(candidate: WorkflowResolvedModelCandidate): void {
|
|
1397
|
+
const usage = this.takeAttemptUsage(this.session);
|
|
1261
1398
|
this.modelAttempts.push({
|
|
1262
1399
|
model: candidate.id,
|
|
1263
1400
|
success: true,
|
|
1264
1401
|
...modelAttemptReasoning(candidate, this.effectiveStageOptions?.thinkingLevel),
|
|
1402
|
+
...(usage === undefined ? {} : { usage }),
|
|
1265
1403
|
});
|
|
1266
1404
|
this.pendingFallbackWarnings.length = 0;
|
|
1267
1405
|
this.resumeCurrentSession = true;
|
|
@@ -147,6 +147,8 @@ export interface StageRunnerOpts {
|
|
|
147
147
|
defaultSessionDir?: string;
|
|
148
148
|
/** Internal: notifies the executor when an in-flight fallback changes model/fast metadata. */
|
|
149
149
|
onModelFallbackMetaChange?: (meta: StageModelFallbackMeta) => void;
|
|
150
|
+
/** Internal: persist stage-session identity once the SDK has created its path. */
|
|
151
|
+
onSessionReady?: () => void | Promise<void>;
|
|
150
152
|
}
|
|
151
153
|
|
|
152
154
|
export interface InternalStageContext extends StageContext {
|