@ai-agent-forge/agent-forge 0.86.7 → 0.88.0
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 +45 -0
- package/README.md +10 -11
- package/dist/artifacts/artifact-store.d.ts.map +1 -1
- package/dist/artifacts/artifact-store.js +9 -5
- package/dist/artifacts/artifact-store.js.map +1 -1
- package/dist/bundle/.build-manifest.json +430 -413
- package/dist/bundle/chunks/{chunk-A7GUOX2H.js → chunk-6ZKDNZHA.js} +5 -1
- package/dist/bundle/chunks/chunk-HLJEVRWP.js +13 -0
- package/dist/bundle/chunks/chunk-YGHQME4V.js +1456 -0
- package/dist/bundle/chunks/image-resize-worker.js +12 -1
- package/dist/bundle/chunks/{virtual-modules-3IZ4MYSQ.js → virtual-modules-KZ5DRH7Q.js} +1 -1
- package/dist/bundle/cli.js +1 -1
- package/dist/bundle/client.js +1 -1
- package/dist/bundle/index.js +2 -2
- package/dist/bundle/rpc-entry.js +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +231 -185
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/auth-check.d.ts.map +1 -1
- package/dist/cli/auth-check.js +17 -4
- package/dist/cli/auth-check.js.map +1 -1
- package/dist/cli/auth-command.d.ts.map +1 -1
- package/dist/cli/auth-command.js +15 -9
- package/dist/cli/auth-command.js.map +1 -1
- package/dist/cli/credential-print.d.ts.map +1 -1
- package/dist/cli/credential-print.js +14 -7
- package/dist/cli/credential-print.js.map +1 -1
- package/dist/cli/experimental/command.d.ts.map +1 -1
- package/dist/cli/experimental/command.js +6 -5
- package/dist/cli/experimental/command.js.map +1 -1
- package/dist/cli/list-models.d.ts.map +1 -1
- package/dist/cli/list-models.js +9 -8
- package/dist/cli/list-models.js.map +1 -1
- package/dist/cli/plugin-manager-controller.d.ts.map +1 -1
- package/dist/cli/plugin-manager-controller.js +2 -1
- package/dist/cli/plugin-manager-controller.js.map +1 -1
- package/dist/cli/serve.d.ts.map +1 -1
- package/dist/cli/serve.js +8 -5
- package/dist/cli/serve.js.map +1 -1
- package/dist/client/remote-session.d.ts.map +1 -1
- package/dist/client/remote-session.js +16 -9
- package/dist/client/remote-session.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +5 -3
- package/dist/config.js.map +1 -1
- package/dist/core/agent-capability-contract.d.ts +0 -7
- package/dist/core/agent-capability-contract.d.ts.map +1 -1
- package/dist/core/agent-capability-contract.js +72 -68
- package/dist/core/agent-capability-contract.js.map +1 -1
- package/dist/core/agent-session-bash.d.ts.map +1 -1
- package/dist/core/agent-session-bash.js +5 -4
- package/dist/core/agent-session-bash.js.map +1 -1
- package/dist/core/agent-session-compaction.d.ts +6 -10
- package/dist/core/agent-session-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-compaction.js +35 -133
- package/dist/core/agent-session-compaction.js.map +1 -1
- package/dist/core/agent-session-context.d.ts.map +1 -1
- package/dist/core/agent-session-context.js +18 -13
- package/dist/core/agent-session-context.js.map +1 -1
- package/dist/core/agent-session-internal.d.ts +0 -6
- package/dist/core/agent-session-internal.d.ts.map +1 -1
- package/dist/core/agent-session-internal.js.map +1 -1
- package/dist/core/agent-session-model.d.ts.map +1 -1
- package/dist/core/agent-session-model.js +2 -1
- package/dist/core/agent-session-model.js.map +1 -1
- package/dist/core/agent-session-retry.d.ts.map +1 -1
- package/dist/core/agent-session-retry.js +3 -3
- package/dist/core/agent-session-retry.js.map +1 -1
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js +7 -6
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session-services.d.ts +1 -1
- package/dist/core/agent-session-services.d.ts.map +1 -1
- package/dist/core/agent-session-services.js.map +1 -1
- package/dist/core/agent-session-tools.d.ts.map +1 -1
- package/dist/core/agent-session-tools.js +3 -2
- package/dist/core/agent-session-tools.js.map +1 -1
- package/dist/core/agent-session.d.ts +40 -22
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +147 -67
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/auth-guidance.d.ts.map +1 -1
- package/dist/core/auth-guidance.js +11 -5
- package/dist/core/auth-guidance.js.map +1 -1
- package/dist/core/auth-storage.d.ts.map +1 -1
- package/dist/core/auth-storage.js +9 -6
- package/dist/core/auth-storage.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts.map +1 -1
- package/dist/core/compaction/compaction.js +2 -1
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/embedded-sdk.d.ts.map +1 -1
- package/dist/core/embedded-sdk.js +10 -6
- package/dist/core/embedded-sdk.js.map +1 -1
- package/dist/core/export-html/index.d.ts.map +1 -1
- package/dist/core/export-html/index.js +9 -4
- package/dist/core/export-html/index.js.map +1 -1
- package/dist/core/extensions/agent-composition.d.ts.map +1 -1
- package/dist/core/extensions/agent-composition.js +26 -19
- package/dist/core/extensions/agent-composition.js.map +1 -1
- package/dist/core/extensions/bootstrap-agent-loop.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-agent-loop.js +3 -2
- package/dist/core/extensions/bootstrap-agent-loop.js.map +1 -1
- package/dist/core/extensions/bootstrap-compaction-policy.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-compaction-policy.js +0 -34
- package/dist/core/extensions/bootstrap-compaction-policy.js.map +1 -1
- package/dist/core/extensions/bootstrap-lifecycle.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-lifecycle.js +20 -17
- package/dist/core/extensions/bootstrap-lifecycle.js.map +1 -1
- package/dist/core/extensions/bootstrap-overflow-policy.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-overflow-policy.js +2 -1
- package/dist/core/extensions/bootstrap-overflow-policy.js.map +1 -1
- package/dist/core/extensions/bootstrap-retry-policy.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-retry-policy.js +4 -3
- package/dist/core/extensions/bootstrap-retry-policy.js.map +1 -1
- package/dist/core/extensions/bootstrap-skills.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-skills.js +7 -6
- package/dist/core/extensions/bootstrap-skills.js.map +1 -1
- package/dist/core/extensions/bootstrap-tools.d.ts.map +1 -1
- package/dist/core/extensions/bootstrap-tools.js +2 -1
- package/dist/core/extensions/bootstrap-tools.js.map +1 -1
- package/dist/core/extensions/capability-plugin.d.ts.map +1 -1
- package/dist/core/extensions/capability-plugin.js +37 -13
- package/dist/core/extensions/capability-plugin.js.map +1 -1
- package/dist/core/extensions/capability-runtime-events.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-events.js +17 -13
- package/dist/core/extensions/capability-runtime-events.js.map +1 -1
- package/dist/core/extensions/capability-runtime-guards.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-guards.js +16 -15
- package/dist/core/extensions/capability-runtime-guards.js.map +1 -1
- package/dist/core/extensions/capability-runtime-manifest.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-manifest.js +52 -30
- package/dist/core/extensions/capability-runtime-manifest.js.map +1 -1
- package/dist/core/extensions/capability-runtime-validation.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-validation.js +66 -65
- package/dist/core/extensions/capability-runtime-validation.js.map +1 -1
- package/dist/core/extensions/capability-runtime.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime.js +147 -127
- package/dist/core/extensions/capability-runtime.js.map +1 -1
- package/dist/core/extensions/compaction-memory-failure-mode.d.ts.map +1 -1
- package/dist/core/extensions/compaction-memory-failure-mode.js +3 -2
- package/dist/core/extensions/compaction-memory-failure-mode.js.map +1 -1
- package/dist/core/extensions/context-strategy-binding.d.ts.map +1 -1
- package/dist/core/extensions/context-strategy-binding.js +7 -4
- package/dist/core/extensions/context-strategy-binding.js.map +1 -1
- package/dist/core/extensions/lifecycle-catalog.d.ts.map +1 -1
- package/dist/core/extensions/lifecycle-catalog.js +290 -279
- package/dist/core/extensions/lifecycle-catalog.js.map +1 -1
- package/dist/core/extensions/lifecycle-delivery-queue.d.ts.map +1 -1
- package/dist/core/extensions/lifecycle-delivery-queue.js +3 -2
- package/dist/core/extensions/lifecycle-delivery-queue.js.map +1 -1
- package/dist/core/extensions/provider-failover.d.ts +7 -3
- package/dist/core/extensions/provider-failover.d.ts.map +1 -1
- package/dist/core/extensions/provider-failover.js +9 -8
- package/dist/core/extensions/provider-failover.js.map +1 -1
- package/dist/core/facade/coding-agent-facade.d.ts +6 -6
- package/dist/core/facade/coding-agent-facade.d.ts.map +1 -1
- package/dist/core/facade/coding-agent-facade.js +2 -3
- package/dist/core/facade/coding-agent-facade.js.map +1 -1
- package/dist/core/http-dispatcher.d.ts.map +1 -1
- package/dist/core/http-dispatcher.js +2 -1
- package/dist/core/http-dispatcher.js.map +1 -1
- package/dist/core/i18n/index.d.ts +14 -0
- package/dist/core/i18n/index.d.ts.map +1 -0
- package/dist/core/i18n/index.js +67 -0
- package/dist/core/i18n/index.js.map +1 -0
- package/dist/core/i18n/locales/en/example.d.ts +7 -0
- package/dist/core/i18n/locales/en/example.d.ts.map +1 -0
- package/dist/core/i18n/locales/en/example.js +7 -0
- package/dist/core/i18n/locales/en/example.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/cli.d.ts +8 -0
- package/dist/core/i18n/locales/zh-cn/cli.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/cli.js +229 -0
- package/dist/core/i18n/locales/zh-cn/cli.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/common.d.ts +6 -0
- package/dist/core/i18n/locales/zh-cn/common.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/common.js +6 -0
- package/dist/core/i18n/locales/zh-cn/common.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-core.d.ts +13 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-core.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-core.js +173 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-core.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-extensions.d.ts +12 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-extensions.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-extensions.js +582 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-extensions.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts +9 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-final.js +55 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-final.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts +11 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js +455 -0
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-errors.d.ts +9 -0
- package/dist/core/i18n/locales/zh-cn/core-errors.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/core-errors.js +191 -0
- package/dist/core/i18n/locales/zh-cn/core-errors.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/example.d.ts +7 -0
- package/dist/core/i18n/locales/zh-cn/example.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/example.js +10 -0
- package/dist/core/i18n/locales/zh-cn/example.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/index.d.ts +2 -0
- package/dist/core/i18n/locales/zh-cn/index.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/index.js +41 -0
- package/dist/core/i18n/locales/zh-cn/index.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts +10 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.js +267 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/keybindings.d.ts +11 -0
- package/dist/core/i18n/locales/zh-cn/keybindings.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/keybindings.js +67 -0
- package/dist/core/i18n/locales/zh-cn/keybindings.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts +7 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.js +39 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-builtin.d.ts +10 -0
- package/dist/core/i18n/locales/zh-cn/tui-builtin.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-builtin.js +15 -0
- package/dist/core/i18n/locales/zh-cn/tui-builtin.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts +13 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.js +102 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-selectors.d.ts +12 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-selectors.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-selectors.js +286 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-selectors.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.d.ts +9 -0
- package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.js +79 -0
- package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-self-owned.d.ts +8 -0
- package/dist/core/i18n/locales/zh-cn/tui-self-owned.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/tui-self-owned.js +72 -0
- package/dist/core/i18n/locales/zh-cn/tui-self-owned.js.map +1 -0
- package/dist/core/keybindings.d.ts +15 -0
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js +18 -0
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/logger.d.ts.map +1 -1
- package/dist/core/logger.js +5 -1
- package/dist/core/logger.js.map +1 -1
- package/dist/core/model-config.d.ts +0 -1
- package/dist/core/model-config.d.ts.map +1 -1
- package/dist/core/model-config.js +9 -1
- package/dist/core/model-config.js.map +1 -1
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +2 -1
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-runtime.d.ts.map +1 -1
- package/dist/core/model-runtime.js +11 -7
- package/dist/core/model-runtime.js.map +1 -1
- package/dist/core/package-install-host.d.ts.map +1 -1
- package/dist/core/package-install-host.js +4 -3
- package/dist/core/package-install-host.js.map +1 -1
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js +15 -10
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/package-resource-collection.d.ts.map +1 -1
- package/dist/core/package-resource-collection.js +2 -1
- package/dist/core/package-resource-collection.js.map +1 -1
- package/dist/core/package-source.d.ts.map +1 -1
- package/dist/core/package-source.js +3 -2
- package/dist/core/package-source.js.map +1 -1
- package/dist/core/provider-composer.d.ts +2 -2
- package/dist/core/provider-composer.d.ts.map +1 -1
- package/dist/core/provider-composer.js +29 -21
- package/dist/core/provider-composer.js.map +1 -1
- package/dist/core/remote-catalog-provider.d.ts.map +1 -1
- package/dist/core/remote-catalog-provider.js +6 -2
- 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 +15 -5
- package/dist/core/resolve-config-value.js.map +1 -1
- package/dist/core/sdk.d.ts +27 -5
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +80 -55
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-cwd.d.ts.map +1 -1
- package/dist/core/session-cwd.js +5 -2
- package/dist/core/session-cwd.js.map +1 -1
- package/dist/core/session-export.d.ts.map +1 -1
- package/dist/core/session-export.js +2 -1
- package/dist/core/session-export.js.map +1 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +39 -29
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/session-storage.d.ts.map +1 -1
- package/dist/core/session-storage.js +3 -3
- package/dist/core/session-storage.js.map +1 -1
- package/dist/core/settings-manager.d.ts +20 -20
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +47 -59
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +53 -32
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +25 -2
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +11 -7
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/edit-diff.d.ts.map +1 -1
- package/dist/core/tools/edit-diff.js +9 -4
- package/dist/core/tools/edit-diff.js.map +1 -1
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +4 -3
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/index.d.ts.map +1 -1
- package/dist/core/tools/index.js +3 -2
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/tools/output-accumulator.d.ts.map +1 -1
- package/dist/core/tools/output-accumulator.js +2 -1
- package/dist/core/tools/output-accumulator.js.map +1 -1
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js +6 -2
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +2 -1
- package/dist/core/tools/write.js.map +1 -1
- package/dist/durable/durable-service.d.ts.map +1 -1
- package/dist/durable/durable-service.js +25 -18
- package/dist/durable/durable-service.js.map +1 -1
- package/dist/host/checkpoint-commit.d.ts.map +1 -1
- package/dist/host/checkpoint-commit.js +2 -1
- package/dist/host/checkpoint-commit.js.map +1 -1
- package/dist/host/manual-compaction.d.ts.map +1 -1
- package/dist/host/manual-compaction.js +2 -1
- package/dist/host/manual-compaction.js.map +1 -1
- package/dist/host/output-projection.d.ts +0 -13
- package/dist/host/output-projection.d.ts.map +1 -1
- package/dist/host/output-projection.js +16 -2
- package/dist/host/output-projection.js.map +1 -1
- package/dist/host/summary-retry.d.ts.map +1 -1
- package/dist/host/summary-retry.js +3 -2
- package/dist/host/summary-retry.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +97 -60
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/agents-view.d.ts.map +1 -1
- package/dist/modes/interactive/components/agents-view.js +18 -15
- package/dist/modes/interactive/components/agents-view.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +6 -5
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/bash-execution.js +12 -7
- package/dist/modes/interactive/components/bash-execution.js.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.js +2 -1
- package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.js +6 -5
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.js +9 -5
- package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/config-selector.js +18 -15
- package/dist/modes/interactive/components/config-selector.js.map +1 -1
- package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-entry.js +2 -1
- package/dist/modes/interactive/components/custom-entry.js.map +1 -1
- package/dist/modes/interactive/components/dialog-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/dialog-editor.js +5 -4
- package/dist/modes/interactive/components/dialog-editor.js.map +1 -1
- package/dist/modes/interactive/components/dialog-input.d.ts.map +1 -1
- package/dist/modes/interactive/components/dialog-input.js +2 -1
- package/dist/modes/interactive/components/dialog-input.js.map +1 -1
- package/dist/modes/interactive/components/dialog-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/dialog-selector.js +4 -3
- package/dist/modes/interactive/components/dialog-selector.js.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.js +11 -10
- package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts +0 -2
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +8 -10
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/index.d.ts +1 -0
- package/dist/modes/interactive/components/index.d.ts.map +1 -1
- package/dist/modes/interactive/components/index.js +1 -0
- package/dist/modes/interactive/components/index.js.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.js +3 -2
- package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
- package/dist/modes/interactive/components/login-dialog.js +12 -11
- package/dist/modes/interactive/components/login-dialog.js.map +1 -1
- package/dist/modes/interactive/components/mermaid.d.ts.map +1 -1
- package/dist/modes/interactive/components/mermaid.js +6 -2
- package/dist/modes/interactive/components/mermaid.js.map +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js +28 -16
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.js +10 -9
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
- package/dist/modes/interactive/components/plugin-manager-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/plugin-manager-entry.js +22 -13
- package/dist/modes/interactive/components/plugin-manager-entry.js.map +1 -1
- package/dist/modes/interactive/components/plugin-selection-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/plugin-selection-entry.js +27 -12
- package/dist/modes/interactive/components/plugin-selection-entry.js.map +1 -1
- package/dist/modes/interactive/components/queue-manager-selector.d.ts +60 -0
- package/dist/modes/interactive/components/queue-manager-selector.d.ts.map +1 -0
- package/dist/modes/interactive/components/queue-manager-selector.js +166 -0
- package/dist/modes/interactive/components/queue-manager-selector.js.map +1 -0
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +16 -14
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js +43 -31
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +4 -6
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +115 -120
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-submenu.js +5 -4
- package/dist/modes/interactive/components/settings-submenu.js.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.js +3 -2
- package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.js +4 -3
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
- package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
- package/dist/modes/interactive/components/status-indicator.js +14 -5
- package/dist/modes/interactive/components/status-indicator.js.map +1 -1
- package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/theme-selector.js +2 -1
- package/dist/modes/interactive/components/theme-selector.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js +11 -4
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +8 -3
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/tree-list.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-list.js +7 -6
- package/dist/modes/interactive/components/tree-list.js.map +1 -1
- package/dist/modes/interactive/components/tree-render.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-render.js +28 -23
- package/dist/modes/interactive/components/tree-render.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector.js +9 -7
- package/dist/modes/interactive/components/tree-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.js +5 -4
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/components/workflow-view.d.ts.map +1 -1
- package/dist/modes/interactive/components/workflow-view.js +36 -21
- package/dist/modes/interactive/components/workflow-view.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-auth.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-auth.js +71 -40
- package/dist/modes/interactive/interactive-auth.js.map +1 -1
- package/dist/modes/interactive/interactive-commands.d.ts +1 -0
- package/dist/modes/interactive/interactive-commands.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-commands.js +3 -0
- package/dist/modes/interactive/interactive-commands.js.map +1 -1
- package/dist/modes/interactive/interactive-dialog-ui.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-dialog-ui.js +5 -5
- package/dist/modes/interactive/interactive-dialog-ui.js.map +1 -1
- package/dist/modes/interactive/interactive-format.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-format.js +34 -18
- package/dist/modes/interactive/interactive-format.js.map +1 -1
- package/dist/modes/interactive/interactive-helpers.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-helpers.js +7 -2
- package/dist/modes/interactive/interactive-helpers.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +4 -2
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +350 -279
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/interactive-selectors.d.ts +9 -0
- package/dist/modes/interactive/interactive-selectors.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-selectors.js +79 -25
- package/dist/modes/interactive/interactive-selectors.js.map +1 -1
- package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme-controller.js +5 -1
- package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +26 -23
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/json-event.d.ts.map +1 -1
- package/dist/modes/json-event.js +3 -2
- package/dist/modes/json-event.js.map +1 -1
- package/dist/modes/print-mode.d.ts.map +1 -1
- package/dist/modes/print-mode.js +3 -2
- package/dist/modes/print-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts +0 -8
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js +3 -14
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js +0 -9
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-types.d.ts +0 -19
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-types.js.map +1 -1
- package/dist/package-manager-cli.d.ts.map +1 -1
- package/dist/package-manager-cli.js +28 -13
- package/dist/package-manager-cli.js.map +1 -1
- package/dist/plugins/ecosystem/catalog.d.ts.map +1 -1
- package/dist/plugins/ecosystem/catalog.js +3 -2
- package/dist/plugins/ecosystem/catalog.js.map +1 -1
- package/dist/plugins/ecosystem/cli.d.ts.map +1 -1
- package/dist/plugins/ecosystem/cli.js +2 -1
- package/dist/plugins/ecosystem/cli.js.map +1 -1
- package/dist/plugins/ecosystem/default-plugin-market.d.ts.map +1 -1
- package/dist/plugins/ecosystem/default-plugin-market.js +3 -2
- package/dist/plugins/ecosystem/default-plugin-market.js.map +1 -1
- package/dist/plugins/ecosystem/distribution.d.ts.map +1 -1
- package/dist/plugins/ecosystem/distribution.js +2 -1
- package/dist/plugins/ecosystem/distribution.js.map +1 -1
- package/dist/plugins/ecosystem/installer.d.ts.map +1 -1
- package/dist/plugins/ecosystem/installer.js +3 -2
- package/dist/plugins/ecosystem/installer.js.map +1 -1
- package/dist/plugins/ecosystem/node-disk-registry-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-disk-registry-source.js +20 -17
- package/dist/plugins/ecosystem/node-disk-registry-source.js.map +1 -1
- package/dist/plugins/ecosystem/node-distribution-host.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-distribution-host.js +35 -34
- package/dist/plugins/ecosystem/node-distribution-host.js.map +1 -1
- package/dist/plugins/ecosystem/node-npm-registry-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-npm-registry-source.js +35 -34
- package/dist/plugins/ecosystem/node-npm-registry-source.js.map +1 -1
- package/dist/plugins/ecosystem/node-package-install-host.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-package-install-host.js +9 -8
- package/dist/plugins/ecosystem/node-package-install-host.js.map +1 -1
- package/dist/plugins/ecosystem/node-package-install-persistence.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-package-install-persistence.js +4 -3
- package/dist/plugins/ecosystem/node-package-install-persistence.js.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-bootstrap.d.ts +9 -2
- package/dist/plugins/ecosystem/node-plugin-bootstrap.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-bootstrap.js +44 -5
- package/dist/plugins/ecosystem/node-plugin-bootstrap.js.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-trust-root.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-trust-root.js +10 -9
- package/dist/plugins/ecosystem/node-plugin-trust-root.js.map +1 -1
- package/dist/plugins/ecosystem/node-registry-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-registry-source.js +31 -30
- package/dist/plugins/ecosystem/node-registry-source.js.map +1 -1
- package/dist/plugins/ecosystem/node-release-package-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-release-package-source.js +30 -29
- package/dist/plugins/ecosystem/node-release-package-source.js.map +1 -1
- package/dist/plugins/ecosystem/node-tar-writer.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-tar-writer.js +11 -10
- package/dist/plugins/ecosystem/node-tar-writer.js.map +1 -1
- package/dist/plugins/ecosystem/node-url-package-source.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-url-package-source.js +21 -20
- package/dist/plugins/ecosystem/node-url-package-source.js.map +1 -1
- package/dist/plugins/ecosystem/plugin-acquisition.d.ts.map +1 -1
- package/dist/plugins/ecosystem/plugin-acquisition.js +3 -2
- package/dist/plugins/ecosystem/plugin-acquisition.js.map +1 -1
- package/dist/plugins/ecosystem/plugin-bootstrap.d.ts +9 -1
- package/dist/plugins/ecosystem/plugin-bootstrap.d.ts.map +1 -1
- package/dist/plugins/ecosystem/plugin-bootstrap.js +5 -0
- package/dist/plugins/ecosystem/plugin-bootstrap.js.map +1 -1
- package/dist/plugins/ecosystem/registry-cli-adapter.d.ts.map +1 -1
- package/dist/plugins/ecosystem/registry-cli-adapter.js +2 -1
- package/dist/plugins/ecosystem/registry-cli-adapter.js.map +1 -1
- package/dist/plugins/ecosystem/registry.d.ts.map +1 -1
- package/dist/plugins/ecosystem/registry.js +35 -32
- package/dist/plugins/ecosystem/registry.js.map +1 -1
- package/dist/plugins/ecosystem/resolver.d.ts.map +1 -1
- package/dist/plugins/ecosystem/resolver.js +3 -2
- package/dist/plugins/ecosystem/resolver.js.map +1 -1
- package/dist/plugins/ecosystem/selection-store.d.ts.map +1 -1
- package/dist/plugins/ecosystem/selection-store.js +11 -10
- package/dist/plugins/ecosystem/selection-store.js.map +1 -1
- package/dist/plugins/ecosystem/selection.d.ts.map +1 -1
- package/dist/plugins/ecosystem/selection.js +8 -7
- package/dist/plugins/ecosystem/selection.js.map +1 -1
- package/dist/plugins/ecosystem/state.d.ts.map +1 -1
- package/dist/plugins/ecosystem/state.js +24 -23
- package/dist/plugins/ecosystem/state.js.map +1 -1
- package/dist/plugins/ecosystem/updates.d.ts.map +1 -1
- package/dist/plugins/ecosystem/updates.js +5 -4
- package/dist/plugins/ecosystem/updates.js.map +1 -1
- package/dist/plugins/mcp-http.d.ts +0 -17
- package/dist/plugins/mcp-http.d.ts.map +1 -1
- package/dist/plugins/mcp-http.js +30 -7
- package/dist/plugins/mcp-http.js.map +1 -1
- package/dist/plugins/plugin-supervisor.d.ts.map +1 -1
- package/dist/plugins/plugin-supervisor.js +19 -1
- package/dist/plugins/plugin-supervisor.js.map +1 -1
- package/dist/profile/first-roles.d.ts.map +1 -1
- package/dist/profile/first-roles.js +10 -1
- package/dist/profile/first-roles.js.map +1 -1
- package/dist/profile/goal-plugin.d.ts.map +1 -1
- package/dist/profile/goal-plugin.js +24 -5
- package/dist/profile/goal-plugin.js.map +1 -1
- package/dist/profile/identity.d.ts.map +1 -1
- package/dist/profile/identity.js +7 -6
- package/dist/profile/identity.js.map +1 -1
- package/dist/profile/lock.d.ts.map +1 -1
- package/dist/profile/lock.js +15 -1
- package/dist/profile/lock.js.map +1 -1
- package/dist/profile/plan-plugin.d.ts.map +1 -1
- package/dist/profile/plan-plugin.js +26 -13
- package/dist/profile/plan-plugin.js.map +1 -1
- package/dist/profile/plugin-profiles.d.ts.map +1 -1
- package/dist/profile/plugin-profiles.js +2 -1
- package/dist/profile/plugin-profiles.js.map +1 -1
- package/dist/profile/policy-manifest.d.ts.map +1 -1
- package/dist/profile/policy-manifest.js +5 -4
- package/dist/profile/policy-manifest.js.map +1 -1
- package/dist/profile/profile-registry.d.ts +0 -12
- package/dist/profile/profile-registry.d.ts.map +1 -1
- package/dist/profile/profile-registry.js +14 -1
- package/dist/profile/profile-registry.js.map +1 -1
- package/dist/profile/role-catalog.d.ts +0 -1
- package/dist/profile/role-catalog.d.ts.map +1 -1
- package/dist/profile/role-catalog.js +17 -15
- package/dist/profile/role-catalog.js.map +1 -1
- package/dist/profile/role-orchestrator.d.ts.map +1 -1
- package/dist/profile/role-orchestrator.js +8 -7
- package/dist/profile/role-orchestrator.js.map +1 -1
- package/dist/profile/role-runner.d.ts.map +1 -1
- package/dist/profile/role-runner.js +3 -2
- package/dist/profile/role-runner.js.map +1 -1
- package/dist/profile/root-facade.d.ts.map +1 -1
- package/dist/profile/root-facade.js +2 -1
- package/dist/profile/root-facade.js.map +1 -1
- package/dist/profile/skill-discovery-wiring.d.ts.map +1 -1
- package/dist/profile/skill-discovery-wiring.js +7 -2
- package/dist/profile/skill-discovery-wiring.js.map +1 -1
- package/dist/profile/state-store.d.ts.map +1 -1
- package/dist/profile/state-store.js +13 -9
- package/dist/profile/state-store.js.map +1 -1
- package/dist/profile/todo-plugin.d.ts.map +1 -1
- package/dist/profile/todo-plugin.js +9 -4
- package/dist/profile/todo-plugin.js.map +1 -1
- package/dist/profiles/builtin-suites.d.ts +13 -6
- package/dist/profiles/builtin-suites.d.ts.map +1 -1
- package/dist/profiles/builtin-suites.js +15 -6
- package/dist/profiles/builtin-suites.js.map +1 -1
- package/dist/profiles/suite-loader.d.ts +25 -1
- package/dist/profiles/suite-loader.d.ts.map +1 -1
- package/dist/profiles/suite-loader.js +34 -9
- package/dist/profiles/suite-loader.js.map +1 -1
- package/dist/remote/server-entry.d.ts.map +1 -1
- package/dist/remote/server-entry.js +3 -2
- package/dist/remote/server-entry.js.map +1 -1
- package/dist/remote/session-source.d.ts.map +1 -1
- package/dist/remote/session-source.js +8 -4
- package/dist/remote/session-source.js.map +1 -1
- package/dist/share/session-share.d.ts.map +1 -1
- package/dist/share/session-share.js +14 -2
- package/dist/share/session-share.js.map +1 -1
- package/dist/testing/plugin-testkit.d.ts.map +1 -1
- package/dist/testing/plugin-testkit.js +4 -3
- package/dist/testing/plugin-testkit.js.map +1 -1
- package/dist/testing/runtime-delivery-queue.d.ts.map +1 -1
- package/dist/testing/runtime-delivery-queue.js +2 -1
- package/dist/testing/runtime-delivery-queue.js.map +1 -1
- package/dist/testing/session-plugin-testkit.d.ts.map +1 -1
- package/dist/testing/session-plugin-testkit.js +10 -7
- package/dist/testing/session-plugin-testkit.js.map +1 -1
- package/dist/utils/ansi.d.ts.map +1 -1
- package/dist/utils/ansi.js +2 -1
- package/dist/utils/ansi.js.map +1 -1
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js +7 -6
- package/dist/utils/clipboard.js.map +1 -1
- package/dist/utils/image-resize-worker.d.ts.map +1 -1
- package/dist/utils/image-resize-worker.js +3 -2
- package/dist/utils/image-resize-worker.js.map +1 -1
- package/dist/utils/photon.d.ts +2 -2
- package/dist/utils/photon.d.ts.map +1 -1
- package/dist/utils/photon.js +2 -2
- package/dist/utils/photon.js.map +1 -1
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js +9 -8
- package/dist/utils/shell.js.map +1 -1
- package/dist/utils/tools-manager.d.ts.map +1 -1
- package/dist/utils/tools-manager.js +23 -13
- package/dist/utils/tools-manager.js.map +1 -1
- package/dist/utils/version-check.d.ts.map +1 -1
- package/dist/utils/version-check.js +5 -1
- package/dist/utils/version-check.js.map +1 -1
- package/docs/compaction.md +1 -3
- package/docs/docs.json +4 -0
- package/docs/index.md +1 -0
- package/docs/keybindings.md +3 -0
- package/docs/mcp.md +103 -0
- package/docs/models.md +14 -22
- package/docs/providers.md +0 -1
- package/docs/quickstart.md +1 -1
- package/docs/rpc.md +1 -26
- package/docs/sdk.md +4 -6
- package/docs/settings.md +10 -12
- package/docs/skills.md +1 -9
- package/docs/terminal-setup.md +2 -3
- package/docs/usage.md +7 -6
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/examples/extensions/with-deps/plugin.json +1 -1
- package/examples/sdk/10-settings.ts +2 -4
- package/examples/sdk/12-full-control.ts +1 -2
- package/package.json +1 -3
- package/dist/bundle/chunks/chunk-EALJ5DDX.js +0 -1452
- package/dist/core/extensions/microcompact.d.ts +0 -80
- package/dist/core/extensions/microcompact.d.ts.map +0 -1
- package/dist/core/extensions/microcompact.js +0 -134
- package/dist/core/extensions/microcompact.js.map +0 -1
- package/dist/server/create-harness.d.ts +0 -26
- package/dist/server/create-harness.d.ts.map +0 -1
- package/dist/server/create-harness.js +0 -106
- package/dist/server/create-harness.js.map +0 -1
|
@@ -7,7 +7,6 @@
|
|
|
7
7
|
* spies keep working unchanged. Method-to-method calls go through the session
|
|
8
8
|
* parameter (not direct function calls) to preserve that dispatch.
|
|
9
9
|
*/
|
|
10
|
-
import { SUMMARIZATION_SYSTEM_PROMPT } from "@agent-forge/agent-core";
|
|
11
10
|
import { contentText, retryAssistantCall, uuidv7 } from "@agent-forge/ai";
|
|
12
11
|
import { completeSimple, streamSimple } from "@agent-forge/ai/compat";
|
|
13
12
|
import { detachedSessionSnapshot, SessionCancelledError, } from "./agent-session-internal.js";
|
|
@@ -16,6 +15,7 @@ import { formatNoApiKeyFoundMessage, formatNoModelSelectedMessage } from "./auth
|
|
|
16
15
|
import { calculateContextTokens, collectEntriesForBranchSummary, effectiveKeepRecentTokens, estimateContextTokens, estimateTokens, isTurnStartMessage, } from "./compaction/index.js";
|
|
17
16
|
import { DEFAULT_COMPACTION_POLICY_NAME, SESSION_COMPACTION_COMMIT_EVENT_ID, SESSION_COMPACTION_COMMIT_EVENT_VERSION, } from "./extensions/index.js";
|
|
18
17
|
import { SUMMARY_MODEL_INVOCATION_ERROR_CODES } from "./extensions/public-api.js";
|
|
18
|
+
import { t } from "./i18n/index.js";
|
|
19
19
|
import { getLatestCompactionEntry } from "./session-manager.js";
|
|
20
20
|
function withoutDeletedHeaders(headers) {
|
|
21
21
|
return headers
|
|
@@ -38,25 +38,6 @@ function estimateMessagesTokens(messages) {
|
|
|
38
38
|
const OVERFLOW_TRIM_MAX_STAGES = 3;
|
|
39
39
|
/** 溢出裁剪第 2 级的目标 token 预算(估算)。 */
|
|
40
40
|
const OVERFLOW_TRIM_STAGE2_TARGET_TOKENS = 10_000;
|
|
41
|
-
/**
|
|
42
|
-
* microcompact 冷却长度(按模型请求计数):relief 落地后置此值,之后每次
|
|
43
|
-
* assistant message_end(无论 stopReason)减 1,归零前阈值 decide 以
|
|
44
|
-
* `microcompactEnabled: false` 关闭便宜缓解,落回全量压缩;user message_start
|
|
45
|
-
* 不复位——冷却按模型请求计数,与 turn 边界无关。
|
|
46
|
-
*
|
|
47
|
-
* 微观经济动机:每次 microcompact 触发都是一次中部历史改写,本网关前缀缓存
|
|
48
|
-
* 不稳定(实测同请求命中 3-99%),改尾部命中 88-99.9%、改中部 40-50%——
|
|
49
|
-
* 冷却把"阈值带上反复触发中部改写"的最坏情形封顶。
|
|
50
|
-
*/
|
|
51
|
-
const MICROCOMPACT_COOLDOWN_ASSISTANT_RESPONSES = 3;
|
|
52
|
-
/** 摘要自批判评审轮 prompt(gemini-cli 同款思路,compaction.summarySelfCritique 开启时启用)。 */
|
|
53
|
-
function summarySelfCritiquePrompt(summary) {
|
|
54
|
-
return `Critically evaluate the summary in <summary> tags: it is the only context a continuation model will receive. Check for omissions that would break continuity - exact file paths, function/identifier names, error messages, user-stated constraints and preferences, decisions with rationale, and current task state. If something important is missing or wrong, output the corrected summary in the same format. If it is already complete, output it again verbatim. Output ONLY the summary.
|
|
55
|
-
|
|
56
|
-
<summary>
|
|
57
|
-
${summary}
|
|
58
|
-
</summary>`;
|
|
59
|
-
}
|
|
60
41
|
/**
|
|
61
42
|
* 溢出/截断裁剪失败文案:实际发生过裁剪时附上前缀(分语:context overflow
|
|
62
43
|
* 维持既有精确文案,recoverable length 用截断响应措辞),0 次保持策略原文。
|
|
@@ -135,9 +116,7 @@ export async function getRequiredRequestAuth(session, model, signal) {
|
|
|
135
116
|
}
|
|
136
117
|
const isOAuth = session._modelRuntime.isUsingOAuth(model.provider);
|
|
137
118
|
if (isOAuth) {
|
|
138
|
-
throw new Error(
|
|
139
|
-
`Credentials may have expired or network is unavailable. ` +
|
|
140
|
-
`Run '/login ${model.provider}' to re-authenticate.`);
|
|
119
|
+
throw new Error(t("Authentication failed for \"{provider}\". Credentials may have expired or network is unavailable. Run '/login {provider}' to re-authenticate.", { provider: model.provider }));
|
|
141
120
|
}
|
|
142
121
|
throw new Error(formatNoApiKeyFoundMessage(model.provider));
|
|
143
122
|
}
|
|
@@ -288,13 +267,6 @@ export async function compactBeforeNextAssistantResponse(session, context, signa
|
|
|
288
267
|
if (!model || model.contextWindow <= 0) {
|
|
289
268
|
return context;
|
|
290
269
|
}
|
|
291
|
-
// Adaptive keepRecentTokens:小窗口把近期保护预算钳到可摘要窗口的一半
|
|
292
|
-
//(effectiveKeepRecentTokens,动机见其注释;大窗口原值不变),本路径与
|
|
293
|
-
// checkCompaction/compactInternal/runAutoCompactionInternal 一致使用 effective 值。
|
|
294
|
-
const effectiveSettings = {
|
|
295
|
-
...settings,
|
|
296
|
-
keepRecentTokens: effectiveKeepRecentTokens(settings.keepRecentTokens, model.contextWindow, settings.reserveTokens),
|
|
297
|
-
};
|
|
298
270
|
const contextTokens = estimateContextTokens(context.messages).tokens;
|
|
299
271
|
const decision = await decideCompaction(session, {
|
|
300
272
|
reason: "threshold",
|
|
@@ -306,11 +278,6 @@ export async function compactBeforeNextAssistantResponse(session, context, signa
|
|
|
306
278
|
reserveTokens: settings.reserveTokens,
|
|
307
279
|
},
|
|
308
280
|
canContinue: false,
|
|
309
|
-
// 便宜缓解的事实输入与门控,与 checkCompaction 的 threshold decide 相同
|
|
310
|
-
//(设置开关 ∧ 冷却归零):被任一条件挡住时策略不做便宜缓解,直接走全量压缩。
|
|
311
|
-
branchEntries: session.sessionManager.getBranch(),
|
|
312
|
-
keepRecentTokens: effectiveSettings.keepRecentTokens,
|
|
313
|
-
microcompactEnabled: settings.microcompactEnabled && session._microcompactCooldown === 0,
|
|
314
281
|
signal: signal ?? session._policyDecisionAbortController?.signal,
|
|
315
282
|
});
|
|
316
283
|
await dispatchCompactionDecisionLifecycle(session, {
|
|
@@ -324,27 +291,6 @@ export async function compactBeforeNextAssistantResponse(session, context, signa
|
|
|
324
291
|
reserveTokens: settings.reserveTokens,
|
|
325
292
|
...(decision.failureMessage === undefined ? {} : { failureMessage: decision.failureMessage }),
|
|
326
293
|
});
|
|
327
|
-
// 策略便宜缓解(通用通道),镜像 checkCompaction 的 relief 落地分支:宿主原样
|
|
328
|
-
// 追加条目并重投影上下文,条目语义与投影归策略。执行上下文:本函数经默认
|
|
329
|
-
// prepareNextTurn loop link 在 agent 回合之间被 agent run await,不在
|
|
330
|
-
// _compactionQueue 内;手动压缩入口 compactInternal 先 _abortInternal() 等待
|
|
331
|
-
// 活跃回合结束,而本路径位于回合执行链上,回合结束前必先完成——relief 落地
|
|
332
|
-
// (同步 append + 投影)不会与手动压缩的摘要/提交交错,与 postAgentRun 的
|
|
333
|
-
// relief 落地同模式,不加队列锁。
|
|
334
|
-
if (decision.relief !== undefined && !decision.compact) {
|
|
335
|
-
session.sessionManager.appendCustomEntry(decision.relief.customType, decision.relief.data);
|
|
336
|
-
const sessionContext = session.sessionManager.buildSessionContext();
|
|
337
|
-
await session._applyContextTransition(sessionContext.messages, "compaction");
|
|
338
|
-
// 冷却起点:relief 已落地即开始计数(由 assistant message_end 递减)。
|
|
339
|
-
session._microcompactCooldown = MICROCOMPACT_COOLDOWN_ASSISTANT_RESPONSES;
|
|
340
|
-
session._hostLogger?.info("compaction", "policy relief applied", {
|
|
341
|
-
fields: { customType: decision.relief.customType, path: "pre-response" },
|
|
342
|
-
});
|
|
343
|
-
return {
|
|
344
|
-
...context,
|
|
345
|
-
messages: session.agent.state.messages.slice(),
|
|
346
|
-
};
|
|
347
|
-
}
|
|
348
294
|
if (!decision.compact)
|
|
349
295
|
return context;
|
|
350
296
|
await session._runAutoCompaction("threshold", false);
|
|
@@ -368,7 +314,7 @@ export async function runCompactionSummary(session, preparation, auth, customIns
|
|
|
368
314
|
const runtime = session._capabilityRuntime;
|
|
369
315
|
// v8 ignore next -- capability runtime 恒由 _buildRuntime 创建,dispose 后不再调用,运行期恒存在
|
|
370
316
|
if (!runtime)
|
|
371
|
-
throw new Error("Capability runtime is not available");
|
|
317
|
+
throw new Error(t("Capability runtime is not available"));
|
|
372
318
|
const result = await runtime.summarizeCompaction(session._compactionPolicyName, {
|
|
373
319
|
preparation,
|
|
374
320
|
model: summaryModelFacts(auth.model),
|
|
@@ -383,45 +329,14 @@ export async function runCompactionSummary(session, preparation, auth, customIns
|
|
|
383
329
|
context: { version: 1, sessionId: session.sessionId, phase: "compaction" },
|
|
384
330
|
execution,
|
|
385
331
|
});
|
|
386
|
-
let summary = result.summary;
|
|
387
|
-
let usage = result.usage;
|
|
388
|
-
// 摘要自批判评审轮(settings compaction.summarySelfCritique,默认关闭):
|
|
389
|
-
// 摘要是续接模型的全部上下文,漏一处路径/约束就断一环——多花一次小请求换
|
|
390
|
-
// 一遍"漏了什么"的自检(gemini-cli 两段式压缩的同款思路)。失败/中止/空文
|
|
391
|
-
// 本时保持第一轮摘要,评审轮不产生降级路径。
|
|
392
|
-
if (session.settingsManager.getCompactionSettings().summarySelfCritique && summary.trim() && !signal.aborted) {
|
|
393
|
-
const critique = await createSummaryModelInvocationV1(session, auth, summarizationRetryPolicy(session, execution.operationId, execution.inputRevision, signal), summarizationRetryCallbacks(session, { source: "compaction", reason }), { routingSessionId: session.sessionId }).invoke({
|
|
394
|
-
version: 1,
|
|
395
|
-
systemPrompt: SUMMARIZATION_SYSTEM_PROMPT,
|
|
396
|
-
prompt: summarySelfCritiquePrompt(summary),
|
|
397
|
-
maxTokens: 8192,
|
|
398
|
-
thinkingLevel: session.thinkingLevel === "off" ? "off" : "low",
|
|
399
|
-
}, signal);
|
|
400
|
-
if (critique.status === "completed" && critique.text && critique.text.trim()) {
|
|
401
|
-
summary = critique.text;
|
|
402
|
-
// 公共契约的 usage 是不透明透传;评审轮实际回传 provider Usage 形状,
|
|
403
|
-
// 这里按字段防御性收窄后并入压缩 usage。
|
|
404
|
-
const critiqueUsage = critique.usage;
|
|
405
|
-
if (usage && critiqueUsage) {
|
|
406
|
-
const add = (a, b) => a + (b ?? 0);
|
|
407
|
-
usage = {
|
|
408
|
-
...usage,
|
|
409
|
-
input: add(usage.input, critiqueUsage.input),
|
|
410
|
-
output: add(usage.output, critiqueUsage.output),
|
|
411
|
-
cacheRead: add(usage.cacheRead ?? 0, critiqueUsage.cacheRead),
|
|
412
|
-
cacheWrite: add(usage.cacheWrite ?? 0, critiqueUsage.cacheWrite),
|
|
413
|
-
};
|
|
414
|
-
}
|
|
415
|
-
}
|
|
416
|
-
}
|
|
417
332
|
// 包内收窄:invocation 结果按 provider 原样透传 usage;压缩 usage 合并需要内部 Usage 形状。
|
|
418
|
-
return { ...result,
|
|
333
|
+
return { ...result, usage: result.usage };
|
|
419
334
|
}
|
|
420
335
|
export async function decideCompaction(session, input) {
|
|
421
336
|
const runtime = session._capabilityRuntime;
|
|
422
337
|
// v8 ignore next -- capability runtime 恒由 _buildRuntime 创建,dispose 后不再调用,运行期恒存在
|
|
423
338
|
if (!runtime)
|
|
424
|
-
throw new Error("Capability runtime is not available");
|
|
339
|
+
throw new Error(t("Capability runtime is not available"));
|
|
425
340
|
// 内核机制兜底:默认策略名且无人注册(默认插件被禁用或失败隔离)时,机制层
|
|
426
341
|
// 不做压缩决策(无执行者),回合继续;缺失经 warn 日志与手动 /compact 的显式
|
|
427
342
|
// 错误暴露。默认插件不得成为隐藏前提(宪法 §2/§5)。显式配置的其他策略名缺
|
|
@@ -434,7 +349,6 @@ export async function decideCompaction(session, input) {
|
|
|
434
349
|
return { compact: false, retry: false };
|
|
435
350
|
}
|
|
436
351
|
return runtime.decideCompaction(session._compactionPolicyName, {
|
|
437
|
-
enabled: session.settingsManager.getCompactionSettings().enabled,
|
|
438
352
|
recoveryAttempted: session._overflowRecoveryAttempted,
|
|
439
353
|
...input,
|
|
440
354
|
context: { version: 1, sessionId: session.sessionId, phase: "compaction" },
|
|
@@ -446,7 +360,7 @@ export async function prepareCompaction(session, pathEntries, settings, executio
|
|
|
446
360
|
const runtime = session._capabilityRuntime;
|
|
447
361
|
// v8 ignore next -- capability runtime 恒由 _buildRuntime 创建,dispose 后不再调用,运行期恒存在
|
|
448
362
|
if (!runtime)
|
|
449
|
-
throw new Error("Capability runtime is not available");
|
|
363
|
+
throw new Error(t("Capability runtime is not available"));
|
|
450
364
|
const preparation = await runtime.prepareCompaction(session._compactionPolicyName, {
|
|
451
365
|
entries: pathEntries,
|
|
452
366
|
settings,
|
|
@@ -466,7 +380,9 @@ export async function prepareCompaction(session, pathEntries, settings, executio
|
|
|
466
380
|
!Number.isFinite(value.tokensBefore) ||
|
|
467
381
|
typeof value.fileOps !== "object" ||
|
|
468
382
|
typeof value.settings !== "object") {
|
|
469
|
-
throw new Error(
|
|
383
|
+
throw new Error(t("Compaction policy returned an invalid preparation: {policyName}", {
|
|
384
|
+
policyName: session._compactionPolicyName,
|
|
385
|
+
}));
|
|
470
386
|
}
|
|
471
387
|
return preparation;
|
|
472
388
|
}
|
|
@@ -490,7 +406,7 @@ export function enqueueCompaction(session, operation) {
|
|
|
490
406
|
const queued = previous
|
|
491
407
|
.then(() => {
|
|
492
408
|
if (session._reloadInProgress) {
|
|
493
|
-
throw new Error("Session reload in progress; compaction was not started");
|
|
409
|
+
throw new Error(t("Session reload in progress; compaction was not started"));
|
|
494
410
|
}
|
|
495
411
|
return operation();
|
|
496
412
|
})
|
|
@@ -525,11 +441,16 @@ export function commitCompaction(session, input) {
|
|
|
525
441
|
usage: input.usage,
|
|
526
442
|
});
|
|
527
443
|
if (commit.status === "revision_conflict") {
|
|
528
|
-
throw new Error(
|
|
444
|
+
throw new Error(t("Compaction commit revision conflict: expected {expectedSequence}/{expectedLeafId}, current {currentSequence}/{currentLeafId}", {
|
|
445
|
+
expectedSequence: input.expectedRevision.sequence,
|
|
446
|
+
expectedLeafId: input.expectedRevision.leafId ?? "root",
|
|
447
|
+
currentSequence: commit.currentRevision.sequence,
|
|
448
|
+
currentLeafId: commit.currentRevision.leafId ?? "root",
|
|
449
|
+
}));
|
|
529
450
|
}
|
|
530
451
|
const entry = session.sessionManager.getEntry(commit.entryId);
|
|
531
452
|
if (entry?.type !== "compaction" || entry.operationId !== input.operationId) {
|
|
532
|
-
throw new Error(
|
|
453
|
+
throw new Error(t("Compaction commit entry is unavailable: {entryId}", { entryId: commit.entryId }));
|
|
533
454
|
}
|
|
534
455
|
return { entry, status: commit.status, revision: commit.revision };
|
|
535
456
|
}
|
|
@@ -539,7 +460,7 @@ export async function dispatchCompactionCommitLifecycle(session, reason, commit)
|
|
|
539
460
|
const runtime = session._capabilityRuntime;
|
|
540
461
|
// v8 ignore next -- capability runtime 恒由 _buildRuntime 创建,dispose 后不再调用,运行期恒存在
|
|
541
462
|
if (!runtime)
|
|
542
|
-
throw new Error("Capability runtime is not available");
|
|
463
|
+
throw new Error(t("Capability runtime is not available"));
|
|
543
464
|
const entry = commit.entry;
|
|
544
465
|
const data = {
|
|
545
466
|
version: 1,
|
|
@@ -584,7 +505,7 @@ export async function decideOverflow(session, message, execution, signal) {
|
|
|
584
505
|
const runtime = session._capabilityRuntime;
|
|
585
506
|
// v8 ignore next -- capability runtime 恒由 _buildRuntime 创建,dispose 后不再调用,运行期恒存在
|
|
586
507
|
if (!runtime)
|
|
587
|
-
throw new Error("Capability runtime is not available");
|
|
508
|
+
throw new Error(t("Capability runtime is not available"));
|
|
588
509
|
return runtime.decideOverflow(session._overflowPolicyName, {
|
|
589
510
|
message,
|
|
590
511
|
contextWindow: session.model?.contextWindow,
|
|
@@ -634,9 +555,9 @@ export async function compactInternal(session, customInstructions) {
|
|
|
634
555
|
// Check why we can't compact
|
|
635
556
|
const lastEntry = pathEntries[pathEntries.length - 1];
|
|
636
557
|
if (lastEntry?.type === "compaction") {
|
|
637
|
-
throw new Error("Already compacted");
|
|
558
|
+
throw new Error(t("Already compacted"));
|
|
638
559
|
}
|
|
639
|
-
throw new Error("Nothing to compact (session too small)");
|
|
560
|
+
throw new Error(t("Nothing to compact (session too small)"));
|
|
640
561
|
}
|
|
641
562
|
// Shared default summary generator, also used by automatic compaction.
|
|
642
563
|
const { summary, firstKeptEntryId, tokensBefore, usage, details } = await runCompactionSummary(session, preparation, auth, customInstructions, session._compactionAbortController.signal, "manual", execution);
|
|
@@ -746,7 +667,7 @@ export async function checkCompaction(session, assistantMessage, skipAbortedChec
|
|
|
746
667
|
const settings = session.settingsManager.getCompactionSettings(session.model ?? undefined);
|
|
747
668
|
// Adaptive keepRecentTokens(effectiveKeepRecentTokens,动机见其注释:座席实测
|
|
748
669
|
// 30K 窗口 20K 保护预算使可摘要前缀为零,阈值反复命中却无事可做)。一次性
|
|
749
|
-
// 替换后全文一致使用:下方 trim 阶梯 stage 0
|
|
670
|
+
// 替换后全文一致使用:下方 trim 阶梯 stage 0 目标。
|
|
750
671
|
const effectiveSettings = {
|
|
751
672
|
...settings,
|
|
752
673
|
keepRecentTokens: effectiveKeepRecentTokens(settings.keepRecentTokens, session.model?.contextWindow ?? 0, settings.reserveTokens),
|
|
@@ -954,13 +875,6 @@ export async function checkCompaction(session, assistantMessage, skipAbortedChec
|
|
|
954
875
|
reserveTokens: settings.reserveTokens,
|
|
955
876
|
},
|
|
956
877
|
canContinue: false,
|
|
957
|
-
// 便宜缓解的事实输入:策略可以据此先做零成本的本地上下文缓解(如
|
|
958
|
-
// bootstrap 策略的 microcompact),把 LLM 摘要留作兜底。分支快照仅为
|
|
959
|
-
// 策略读取,内核不解释其内容。门控(设置开关 ∧ 冷却归零)被挡住时,
|
|
960
|
-
// 策略直接走全量压缩。
|
|
961
|
-
branchEntries: session.sessionManager.getBranch(),
|
|
962
|
-
keepRecentTokens: effectiveSettings.keepRecentTokens,
|
|
963
|
-
microcompactEnabled: effectiveSettings.microcompactEnabled && session._microcompactCooldown === 0,
|
|
964
878
|
signal,
|
|
965
879
|
});
|
|
966
880
|
await dispatchCompactionDecisionLifecycle(session, {
|
|
@@ -972,21 +886,6 @@ export async function checkCompaction(session, assistantMessage, skipAbortedChec
|
|
|
972
886
|
reserveTokens: settings.reserveTokens,
|
|
973
887
|
...(decision.failureMessage === undefined ? {} : { failureMessage: decision.failureMessage }),
|
|
974
888
|
});
|
|
975
|
-
// 策略便宜缓解(通用通道):策略通过 decision.relief 返回一个自定义条目,
|
|
976
|
-
// 宿主原样追加并重投影上下文——内核不解释条目语义,投影由策略经公共
|
|
977
|
-
// registerEntryProjection 通道自行注册(宪法 §4/§5:策略在插件,机制在内核)。
|
|
978
|
-
if (decision.relief !== undefined && !decision.compact) {
|
|
979
|
-
session.sessionManager.appendCustomEntry(decision.relief.customType, decision.relief.data);
|
|
980
|
-
const sessionContext = session.sessionManager.buildSessionContext();
|
|
981
|
-
await session._applyContextTransition(sessionContext.messages, "compaction");
|
|
982
|
-
// 冷却起点:relief 已落地即开始计数(本次改写后的下一个模型请求起算,
|
|
983
|
-
// 由 assistant message_end 递减,见 AgentSession)。
|
|
984
|
-
session._microcompactCooldown = MICROCOMPACT_COOLDOWN_ASSISTANT_RESPONSES;
|
|
985
|
-
session._hostLogger?.info("compaction", "policy relief applied", {
|
|
986
|
-
fields: { customType: decision.relief.customType },
|
|
987
|
-
});
|
|
988
|
-
return session.agent.hasQueuedMessages();
|
|
989
|
-
}
|
|
990
889
|
return decision.compact ? session._runAutoCompaction("threshold", decision.retry === true) : false;
|
|
991
890
|
}
|
|
992
891
|
/**
|
|
@@ -1197,13 +1096,17 @@ export function summarizationRetryCallbacks(session, source) {
|
|
|
1197
1096
|
},
|
|
1198
1097
|
};
|
|
1199
1098
|
}
|
|
1200
|
-
/**
|
|
1099
|
+
/**
|
|
1100
|
+
* Adapt the selected capability retry policy to the shared summary executor.
|
|
1101
|
+
* `...settings` 展开携带 `enabled: true`(pi-ai `RetryPolicy` 形状要求,
|
|
1102
|
+
* settings-manager 聚合恒填 true——产品侧自动重试无条件生效,D-079)。
|
|
1103
|
+
*/
|
|
1201
1104
|
export function summarizationRetryPolicy(session, operationId, inputRevision, signal) {
|
|
1202
1105
|
const settings = session.settingsManager.getRetrySettings();
|
|
1203
1106
|
const runtime = session._capabilityRuntime;
|
|
1204
1107
|
// v8 ignore next -- capability runtime 恒由 _buildRuntime 创建,dispose 后不再调用,运行期恒存在
|
|
1205
1108
|
if (!runtime)
|
|
1206
|
-
throw new Error("Capability runtime is not available");
|
|
1109
|
+
throw new Error(t("Capability runtime is not available"));
|
|
1207
1110
|
const execution = executionFacts(session, "retry", operationId ? `${operationId}:retry` : undefined, inputRevision);
|
|
1208
1111
|
return {
|
|
1209
1112
|
...settings,
|
|
@@ -1215,7 +1118,6 @@ export function summarizationRetryPolicy(session, operationId, inputRevision, si
|
|
|
1215
1118
|
}),
|
|
1216
1119
|
decide: ({ message, retryable, attempt, maxAttempts, baseDelayMs }) => runtime.decideRetry(session._retryPolicyName, {
|
|
1217
1120
|
retryable,
|
|
1218
|
-
enabled: settings.enabled,
|
|
1219
1121
|
attempt,
|
|
1220
1122
|
maxAttempts,
|
|
1221
1123
|
baseDelayMs,
|
|
@@ -1240,11 +1142,11 @@ export function summarizationRetryPolicy(session, operationId, inputRevision, si
|
|
|
1240
1142
|
*/
|
|
1241
1143
|
export async function navigateTree(session, targetId, options = {}) {
|
|
1242
1144
|
if (session.isStreaming) {
|
|
1243
|
-
throw new Error("Wait for the current response to finish before navigating the session tree.");
|
|
1145
|
+
throw new Error(t("Wait for the current response to finish before navigating the session tree."));
|
|
1244
1146
|
}
|
|
1245
1147
|
// Compaction mutates the active branch; navigating mid-compaction would race the summary commit.
|
|
1246
1148
|
if (session._compactionAbortController !== undefined || session._autoCompactionAbortController !== undefined) {
|
|
1247
|
-
throw new Error("Wait for the current compaction or tree navigation to finish before navigating the session tree.");
|
|
1149
|
+
throw new Error(t("Wait for the current compaction or tree navigation to finish before navigating the session tree."));
|
|
1248
1150
|
}
|
|
1249
1151
|
const oldLeafId = session.sessionManager.getLeafId();
|
|
1250
1152
|
// No-op if already at target
|
|
@@ -1253,11 +1155,11 @@ export async function navigateTree(session, targetId, options = {}) {
|
|
|
1253
1155
|
}
|
|
1254
1156
|
// Model required for summarization
|
|
1255
1157
|
if (options.summarize && !session.model) {
|
|
1256
|
-
throw new Error("No model available for summarization");
|
|
1158
|
+
throw new Error(t("No model available for summarization"));
|
|
1257
1159
|
}
|
|
1258
1160
|
const targetEntry = session.sessionManager.getEntry(targetId);
|
|
1259
1161
|
if (!targetEntry) {
|
|
1260
|
-
throw new Error(
|
|
1162
|
+
throw new Error(t("Entry {id} not found", { id: targetId }));
|
|
1261
1163
|
}
|
|
1262
1164
|
// Collect entries to summarize (from old leaf to common ancestor)
|
|
1263
1165
|
const { entries: entriesToSummarize } = collectEntriesForBranchSummary(session.sessionManager, oldLeafId, targetId);
|
|
@@ -1265,10 +1167,10 @@ export async function navigateTree(session, targetId, options = {}) {
|
|
|
1265
1167
|
const replaceInstructions = options.replaceInstructions;
|
|
1266
1168
|
const label = options.label;
|
|
1267
1169
|
if (session._reloadInProgress) {
|
|
1268
|
-
throw new Error("Session reload in progress; tree navigation is unavailable");
|
|
1170
|
+
throw new Error(t("Session reload in progress; tree navigation is unavailable"));
|
|
1269
1171
|
}
|
|
1270
1172
|
if (session._branchSummaryAbortController) {
|
|
1271
|
-
throw new Error("Branch navigation is already in progress");
|
|
1173
|
+
throw new Error(t("Branch navigation is already in progress"));
|
|
1272
1174
|
}
|
|
1273
1175
|
// Set up abort controller for summarization
|
|
1274
1176
|
session._branchSummaryAbortController = new AbortController();
|
|
@@ -1287,7 +1189,7 @@ export async function navigateTree(session, targetId, options = {}) {
|
|
|
1287
1189
|
const branchSummarySettings = session.settingsManager.getBranchSummarySettings();
|
|
1288
1190
|
const runtime = session._capabilityRuntime;
|
|
1289
1191
|
if (!runtime || !runtime.hasBranchSummaryPolicy(session._branchSummaryPolicyName)) {
|
|
1290
|
-
throw new Error(
|
|
1192
|
+
throw new Error(t("Branch summary policy is not registered: {name}", { name: session._branchSummaryPolicyName }));
|
|
1291
1193
|
}
|
|
1292
1194
|
const execution = executionFacts(session, "branch_summary", `branch_summary:${session.sessionId}:${oldLeafId ?? "root"}:${targetId}`);
|
|
1293
1195
|
const result = await runtime.summarizeBranch(session._branchSummaryPolicyName, {
|