@pentoshi/clai 4.11.29 → 4.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +49 -10
- package/dist/agent/compaction/summary-execution.js +19 -3
- package/dist/agent/compaction/summary-execution.js.map +1 -1
- package/dist/agent/confirm-port.d.ts +3 -5
- package/dist/agent/confirm-port.js +12 -6
- package/dist/agent/confirm-port.js.map +1 -1
- package/dist/agent/context/compact-with-summary.js +12 -5
- package/dist/agent/context/compact-with-summary.js.map +1 -1
- package/dist/agent/context/latest-user-message.d.ts +2 -0
- package/dist/agent/context/latest-user-message.js +10 -0
- package/dist/agent/context/latest-user-message.js.map +1 -0
- package/dist/agent/context/user-credentials.js +36 -7
- package/dist/agent/context/user-credentials.js.map +1 -1
- package/dist/agent/context-manager.js +4 -1
- package/dist/agent/context-manager.js.map +1 -1
- package/dist/agent/durable-envelope.d.ts +6 -0
- package/dist/agent/durable-envelope.js +50 -11
- package/dist/agent/durable-envelope.js.map +1 -1
- package/dist/agent/evidence/tool-budgets.js +4 -14
- package/dist/agent/evidence/tool-budgets.js.map +1 -1
- package/dist/agent/responder-context.d.ts +8 -0
- package/dist/agent/responder-context.js +35 -2
- package/dist/agent/responder-context.js.map +1 -1
- package/dist/agent/subagents/manager.d.ts +1 -1
- package/dist/agent/subagents/manager.js +7 -6
- package/dist/agent/subagents/manager.js.map +1 -1
- package/dist/agent/subagents/types.d.ts +1 -0
- package/dist/agent/tool-history.d.ts +2 -2
- package/dist/agent/tool-history.js +2 -1
- package/dist/agent/tool-history.js.map +1 -1
- package/dist/agent/turn/compaction-durable-envelope.d.ts +2 -1
- package/dist/agent/turn/compaction-durable-envelope.js +22 -11
- package/dist/agent/turn/compaction-durable-envelope.js.map +1 -1
- package/dist/agent/turn/history-writer.d.ts +1 -1
- package/dist/agent/turn/history-writer.js +1 -0
- package/dist/agent/turn/history-writer.js.map +1 -1
- package/dist/agent/turn/loop/completion-interpretation.d.ts +1 -1
- package/dist/agent/turn/loop/deps.d.ts +1 -1
- package/dist/agent/turn/loop/run-rounds.js +1 -1
- package/dist/agent/turn/loop/run-rounds.js.map +1 -1
- package/dist/agent/turn/responder-read-tool.d.ts +1 -0
- package/dist/agent/turn/responder-read-tool.js +13 -6
- package/dist/agent/turn/responder-read-tool.js.map +1 -1
- package/dist/agent/turn/tool-execution/authorization.js +3 -39
- package/dist/agent/turn/tool-execution/authorization.js.map +1 -1
- package/dist/agent/turn/tool-execution/single-tool.js +1 -1
- package/dist/agent/turn/tool-execution/single-tool.js.map +1 -1
- package/dist/app/commands/catalog.js +18 -3
- package/dist/app/commands/catalog.js.map +1 -1
- package/dist/app/controllers/session-compact-helper.js +1 -1
- package/dist/app/controllers/session-compact-helper.js.map +1 -1
- package/dist/app/controllers/session-controller.d.ts +3 -1
- package/dist/app/controllers/session-controller.js +25 -12
- package/dist/app/controllers/session-controller.js.map +1 -1
- package/dist/app/controllers/session-usage-ledger.d.ts +5 -1
- package/dist/app/controllers/session-usage-ledger.js +19 -5
- package/dist/app/controllers/session-usage-ledger.js.map +1 -1
- package/dist/app/controllers/session-usage-source.d.ts +13 -0
- package/dist/app/controllers/session-usage-source.js +37 -0
- package/dist/app/controllers/session-usage-source.js.map +1 -0
- package/dist/app/operation-review.d.ts +7 -0
- package/dist/app/operation-review.js +61 -0
- package/dist/app/operation-review.js.map +1 -0
- package/dist/app/ports/confirm-port.d.ts +1 -1
- package/dist/app/ports/secret-port.d.ts +2 -0
- package/dist/classic/app/ClassicApp.js +1 -1
- package/dist/classic/app/ClassicApp.js.map +1 -1
- package/dist/classic/app/use-feed.js +2 -1
- package/dist/classic/app/use-feed.js.map +1 -1
- package/dist/classic/blocks/diff-lines.js +5 -8
- package/dist/classic/blocks/diff-lines.js.map +1 -1
- package/dist/classic/bootstrap/start-classic.js +3 -0
- package/dist/classic/bootstrap/start-classic.js.map +1 -1
- package/dist/classic/chrome/subagents-row.js +1 -1
- package/dist/classic/chrome/subagents-row.js.map +1 -1
- package/dist/classic/input/paste-burst.d.ts +3 -12
- package/dist/classic/input/paste-burst.js +18 -110
- package/dist/classic/input/paste-burst.js.map +1 -1
- package/dist/classic/input/paste-decoder.js +2 -4
- package/dist/classic/input/paste-decoder.js.map +1 -1
- package/dist/classic/input/terminal-sequences.d.ts +1 -2
- package/dist/classic/input/terminal-sequences.js +1 -2
- package/dist/classic/input/terminal-sequences.js.map +1 -1
- package/dist/classic/panels/confirm-panel.js +9 -3
- package/dist/classic/panels/confirm-panel.js.map +1 -1
- package/dist/classic/panels/pager-diff.js +5 -7
- package/dist/classic/panels/pager-diff.js.map +1 -1
- package/dist/classic/panels/panel-controller.d.ts +1 -0
- package/dist/classic/panels/panel-controller.js +47 -13
- package/dist/classic/panels/panel-controller.js.map +1 -1
- package/dist/classic/panels/panel-effect.d.ts +2 -0
- package/dist/classic/panels/panel-effect.js.map +1 -1
- package/dist/classic/panels/panel-effects.js +3 -0
- package/dist/classic/panels/panel-effects.js.map +1 -1
- package/dist/classic/panels/secret-panel.d.ts +1 -0
- package/dist/classic/panels/secret-panel.js +8 -1
- package/dist/classic/panels/secret-panel.js.map +1 -1
- package/dist/classic/render/ink-theme.js +1 -1
- package/dist/classic/render/ink-theme.js.map +1 -1
- package/dist/commands/providers.d.ts +5 -0
- package/dist/commands/providers.js +57 -0
- package/dist/commands/providers.js.map +1 -1
- package/dist/commands/update/installers.js +1 -0
- package/dist/commands/update/installers.js.map +1 -1
- package/dist/index.js +24 -4
- package/dist/index.js.map +1 -1
- package/dist/llm/capabilities.js +5 -5
- package/dist/llm/capabilities.js.map +1 -1
- package/dist/llm/capability/state.d.ts +1 -1
- package/dist/llm/capability/tool-dialect.js +2 -0
- package/dist/llm/capability/tool-dialect.js.map +1 -1
- package/dist/llm/capability/vision-patterns.js +12 -0
- package/dist/llm/capability/vision-patterns.js.map +1 -1
- package/dist/llm/catalog-facts.js +25 -8
- package/dist/llm/catalog-facts.js.map +1 -1
- package/dist/llm/codex-auth.d.ts +3 -1
- package/dist/llm/codex-auth.js +41 -12
- package/dist/llm/codex-auth.js.map +1 -1
- package/dist/llm/codex-client.d.ts +1 -0
- package/dist/llm/codex-client.js +30 -0
- package/dist/llm/codex-client.js.map +1 -0
- package/dist/llm/codex-config.d.ts +3 -0
- package/dist/llm/codex-config.js +82 -0
- package/dist/llm/codex-config.js.map +1 -0
- package/dist/llm/codex-credential.d.ts +3 -0
- package/dist/llm/codex-credential.js +94 -0
- package/dist/llm/codex-credential.js.map +1 -0
- package/dist/llm/codex-models.d.ts +17 -0
- package/dist/llm/codex-models.js +171 -0
- package/dist/llm/codex-models.js.map +1 -0
- package/dist/llm/codex-request.d.ts +1 -0
- package/dist/llm/codex-request.js +61 -0
- package/dist/llm/codex-request.js.map +1 -0
- package/dist/llm/codex-usage.d.ts +4 -0
- package/dist/llm/codex-usage.js +96 -0
- package/dist/llm/codex-usage.js.map +1 -0
- package/dist/llm/codex.d.ts +1 -2
- package/dist/llm/codex.js +30 -217
- package/dist/llm/codex.js.map +1 -1
- package/dist/llm/context-windows.js +1 -0
- package/dist/llm/context-windows.js.map +1 -1
- package/dist/llm/freebuff-run.d.ts +3 -0
- package/dist/llm/freebuff-run.js +9 -1
- package/dist/llm/freebuff-run.js.map +1 -1
- package/dist/llm/freebuff-session-api.d.ts +3 -1
- package/dist/llm/freebuff-session-api.js +14 -1
- package/dist/llm/freebuff-session-api.js.map +1 -1
- package/dist/llm/freebuff-session.d.ts +2 -0
- package/dist/llm/freebuff-session.js +61 -28
- package/dist/llm/freebuff-session.js.map +1 -1
- package/dist/llm/freebuff-wire.d.ts +3 -0
- package/dist/llm/freebuff-wire.js +82 -0
- package/dist/llm/freebuff-wire.js.map +1 -0
- package/dist/llm/freebuff.js +61 -117
- package/dist/llm/freebuff.js.map +1 -1
- package/dist/llm/model-layers/model-rules.js +6 -0
- package/dist/llm/model-layers/model-rules.js.map +1 -1
- package/dist/llm/omnirush-auth.d.ts +40 -0
- package/dist/llm/omnirush-auth.js +264 -0
- package/dist/llm/omnirush-auth.js.map +1 -0
- package/dist/llm/omnirush-session-upload.d.ts +63 -0
- package/dist/llm/omnirush-session-upload.js +221 -0
- package/dist/llm/omnirush-session-upload.js.map +1 -0
- package/dist/llm/omnirush.d.ts +4 -0
- package/dist/llm/omnirush.js +221 -0
- package/dist/llm/omnirush.js.map +1 -0
- package/dist/llm/provider-balance.d.ts +10 -0
- package/dist/llm/provider-balance.js +22 -2
- package/dist/llm/provider-balance.js.map +1 -1
- package/dist/llm/provider-identity.js +11 -0
- package/dist/llm/provider-identity.js.map +1 -1
- package/dist/llm/provider-info-text.js +110 -4
- package/dist/llm/provider-info-text.js.map +1 -1
- package/dist/llm/provider-profile-layers.js +33 -3
- package/dist/llm/provider-profile-layers.js.map +1 -1
- package/dist/llm/reasoning-capability.js +16 -0
- package/dist/llm/reasoning-capability.js.map +1 -1
- package/dist/llm/reasoning-controls.d.ts +1 -0
- package/dist/llm/reasoning-controls.js +1 -0
- package/dist/llm/reasoning-controls.js.map +1 -1
- package/dist/llm/reasoning-errors.js +3 -1
- package/dist/llm/reasoning-errors.js.map +1 -1
- package/dist/llm/request-plan.js +18 -12
- package/dist/llm/request-plan.js.map +1 -1
- package/dist/llm/responses/item-events.js +2 -0
- package/dist/llm/responses/item-events.js.map +1 -1
- package/dist/llm/responses-config.d.ts +4 -1
- package/dist/llm/responses-config.js.map +1 -1
- package/dist/llm/responses-parse.d.ts +2 -1
- package/dist/llm/responses-parse.js +11 -45
- package/dist/llm/responses-parse.js.map +1 -1
- package/dist/llm/responses-replay.d.ts +3 -0
- package/dist/llm/responses-replay.js +48 -0
- package/dist/llm/responses-replay.js.map +1 -0
- package/dist/llm/responses-request.js +22 -8
- package/dist/llm/responses-request.js.map +1 -1
- package/dist/llm/responses-stream-accumulator.d.ts +4 -0
- package/dist/llm/responses-stream-accumulator.js +12 -1
- package/dist/llm/responses-stream-accumulator.js.map +1 -1
- package/dist/llm/responses-stream-events.js +14 -25
- package/dist/llm/responses-stream-events.js.map +1 -1
- package/dist/llm/responses-stream.js +1 -0
- package/dist/llm/responses-stream.js.map +1 -1
- package/dist/llm/responses-usage.d.ts +12 -0
- package/dist/llm/responses-usage.js +66 -0
- package/dist/llm/responses-usage.js.map +1 -0
- package/dist/llm/router.js +4 -4
- package/dist/llm/router.js.map +1 -1
- package/dist/llm/routing/attempt-complete.js +7 -2
- package/dist/llm/routing/attempt-complete.js.map +1 -1
- package/dist/llm/routing/attempt-request.js +4 -1
- package/dist/llm/routing/attempt-request.js.map +1 -1
- package/dist/llm/routing/attempt-stream.js +8 -2
- package/dist/llm/routing/attempt-stream.js.map +1 -1
- package/dist/llm/routing/error-classification.js +2 -2
- package/dist/llm/routing/error-classification.js.map +1 -1
- package/dist/llm/routing/provider-selection.js +6 -0
- package/dist/llm/routing/provider-selection.js.map +1 -1
- package/dist/llm/tokenharbor-cache.d.ts +4 -0
- package/dist/llm/tokenharbor-cache.js +10 -0
- package/dist/llm/tokenharbor-cache.js.map +1 -0
- package/dist/llm/tokenharbor.d.ts +8 -0
- package/dist/llm/tokenharbor.js +159 -0
- package/dist/llm/tokenharbor.js.map +1 -0
- package/dist/llm/wire/chat-body.d.ts +4 -3
- package/dist/llm/wire/chat-body.js +30 -5
- package/dist/llm/wire/chat-body.js.map +1 -1
- package/dist/llm/wire/effort-preflight.js +6 -10
- package/dist/llm/wire/effort-preflight.js.map +1 -1
- package/dist/llm/wire/openai-complete.d.ts +2 -1
- package/dist/llm/wire/openai-complete.js +1 -1
- package/dist/llm/wire/openai-complete.js.map +1 -1
- package/dist/llm/wire/openai-stream.d.ts +2 -1
- package/dist/llm/wire/openai-stream.js +1 -1
- package/dist/llm/wire/openai-stream.js.map +1 -1
- package/dist/llm/wire/responses-preflight.js +1 -0
- package/dist/llm/wire/responses-preflight.js.map +1 -1
- package/dist/modes/ask.js +2 -1
- package/dist/modes/ask.js.map +1 -1
- package/dist/noninteractive/readline-prompts.d.ts +2 -1
- package/dist/noninteractive/readline-prompts.js +34 -1
- package/dist/noninteractive/readline-prompts.js.map +1 -1
- package/dist/noninteractive/start-noninteractive.js +18 -0
- package/dist/noninteractive/start-noninteractive.js.map +1 -1
- package/dist/noninteractive/stdio-confirm-port.js +18 -6
- package/dist/noninteractive/stdio-confirm-port.js.map +1 -1
- package/dist/prompts/embedded.js +1 -1
- package/dist/prompts/embedded.js.map +1 -1
- package/dist/prompts/index.js +3 -2
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/system.agent.md +8 -8
- package/dist/safety/filesystem-permissions.d.ts +4 -0
- package/dist/safety/filesystem-permissions.js +113 -0
- package/dist/safety/filesystem-permissions.js.map +1 -0
- package/dist/safety/permission-mode.d.ts +5 -0
- package/dist/safety/permission-mode.js +22 -0
- package/dist/safety/permission-mode.js.map +1 -0
- package/dist/safety/shell-filesystem-effects.d.ts +14 -0
- package/dist/safety/shell-filesystem-effects.js +172 -0
- package/dist/safety/shell-filesystem-effects.js.map +1 -0
- package/dist/safety/shell-permission-words.d.ts +16 -0
- package/dist/safety/shell-permission-words.js +102 -0
- package/dist/safety/shell-permission-words.js.map +1 -0
- package/dist/safety/tool-classification.js +1 -1
- package/dist/safety/tool-classification.js.map +1 -1
- package/dist/store/config/endpoints.d.ts +2 -1
- package/dist/store/config/endpoints.js +5 -1
- package/dist/store/config/endpoints.js.map +1 -1
- package/dist/store/config.js +3 -0
- package/dist/store/config.js.map +1 -1
- package/dist/store/history.js +3 -0
- package/dist/store/history.js.map +1 -1
- package/dist/store/subagents.js +3 -2
- package/dist/store/subagents.js.map +1 -1
- package/dist/tools/capabilities.js +2 -2
- package/dist/tools/command-intent.d.ts +0 -1
- package/dist/tools/command-intent.js +3 -10
- package/dist/tools/command-intent.js.map +1 -1
- package/dist/tools/definitions/aggregate.js +5 -1
- package/dist/tools/definitions/aggregate.js.map +1 -1
- package/dist/tools/definitions/orchestration.js +2 -2
- package/dist/tools/definitions/orchestration.js.map +1 -1
- package/dist/tools/definitions/shell.js +6 -3
- package/dist/tools/definitions/shell.js.map +1 -1
- package/dist/tools/elevated-shell.d.ts +1 -0
- package/dist/tools/elevated-shell.js +2 -0
- package/dist/tools/elevated-shell.js.map +1 -1
- package/dist/tools/fs/search.js +12 -8
- package/dist/tools/fs/search.js.map +1 -1
- package/dist/tools/fs.d.ts +1 -0
- package/dist/tools/fs.js +22 -3
- package/dist/tools/fs.js.map +1 -1
- package/dist/tools/handlers/shell-1.js +18 -33
- package/dist/tools/handlers/shell-1.js.map +1 -1
- package/dist/tools/interactive-session-tools.js +1 -0
- package/dist/tools/interactive-session-tools.js.map +1 -1
- package/dist/tools/jobs/types.d.ts +2 -1
- package/dist/tools/jobs.js +1 -0
- package/dist/tools/jobs.js.map +1 -1
- package/dist/tools/shell/internals.d.ts +1 -1
- package/dist/tools/shell/internals.js +2 -1
- package/dist/tools/shell/internals.js.map +1 -1
- package/dist/tools/shell/timeout.d.ts +1 -0
- package/dist/tools/shell/timeout.js +2 -0
- package/dist/tools/shell/timeout.js.map +1 -0
- package/dist/tools/sudo-session.d.ts +4 -5
- package/dist/tools/sudo-session.js +1 -0
- package/dist/tools/sudo-session.js.map +1 -1
- package/dist/tools/tool-types.d.ts +2 -4
- package/dist/tui-v2/app/App.js +5 -1
- package/dist/tui-v2/app/App.js.map +1 -1
- package/dist/tui-v2/bootstrap/start-tui-v2.js +6 -0
- package/dist/tui-v2/bootstrap/start-tui-v2.js.map +1 -1
- package/dist/tui-v2/components/jobs/subagents-panel.js +15 -3
- package/dist/tui-v2/components/jobs/subagents-panel.js.map +1 -1
- package/dist/tui-v2/components/modal/confirm-modal.js +6 -2
- package/dist/tui-v2/components/modal/confirm-modal.js.map +1 -1
- package/dist/tui-v2/components/modal/secret-modal.d.ts +8 -0
- package/dist/tui-v2/components/modal/secret-modal.js +27 -18
- package/dist/tui-v2/components/modal/secret-modal.js.map +1 -1
- package/dist/tui-v2/components/overlay/overlay-host.js +14 -3
- package/dist/tui-v2/components/overlay/overlay-host.js.map +1 -1
- package/dist/tui-v2/components/pager/pager.js +7 -3
- package/dist/tui-v2/components/pager/pager.js.map +1 -1
- package/dist/tui-v2/components/picker/picker.js +17 -3
- package/dist/tui-v2/components/picker/picker.js.map +1 -1
- package/dist/tui-v2/components/transcript/intro-card.js +2 -1
- package/dist/tui-v2/components/transcript/intro-card.js.map +1 -1
- package/dist/tui-v2/composer/composer-editor.js +3 -2
- package/dist/tui-v2/composer/composer-editor.js.map +1 -1
- package/dist/tui-v2/input/paste-burst-guard.d.ts +22 -0
- package/dist/tui-v2/input/paste-burst-guard.js +123 -0
- package/dist/tui-v2/input/paste-burst-guard.js.map +1 -0
- package/dist/types.d.ts +8 -1
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -1
- package/dist/ui-core/bootstrap/composition-root.d.ts +2 -0
- package/dist/ui-core/bootstrap/composition-root.js +8 -0
- package/dist/ui-core/bootstrap/composition-root.js.map +1 -1
- package/dist/ui-core/bootstrap/overlay-ports.js +14 -5
- package/dist/ui-core/bootstrap/overlay-ports.js.map +1 -1
- package/dist/ui-core/commands/command-handlers.js +4 -3
- package/dist/ui-core/commands/command-handlers.js.map +1 -1
- package/dist/ui-core/commands/key-commands.d.ts +2 -0
- package/dist/ui-core/commands/key-commands.js +173 -0
- package/dist/ui-core/commands/key-commands.js.map +1 -1
- package/dist/ui-core/commands/picker-commands.js +15 -0
- package/dist/ui-core/commands/picker-commands.js.map +1 -1
- package/dist/ui-core/commands/pickers/output-pager.js +19 -8
- package/dist/ui-core/commands/pickers/output-pager.js.map +1 -1
- package/dist/ui-core/commands/pickers/search-reasoning.js.map +1 -1
- package/dist/ui-core/commands/session-commands.d.ts +1 -1
- package/dist/ui-core/commands/session-commands.js +67 -32
- package/dist/ui-core/commands/session-commands.js.map +1 -1
- package/dist/ui-core/commands/subagent-commands.d.ts +1 -1
- package/dist/ui-core/commands/subagent-commands.js +9 -8
- package/dist/ui-core/commands/subagent-commands.js.map +1 -1
- package/dist/ui-core/composer/composer-meta.js +2 -5
- package/dist/ui-core/composer/composer-meta.js.map +1 -1
- package/dist/ui-core/controllers/overlay-controller.d.ts +6 -0
- package/dist/ui-core/controllers/overlay-controller.js +27 -6
- package/dist/ui-core/controllers/overlay-controller.js.map +1 -1
- package/dist/ui-core/input/paste-burst.d.ts +45 -0
- package/dist/ui-core/input/paste-burst.js +170 -0
- package/dist/ui-core/input/paste-burst.js.map +1 -0
- package/dist/ui-core/input/paste-text.d.ts +1 -0
- package/dist/ui-core/input/paste-text.js +4 -0
- package/dist/ui-core/input/paste-text.js.map +1 -0
- package/dist/ui-core/rendering/duration.d.ts +2 -0
- package/dist/ui-core/rendering/duration.js +8 -0
- package/dist/ui-core/rendering/duration.js.map +1 -1
- package/dist/ui-core/rendering/exit-summary/table.js +4 -1
- package/dist/ui-core/rendering/exit-summary/table.js.map +1 -1
- package/dist/ui-core/rendering/format-usage.js +9 -2
- package/dist/ui-core/rendering/format-usage.js.map +1 -1
- package/dist/ui-core/rendering/intro-header.js +5 -6
- package/dist/ui-core/rendering/intro-header.js.map +1 -1
- package/dist/ui-core/rendering/subagent-source.d.ts +3 -2
- package/dist/ui-core/rendering/subagent-source.js +42 -6
- package/dist/ui-core/rendering/subagent-source.js.map +1 -1
- package/dist/ui-core/rendering/theme.js +4 -4
- package/dist/ui-core/rendering/usage-pager-source.js +6 -2
- package/dist/ui-core/rendering/usage-pager-source.js.map +1 -1
- package/dist/version.generated.d.ts +2 -2
- package/dist/version.generated.js +2 -2
- package/dist/version.generated.js.map +1 -1
- package/package.json +1 -1
|
@@ -2,12 +2,15 @@ import { isInternalChatMessage } from "../../types.js";
|
|
|
2
2
|
export const USER_CREDENTIALS_HEADING = "User-provided credentials (verbatim from the user; use only for the work the user requested):";
|
|
3
3
|
const MAX_CREDENTIALS = 16;
|
|
4
4
|
const MAX_LINE_CHARS = 600;
|
|
5
|
+
const MAX_COMPANION_LINES = 3;
|
|
5
6
|
const CONTEXT_CHARS = 80;
|
|
6
7
|
const REDACTION_MARKERS = ["••••", "[redacted]"];
|
|
8
|
+
const SECRET_QUALIFIERS = "api|access|secret|private|auth|license|signing|encryption|client|app|test|live|publishable|webhook|bearer|session|refresh";
|
|
9
|
+
const SPOKEN_SECRET = String.raw `\b(?:${SECRET_QUALIFIERS})[\s_-]?(?:key|secret|token)s?\b[\s"'\x60]{0,4}(?:is|are|=|:)[\s"'\x60]{0,4}(?=[^\s"'\x60]*\d)[^\s"'\x60]{8,}`;
|
|
7
10
|
const CREDENTIAL_PATTERN = new RegExp([
|
|
8
11
|
String.raw `\b(?:sk|pk|rk)_(?:live|test)_[A-Za-z0-9]{10,}`,
|
|
9
12
|
String.raw `\bsk-[A-Za-z0-9._-]{16,}`,
|
|
10
|
-
String.raw `\b(?:gsk|hf|r8|glpat|npm|tvly|pplx|xai|nvapi|fw)[_-][A-Za-z0-9_-]{16,}`,
|
|
13
|
+
String.raw `\b(?:gsk|hf|r8|glpat|npm|tvly|pplx|xai|nvapi|fw|thk)[_-][A-Za-z0-9_-]{16,}`,
|
|
11
14
|
String.raw `\bgh[pousr]_[A-Za-z0-9]{20,}`,
|
|
12
15
|
String.raw `\bgithub_pat_[A-Za-z0-9_]{20,}`,
|
|
13
16
|
String.raw `\bxox[abprs]-[A-Za-z0-9-]{10,}`,
|
|
@@ -19,20 +22,46 @@ const CREDENTIAL_PATTERN = new RegExp([
|
|
|
19
22
|
String.raw `\b[a-z][a-z0-9+.-]{0,30}:\/\/[^\s:@/]{1,256}:[^\s@/]{1,256}@\S+`,
|
|
20
23
|
String.raw `\b[\w.-]{0,40}(?:api[_-]?key|apikey|secret|token|passw(?:or)?d|passphrase|pwd|credentials?|access[_-]?key|private[_-]?key)[\w.-]{0,40}["']?\s{0,8}[:=]\s{0,8}["'\x60]?[^\s"'\x60]{4,}`,
|
|
21
24
|
String.raw `\b(?:password|passphrase|passcode|pin)\s+is\s+\S{4,}`,
|
|
25
|
+
SPOKEN_SECRET,
|
|
22
26
|
].join("|"), "gi");
|
|
27
|
+
const IDENTITY_LINE = new RegExp(String.raw `^(?:user(?:name)?|login|e-?mail|account(?:[\s_-]?(?:id|name))?|host(?:name)?|url|endpoint|base[\s_-]?url|tenant|project(?:[\s_-]?id)?|region|client[\s_-]?id|org(?:anization)?(?:[\s_-]?id)?|database|db(?:[\s_-]?name)?|port)\s*[:=]\s*\S`, "i");
|
|
23
28
|
const windowsAround = (line) => [...line.matchAll(CREDENTIAL_PATTERN)].map((match) => {
|
|
24
29
|
const start = Math.max(0, match.index - CONTEXT_CHARS);
|
|
25
30
|
const end = match.index + match[0].length;
|
|
26
31
|
return `${start > 0 ? "…" : ""}${line.slice(start, end)}${end < line.length ? "…" : ""}`;
|
|
27
32
|
});
|
|
28
|
-
const
|
|
29
|
-
const line = raw.trim();
|
|
33
|
+
const hasCredential = (line) => {
|
|
30
34
|
CREDENTIAL_PATTERN.lastIndex = 0;
|
|
31
|
-
|
|
32
|
-
return [];
|
|
35
|
+
const found = CREDENTIAL_PATTERN.test(line);
|
|
33
36
|
CREDENTIAL_PATTERN.lastIndex = 0;
|
|
34
|
-
return
|
|
35
|
-
}
|
|
37
|
+
return found;
|
|
38
|
+
};
|
|
39
|
+
const companionIndexes = (lines, anchor, direction) => {
|
|
40
|
+
const found = [];
|
|
41
|
+
for (let cursor = anchor + direction; found.length < MAX_COMPANION_LINES && IDENTITY_LINE.test(lines[cursor] ?? ""); cursor += direction) {
|
|
42
|
+
found.push(cursor);
|
|
43
|
+
}
|
|
44
|
+
return found;
|
|
45
|
+
};
|
|
46
|
+
const credentialLines = (text) => {
|
|
47
|
+
const lines = text.split(/\r?\n/).map((raw) => raw.trim());
|
|
48
|
+
const secrets = new Set(lines.flatMap((line, index) => (line && hasCredential(line) ? [index] : [])));
|
|
49
|
+
const included = new Set(secrets);
|
|
50
|
+
for (const anchor of secrets) {
|
|
51
|
+
for (const direction of [-1, 1]) {
|
|
52
|
+
for (const index of companionIndexes(lines, anchor, direction))
|
|
53
|
+
included.add(index);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return [...included]
|
|
57
|
+
.sort((a, b) => a - b)
|
|
58
|
+
.flatMap((index) => {
|
|
59
|
+
const line = lines[index];
|
|
60
|
+
if (line.length <= MAX_LINE_CHARS)
|
|
61
|
+
return [line];
|
|
62
|
+
return secrets.has(index) ? windowsAround(line) : [line.slice(0, MAX_LINE_CHARS)];
|
|
63
|
+
});
|
|
64
|
+
};
|
|
36
65
|
const carriedCredentials = (content) => {
|
|
37
66
|
const lines = content.split("\n");
|
|
38
67
|
const start = lines.indexOf(USER_CREDENTIALS_HEADING);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-credentials.js","sourceRoot":"","sources":["../../../src/agent/context/user-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAoB,MAAM,gBAAgB,CAAC;AAEzE,MAAM,CAAC,MAAM,wBAAwB,GACnC,+FAA+F,CAAC;AAElG,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,iBAAiB,GAAsB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEpE,MAAM,kBAAkB,GAAG,IAAI,MAAM,CACnC;IACE,MAAM,CAAC,GAAG,CAAA,+CAA+C;IACzD,MAAM,CAAC,GAAG,CAAA,0BAA0B;IACpC,MAAM,CAAC,GAAG,CAAA,
|
|
1
|
+
{"version":3,"file":"user-credentials.js","sourceRoot":"","sources":["../../../src/agent/context/user-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAoB,MAAM,gBAAgB,CAAC;AAEzE,MAAM,CAAC,MAAM,wBAAwB,GACnC,+FAA+F,CAAC;AAElG,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,iBAAiB,GAAsB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEpE,MAAM,iBAAiB,GACrB,2HAA2H,CAAC;AAE9H,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA,QAAQ,iBAAiB,+GAA+G,CAAC;AAEzK,MAAM,kBAAkB,GAAG,IAAI,MAAM,CACnC;IACE,MAAM,CAAC,GAAG,CAAA,+CAA+C;IACzD,MAAM,CAAC,GAAG,CAAA,0BAA0B;IACpC,MAAM,CAAC,GAAG,CAAA,4EAA4E;IACtF,MAAM,CAAC,GAAG,CAAA,8BAA8B;IACxC,MAAM,CAAC,GAAG,CAAA,gCAAgC;IAC1C,MAAM,CAAC,GAAG,CAAA,gCAAgC;IAC1C,MAAM,CAAC,GAAG,CAAA,0BAA0B;IACpC,MAAM,CAAC,GAAG,CAAA,8BAA8B;IACxC,MAAM,CAAC,GAAG,CAAA,iEAAiE;IAC3E,MAAM,CAAC,GAAG,CAAA,8CAA8C;IACxD,MAAM,CAAC,GAAG,CAAA,oCAAoC;IAC9C,MAAM,CAAC,GAAG,CAAA,iEAAiE;IAC3E,MAAM,CAAC,GAAG,CAAA,uLAAuL;IACjM,MAAM,CAAC,GAAG,CAAA,sDAAsD;IAChE,aAAa;CACd,CAAC,IAAI,CAAC,GAAG,CAAC,EACX,IAAI,CACL,CAAC;AAEF,MAAM,aAAa,GAAG,IAAI,MAAM,CAC9B,MAAM,CAAC,GAAG,CAAA,4OAA4O,EACtP,GAAG,CACJ,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAY,EAAY,EAAE,CAC/C,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,aAAa,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC1C,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AAC3F,CAAC,CAAC,CAAC;AAEL,MAAM,aAAa,GAAG,CAAC,IAAY,EAAW,EAAE;IAC9C,kBAAkB,CAAC,SAAS,GAAG,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,kBAAkB,CAAC,SAAS,GAAG,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,KAAwB,EACxB,MAAc,EACd,SAAiB,EACP,EAAE;IACZ,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KACE,IAAI,MAAM,GAAG,MAAM,GAAG,SAAS,EAC/B,KAAK,CAAC,MAAM,GAAG,mBAAmB,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAC7E,MAAM,IAAI,SAAS,EACnB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,IAAY,EAAY,EAAE;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAC7E,CAAC;IACF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAClC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,MAAM,SAAS,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAU,EAAE,CAAC;YACzC,KAAK,MAAM,KAAK,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC;gBAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,QAAQ,CAAC;SACjB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;SACrB,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACjB,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,MAAM,IAAI,cAAc;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,OAAe,EAAY,EAAE;IACvD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACtD,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACzB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,MAAM;QAClC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,UAAU,sBAAsB,CACpC,QAAgC,EAChC,UAAwC;IAExC,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QACzC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7D,OAAO,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,qBAAqB,CAAC,OAAO,CAAC;YAAE,OAAO,EAAE,CAAC;QACzE,OAAO,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG;QACb,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KAC/F,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,WAA8B;IAClE,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC;QAC3B,CAAC,CAAC,CAAC,wBAAwB,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC,CAAC,EAAE,CAAC;AACT,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { stripThinking } from "../ui/thinking.js";
|
|
|
2
2
|
import { hasReasoningMarker, stripReasoningMarkers, } from "../llm/reasoning-marker.js";
|
|
3
3
|
import { expandKeepStartForToolPairs, hasOrphanToolMessages, projectToolHistory, } from "./tool-history.js";
|
|
4
4
|
import { isResponderResultLedgerMessage } from "./responder-context.js";
|
|
5
|
+
import { latestUserMessage } from "./context/latest-user-message.js";
|
|
5
6
|
import { estimateImageTokens, estimateMessagesTokens, estimateTextTokens as estimateTokens, } from "./request-accounting.js";
|
|
6
7
|
import { DEFAULT_KEEP_RECENT, MECHANICAL_MEMORY_PREFIX, isCompactionMemoryMessage } from "./context/compact-with-summary.js";
|
|
7
8
|
export { COMPACTION_MEMORY_PREFIX, PLAN_IMPLEMENT_MEMORY_PREFIX, POST_COMPACT_SOFT_UPPER_BAND_TOKENS, compactMessagesWithSummary, compactionMemoryPrefixForPurpose } from "./context/compact-with-summary.js";
|
|
@@ -76,7 +77,9 @@ export function compactMessages(messages, options = {}) {
|
|
|
76
77
|
}
|
|
77
78
|
}
|
|
78
79
|
const preservedLedger = ledger && !head.includes(ledger) && !tail.includes(ledger) ? [ledger] : [];
|
|
79
|
-
|
|
80
|
+
const latestUser = latestUserMessage(messages);
|
|
81
|
+
const preservedUser = latestUser && !tail.includes(latestUser) ? [latestUser] : [];
|
|
82
|
+
return [...head, memo, ...preservedUser, ...preservedLedger, ...tail];
|
|
80
83
|
}
|
|
81
84
|
export function shouldApplyAutoCompact(input) {
|
|
82
85
|
if (!input.summarized)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-manager.js","sourceRoot":"","sources":["../../src/agent/context-manager.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"context-manager.js","sourceRoot":"","sources":["../../src/agent/context-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,11 +11,16 @@ export declare class WorkLedger {
|
|
|
11
11
|
artifactPaths(): string[];
|
|
12
12
|
get size(): number;
|
|
13
13
|
}
|
|
14
|
+
export interface ResultConclusion {
|
|
15
|
+
readonly jobId: string;
|
|
16
|
+
readonly conclusion: string;
|
|
17
|
+
}
|
|
14
18
|
export interface ResponderEnvelopeState {
|
|
15
19
|
readonly unread: readonly string[];
|
|
16
20
|
readonly consumed: readonly string[];
|
|
17
21
|
readonly unreadJobs?: readonly string[] | undefined;
|
|
18
22
|
readonly consumedJobs?: readonly string[] | undefined;
|
|
23
|
+
readonly conclusions?: readonly ResultConclusion[] | undefined;
|
|
19
24
|
}
|
|
20
25
|
export interface EnvelopeJobState {
|
|
21
26
|
readonly id: string;
|
|
@@ -50,3 +55,4 @@ export interface DurableEnvelopeInput {
|
|
|
50
55
|
}
|
|
51
56
|
export declare function buildDurableEnvelope(input: DurableEnvelopeInput): string | undefined;
|
|
52
57
|
export declare function isDurableEnvelopeContent(content: string): boolean;
|
|
58
|
+
export declare function summarizeCarriedWork(input: DurableEnvelopeInput): string | undefined;
|
|
@@ -2,6 +2,7 @@ import { relative } from "node:path";
|
|
|
2
2
|
import { scratchWriteTargetPaths } from "./scratch-write.js";
|
|
3
3
|
import { foregroundActiveTask, foregroundRemaining, foregroundTasks, } from "../store/plan.js";
|
|
4
4
|
import { renderUserCredentials } from "./context/user-credentials.js";
|
|
5
|
+
import { MAX_RESULT_DIGEST_CHARS } from "./responder-context.js";
|
|
5
6
|
export const DURABLE_ENVELOPE_PREFIX = "DURABLE WORK ENVELOPE";
|
|
6
7
|
const MAX_LIST_ENTRIES = 20;
|
|
7
8
|
const MAX_STATEMENT_CHARS = 180;
|
|
@@ -44,6 +45,10 @@ export class WorkLedger {
|
|
|
44
45
|
return this.files.size + this.artifacts.size;
|
|
45
46
|
}
|
|
46
47
|
}
|
|
48
|
+
function omittedNote(total, shown, noun) {
|
|
49
|
+
const hidden = total - shown;
|
|
50
|
+
return hidden > 0 ? `(+${hidden} earlier ${noun} omitted)` : undefined;
|
|
51
|
+
}
|
|
47
52
|
function clip(text, max = MAX_STATEMENT_CHARS) {
|
|
48
53
|
const cleaned = text.replace(/\s+/g, " ").trim();
|
|
49
54
|
return cleaned.length <= max ? cleaned : `${cleaned.slice(0, max - 1)}…`;
|
|
@@ -84,7 +89,9 @@ function responderTaskLines(input, lines) {
|
|
|
84
89
|
if (delegated.length === 0)
|
|
85
90
|
return;
|
|
86
91
|
const jobs = new Map([...(input.finishedJobs ?? []), ...(input.liveJobs ?? [])].map((job) => [job.id, job]));
|
|
87
|
-
const
|
|
92
|
+
const shownTasks = delegated.slice(-MAX_LIST_ENTRIES);
|
|
93
|
+
const omittedTasks = omittedNote(delegated.length, shownTasks.length, "tasks");
|
|
94
|
+
const rendered = shownTasks.map((task) => {
|
|
88
95
|
const parent = task.parentTaskId ? ` parent=${task.parentTaskId}` : "";
|
|
89
96
|
const job = task.jobId ? jobs.get(task.jobId) : undefined;
|
|
90
97
|
const exit = job?.exitCode !== undefined ? ` exit=${job.exitCode}` : "";
|
|
@@ -93,7 +100,15 @@ function responderTaskLines(input, lines) {
|
|
|
93
100
|
: "";
|
|
94
101
|
return `[${task.id}] ${clip(task.title, 90)} (${task.state})${parent}${linked}`;
|
|
95
102
|
});
|
|
96
|
-
lines.push(`Responder-delegated tasks (results arrive in the inbox; job.read acknowledges one): ${rendered.join("; ")}`);
|
|
103
|
+
lines.push(`Responder-delegated tasks (results arrive in the inbox; job.read acknowledges one): ${[omittedTasks, ...rendered].filter(Boolean).join("; ")}`);
|
|
104
|
+
}
|
|
105
|
+
function conclusionLines(responder, lines) {
|
|
106
|
+
const entries = responder?.conclusions ?? [];
|
|
107
|
+
if (entries.length === 0)
|
|
108
|
+
return;
|
|
109
|
+
const shown = entries.slice(-MAX_LIST_ENTRIES);
|
|
110
|
+
const omitted = omittedNote(entries.length, shown.length, "conclusions");
|
|
111
|
+
lines.push("Result conclusions (recorded when each result was read; rely on these instead of re-reading):", ...(omitted ? [`- ${omitted}`] : []), ...shown.map(({ jobId, conclusion }) => `- [${jobId}] ${clip(conclusion, MAX_RESULT_DIGEST_CHARS)}`));
|
|
97
112
|
}
|
|
98
113
|
const SUBAGENT_RESULT_NOTE = {
|
|
99
114
|
running: "",
|
|
@@ -104,7 +119,9 @@ const SUBAGENT_RESULT_NOTE = {
|
|
|
104
119
|
function subagentLines(subagents, lines) {
|
|
105
120
|
if (!subagents?.length)
|
|
106
121
|
return;
|
|
107
|
-
|
|
122
|
+
const shown = subagents.slice(-MAX_LIST_ENTRIES);
|
|
123
|
+
const omitted = omittedNote(subagents.length, shown.length, "runs");
|
|
124
|
+
lines.push('Subagents (subagent.read {id, view:"summary"} recovers a result; view:"report" pages the full report):', ...(omitted ? [`- ${omitted}`] : []), ...shown.map((run) => {
|
|
108
125
|
const digest = run.digest ? ` — ${clip(run.digest, SUBAGENT_DIGEST_CHARS)}` : "";
|
|
109
126
|
return `- [${run.id}] ${clip(run.title, 90)} (${run.status}, attempt ${run.attempt}${SUBAGENT_RESULT_NOTE[run.result]})${digest}`;
|
|
110
127
|
}));
|
|
@@ -153,16 +170,12 @@ function jobLines(input, lines) {
|
|
|
153
170
|
const live = input.liveJobs ?? [];
|
|
154
171
|
const finished = input.finishedJobs ?? [];
|
|
155
172
|
if (live.length > 0) {
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
.map(renderJob)
|
|
159
|
-
.join("; ")}`);
|
|
173
|
+
const shown = live.slice(0, MAX_LIST_ENTRIES);
|
|
174
|
+
lines.push(`Live background jobs (do not relaunch; shell.tail {id} reads a regular job, responder jobs report through the inbox): ${[...shown.map(renderJob), omittedNote(live.length, shown.length, "jobs")].filter(Boolean).join("; ")}`);
|
|
160
175
|
}
|
|
161
176
|
if (finished.length > 0) {
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
.map(renderJob)
|
|
165
|
-
.join("; ")}`);
|
|
177
|
+
const shown = finished.slice(0, MAX_LIST_ENTRIES);
|
|
178
|
+
lines.push(`Finished background jobs (harvest output before redoing the work): ${[...shown.map(renderJob), omittedNote(finished.length, shown.length, "jobs")].filter(Boolean).join("; ")}`);
|
|
166
179
|
}
|
|
167
180
|
}
|
|
168
181
|
export function buildDurableEnvelope(input) {
|
|
@@ -184,6 +197,7 @@ export function buildDurableEnvelope(input) {
|
|
|
184
197
|
lines.push(`Consumed responder results (never re-read): ${input.responder.consumed.join(", ")}`);
|
|
185
198
|
}
|
|
186
199
|
}
|
|
200
|
+
conclusionLines(input.responder, lines);
|
|
187
201
|
jobLines(input, lines);
|
|
188
202
|
responderTaskLines(input, lines);
|
|
189
203
|
subagentLines(input.subagents, lines);
|
|
@@ -217,4 +231,29 @@ export function buildDurableEnvelope(input) {
|
|
|
217
231
|
export function isDurableEnvelopeContent(content) {
|
|
218
232
|
return content.startsWith(DURABLE_ENVELOPE_PREFIX);
|
|
219
233
|
}
|
|
234
|
+
const plural = (count, noun) => `${count} ${noun}${count === 1 ? "" : "s"}`;
|
|
235
|
+
export function summarizeCarriedWork(input) {
|
|
236
|
+
const subagents = input.subagents ?? [];
|
|
237
|
+
const delegated = (input.plan?.tasks ?? []).filter((task) => task.responderOwned);
|
|
238
|
+
const conclusions = input.responder?.conclusions?.length ?? 0;
|
|
239
|
+
const parts = [
|
|
240
|
+
subagents.length > 0
|
|
241
|
+
? `${plural(subagents.length, "subagent")} (${subagents.filter((run) => run.result === "read").length} read)`
|
|
242
|
+
: undefined,
|
|
243
|
+
(input.liveJobs?.length ?? 0) > 0
|
|
244
|
+
? plural(input.liveJobs.length, "live job")
|
|
245
|
+
: undefined,
|
|
246
|
+
(input.finishedJobs?.length ?? 0) > 0
|
|
247
|
+
? plural(input.finishedJobs.length, "finished job")
|
|
248
|
+
: undefined,
|
|
249
|
+
delegated.length > 0 ? plural(delegated.length, "delegated task") : undefined,
|
|
250
|
+
(input.responder?.consumed.length ?? 0) > 0
|
|
251
|
+
? `${plural(input.responder.consumed.length, "responder result")} read (${conclusions} with a conclusion)`
|
|
252
|
+
: undefined,
|
|
253
|
+
(input.credentials?.length ?? 0) > 0
|
|
254
|
+
? plural(input.credentials.length, "credential")
|
|
255
|
+
: undefined,
|
|
256
|
+
].filter((part) => part !== undefined);
|
|
257
|
+
return parts.length > 0 ? parts.join(" · ") : undefined;
|
|
258
|
+
}
|
|
220
259
|
//# sourceMappingURL=durable-envelope.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"durable-envelope.js","sourceRoot":"","sources":["../../src/agent/durable-envelope.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"durable-envelope.js","sourceRoot":"","sources":["../../src/agent/durable-envelope.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { DEFAULT_SHELL_TIMEOUT_MS } from "../../tools/shell/timeout.js";
|
|
1
2
|
export function isScaffoldCreateCommand(cmd) {
|
|
2
3
|
return /\b(?:npm\s+create|npm\s+init|yarn\s+create|pnpm\s+create|bun\s+create|npx\s+(?:--yes\s+)?create-[\w-]+|create-vite|create-next-app|create-react-app|cargo\s+new|cargo\s+init|go\s+mod\s+init|poetry\s+new|django-admin\s+startproject|rails\s+new|composer\s+create-project|mix\s+new|flutter\s+create|dotnet\s+new)\b/i.test(cmd);
|
|
3
4
|
}
|
|
@@ -48,23 +49,12 @@ function requestedToolTimeoutMs(call) {
|
|
|
48
49
|
requested = parsed;
|
|
49
50
|
}
|
|
50
51
|
if (requested !== undefined) {
|
|
51
|
-
|
|
52
|
-
const cmd = typeof call.args.command === "string" ? call.args.command : "";
|
|
53
|
-
const isLongRunning = isLongRunningTestOrBuildCommand(cmd) || isLongQuietInstallOrScaffoldCommand(cmd);
|
|
54
|
-
if (isLongRunning && ms > 0 && ms < 1000) {
|
|
55
|
-
ms = ms * 1000;
|
|
56
|
-
}
|
|
57
|
-
return Math.max(MIN_TOOL_TIMEOUT_MS, Math.min(MAX_TOOL_TIMEOUT_MS, ms));
|
|
58
|
-
}
|
|
59
|
-
const cmd = typeof call.args.command === "string" ? call.args.command : "";
|
|
60
|
-
if (call.name === "shell.exec" && isLongQuietInstallOrScaffoldCommand(cmd)) {
|
|
61
|
-
return 15 * 60_000;
|
|
62
|
-
}
|
|
63
|
-
if (call.name === "shell.exec" && isLongRunningTestOrBuildCommand(cmd)) {
|
|
64
|
-
return 120_000;
|
|
52
|
+
return Math.max(MIN_TOOL_TIMEOUT_MS, Math.min(MAX_TOOL_TIMEOUT_MS, Math.floor(requested)));
|
|
65
53
|
}
|
|
66
54
|
if (call.name.startsWith("mcp."))
|
|
67
55
|
return 60_000;
|
|
56
|
+
if (call.name === "shell.exec")
|
|
57
|
+
return DEFAULT_SHELL_TIMEOUT_MS;
|
|
68
58
|
return DEFAULT_TOOL_TIMEOUT_MS;
|
|
69
59
|
}
|
|
70
60
|
const OUTER_STALL_SETTLE_MARGIN_MS = 2_500;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-budgets.js","sourceRoot":"","sources":["../../../src/agent/evidence/tool-budgets.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,uBAAuB,CAAC,GAAW;IACjD,OAAO,yTAAyT,CAAC,IAAI,CACnU,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,GAAW;IACnD,OAAO,2OAA2O,CAAC,IAAI,CACrP,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,GAAW;IAC7D,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,KAAK,CAAC;IAC9B,IAAI,uBAAuB,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,yBAAyB,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,CACL,2CAA2C,CAAC,IAAI,CAAC,GAAG,CAAC;QACrD,4CAA4C,CAAC,IAAI,CAAC,GAAG,CAAC;QACtD,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC;QACpC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC;QACjC,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC;QACnC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC;QACjC,sCAAsC,CAAC,IAAI,CAAC,GAAG,CAAC;QAChD,mCAAmC,CAAC,IAAI,CAAC,GAAG,CAAC;QAC7C,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,GAAW;IACzD,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,KAAK,CAAC;IAC9B,OAAO,CACL,yEAAyE,CAAC,IAAI,CAAC,GAAG,CAAC;QACnF,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;QACvB,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;QACrB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC;QACtB,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC;QAClC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC;QAC9B,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC;QAC9B,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAC3B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE9C,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAElC,MAAM,mBAAmB,GAAG,EAAE,GAAG,MAAM,CAAC;AAExC,SAAS,sBAAsB,CAAC,IAG/B;IACC,IAAI,SAA6B,CAAC;IAClC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;IAChC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACpD,SAAS,GAAG,GAAG,CAAC;IAClB,CAAC;SAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACxD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,SAAS,GAAG,MAAM,CAAC;IAClD,CAAC;IACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,
|
|
1
|
+
{"version":3,"file":"tool-budgets.js","sourceRoot":"","sources":["../../../src/agent/evidence/tool-budgets.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import type { BackgroundJob, ResponderNotification } from "../tools/jobs.js";
|
|
2
2
|
export declare const RESPONDER_CONTEXT_PREFIX = "RESPONDER / DURABLE JOB INBOX";
|
|
3
3
|
export declare const RESPONDER_RESULT_LEDGER_PREFIX = "RESPONDER RESULT LEDGER (authoritative consumed results)";
|
|
4
|
+
export declare const MAX_RESULT_DIGEST_CHARS = 280;
|
|
5
|
+
export interface ResponderLedgerFields {
|
|
6
|
+
readonly notificationId?: string | undefined;
|
|
7
|
+
readonly jobId?: string | undefined;
|
|
8
|
+
readonly digest?: string | undefined;
|
|
9
|
+
}
|
|
10
|
+
export declare function normalizeResultDigest(value: unknown): string | undefined;
|
|
11
|
+
export declare function parseResponderLedgerLine(line: string): ResponderLedgerFields;
|
|
4
12
|
export declare function responderContextMessage(input: {
|
|
5
13
|
running: readonly BackgroundJob[];
|
|
6
14
|
pending: readonly ResponderNotification[];
|
|
@@ -1,10 +1,41 @@
|
|
|
1
|
+
import { redactSecrets } from "../llm/provider.js";
|
|
1
2
|
export const RESPONDER_CONTEXT_PREFIX = "RESPONDER / DURABLE JOB INBOX";
|
|
2
3
|
export const RESPONDER_RESULT_LEDGER_PREFIX = "RESPONDER RESULT LEDGER (authoritative consumed results)";
|
|
3
4
|
const MAX_LEDGER_ENTRIES = 32;
|
|
5
|
+
export const MAX_RESULT_DIGEST_CHARS = 280;
|
|
6
|
+
const LEDGER_DIGEST_FIELD = /\ssummary=("(?:[^"\\]|\\.)*")$/;
|
|
4
7
|
function oneLine(value, max = 120) {
|
|
5
8
|
const clean = value.replace(/\s+/g, " ").trim();
|
|
6
9
|
return clean.length <= max ? clean : `${clean.slice(0, max - 1)}…`;
|
|
7
10
|
}
|
|
11
|
+
export function normalizeResultDigest(value) {
|
|
12
|
+
if (typeof value !== "string")
|
|
13
|
+
return undefined;
|
|
14
|
+
const digest = oneLine(redactSecrets(value), MAX_RESULT_DIGEST_CHARS);
|
|
15
|
+
return digest.length > 0 ? digest : undefined;
|
|
16
|
+
}
|
|
17
|
+
function parseLedgerDigest(line) {
|
|
18
|
+
const quoted = LEDGER_DIGEST_FIELD.exec(line)?.[1];
|
|
19
|
+
if (!quoted)
|
|
20
|
+
return undefined;
|
|
21
|
+
try {
|
|
22
|
+
const parsed = JSON.parse(quoted);
|
|
23
|
+
return typeof parsed === "string" && parsed.length > 0 ? parsed : undefined;
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export function parseResponderLedgerLine(line) {
|
|
30
|
+
const notificationId = /notification=(\S+)/.exec(line)?.[1];
|
|
31
|
+
const jobId = /\bjob=(\S+)/.exec(line)?.[1];
|
|
32
|
+
const digest = parseLedgerDigest(line);
|
|
33
|
+
return {
|
|
34
|
+
...(notificationId ? { notificationId } : {}),
|
|
35
|
+
...(jobId ? { jobId } : {}),
|
|
36
|
+
...(digest ? { digest } : {}),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
8
39
|
function receiptPath(notification) {
|
|
9
40
|
return (notification.stdoutArtifact.chunks.at(-1) ??
|
|
10
41
|
notification.stdoutArtifact.path);
|
|
@@ -35,7 +66,7 @@ export function responderContextMessage(input) {
|
|
|
35
66
|
` stderr=${notification.stderrArtifact.path}`);
|
|
36
67
|
}
|
|
37
68
|
}
|
|
38
|
-
lines.push("FIRE AND CONTINUE: after launching, move to the next task immediately. Do NOT sleep, shell.jobs-poll, repeat shell.tail, or fs.read the job log to watch progress — this inbox delivers each completion to you automatically at the next safe model boundary.", "PARENT-DONE RULE: a parent task is done when its own non-Responder work is done; Responder-owned child subtasks advance from the real process lifecycle — never mark, block on, or wait for them.", "TASK SETTLEMENT: Responder-owned tasks reconcile automatically from the latest authoritative job result after analysis. Do not call task.update for that child.", "MANDATORY READ RECEIPT: after analyzing a delivered completion and deciding its job is finished, call job.read with that job id or exact notification id. job.read is plan-independent, records delivered + read atomically, and is required before a final response. Do not create a plan merely to acknowledge a job.", "ON COMPLETION: extract only the key result lines with a filter or bounded shell.tail window, never a full noisy scanner log. Add evidence-driven follow-up tasks only when an active plan exists and the result requires them; otherwise report the result directly after job.read. Never launch a duplicate while a job is live.", "PARENT OWNERSHIP: when you delegate to the Responder, pass parentTaskId with the plan task id that owns the work (e.g. parentTaskId:\"t3\"). The child subtask is created under exactly that task; an unknown, completed, or Responder-owned id is rejected.", "DECLARED WAITS ONLY: never idle because a Responder job is running. If a foreground task genuinely cannot start until a child finishes, declare that child as its dependency when you add it; otherwise keep executing the next dependency-ready task and fold late results in as an addendum.", "FRAME COMMANDS TO PRESERVE THE KEY FIELDS: choose flags/output so the completed result still carries exactly what you need and little else — e.g. ffuf with -json (or a matcher on real codes, not a blanket -mc all), nmap -oX/-oG, grep -o for just the hits. Never run a command that discards the required signal.", "ONLY when every other non-report task is finished and nothing else remains may you call shell.jobs ONCE. If jobs are still live, STOP and report what you did plus which jobs are running — do not enter a sleep/poll/tail loop.");
|
|
69
|
+
lines.push("FIRE AND CONTINUE: after launching, move to the next task immediately. Do NOT sleep, shell.jobs-poll, repeat shell.tail, or fs.read the job log to watch progress — this inbox delivers each completion to you automatically at the next safe model boundary.", "PARENT-DONE RULE: a parent task is done when its own non-Responder work is done; Responder-owned child subtasks advance from the real process lifecycle — never mark, block on, or wait for them.", "TASK SETTLEMENT: Responder-owned tasks reconcile automatically from the latest authoritative job result after analysis. Do not call task.update for that child.", "MANDATORY READ RECEIPT: after analyzing a delivered completion and deciding its job is finished, call job.read with that job id or exact notification id, plus summary: one or two sentences with the conclusion later work depends on (key findings, not raw output). The summary is kept across context compaction, so the result never needs re-reading. job.read is plan-independent, records delivered + read atomically, and is required before a final response. Do not create a plan merely to acknowledge a job.", "ON COMPLETION: extract only the key result lines with a filter or bounded shell.tail window, never a full noisy scanner log. Add evidence-driven follow-up tasks only when an active plan exists and the result requires them; otherwise report the result directly after job.read. Never launch a duplicate while a job is live.", "PARENT OWNERSHIP: when you delegate to the Responder, pass parentTaskId with the plan task id that owns the work (e.g. parentTaskId:\"t3\"). The child subtask is created under exactly that task; an unknown, completed, or Responder-owned id is rejected.", "DECLARED WAITS ONLY: never idle because a Responder job is running. If a foreground task genuinely cannot start until a child finishes, declare that child as its dependency when you add it; otherwise keep executing the next dependency-ready task and fold late results in as an addendum.", "FRAME COMMANDS TO PRESERVE THE KEY FIELDS: choose flags/output so the completed result still carries exactly what you need and little else — e.g. ffuf with -json (or a matcher on real codes, not a blanket -mc all), nmap -oX/-oG, grep -o for just the hits. Never run a command that discards the required signal.", "ONLY when every other non-report task is finished and nothing else remains may you call shell.jobs ONCE. If jobs are still live, STOP and report what you did plus which jobs are running — do not enter a sleep/poll/tail loop.");
|
|
39
70
|
return lines.join("\n");
|
|
40
71
|
}
|
|
41
72
|
export function isResponderResultLedgerMessage(message) {
|
|
@@ -44,11 +75,13 @@ export function isResponderResultLedgerMessage(message) {
|
|
|
44
75
|
}
|
|
45
76
|
export function responderResultLedgerEntry(notification) {
|
|
46
77
|
const analyzedAt = notification.analyzedAt ?? notification.readAt ?? new Date().toISOString();
|
|
78
|
+
const digest = normalizeResultDigest(notification.resultDigest);
|
|
47
79
|
return (`- notification=${notification.id} job=${notification.jobId}` +
|
|
48
80
|
` status=${notification.status} consumed=true readAt=${notification.readAt ?? analyzedAt} analyzedAt=${analyzedAt}` +
|
|
49
81
|
`${notification.taskId ? ` task=${notification.taskId}` : ""}` +
|
|
50
82
|
`${notification.parentTaskId ? ` parent=${notification.parentTaskId}` : ""}` +
|
|
51
|
-
` artifact=${receiptPath(notification)}`
|
|
83
|
+
` artifact=${receiptPath(notification)}` +
|
|
84
|
+
`${digest ? ` summary=${JSON.stringify(digest)}` : ""}`);
|
|
52
85
|
}
|
|
53
86
|
export function upsertResponderResultLedger(messages, notification) {
|
|
54
87
|
const entries = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"responder-context.js","sourceRoot":"","sources":["../../src/agent/responder-context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"responder-context.js","sourceRoot":"","sources":["../../src/agent/responder-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,7 +18,7 @@ export declare class SubagentManager {
|
|
|
18
18
|
constructor(parentSessionId: string, options?: {
|
|
19
19
|
worker?: SubagentWorker;
|
|
20
20
|
store?: SubagentStore;
|
|
21
|
-
onOperationUsage?: (snapshot: OperationUsageSnapshot) => void;
|
|
21
|
+
onOperationUsage?: (snapshot: OperationUsageSnapshot, subagentId: string) => void;
|
|
22
22
|
});
|
|
23
23
|
get enabled(): boolean;
|
|
24
24
|
setEnabled(enabled: boolean): void;
|
|
@@ -6,7 +6,7 @@ import { resolveSubagentModelChain, subagentModelChainBlocked } from "./model-ch
|
|
|
6
6
|
const terminal = (status) => status !== "running" && status !== "stopping";
|
|
7
7
|
const defaultWorker = async (input) => (await import("./worker.js")).runReadOnlySubagent(input);
|
|
8
8
|
const inFlight = new Map();
|
|
9
|
-
const fingerprint = (assignment) => createHash("sha256").update(JSON.stringify([assignment.prompt, assignment.context ?? "", assignment.cwd, assignment.provider, assignment.model])).digest("hex");
|
|
9
|
+
const fingerprint = (parentSessionId, assignment) => createHash("sha256").update(JSON.stringify([parentSessionId, assignment.prompt, assignment.context ?? "", assignment.cwd, assignment.provider, assignment.model])).digest("hex");
|
|
10
10
|
export class SubagentManager {
|
|
11
11
|
parentSessionId;
|
|
12
12
|
active = true;
|
|
@@ -80,7 +80,7 @@ export class SubagentManager {
|
|
|
80
80
|
throw new Error("Recursive subagent launches are forbidden");
|
|
81
81
|
}
|
|
82
82
|
assertUnique(assignment) {
|
|
83
|
-
if ([...inFlight.values()].includes(fingerprint(assignment)))
|
|
83
|
+
if ([...inFlight.values()].includes(fingerprint(this.parentSessionId, assignment)))
|
|
84
84
|
throw new Error("Duplicate active subagent assignment");
|
|
85
85
|
}
|
|
86
86
|
activeCount() {
|
|
@@ -98,7 +98,7 @@ export class SubagentManager {
|
|
|
98
98
|
startAssigned(assignment) {
|
|
99
99
|
this.assertLaunchModels();
|
|
100
100
|
const now = Date.now();
|
|
101
|
-
const child = { assignment, run: { ...assignment, id: randomUUID(), parentSessionId: this.parentSessionId, attempt: 1, status: "running", recovery: "fresh", createdAt: now, updatedAt: now, events: [] } };
|
|
101
|
+
const child = { assignment, run: { ...assignment, id: randomUUID(), parentSessionId: this.parentSessionId, attempt: 1, status: "running", recovery: "fresh", createdAt: now, startedAt: now, updatedAt: now, events: [] } };
|
|
102
102
|
this.children.set(child.run.id, child);
|
|
103
103
|
this.launch(child);
|
|
104
104
|
return this.snapshot(child.run);
|
|
@@ -163,6 +163,7 @@ export class SubagentManager {
|
|
|
163
163
|
this.assertCapacity(1);
|
|
164
164
|
this.assertLaunchModels();
|
|
165
165
|
const previous = child.run;
|
|
166
|
+
const now = Date.now();
|
|
166
167
|
this.settledAttempts.set(`${previous.id}:${previous.attempt}`, this.snapshot(previous));
|
|
167
168
|
const summary = `Attempt ${previous.attempt}: ${previous.status}\n${previous.report ?? previous.error ?? "No report"}`;
|
|
168
169
|
const events = [...previous.events, { kind: "notice", text: summary, timestamp: Date.now(), sequence: (previous.events.at(-1)?.sequence ?? 0) + 1 }];
|
|
@@ -170,7 +171,7 @@ export class SubagentManager {
|
|
|
170
171
|
events.push({ kind: "notice", text: `Parent follow-up for attempt ${previous.attempt + 1}:\n${JSON.stringify(followup)}`, timestamp: Date.now(), sequence: events.at(-1).sequence + 1 });
|
|
171
172
|
if (followup && child.checkpoint)
|
|
172
173
|
child.checkpoint = { ...child.checkpoint, pendingFollowup: followup };
|
|
173
|
-
child.run = { ...previous, ...child.assignment, followup: followup ? Object.freeze({ ...previous.followup, ...followup }) : previous.followup, attempt: previous.attempt + 1, status: "running", recovery: child.checkpoint ? "exact" : previous.events.length || previous.report || previous.lastKnownSummary ? "history" : "fresh", report: undefined, resultAcknowledged: false, error: undefined, updatedAt:
|
|
174
|
+
child.run = { ...previous, ...child.assignment, followup: followup ? Object.freeze({ ...previous.followup, ...followup }) : previous.followup, attempt: previous.attempt + 1, status: "running", recovery: child.checkpoint ? "exact" : previous.events.length || previous.report || previous.lastKnownSummary ? "history" : "fresh", report: undefined, resultAcknowledged: false, error: undefined, startedAt: now, updatedAt: now, events: this.boundEvents(events) };
|
|
174
175
|
this.launch(child, followup);
|
|
175
176
|
return this.snapshot(child.run);
|
|
176
177
|
}
|
|
@@ -200,7 +201,7 @@ export class SubagentManager {
|
|
|
200
201
|
const controller = new AbortController();
|
|
201
202
|
child.assistantSequence = undefined;
|
|
202
203
|
child.controller = controller;
|
|
203
|
-
inFlight.set(controller, fingerprint(child.assignment));
|
|
204
|
+
inFlight.set(controller, fingerprint(this.parentSessionId, child.assignment));
|
|
204
205
|
const inputRun = this.snapshot(child.run);
|
|
205
206
|
const modelChain = resolveSubagentModelChain();
|
|
206
207
|
const noteRoute = (route) => {
|
|
@@ -244,7 +245,7 @@ export class SubagentManager {
|
|
|
244
245
|
noteRoute,
|
|
245
246
|
recordOperationUsage: (snapshot) => {
|
|
246
247
|
if (!this.disposed)
|
|
247
|
-
this.onOperationUsage?.(snapshot);
|
|
248
|
+
this.onOperationUsage?.(snapshot, inputRun.id);
|
|
248
249
|
},
|
|
249
250
|
checkpoint: child.checkpoint ? structuredClone(child.checkpoint) : undefined,
|
|
250
251
|
saveSummary: (report) => {
|