@ai-agent-forge/agent-forge 0.88.1 → 0.88.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +71 -0
- package/README.md +1 -1
- package/bundled-plugins/agent-loop-policy/agent-forge.json +1 -1
- package/bundled-plugins/agent-loop-policy/plugin.json +1 -1
- package/bundled-plugins/coding-tools/agent-forge.json +1 -1
- package/bundled-plugins/coding-tools/plugin.json +1 -1
- package/bundled-plugins/compaction-policy/agent-forge.json +1 -1
- package/bundled-plugins/compaction-policy/plugin.json +1 -1
- package/bundled-plugins/overflow-policy/agent-forge.json +1 -1
- package/bundled-plugins/overflow-policy/plugin.json +1 -1
- package/bundled-plugins/provider-failover/agent-forge.json +1 -1
- package/bundled-plugins/provider-failover/plugin.json +1 -1
- package/bundled-plugins/retry-policy/agent-forge.json +1 -1
- package/bundled-plugins/retry-policy/plugin.json +1 -1
- package/dist/artifacts/paged-read.d.ts +6 -1
- package/dist/artifacts/paged-read.d.ts.map +1 -1
- package/dist/artifacts/paged-read.js.map +1 -1
- package/dist/bundle/.build-manifest.json +283 -263
- package/dist/bundle/chunks/{anthropic-messages-PLAKXR73.js → anthropic-messages-3FJHRAJL.js} +2 -2
- package/dist/bundle/chunks/anthropic.js +1 -1
- package/dist/bundle/chunks/{azure-openai-responses-OUWQ2AZD.js → azure-openai-responses-GCL47IDS.js} +1 -1
- package/dist/bundle/chunks/bedrock-converse-stream.js +1 -1
- package/dist/bundle/chunks/{chunk-Z72JWUZ4.js → chunk-32YDZI4J.js} +1 -1
- package/dist/bundle/chunks/{chunk-AQLNTW2B.js → chunk-755VNWIF.js} +17 -16
- package/dist/bundle/chunks/{chunk-LZOEQITZ.js → chunk-B42Y2VME.js} +120 -104
- package/dist/bundle/chunks/{chunk-DRQDKNXA.js → chunk-BVVSHK6W.js} +1 -1
- package/dist/bundle/chunks/{chunk-6R7UI4IY.js → chunk-QDLOMKF6.js} +1 -1
- package/dist/bundle/chunks/{chunk-D3ARGZFR.js → chunk-V3ACW7VD.js} +3 -3
- package/dist/bundle/chunks/{google-generative-ai-DLII6DAT.js → google-generative-ai-6BMXWA44.js} +1 -1
- package/dist/bundle/chunks/{google-vertex-G7BZL7GM.js → google-vertex-6H7NLRTK.js} +1 -1
- package/dist/bundle/chunks/image-resize-worker.js +3 -3
- package/dist/bundle/chunks/{mistral-conversations-JXUK24ID.js → mistral-conversations-IXUHSFSJ.js} +1 -1
- package/dist/bundle/chunks/{openai-codex-responses-5GSGFIPG.js → openai-codex-responses-YHUAEVCM.js} +1 -1
- package/dist/bundle/chunks/openai-codex.js +1 -1
- package/dist/bundle/chunks/{openai-completions-EI2I6DTG.js → openai-completions-ULQCFC72.js} +1 -1
- package/dist/bundle/chunks/openai-responses-NLLAJDPS.js +2 -0
- package/dist/bundle/chunks/{openrouter-images-G4GQRUSG.js → openrouter-images-GZZQZXMS.js} +1 -1
- package/dist/bundle/chunks/openrouter.js +1 -1
- package/dist/bundle/chunks/{pi-messages-PWU2VJMR.js → pi-messages-EJTI2EJ3.js} +1 -1
- package/dist/bundle/chunks/virtual-modules-TQWEGNNZ.js +5 -0
- package/dist/bundle/cli.js +1 -1
- package/dist/bundle/client.js +1 -1
- package/dist/bundle/index.js +1 -1
- package/dist/bundle/rpc-entry.js +1 -1
- package/dist/cli/args.d.ts +0 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +1 -4
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/config-selector.d.ts.map +1 -1
- package/dist/cli/config-selector.js +1 -1
- package/dist/cli/config-selector.js.map +1 -1
- package/dist/cli/experimental/cli.d.ts +3 -3
- package/dist/cli/experimental/cli.d.ts.map +1 -1
- package/dist/cli/experimental/cli.js +2 -2
- package/dist/cli/experimental/cli.js.map +1 -1
- package/dist/cli/experimental/commands/agent-forge.d.ts +15 -0
- package/dist/cli/experimental/commands/agent-forge.d.ts.map +1 -0
- package/dist/cli/experimental/commands/{pi.js → agent-forge.js} +4 -4
- package/dist/cli/experimental/commands/agent-forge.js.map +1 -0
- package/dist/cli/plugin-command.d.ts.map +1 -1
- package/dist/cli/plugin-command.js +8 -2
- package/dist/cli/plugin-command.js.map +1 -1
- package/dist/cli/startup-ui.d.ts.map +1 -1
- package/dist/cli/startup-ui.js +1 -1
- package/dist/cli/startup-ui.js.map +1 -1
- package/dist/config.d.ts +4 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +7 -7
- package/dist/config.js.map +1 -1
- package/dist/core/agent-forge-manifest.d.ts +7 -0
- package/dist/core/agent-forge-manifest.d.ts.map +1 -0
- package/dist/core/{pi-manifest.js → agent-forge-manifest.js} +4 -4
- package/dist/core/agent-forge-manifest.js.map +1 -0
- package/dist/core/agent-session-compaction.d.ts +1 -1
- package/dist/core/agent-session-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-compaction.js +3 -3
- package/dist/core/agent-session-compaction.js.map +1 -1
- package/dist/core/agent-session-internal.d.ts +2 -0
- 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-lifecycle.d.ts.map +1 -1
- package/dist/core/agent-session-lifecycle.js +12 -1
- package/dist/core/agent-session-lifecycle.js.map +1 -1
- package/dist/core/agent-session-projection.d.ts.map +1 -1
- package/dist/core/agent-session-projection.js +3 -3
- package/dist/core/agent-session-projection.js.map +1 -1
- package/dist/core/agent-session-services.d.ts +3 -1
- package/dist/core/agent-session-services.d.ts.map +1 -1
- package/dist/core/agent-session-services.js +2 -1
- package/dist/core/agent-session-services.js.map +1 -1
- package/dist/core/agent-session-store.d.ts.map +1 -1
- package/dist/core/agent-session-store.js +6 -1
- package/dist/core/agent-session-store.js.map +1 -1
- package/dist/core/agent-session-tools.d.ts.map +1 -1
- package/dist/core/agent-session-tools.js +13 -0
- package/dist/core/agent-session-tools.js.map +1 -1
- package/dist/core/agent-session.d.ts +24 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +58 -4
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
- package/dist/core/compaction/branch-summarization.js +1 -1
- package/dist/core/compaction/branch-summarization.js.map +1 -1
- package/dist/core/experimental.d.ts.map +1 -1
- package/dist/core/experimental.js +1 -3
- package/dist/core/experimental.js.map +1 -1
- package/dist/core/extensions/capability-runtime-store.d.ts +20 -1
- package/dist/core/extensions/capability-runtime-store.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-store.js +67 -0
- package/dist/core/extensions/capability-runtime-store.js.map +1 -1
- package/dist/core/extensions/capability-runtime-types.d.ts +14 -0
- package/dist/core/extensions/capability-runtime-types.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime-types.js +7 -1
- package/dist/core/extensions/capability-runtime-types.js.map +1 -1
- package/dist/core/extensions/capability-runtime.d.ts.map +1 -1
- package/dist/core/extensions/capability-runtime.js +144 -42
- package/dist/core/extensions/capability-runtime.js.map +1 -1
- package/dist/core/extensions/virtual-modules.d.ts.map +1 -1
- package/dist/core/extensions/virtual-modules.js +6 -1
- package/dist/core/extensions/virtual-modules.js.map +1 -1
- package/dist/core/facade/coding-agent-facade.d.ts +1 -1
- package/dist/core/facade/coding-agent-facade.d.ts.map +1 -1
- package/dist/core/facade/coding-agent-facade.js +1 -1
- package/dist/core/facade/coding-agent-facade.js.map +1 -1
- package/dist/core/i18n/locales/zh-cn/cli.d.ts.map +1 -1
- package/dist/core/i18n/locales/zh-cn/cli.js +2 -0
- package/dist/core/i18n/locales/zh-cn/cli.js.map +1 -1
- package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts +1 -1
- package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts.map +1 -1
- package/dist/core/i18n/locales/zh-cn/core-contract-final.js +3 -3
- package/dist/core/i18n/locales/zh-cn/core-contract-final.js.map +1 -1
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts.map +1 -1
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js +1 -1
- package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js.map +1 -1
- package/dist/core/i18n/locales/zh-cn/core-errors.d.ts.map +1 -1
- package/dist/core/i18n/locales/zh-cn/core-errors.js +1 -1
- package/dist/core/i18n/locales/zh-cn/core-errors.js.map +1 -1
- package/dist/core/i18n/locales/zh-cn/index.d.ts.map +1 -1
- package/dist/core/i18n/locales/zh-cn/index.js +2 -0
- package/dist/core/i18n/locales/zh-cn/index.js.map +1 -1
- package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts.map +1 -1
- package/dist/core/i18n/locales/zh-cn/interactive-mode.js +5 -0
- package/dist/core/i18n/locales/zh-cn/interactive-mode.js.map +1 -1
- package/dist/core/i18n/locales/zh-cn/session-cleanup.d.ts +7 -0
- package/dist/core/i18n/locales/zh-cn/session-cleanup.d.ts.map +1 -0
- package/dist/core/i18n/locales/zh-cn/session-cleanup.js +15 -0
- package/dist/core/i18n/locales/zh-cn/session-cleanup.js.map +1 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts.map +1 -1
- package/dist/core/i18n/locales/zh-cn/slash-commands.js +1 -0
- package/dist/core/i18n/locales/zh-cn/slash-commands.js.map +1 -1
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts.map +1 -1
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.js +2 -0
- package/dist/core/i18n/locales/zh-cn/tui-components-misc.js.map +1 -1
- package/dist/core/model-resolver.d.ts +2 -0
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js +4 -1
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/package-resource-collection.d.ts.map +1 -1
- package/dist/core/package-resource-collection.js +5 -5
- package/dist/core/package-resource-collection.js.map +1 -1
- package/dist/core/provider-composer.d.ts.map +1 -1
- package/dist/core/provider-composer.js +3 -3
- package/dist/core/provider-composer.js.map +1 -1
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +1 -1
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/sdk.d.ts +1 -1
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +30 -8
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-cleanup.d.ts +49 -0
- package/dist/core/session-cleanup.d.ts.map +1 -0
- package/dist/core/session-cleanup.js +159 -0
- package/dist/core/session-cleanup.js.map +1 -0
- package/dist/core/session-index.d.ts +75 -0
- package/dist/core/session-index.d.ts.map +1 -0
- package/dist/core/session-index.js +455 -0
- package/dist/core/session-index.js.map +1 -0
- package/dist/core/session-manager.d.ts +9 -0
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +206 -51
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +5 -10
- 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 +5 -0
- 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 +12 -1
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/timings.d.ts.map +1 -1
- package/dist/core/timings.js +1 -3
- package/dist/core/timings.js.map +1 -1
- package/dist/core/tools/capability-mount.d.ts +40 -0
- package/dist/core/tools/capability-mount.d.ts.map +1 -0
- package/dist/core/tools/capability-mount.js +112 -0
- package/dist/core/tools/capability-mount.js.map +1 -0
- package/dist/core/tools/render-utils.d.ts +1 -1
- package/dist/core/tools/render-utils.d.ts.map +1 -1
- package/dist/core/tools/render-utils.js.map +1 -1
- package/dist/core/tools/tool-definition.d.ts +1 -1
- package/dist/core/tools/tool-definition.d.ts.map +1 -1
- package/dist/core/tools/tool-definition.js.map +1 -1
- package/dist/core/trace-retention.d.ts +16 -1
- package/dist/core/trace-retention.d.ts.map +1 -1
- package/dist/core/trace-retention.js +43 -20
- package/dist/core/trace-retention.js.map +1 -1
- package/dist/export-html/ansi-to-html.d.ts.map +1 -0
- package/dist/export-html/ansi-to-html.js.map +1 -0
- package/dist/{core/export-html → export-html}/index.d.ts +1 -1
- package/dist/export-html/index.d.ts.map +1 -0
- package/dist/{core/export-html → export-html}/index.js +5 -5
- package/dist/export-html/index.js.map +1 -0
- package/dist/{core/export-html → export-html}/tool-renderer.d.ts +2 -2
- package/dist/export-html/tool-renderer.d.ts.map +1 -0
- package/dist/export-html/tool-renderer.js.map +1 -0
- package/dist/{modes/interactive → host}/model-catalog-refresh.d.ts +1 -1
- package/dist/host/model-catalog-refresh.d.ts.map +1 -0
- package/dist/{modes/interactive → host}/model-catalog-refresh.js +1 -1
- package/dist/host/model-catalog-refresh.js.map +1 -0
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +26 -14
- 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 +1 -1
- package/dist/modes/interactive/components/agents-view.js.map +1 -1
- package/dist/modes/interactive/components/armin.d.ts.map +1 -1
- package/dist/modes/interactive/components/armin.js +1 -1
- package/dist/modes/interactive/components/armin.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts +6 -0
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +108 -27
- 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 +1 -1
- package/dist/modes/interactive/components/bash-execution.js.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts +1 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.js.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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/modes/interactive/components/custom-entry.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js +1 -1
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/daxnuts.d.ts.map +1 -1
- package/dist/modes/interactive/components/daxnuts.js +1 -1
- package/dist/modes/interactive/components/daxnuts.js.map +1 -1
- package/dist/modes/interactive/components/dialog-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/dialog-editor.js +1 -1
- 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 +1 -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 +1 -1
- package/dist/modes/interactive/components/dialog-selector.js.map +1 -1
- package/dist/modes/interactive/components/diff.d.ts.map +1 -1
- package/dist/modes/interactive/components/diff.js +1 -1
- package/dist/modes/interactive/components/diff.js.map +1 -1
- package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -1
- package/dist/modes/interactive/components/dynamic-border.js +1 -1
- package/dist/modes/interactive/components/dynamic-border.js.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.d.ts +1 -1
- package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.js +1 -1
- package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +1 -1
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.js +1 -1
- 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 +1 -1
- package/dist/modes/interactive/components/login-dialog.js.map +1 -1
- package/dist/modes/interactive/components/mermaid.d.ts +1 -1
- package/dist/modes/interactive/components/mermaid.d.ts.map +1 -1
- 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 +2 -2
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/modes/interactive/components/plugin-selection-entry.js.map +1 -1
- package/dist/modes/interactive/components/queue-manager-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/queue-manager-selector.js +1 -1
- package/dist/modes/interactive/components/queue-manager-selector.js.map +1 -1
- package/dist/modes/interactive/components/render-types.d.ts +1 -1
- package/dist/modes/interactive/components/render-types.d.ts.map +1 -1
- package/dist/modes/interactive/components/render-types.js.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.js +5 -1
- package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js +11 -2
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -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 +1 -1
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts +19 -0
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +139 -4
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/tool-run-group.d.ts +44 -0
- package/dist/modes/interactive/components/tool-run-group.d.ts.map +1 -0
- package/dist/modes/interactive/components/tool-run-group.js +121 -0
- package/dist/modes/interactive/components/tool-run-group.js.map +1 -0
- package/dist/modes/interactive/components/tree-list.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-list.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message.js +1 -1
- package/dist/modes/interactive/components/user-message.js.map +1 -1
- package/dist/modes/interactive/components/workflow-view.d.ts.map +1 -1
- package/dist/modes/interactive/components/workflow-view.js +1 -1
- package/dist/modes/interactive/components/workflow-view.js.map +1 -1
- package/dist/modes/interactive/interactive-auth.d.ts +1 -1
- package/dist/modes/interactive/interactive-auth.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-auth.js +1 -1
- package/dist/modes/interactive/interactive-auth.js.map +1 -1
- package/dist/modes/interactive/interactive-commands.d.ts +125 -6
- package/dist/modes/interactive/interactive-commands.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-commands.js +698 -4
- package/dist/modes/interactive/interactive-commands.js.map +1 -1
- package/dist/modes/interactive/interactive-events.d.ts +174 -0
- package/dist/modes/interactive/interactive-events.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-events.js +704 -0
- package/dist/modes/interactive/interactive-events.js.map +1 -0
- package/dist/modes/interactive/interactive-format.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-format.js +1 -1
- package/dist/modes/interactive/interactive-format.js.map +1 -1
- package/dist/modes/interactive/interactive-lifecycle.d.ts +94 -0
- package/dist/modes/interactive/interactive-lifecycle.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-lifecycle.js +177 -0
- package/dist/modes/interactive/interactive-lifecycle.js.map +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts +254 -129
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +275 -2101
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/interactive-queues.d.ts +96 -0
- package/dist/modes/interactive/interactive-queues.d.ts.map +1 -0
- package/dist/modes/interactive/interactive-queues.js +183 -0
- package/dist/modes/interactive/interactive-queues.js.map +1 -0
- package/dist/modes/interactive/interactive-selectors.d.ts +95 -5
- package/dist/modes/interactive/interactive-selectors.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-selectors.js +517 -6
- package/dist/modes/interactive/interactive-selectors.js.map +1 -1
- package/dist/modes/interactive/startup-services.d.ts +31 -0
- package/dist/modes/interactive/startup-services.d.ts.map +1 -0
- package/dist/modes/interactive/startup-services.js +123 -0
- package/dist/modes/interactive/startup-services.js.map +1 -0
- package/dist/modes/memory-preheat.d.ts +11 -0
- package/dist/modes/memory-preheat.d.ts.map +1 -0
- package/dist/modes/memory-preheat.js +20 -0
- package/dist/modes/memory-preheat.js.map +1 -0
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js +3 -1
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/plugins/ecosystem/cli.d.ts.map +1 -1
- package/dist/plugins/ecosystem/cli.js +6 -3
- package/dist/plugins/ecosystem/cli.js.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-bootstrap.d.ts +7 -1
- package/dist/plugins/ecosystem/node-plugin-bootstrap.d.ts.map +1 -1
- package/dist/plugins/ecosystem/node-plugin-bootstrap.js +50 -3
- package/dist/plugins/ecosystem/node-plugin-bootstrap.js.map +1 -1
- package/dist/plugins/ecosystem/plugin-bootstrap.d.ts +28 -16
- package/dist/plugins/ecosystem/plugin-bootstrap.d.ts.map +1 -1
- package/dist/plugins/ecosystem/plugin-bootstrap.js +35 -33
- package/dist/plugins/ecosystem/plugin-bootstrap.js.map +1 -1
- package/dist/profile/plugin-profiles.d.ts +1 -1
- package/dist/profile/plugin-profiles.d.ts.map +1 -1
- package/dist/profile/plugin-profiles.js +18 -0
- package/dist/profile/plugin-profiles.js.map +1 -1
- package/dist/remote/server-assembly.d.ts.map +1 -1
- package/dist/remote/server-assembly.js +7 -2
- package/dist/remote/server-assembly.js.map +1 -1
- package/dist/{profiles → suites}/builtin-suites.d.ts +14 -4
- package/dist/suites/builtin-suites.d.ts.map +1 -0
- package/dist/{profiles → suites}/builtin-suites.js +20 -5
- package/dist/suites/builtin-suites.js.map +1 -0
- package/dist/suites/resolved-agent-profile.d.ts.map +1 -0
- package/dist/suites/resolved-agent-profile.js.map +1 -0
- package/dist/suites/suite-lifecycle.d.ts.map +1 -0
- package/dist/suites/suite-lifecycle.js.map +1 -0
- package/dist/suites/suite-loader.d.ts.map +1 -0
- package/dist/suites/suite-loader.js.map +1 -0
- package/dist/{modes/interactive/theme → theme}/dark.json +1 -1
- package/dist/{modes/interactive/theme → theme}/light.json +1 -1
- package/dist/{modes/interactive/theme → theme}/theme-controller.d.ts +1 -1
- package/dist/theme/theme-controller.d.ts.map +1 -0
- package/dist/{modes/interactive/theme → theme}/theme-controller.js +1 -1
- package/dist/theme/theme-controller.js.map +1 -0
- package/dist/{modes/interactive/theme → theme}/theme.d.ts +1 -1
- package/dist/theme/theme.d.ts.map +1 -0
- package/dist/{modes/interactive/theme → theme}/theme.js +5 -5
- package/dist/theme/theme.js.map +1 -0
- package/docs/compaction.md +7 -7
- package/docs/environment-variables.md +10 -4
- package/docs/keybindings.md +3 -3
- package/docs/models.md +17 -17
- package/docs/packages.md +1 -1
- package/docs/prompt-templates.md +1 -1
- package/docs/rpc.md +2 -2
- package/docs/sdk.md +5 -5
- package/docs/session-format.md +3 -3
- package/docs/settings.md +368 -354
- package/docs/shell-aliases.md +1 -1
- package/docs/skills.md +1 -1
- package/docs/terminal-setup.md +17 -17
- package/docs/themes.md +5 -5
- package/docs/tmux.md +4 -4
- package/docs/tui.md +1 -1
- package/docs/windows.md +1 -1
- package/examples/extensions/bash-spawn-hook/index.ts +1 -1
- package/examples/extensions/dynamic-resources/dynamic.json +1 -1
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -6
- package/examples/extensions/with-deps/plugin.json +1 -1
- package/package.json +2 -2
- package/dist/bundle/chunks/openai-responses-AUJQ3NWT.js +0 -2
- package/dist/bundle/chunks/virtual-modules-WF6WRHP7.js +0 -5
- package/dist/cli/experimental/commands/pi.d.ts +0 -15
- package/dist/cli/experimental/commands/pi.d.ts.map +0 -1
- package/dist/cli/experimental/commands/pi.js.map +0 -1
- package/dist/core/export-html/ansi-to-html.d.ts.map +0 -1
- package/dist/core/export-html/ansi-to-html.js.map +0 -1
- package/dist/core/export-html/index.d.ts.map +0 -1
- package/dist/core/export-html/index.js.map +0 -1
- package/dist/core/export-html/tool-renderer.d.ts.map +0 -1
- package/dist/core/export-html/tool-renderer.js.map +0 -1
- package/dist/core/pi-manifest.d.ts +0 -7
- package/dist/core/pi-manifest.d.ts.map +0 -1
- package/dist/core/pi-manifest.js.map +0 -1
- package/dist/modes/interactive/model-catalog-refresh.d.ts.map +0 -1
- package/dist/modes/interactive/model-catalog-refresh.js.map +0 -1
- package/dist/modes/interactive/theme/theme-controller.d.ts.map +0 -1
- package/dist/modes/interactive/theme/theme-controller.js.map +0 -1
- package/dist/modes/interactive/theme/theme.d.ts.map +0 -1
- package/dist/modes/interactive/theme/theme.js.map +0 -1
- package/dist/profiles/builtin-suites.d.ts.map +0 -1
- package/dist/profiles/builtin-suites.js.map +0 -1
- package/dist/profiles/resolved-agent-profile.d.ts.map +0 -1
- package/dist/profiles/resolved-agent-profile.js.map +0 -1
- package/dist/profiles/suite-lifecycle.d.ts.map +0 -1
- package/dist/profiles/suite-lifecycle.js.map +0 -1
- package/dist/profiles/suite-loader.d.ts.map +0 -1
- package/dist/profiles/suite-loader.js.map +0 -1
- package/dist/utils/deprecation.d.ts +0 -4
- package/dist/utils/deprecation.d.ts.map +0 -1
- package/dist/utils/deprecation.js +0 -13
- package/dist/utils/deprecation.js.map +0 -1
- /package/dist/{core/export-html → export-html}/ansi-to-html.d.ts +0 -0
- /package/dist/{core/export-html → export-html}/ansi-to-html.js +0 -0
- /package/dist/{core/export-html → export-html}/template.css +0 -0
- /package/dist/{core/export-html → export-html}/template.html +0 -0
- /package/dist/{core/export-html → export-html}/template.js +0 -0
- /package/dist/{core/export-html → export-html}/tool-renderer.js +0 -0
- /package/dist/{core/export-html → export-html}/vendor/highlight.min.js +0 -0
- /package/dist/{core/export-html → export-html}/vendor/marked.min.js +0 -0
- /package/dist/{profiles → suites}/resolved-agent-profile.d.ts +0 -0
- /package/dist/{profiles → suites}/resolved-agent-profile.js +0 -0
- /package/dist/{profiles → suites}/suite-lifecycle.d.ts +0 -0
- /package/dist/{profiles → suites}/suite-lifecycle.js +0 -0
- /package/dist/{profiles → suites}/suite-loader.d.ts +0 -0
- /package/dist/{profiles → suites}/suite-loader.js +0 -0
- /package/dist/{modes/interactive/theme → theme}/theme-schema.json +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-errors.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/core-errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA+N7C,CAAC","sourcesContent":["/**\n * core-errors 域词典(批次⑥):core/plugins 层终端用户可见的 throw 错误消息。\n * 覆盖范围见 docs/design/国际化与本地化.md 与批次⑥登记:配置错误、认证与 API key\n * 失败、网络/超时/HTTP 失败、文件 IO、会话文件损坏、资源缺失、环境限制,以及\n * 插件生态的安装/下载失败。插件开发者契约校验(D 类)不在此域,归批次⑨。\n * key 为英文原文(与调用点逐字一致),占位符 `{name}` 原样保留。\n */\nexport const coreErrors: Record<string, string> = {\n\t// ---- 认证与模型引导(auth-guidance.ts 及其 throw 调用点)----\n\t\"Use /login to log into a provider via OAuth or API key. See:\":\n\t\t\"使用 /login 通过 OAuth 或 API key 登录提供商。参见:\",\n\t\"No models available. {help}\": \"没有可用模型。{help}\",\n\t\"No model selected.\\n\\n{help}\\n\\nThen use /model to select a model.\":\n\t\t\"未选择模型。\\n\\n{help}\\n\\n然后使用 /model 选择模型。\",\n\t\"No API key found for {provider}.\\n\\n{help}\": \"未找到 {provider} 的 API key。\\n\\n{help}\",\n\t\"the selected model\": \"所选模型\",\n\n\t// ---- 会话管理(session-manager.ts / session-storage.ts)----\n\t\"Session id must be non-empty, contain only alphanumeric characters, '-', '_', and '.', and start and end with an alphanumeric character\":\n\t\t\"会话 id 不能为空,只能包含字母数字字符、'-'、'_' 和 '.',且首尾必须是字母数字字符\",\n\t\"Session file is not a valid {appName} session: {path}\": \"会话文件不是有效的 {appName} 会话:{path}\",\n\t\"Invalid compaction operationId in session entry: {operationId}\": \"会话条目中的压缩 operationId 无效:{operationId}\",\n\t\"Duplicate compaction operationId in session: {operationId}\": \"会话中存在重复的压缩 operationId:{operationId}\",\n\t\"Session append failed and rollback failed\": \"会话追加失败且回滚失败\",\n\t\"Cannot fork: source session file is empty or invalid: {path}\": \"无法分叉:源会话文件为空或无效:{path}\",\n\t\"Cannot fork: source session has no header: {path}\": \"无法分叉:源会话缺少头信息:{path}\",\n\t\"session guard lock timeout after {timeoutMs} ms: {lockPath}\": \"会话守护锁在 {timeoutMs} 毫秒后超时:{lockPath}\",\n\t\"Session file is owned by another live process (pid {pid}): {sessionFile}. Close that process first; concurrent writers would silently fork the session history.\":\n\t\t\"会话文件被另一个存活进程占用(pid {pid}):{sessionFile}。请先关闭该进程;并发写入会导致会话历史静默分叉。\",\n\t\"Session file: {sessionFile}\": \"会话文件:{sessionFile}\",\n\t\"Stored session working directory does not exist: {sessionCwd}{sessionFile}\\nCurrent working directory: {fallbackCwd}\":\n\t\t\"会话中记录的工作目录不存在:{sessionCwd}{sessionFile}\\n当前工作目录:{fallbackCwd}\",\n\n\t// ---- 会话运行时状态与操作守卫(agent-session*.ts)----\n\t\"Input rejected by an input gate\": \"输入被输入门拒绝\",\n\t\"Input rejected by an input gate: {reason}\": \"输入被输入门拒绝:{reason}\",\n\t\"Session reload in progress; prompts are unavailable\": \"会话重载进行中;暂无法提交提示\",\n\t\"Session reload in progress; compaction is unavailable\": \"会话重载进行中;暂无法压缩\",\n\t\"Session reload in progress; compaction was not started\": \"会话重载进行中;压缩未启动\",\n\t\"Session reload in progress; tree navigation is unavailable\": \"会话重载进行中;暂无法导航会话树\",\n\t\"Session reload in progress; bash execution is unavailable\": \"会话重载进行中;暂无法执行 bash\",\n\t\"Session reload in progress; bash results cannot be recorded\": \"会话重载进行中;无法记录 bash 结果\",\n\t\"Cannot submit a prompt while compaction is in progress. Wait for compaction to finish and retry.\":\n\t\t\"压缩进行中无法提交提示。请等待压缩完成后再重试。\",\n\t\"Authentication failed for \\\"{provider}\\\". Credentials may have expired or network is unavailable. Run '/login {provider}' to re-authenticate.\":\n\t\t\"“{provider}”认证失败。凭证可能已过期或网络不可用。请运行 '/login {provider}' 重新认证。\",\n\t\"No model is set on this session's agent\": \"本会话的 agent 未设置模型\",\n\t\"No API key for {provider}/{model}\": \"没有 {provider}/{model} 的 API key\",\n\t\"Already compacted\": \"已压缩过\",\n\t\"Nothing to compact (session too small)\": \"没有可压缩的内容(会话太小)\",\n\t\"Wait for the current response to finish before navigating the session tree.\": \"请等待当前响应结束再导航会话树。\",\n\t\"Wait for the current compaction or tree navigation to finish before navigating the session tree.\":\n\t\t\"请等待当前压缩或树导航结束再导航会话树。\",\n\t\"No model available for summarization\": \"没有可用于生成摘要的模型\",\n\t\"Branch navigation is already in progress\": \"分支导航已在进行中\",\n\t\"Branch summary policy is not registered: {name}\": \"分支摘要策略未注册:{name}\",\n\t\"Configured context strategy is not registered: {name}\": \"已配置的上下文策略未注册:{name}\",\n\t\"Configured context strategy is not registered after reload: {name}\": \"重载后已配置的上下文策略未注册:{name}\",\n\t\"This session has not been saved yet. Send a message before cloning or forking it.\":\n\t\t\"本会话尚未保存。请先发送消息再克隆或分叉。\",\n\t\"Failed to create forked session\": \"创建分叉会话失败\",\n\t\"File not found: {path}\": \"文件不存在:{path}\",\n\t\"Skill is duplicated in resources: {name}\": \"技能在资源中重复:{name}\",\n\t\"Skill conflicts with a resource skill: {name}\": \"技能与资源技能冲突:{name}\",\n\n\t// ---- 模型与提供商配置(model-runtime.ts / provider-composer.ts)----\n\t\"Credential {operation} committed for {providerId}, but local synchronization failed\":\n\t\t\"提供商 {providerId} 的凭证 {operation} 已提交,但本地同步失败\",\n\t\"Unknown provider: {provider}\": \"未知提供商:{provider}\",\n\t\"Provider is not configured: {provider}\": \"提供商未配置:{provider}\",\n\t'Provider {providerId}, model {modelId}: no \"api\" specified. Set at provider or model level.':\n\t\t'提供商 {providerId},模型 {modelId}:未指定 \"api\"。请在提供商或模型级别设置。',\n\t'Provider {providerId}: \"baseUrl\" is required when defining custom models.':\n\t\t'提供商 {providerId}:定义自定义模型时必须提供 \"baseUrl\"。',\n\t\"Provider {providerId}, model {modelId}: invalid contextWindow\":\n\t\t\"提供商 {providerId},模型 {modelId}:contextWindow 无效\",\n\t\"Provider {providerId}, model {modelId}: invalid maxTokens\": \"提供商 {providerId},模型 {modelId}:maxTokens 无效\",\n\t'Provider {providerId}: \"baseUrl\" is required when \"oauth\" is set.':\n\t\t'提供商 {providerId}:设置 \"oauth\" 时必须提供 \"baseUrl\"。',\n\t'Provider {providerId}: must specify \"baseUrl\", \"headers\", \"compat\", \"modelOverrides\", or \"models\".':\n\t\t'提供商 {providerId}:必须指定 \"baseUrl\"、\"headers\"、\"compat\"、\"modelOverrides\" 或 \"models\" 之一。',\n\t\"Provider {providerId}: no authentication method configured.\": \"提供商 {providerId}:未配置任何认证方式。\",\n\t'API key for provider \"{providerId}\"': '提供商 \"{providerId}\" 的 API key',\n\n\t// ---- 配置值解析(resolve-config-value.ts)----\n\t\"Failed to resolve {description} from shell command: {command}\": \"无法从 shell 命令解析{description}:{command}\",\n\t\"Failed to resolve {description} from environment variable: {envVar}\": \"无法从环境变量解析{description}:{envVar}\",\n\t\"Failed to resolve {description} from environment variables: {envVars}\":\n\t\t\"无法从环境变量解析{description}:{envVars}\",\n\t\"Failed to resolve {description}\": \"无法解析{description}\",\n\t'{description} header \"{key}\"': '{description}的 header \"{key}\"',\n\n\t// ---- settings 校验(settings-manager.ts / http-dispatcher.ts)----\n\t\"Invalid {settingName} setting: {value}\": \"无效的 {settingName} 设置:{value}\",\n\t\"Invalid compaction.{field} setting: {value}. Expected a non-negative safe integer.\":\n\t\t\"无效的 compaction.{field} 设置:{value}。应为非负安全整数。\",\n\t'Invalid compaction.modelOverrides[\"{modelKey}\"] setting: {value}. Expected an object.':\n\t\t'无效的 compaction.modelOverrides[\"{modelKey}\"] 设置:{value}。应为对象。',\n\t'Invalid compaction.modelOverrides[\"{modelKey}\"].{field} setting: {value}. Expected a non-negative safe integer.':\n\t\t'无效的 compaction.modelOverrides[\"{modelKey}\"].{field} 设置:{value}。应为非负安全整数。',\n\t\"Invalid httpIdleTimeoutMs setting: {value}\": \"无效的 httpIdleTimeoutMs 设置:{value}\",\n\t\"Invalid HTTP idle timeout: {value}\": \"无效的 HTTP 空闲超时:{value}\",\n\n\t// ---- 凭证存储(auth-storage.ts)----\n\t\"Failed to read auth.json: {reason}\": \"读取 auth.json 失败:{reason}\",\n\t\"Invalid auth.json: expected an object\": \"auth.json 无效:应为对象\",\n\t'Invalid auth.json credential for provider \"{providerId}\"': '提供商 \"{providerId}\" 的 auth.json 凭证无效',\n\t\"Read-only credential storage cannot modify auth.json\": \"只读凭证存储无法修改 auth.json\",\n\n\t// ---- 模型目录与压缩(remote-catalog-provider.ts / compaction.ts)----\n\t'Invalid model catalog for provider \"{providerId}\"': '提供商 \"{providerId}\" 的模型目录无效',\n\t\"Model catalog request failed for {providerId}: {status}\": \"提供商 {providerId} 的模型目录请求失败:{status}\",\n\t\"First kept entry has no UUID - session may need migration\": \"首个保留条目没有 UUID——会话可能需要迁移\",\n\n\t// ---- 导出(export-html/index.ts)----\n\t\"Cannot export in-memory session to HTML\": \"无法将内存中的会话导出为 HTML\",\n\t\"Nothing to export yet - start a conversation first\": \"暂无可导出内容——请先开始对话\",\n\n\t// ---- SDK 会话创建与插件装载(sdk.ts / capability-plugin.ts / capability-runtime.ts)----\n\t\"Failed to read capability plugin manifest {path}: {reason}\": \"读取能力插件 manifest 失败 {path}:{reason}\",\n\t\"Failed to inspect capability plugin directory {directory}: {reason}\": \"检查能力插件目录失败 {directory}:{reason}\",\n\t\"Capability plugin path must be a directory: {directory}\": \"能力插件路径必须是目录:{directory}\",\n\t\"Failed to resolve capability plugin directory {directory}: {reason}\": \"解析能力插件目录失败 {directory}:{reason}\",\n\t\"Failed to read capability plugin directory {directory}: {reason}\": \"读取能力插件目录失败 {directory}:{reason}\",\n\t\"Failed to resolve capability plugin manifest {path}: {reason}\": \"解析能力插件 manifest 失败 {path}:{reason}\",\n\t\"Failed to import capability plugin entry {path}: {reason}\": \"导入能力插件入口失败 {path}:{reason}\",\n\t\"Plugin capability is required but unavailable: {capabilityId}@{version} ({pluginId})\":\n\t\t\"必需的插件能力不可用:{capabilityId}@{version}({pluginId})\",\n\t'Session is bound to suite \"{boundSuiteId}\" and cannot resume with \"{suiteId}\"; rerun with --rebind-suite to adopt the new suite, or create a new session':\n\t\t'会话已绑定 suite \"{boundSuiteId}\",无法以 \"{suiteId}\" 恢复;请加 --rebind-suite 重新运行以切换到新 suite,或创建新会话',\n\t\"Session Profile identity drift detected (the active plugin set changed since the conversation started); rerun with --rebind-suite to adopt the new plugin set, or create a new session\":\n\t\t\"检测到会话 Profile 身份漂移(对话开始后生效的插件集发生了变化);请加 --rebind-suite 重新运行以采用新插件集,或创建新会话\",\n\n\t// ---- 包管理与命令执行(package-manager.ts / package-source.ts / package-install-host.ts / config.ts)----\n\t\"Path does not exist: {path}\": \"路径不存在:{path}\",\n\t\"Unsupported install source: {source}\": \"不支持的安装源:{source}\",\n\t\"Unsupported remove source: {source}\": \"不支持的移除源:{source}\",\n\t\"Missing source: {source}\": \"源缺失:{source}\",\n\t\"Empty response from npm view\": \"npm view 返回空响应\",\n\t\"Unexpected response from npm view\": \"npm view 返回意外响应\",\n\t\"Failed to determine remote HEAD\": \"无法确定远端 HEAD\",\n\t\"Unsupported upstream remote: {upstream}\": \"不支持的 upstream 远端:{upstream}\",\n\t\"Missing upstream branch name\": \"缺少 upstream 分支名\",\n\t\"Failed to run {command} {args}: {reason}\": \"执行 {command} {args} 失败:{reason}\",\n\t\"Failed to run {command}: {reason}\": \"执行 {command} 失败:{reason}\",\n\t\"No matching package found for {source}\": \"未找到与 {source} 匹配的包\",\n\t\"No matching package found for {source}. Did you mean {suggestion}?\":\n\t\t\"未找到与 {source} 匹配的包。你是想找 {suggestion} 吗?\",\n\t\"Invalid npmCommand: first array entry must be a non-empty command\": \"无效的 npmCommand:数组第一项必须是非空命令\",\n\n\t// ---- MCP(plugins/mcp-http / agent-session-services.ts)----\n\t\"MCP HTTP transport error: {reason}\": \"MCP HTTP 传输错误:{reason}\",\n\t\"MCP HTTP transport is closed\": \"MCP HTTP 传输已关闭\",\n\t\"MCP HTTP transport returned HTTP {status}\": \"MCP HTTP 传输返回 HTTP {status}\",\n\t\"MCP HTTP transport returned non-JSON body: {reason}\": \"MCP HTTP 传输返回了非 JSON 响应体:{reason}\",\n\t\"MCP error {code}: {message}\": \"MCP 错误 {code}:{message}\",\n\t\"unknown error\": \"未知错误\",\n\t\"MCP tools/list result must contain tools[]\": \"MCP tools/list 结果必须包含 tools[]\",\n\t\"MCP tool requires a non-empty name\": \"MCP 工具必须具有非空名称\",\n\n\t// ---- 插件生态:获取与分发失败表(plugin-acquisition.ts / distribution.ts)----\n\t\"Plugin ref is invalid\": \"插件 ref 无效\",\n\t\"Local plugin ref exists but is neither a directory nor a .zip/.tgz file\":\n\t\t\"本地插件 ref 存在,但既不是目录也不是 .zip/.tgz 文件\",\n\t\"Plugin ref URL scheme is not supported\": \"不支持插件 ref 的 URL 协议\",\n\t\"Plugin ref #sha256 digest fragment is invalid\": \"插件 ref 的 #sha256 摘要片段无效\",\n\t\"Plugin npm package ref is invalid\": \"插件 npm 包 ref 无效\",\n\t\"Plugin package acquisition was cancelled\": \"插件包获取已取消\",\n\t\"Plugin package download failed\": \"插件包下载失败\",\n\t\"Plugin npm package was not found on the registry\": \"注册表中未找到该插件 npm 包\",\n\t\"No npm package version matches the requested range\": \"没有匹配所请求范围的 npm 包版本\",\n\t\"Plugin package bytes do not match the expected digest\": \"插件包字节与预期摘要不匹配\",\n\t\"Plugin package bytes are neither a zip nor a tgz\": \"插件包字节既不是 zip 也不是 tgz\",\n\t\"Plugin package contents are invalid\": \"插件包内容无效\",\n\t\"Plugin package exceeds the configured size budget\": \"插件包超出配置的大小预算\",\n\t\"Plugin release was not found\": \"未找到插件 release\",\n\t\"Plugin release has no .zip/.tgz asset\": \"插件 release 没有 .zip/.tgz 资产\",\n\t\"Plugin release has multiple .zip/.tgz assets\": \"插件 release 有多个 .zip/.tgz 资产\",\n\t\"Plugin release API rate limit was exceeded\": \"插件 release API 超出速率限制\",\n\t\"Plugin distribution is unsupported on this host\": \"此宿主不支持插件分发\",\n\t\"Plugin distribution operation was cancelled\": \"插件分发操作已取消\",\n\t\"Plugin distribution descriptor is invalid\": \"插件分发描述符无效\",\n\t\"Plugin distribution metadata is invalid\": \"插件分发元数据无效\",\n\t\"Plugin distribution artifact handle is invalid\": \"插件分发产物句柄无效\",\n\t\"Plugin distribution source does not match the descriptor\": \"插件分发来源与描述符不匹配\",\n\t\"Plugin distribution plugin identity does not match the descriptor\": \"插件分发的插件身份与描述符不匹配\",\n\t\"Plugin distribution digest does not match the descriptor\": \"插件分发摘要与描述符不匹配\",\n\t\"Plugin distribution signature was rejected\": \"插件分发签名被拒绝\",\n\t\"Plugin distribution descriptor has expired\": \"插件分发描述符已过期\",\n\t\"Plugin distribution size does not match the descriptor\": \"插件分发大小与描述符不匹配\",\n\t\"Plugin distribution media type does not match the descriptor\": \"插件分发媒体类型与描述符不匹配\",\n\t\"Plugin distribution host operation failed\": \"插件分发宿主操作失败\",\n\t\"Plugin distribution artifact release failed\": \"插件分发产物释放失败\",\n\n\t// ---- 插件生态:网络下载与安装店 IO(node-*-source.ts / registry.ts)----\n\t\"npm registry request timed out\": \"npm registry 请求超时\",\n\t\"npm registry request was cancelled\": \"npm registry 请求已取消\",\n\t\"npm registry request failed\": \"npm registry 请求失败\",\n\t\"npm registry rate limit was exceeded\": \"npm registry 速率限制已触发\",\n\t\"npm registry redirect limit exceeded\": \"超出 npm registry 重定向次数上限\",\n\t\"npm package was not found on the registry\": \"注册表中未找到该 npm 包\",\n\t\"npm registry request did not succeed\": \"npm registry 请求未成功\",\n\t\"npm tarball download was cancelled\": \"npm tarball 下载已取消\",\n\t\"npm tarball download did not succeed\": \"npm tarball 下载未成功\",\n\t\"plugin package download was cancelled\": \"插件包下载已取消\",\n\t\"plugin package download timed out\": \"插件包下载超时\",\n\t\"plugin package download failed\": \"插件包下载失败\",\n\t\"plugin package redirect limit exceeded\": \"超出插件包重定向次数上限\",\n\t\"plugin package download did not succeed\": \"插件包下载未成功\",\n\t\"plugin package response has no body\": \"插件包响应没有响应体\",\n\t\"release API request timed out\": \"release API 请求超时\",\n\t\"release API request was cancelled\": \"release API 请求已取消\",\n\t\"release API request failed\": \"release API 请求失败\",\n\t\"repo or release was not found\": \"未找到仓库或 release\",\n\t\"release API request did not succeed\": \"release API 请求未成功\",\n\t\"release API redirect limit exceeded\": \"超出 release API 重定向次数上限\",\n\t\"release asset download was cancelled\": \"release 资产下载已取消\",\n\t\"repo has no published release\": \"仓库没有已发布的 release\",\n\t\"Plugin registry request failed\": \"插件注册表请求失败\",\n\t\"Plugin registry request was cancelled\": \"插件注册表请求已取消\",\n\t\"Plugin registry request timed out\": \"插件注册表请求超时\",\n\t\"Disk registry source read was cancelled\": \"磁盘注册表源读取已取消\",\n\t\"Install store index could not be read\": \"无法读取安装店索引\",\n\t\"Installed plugin manifest could not be read\": \"无法读取已安装插件的 manifest\",\n\t\"Plugin registry operation was cancelled\": \"插件注册表操作已取消\",\n\t\"only toggles the enabled flag; the record lifecycle is {lifecycle} and the runtime will not load it\":\n\t\t\"仅切换 enabled 标志;该记录 lifecycle 为 {lifecycle},运行时不会加载\",\n\n\t// --- provider-composer.ts OAuth 手动输码 ---\n\t\"Paste the authorization code\": \"请粘贴授权码\",\n};\n"]}
|
|
1
|
+
{"version":3,"file":"core-errors.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/core-errors.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA+N7C,CAAC","sourcesContent":["/**\n * core-errors 域词典(批次⑥):core/plugins 层终端用户可见的 throw 错误消息。\n * 覆盖范围见 docs/design/国际化与本地化.md 与批次⑥登记:配置错误、认证与 API key\n * 失败、网络/超时/HTTP 失败、文件 IO、会话文件损坏、资源缺失、环境限制,以及\n * 插件生态的安装/下载失败。插件开发者契约校验(D 类)不在此域,归批次⑨。\n * key 为英文原文(与调用点逐字一致),占位符 `{name}` 原样保留。\n */\nexport const coreErrors: Record<string, string> = {\n\t// ---- 认证与模型引导(auth-guidance.ts 及其 throw 调用点)----\n\t\"Use /login to log into a provider via OAuth or API key. See:\":\n\t\t\"使用 /login 通过 OAuth 或 API key 登录提供商。参见:\",\n\t\"No models available. {help}\": \"没有可用模型。{help}\",\n\t\"No model selected.\\n\\n{help}\\n\\nThen use /model to select a model.\":\n\t\t\"未选择模型。\\n\\n{help}\\n\\n然后使用 /model 选择模型。\",\n\t\"No API key found for {provider}.\\n\\n{help}\": \"未找到 {provider} 的 API key。\\n\\n{help}\",\n\t\"the selected model\": \"所选模型\",\n\n\t// ---- 会话管理(session-manager.ts / session-storage.ts)----\n\t\"Session id must be non-empty, contain only alphanumeric characters, '-', '_', and '.', and start and end with an alphanumeric character\":\n\t\t\"会话 id 不能为空,只能包含字母数字字符、'-'、'_' 和 '.',且首尾必须是字母数字字符\",\n\t\"Session file is not a valid {appName} session: {path}\": \"会话文件不是有效的 {appName} 会话:{path}\",\n\t\"Invalid compaction operationId in session entry: {operationId}\": \"会话条目中的压缩 operationId 无效:{operationId}\",\n\t\"Duplicate compaction operationId in session: {operationId}\": \"会话中存在重复的压缩 operationId:{operationId}\",\n\t\"Session append failed and rollback failed\": \"会话追加失败且回滚失败\",\n\t\"Cannot fork: source session file is empty or invalid: {path}\": \"无法分叉:源会话文件为空或无效:{path}\",\n\t\"Cannot fork: source session has no header: {path}\": \"无法分叉:源会话缺少头信息:{path}\",\n\t\"session guard lock timeout after {timeoutMs} ms: {lockPath}\": \"会话守护锁在 {timeoutMs} 毫秒后超时:{lockPath}\",\n\t\"Session file is owned by another live process (pid {pid}): {sessionFile}. Close that process first; concurrent writers would silently fork the session history.\":\n\t\t\"会话文件被另一个存活进程占用(pid {pid}):{sessionFile}。请先关闭该进程;并发写入会导致会话历史静默分叉。\",\n\t\"Session file: {sessionFile}\": \"会话文件:{sessionFile}\",\n\t\"Stored session working directory does not exist: {sessionCwd}{sessionFile}\\nCurrent working directory: {fallbackCwd}\":\n\t\t\"会话中记录的工作目录不存在:{sessionCwd}{sessionFile}\\n当前工作目录:{fallbackCwd}\",\n\n\t// ---- 会话运行时状态与操作守卫(agent-session*.ts)----\n\t\"Input rejected by an input gate\": \"输入被输入门拒绝\",\n\t\"Input rejected by an input gate: {reason}\": \"输入被输入门拒绝:{reason}\",\n\t\"Session reload in progress; prompts are unavailable\": \"会话重载进行中;暂无法提交提示\",\n\t\"Session reload in progress; compaction is unavailable\": \"会话重载进行中;暂无法压缩\",\n\t\"Session reload in progress; compaction was not started\": \"会话重载进行中;压缩未启动\",\n\t\"Session reload in progress; tree navigation is unavailable\": \"会话重载进行中;暂无法导航会话树\",\n\t\"Session reload in progress; bash execution is unavailable\": \"会话重载进行中;暂无法执行 bash\",\n\t\"Session reload in progress; bash results cannot be recorded\": \"会话重载进行中;无法记录 bash 结果\",\n\t\"Cannot submit a prompt while compaction is in progress. Wait for compaction to finish and retry.\":\n\t\t\"压缩进行中无法提交提示。请等待压缩完成后再重试。\",\n\t\"Authentication failed for \\\"{provider}\\\". Credentials may have expired or network is unavailable. Run '/login {provider}' to re-authenticate.\":\n\t\t\"“{provider}”认证失败。凭证可能已过期或网络不可用。请运行 '/login {provider}' 重新认证。\",\n\t\"No model is set on this session's agent\": \"本会话的 agent 未设置模型\",\n\t\"No API key for {provider}/{model}\": \"没有 {provider}/{model} 的 API key\",\n\t\"Already compacted\": \"已压缩过\",\n\t\"Nothing to compact (session too small)\": \"没有可压缩的内容(会话太小)\",\n\t\"Wait for the current response to finish before navigating the session tree.\": \"请等待当前响应结束再导航会话树。\",\n\t\"Wait for the current compaction or tree navigation to finish before navigating the session tree.\":\n\t\t\"请等待当前压缩或树导航结束再导航会话树。\",\n\t\"No model available for summarization\": \"没有可用于生成摘要的模型\",\n\t\"Branch navigation is already in progress\": \"分支导航已在进行中\",\n\t\"Branch summary policy is not registered: {name}\": \"分支摘要策略未注册:{name}\",\n\t\"Configured context strategy is not registered: {name}\": \"已配置的上下文策略未注册:{name}\",\n\t\"Configured context strategy is not registered after reload: {name}\": \"重载后已配置的上下文策略未注册:{name}\",\n\t\"This session has not been saved yet. Send a message before cloning or forking it.\":\n\t\t\"本会话尚未保存。请先发送消息再克隆或分叉。\",\n\t\"Failed to create forked session\": \"创建分叉会话失败\",\n\t\"File not found: {path}\": \"文件不存在:{path}\",\n\t\"Skill is duplicated in resources: {name}\": \"技能在资源中重复:{name}\",\n\t\"Skill conflicts with a resource skill: {name}\": \"技能与资源技能冲突:{name}\",\n\n\t// ---- 模型与提供商配置(model-runtime.ts / provider-composer.ts)----\n\t\"Credential {operation} committed for {providerId}, but local synchronization failed\":\n\t\t\"提供商 {providerId} 的凭证 {operation} 已提交,但本地同步失败\",\n\t\"Unknown provider: {provider}\": \"未知提供商:{provider}\",\n\t\"Provider is not configured: {provider}\": \"提供商未配置:{provider}\",\n\t'Provider {providerId}, model {modelId}: no \"api\" specified. Set at provider or model level.':\n\t\t'提供商 {providerId},模型 {modelId}:未指定 \"api\"。请在提供商或模型级别设置。',\n\t'Provider {providerId}: \"baseUrl\" is required when defining custom models.':\n\t\t'提供商 {providerId}:定义自定义模型时必须提供 \"baseUrl\"。',\n\t\"Provider {providerId}, model {modelId}: invalid contextWindow\":\n\t\t\"提供商 {providerId},模型 {modelId}:contextWindow 无效\",\n\t\"Provider {providerId}, model {modelId}: invalid maxTokens\": \"提供商 {providerId},模型 {modelId}:maxTokens 无效\",\n\t'Provider {providerId}: \"baseUrl\" is required when \"oauth\" is set.':\n\t\t'提供商 {providerId}:设置 \"oauth\" 时必须提供 \"baseUrl\"。',\n\t'Provider {providerId}: must specify \"baseUrl\", \"headers\", \"compat\", \"modelOverrides\", or \"models\".':\n\t\t'提供商 {providerId}:必须指定 \"baseUrl\"、\"headers\"、\"compat\"、\"modelOverrides\" 或 \"models\" 之一。',\n\t\"Provider {providerId}: no authentication method configured.\": \"提供商 {providerId}:未配置任何认证方式。\",\n\t'API key for provider \"{providerId}\"': '提供商 \"{providerId}\" 的 API key',\n\n\t// ---- 配置值解析(resolve-config-value.ts)----\n\t\"Failed to resolve {description} from shell command: {command}\": \"无法从 shell 命令解析{description}:{command}\",\n\t\"Failed to resolve {description} from environment variable: {envVar}\": \"无法从环境变量解析{description}:{envVar}\",\n\t\"Failed to resolve {description} from environment variables: {envVars}\":\n\t\t\"无法从环境变量解析{description}:{envVars}\",\n\t\"Failed to resolve {description}\": \"无法解析{description}\",\n\t'{description} header \"{key}\"': '{description}的 header \"{key}\"',\n\n\t// ---- settings 校验(settings-manager.ts / http-dispatcher.ts)----\n\t\"Invalid {settingName} setting: {value}\": \"无效的 {settingName} 设置:{value}\",\n\t\"Invalid compaction.{field} setting: {value}. Expected a non-negative safe integer.\":\n\t\t\"无效的 compaction.{field} 设置:{value}。应为非负安全整数。\",\n\t'Invalid compaction.modelOverrides[\"{modelKey}\"] setting: {value}. Expected an object.':\n\t\t'无效的 compaction.modelOverrides[\"{modelKey}\"] 设置:{value}。应为对象。',\n\t'Invalid compaction.modelOverrides[\"{modelKey}\"].{field} setting: {value}. Expected a non-negative safe integer.':\n\t\t'无效的 compaction.modelOverrides[\"{modelKey}\"].{field} 设置:{value}。应为非负安全整数。',\n\t\"Invalid httpIdleTimeoutMs setting: {value}\": \"无效的 httpIdleTimeoutMs 设置:{value}\",\n\t\"Invalid HTTP idle timeout: {value}\": \"无效的 HTTP 空闲超时:{value}\",\n\n\t// ---- 凭证存储(auth-storage.ts)----\n\t\"Failed to read auth.json: {reason}\": \"读取 auth.json 失败:{reason}\",\n\t\"Invalid auth.json: expected an object\": \"auth.json 无效:应为对象\",\n\t'Invalid auth.json credential for provider \"{providerId}\"': '提供商 \"{providerId}\" 的 auth.json 凭证无效',\n\t\"Read-only credential storage cannot modify auth.json\": \"只读凭证存储无法修改 auth.json\",\n\n\t// ---- 模型目录与压缩(remote-catalog-provider.ts / compaction.ts)----\n\t'Invalid model catalog for provider \"{providerId}\"': '提供商 \"{providerId}\" 的模型目录无效',\n\t\"Model catalog request failed for {providerId}: {status}\": \"提供商 {providerId} 的模型目录请求失败:{status}\",\n\t\"First kept entry has no UUID - session may need migration\": \"首个保留条目没有 UUID——会话可能需要迁移\",\n\n\t// ---- 导出(src/export-html/index.ts)----\n\t\"Cannot export in-memory session to HTML\": \"无法将内存中的会话导出为 HTML\",\n\t\"Nothing to export yet - start a conversation first\": \"暂无可导出内容——请先开始对话\",\n\n\t// ---- SDK 会话创建与插件装载(sdk.ts / capability-plugin.ts / capability-runtime.ts)----\n\t\"Failed to read capability plugin manifest {path}: {reason}\": \"读取能力插件 manifest 失败 {path}:{reason}\",\n\t\"Failed to inspect capability plugin directory {directory}: {reason}\": \"检查能力插件目录失败 {directory}:{reason}\",\n\t\"Capability plugin path must be a directory: {directory}\": \"能力插件路径必须是目录:{directory}\",\n\t\"Failed to resolve capability plugin directory {directory}: {reason}\": \"解析能力插件目录失败 {directory}:{reason}\",\n\t\"Failed to read capability plugin directory {directory}: {reason}\": \"读取能力插件目录失败 {directory}:{reason}\",\n\t\"Failed to resolve capability plugin manifest {path}: {reason}\": \"解析能力插件 manifest 失败 {path}:{reason}\",\n\t\"Failed to import capability plugin entry {path}: {reason}\": \"导入能力插件入口失败 {path}:{reason}\",\n\t\"Plugin capability is required but unavailable: {capabilityId}@{version} ({pluginId})\":\n\t\t\"必需的插件能力不可用:{capabilityId}@{version}({pluginId})\",\n\t'Session is bound to suite \"{boundSuiteId}\" and cannot resume with \"{suiteId}\"; rerun with --rebind-suite to adopt the new suite, or create a new session':\n\t\t'会话已绑定 suite \"{boundSuiteId}\",无法以 \"{suiteId}\" 恢复;请加 --rebind-suite 重新运行以切换到新 suite,或创建新会话',\n\t\"Session Profile identity drift detected (the active plugin set changed since the conversation started); rerun with --rebind-suite to adopt the new plugin set, or create a new session\":\n\t\t\"检测到会话 Profile 身份漂移(对话开始后生效的插件集发生了变化);请加 --rebind-suite 重新运行以采用新插件集,或创建新会话\",\n\n\t// ---- 包管理与命令执行(package-manager.ts / package-source.ts / package-install-host.ts / config.ts)----\n\t\"Path does not exist: {path}\": \"路径不存在:{path}\",\n\t\"Unsupported install source: {source}\": \"不支持的安装源:{source}\",\n\t\"Unsupported remove source: {source}\": \"不支持的移除源:{source}\",\n\t\"Missing source: {source}\": \"源缺失:{source}\",\n\t\"Empty response from npm view\": \"npm view 返回空响应\",\n\t\"Unexpected response from npm view\": \"npm view 返回意外响应\",\n\t\"Failed to determine remote HEAD\": \"无法确定远端 HEAD\",\n\t\"Unsupported upstream remote: {upstream}\": \"不支持的 upstream 远端:{upstream}\",\n\t\"Missing upstream branch name\": \"缺少 upstream 分支名\",\n\t\"Failed to run {command} {args}: {reason}\": \"执行 {command} {args} 失败:{reason}\",\n\t\"Failed to run {command}: {reason}\": \"执行 {command} 失败:{reason}\",\n\t\"No matching package found for {source}\": \"未找到与 {source} 匹配的包\",\n\t\"No matching package found for {source}. Did you mean {suggestion}?\":\n\t\t\"未找到与 {source} 匹配的包。你是想找 {suggestion} 吗?\",\n\t\"Invalid npmCommand: first array entry must be a non-empty command\": \"无效的 npmCommand:数组第一项必须是非空命令\",\n\n\t// ---- MCP(plugins/mcp-http / agent-session-services.ts)----\n\t\"MCP HTTP transport error: {reason}\": \"MCP HTTP 传输错误:{reason}\",\n\t\"MCP HTTP transport is closed\": \"MCP HTTP 传输已关闭\",\n\t\"MCP HTTP transport returned HTTP {status}\": \"MCP HTTP 传输返回 HTTP {status}\",\n\t\"MCP HTTP transport returned non-JSON body: {reason}\": \"MCP HTTP 传输返回了非 JSON 响应体:{reason}\",\n\t\"MCP error {code}: {message}\": \"MCP 错误 {code}:{message}\",\n\t\"unknown error\": \"未知错误\",\n\t\"MCP tools/list result must contain tools[]\": \"MCP tools/list 结果必须包含 tools[]\",\n\t\"MCP tool requires a non-empty name\": \"MCP 工具必须具有非空名称\",\n\n\t// ---- 插件生态:获取与分发失败表(plugin-acquisition.ts / distribution.ts)----\n\t\"Plugin ref is invalid\": \"插件 ref 无效\",\n\t\"Local plugin ref exists but is neither a directory nor a .zip/.tgz file\":\n\t\t\"本地插件 ref 存在,但既不是目录也不是 .zip/.tgz 文件\",\n\t\"Plugin ref URL scheme is not supported\": \"不支持插件 ref 的 URL 协议\",\n\t\"Plugin ref #sha256 digest fragment is invalid\": \"插件 ref 的 #sha256 摘要片段无效\",\n\t\"Plugin npm package ref is invalid\": \"插件 npm 包 ref 无效\",\n\t\"Plugin package acquisition was cancelled\": \"插件包获取已取消\",\n\t\"Plugin package download failed\": \"插件包下载失败\",\n\t\"Plugin npm package was not found on the registry\": \"注册表中未找到该插件 npm 包\",\n\t\"No npm package version matches the requested range\": \"没有匹配所请求范围的 npm 包版本\",\n\t\"Plugin package bytes do not match the expected digest\": \"插件包字节与预期摘要不匹配\",\n\t\"Plugin package bytes are neither a zip nor a tgz\": \"插件包字节既不是 zip 也不是 tgz\",\n\t\"Plugin package contents are invalid\": \"插件包内容无效\",\n\t\"Plugin package exceeds the configured size budget\": \"插件包超出配置的大小预算\",\n\t\"Plugin release was not found\": \"未找到插件 release\",\n\t\"Plugin release has no .zip/.tgz asset\": \"插件 release 没有 .zip/.tgz 资产\",\n\t\"Plugin release has multiple .zip/.tgz assets\": \"插件 release 有多个 .zip/.tgz 资产\",\n\t\"Plugin release API rate limit was exceeded\": \"插件 release API 超出速率限制\",\n\t\"Plugin distribution is unsupported on this host\": \"此宿主不支持插件分发\",\n\t\"Plugin distribution operation was cancelled\": \"插件分发操作已取消\",\n\t\"Plugin distribution descriptor is invalid\": \"插件分发描述符无效\",\n\t\"Plugin distribution metadata is invalid\": \"插件分发元数据无效\",\n\t\"Plugin distribution artifact handle is invalid\": \"插件分发产物句柄无效\",\n\t\"Plugin distribution source does not match the descriptor\": \"插件分发来源与描述符不匹配\",\n\t\"Plugin distribution plugin identity does not match the descriptor\": \"插件分发的插件身份与描述符不匹配\",\n\t\"Plugin distribution digest does not match the descriptor\": \"插件分发摘要与描述符不匹配\",\n\t\"Plugin distribution signature was rejected\": \"插件分发签名被拒绝\",\n\t\"Plugin distribution descriptor has expired\": \"插件分发描述符已过期\",\n\t\"Plugin distribution size does not match the descriptor\": \"插件分发大小与描述符不匹配\",\n\t\"Plugin distribution media type does not match the descriptor\": \"插件分发媒体类型与描述符不匹配\",\n\t\"Plugin distribution host operation failed\": \"插件分发宿主操作失败\",\n\t\"Plugin distribution artifact release failed\": \"插件分发产物释放失败\",\n\n\t// ---- 插件生态:网络下载与安装店 IO(node-*-source.ts / registry.ts)----\n\t\"npm registry request timed out\": \"npm registry 请求超时\",\n\t\"npm registry request was cancelled\": \"npm registry 请求已取消\",\n\t\"npm registry request failed\": \"npm registry 请求失败\",\n\t\"npm registry rate limit was exceeded\": \"npm registry 速率限制已触发\",\n\t\"npm registry redirect limit exceeded\": \"超出 npm registry 重定向次数上限\",\n\t\"npm package was not found on the registry\": \"注册表中未找到该 npm 包\",\n\t\"npm registry request did not succeed\": \"npm registry 请求未成功\",\n\t\"npm tarball download was cancelled\": \"npm tarball 下载已取消\",\n\t\"npm tarball download did not succeed\": \"npm tarball 下载未成功\",\n\t\"plugin package download was cancelled\": \"插件包下载已取消\",\n\t\"plugin package download timed out\": \"插件包下载超时\",\n\t\"plugin package download failed\": \"插件包下载失败\",\n\t\"plugin package redirect limit exceeded\": \"超出插件包重定向次数上限\",\n\t\"plugin package download did not succeed\": \"插件包下载未成功\",\n\t\"plugin package response has no body\": \"插件包响应没有响应体\",\n\t\"release API request timed out\": \"release API 请求超时\",\n\t\"release API request was cancelled\": \"release API 请求已取消\",\n\t\"release API request failed\": \"release API 请求失败\",\n\t\"repo or release was not found\": \"未找到仓库或 release\",\n\t\"release API request did not succeed\": \"release API 请求未成功\",\n\t\"release API redirect limit exceeded\": \"超出 release API 重定向次数上限\",\n\t\"release asset download was cancelled\": \"release 资产下载已取消\",\n\t\"repo has no published release\": \"仓库没有已发布的 release\",\n\t\"Plugin registry request failed\": \"插件注册表请求失败\",\n\t\"Plugin registry request was cancelled\": \"插件注册表请求已取消\",\n\t\"Plugin registry request timed out\": \"插件注册表请求超时\",\n\t\"Disk registry source read was cancelled\": \"磁盘注册表源读取已取消\",\n\t\"Install store index could not be read\": \"无法读取安装店索引\",\n\t\"Installed plugin manifest could not be read\": \"无法读取已安装插件的 manifest\",\n\t\"Plugin registry operation was cancelled\": \"插件注册表操作已取消\",\n\t\"only toggles the enabled flag; the record lifecycle is {lifecycle} and the runtime will not load it\":\n\t\t\"仅切换 enabled 标志;该记录 lifecycle 为 {lifecycle},运行时不会加载\",\n\n\t// --- provider-composer.ts OAuth 手动输码 ---\n\t\"Paste the authorization code\": \"请粘贴授权码\",\n};\n"]}
|
|
@@ -85,7 +85,7 @@ export const coreErrors = {
|
|
|
85
85
|
'Invalid model catalog for provider "{providerId}"': '提供商 "{providerId}" 的模型目录无效',
|
|
86
86
|
"Model catalog request failed for {providerId}: {status}": "提供商 {providerId} 的模型目录请求失败:{status}",
|
|
87
87
|
"First kept entry has no UUID - session may need migration": "首个保留条目没有 UUID——会话可能需要迁移",
|
|
88
|
-
// ---- 导出(export-html/index.ts)----
|
|
88
|
+
// ---- 导出(src/export-html/index.ts)----
|
|
89
89
|
"Cannot export in-memory session to HTML": "无法将内存中的会话导出为 HTML",
|
|
90
90
|
"Nothing to export yet - start a conversation first": "暂无可导出内容——请先开始对话",
|
|
91
91
|
// ---- SDK 会话创建与插件装载(sdk.ts / capability-plugin.ts / capability-runtime.ts)----
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-errors.js","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/core-errors.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * core-errors 域词典(批次⑥):core/plugins 层终端用户可见的 throw 错误消息。\n * 覆盖范围见 docs/design/国际化与本地化.md 与批次⑥登记:配置错误、认证与 API key\n * 失败、网络/超时/HTTP 失败、文件 IO、会话文件损坏、资源缺失、环境限制,以及\n * 插件生态的安装/下载失败。插件开发者契约校验(D 类)不在此域,归批次⑨。\n * key 为英文原文(与调用点逐字一致),占位符 `{name}` 原样保留。\n */\nexport const coreErrors: Record<string, string> = {\n\t// ---- 认证与模型引导(auth-guidance.ts 及其 throw 调用点)----\n\t\"Use /login to log into a provider via OAuth or API key. See:\":\n\t\t\"使用 /login 通过 OAuth 或 API key 登录提供商。参见:\",\n\t\"No models available. {help}\": \"没有可用模型。{help}\",\n\t\"No model selected.\\n\\n{help}\\n\\nThen use /model to select a model.\":\n\t\t\"未选择模型。\\n\\n{help}\\n\\n然后使用 /model 选择模型。\",\n\t\"No API key found for {provider}.\\n\\n{help}\": \"未找到 {provider} 的 API key。\\n\\n{help}\",\n\t\"the selected model\": \"所选模型\",\n\n\t// ---- 会话管理(session-manager.ts / session-storage.ts)----\n\t\"Session id must be non-empty, contain only alphanumeric characters, '-', '_', and '.', and start and end with an alphanumeric character\":\n\t\t\"会话 id 不能为空,只能包含字母数字字符、'-'、'_' 和 '.',且首尾必须是字母数字字符\",\n\t\"Session file is not a valid {appName} session: {path}\": \"会话文件不是有效的 {appName} 会话:{path}\",\n\t\"Invalid compaction operationId in session entry: {operationId}\": \"会话条目中的压缩 operationId 无效:{operationId}\",\n\t\"Duplicate compaction operationId in session: {operationId}\": \"会话中存在重复的压缩 operationId:{operationId}\",\n\t\"Session append failed and rollback failed\": \"会话追加失败且回滚失败\",\n\t\"Cannot fork: source session file is empty or invalid: {path}\": \"无法分叉:源会话文件为空或无效:{path}\",\n\t\"Cannot fork: source session has no header: {path}\": \"无法分叉:源会话缺少头信息:{path}\",\n\t\"session guard lock timeout after {timeoutMs} ms: {lockPath}\": \"会话守护锁在 {timeoutMs} 毫秒后超时:{lockPath}\",\n\t\"Session file is owned by another live process (pid {pid}): {sessionFile}. Close that process first; concurrent writers would silently fork the session history.\":\n\t\t\"会话文件被另一个存活进程占用(pid {pid}):{sessionFile}。请先关闭该进程;并发写入会导致会话历史静默分叉。\",\n\t\"Session file: {sessionFile}\": \"会话文件:{sessionFile}\",\n\t\"Stored session working directory does not exist: {sessionCwd}{sessionFile}\\nCurrent working directory: {fallbackCwd}\":\n\t\t\"会话中记录的工作目录不存在:{sessionCwd}{sessionFile}\\n当前工作目录:{fallbackCwd}\",\n\n\t// ---- 会话运行时状态与操作守卫(agent-session*.ts)----\n\t\"Input rejected by an input gate\": \"输入被输入门拒绝\",\n\t\"Input rejected by an input gate: {reason}\": \"输入被输入门拒绝:{reason}\",\n\t\"Session reload in progress; prompts are unavailable\": \"会话重载进行中;暂无法提交提示\",\n\t\"Session reload in progress; compaction is unavailable\": \"会话重载进行中;暂无法压缩\",\n\t\"Session reload in progress; compaction was not started\": \"会话重载进行中;压缩未启动\",\n\t\"Session reload in progress; tree navigation is unavailable\": \"会话重载进行中;暂无法导航会话树\",\n\t\"Session reload in progress; bash execution is unavailable\": \"会话重载进行中;暂无法执行 bash\",\n\t\"Session reload in progress; bash results cannot be recorded\": \"会话重载进行中;无法记录 bash 结果\",\n\t\"Cannot submit a prompt while compaction is in progress. Wait for compaction to finish and retry.\":\n\t\t\"压缩进行中无法提交提示。请等待压缩完成后再重试。\",\n\t\"Authentication failed for \\\"{provider}\\\". Credentials may have expired or network is unavailable. Run '/login {provider}' to re-authenticate.\":\n\t\t\"“{provider}”认证失败。凭证可能已过期或网络不可用。请运行 '/login {provider}' 重新认证。\",\n\t\"No model is set on this session's agent\": \"本会话的 agent 未设置模型\",\n\t\"No API key for {provider}/{model}\": \"没有 {provider}/{model} 的 API key\",\n\t\"Already compacted\": \"已压缩过\",\n\t\"Nothing to compact (session too small)\": \"没有可压缩的内容(会话太小)\",\n\t\"Wait for the current response to finish before navigating the session tree.\": \"请等待当前响应结束再导航会话树。\",\n\t\"Wait for the current compaction or tree navigation to finish before navigating the session tree.\":\n\t\t\"请等待当前压缩或树导航结束再导航会话树。\",\n\t\"No model available for summarization\": \"没有可用于生成摘要的模型\",\n\t\"Branch navigation is already in progress\": \"分支导航已在进行中\",\n\t\"Branch summary policy is not registered: {name}\": \"分支摘要策略未注册:{name}\",\n\t\"Configured context strategy is not registered: {name}\": \"已配置的上下文策略未注册:{name}\",\n\t\"Configured context strategy is not registered after reload: {name}\": \"重载后已配置的上下文策略未注册:{name}\",\n\t\"This session has not been saved yet. Send a message before cloning or forking it.\":\n\t\t\"本会话尚未保存。请先发送消息再克隆或分叉。\",\n\t\"Failed to create forked session\": \"创建分叉会话失败\",\n\t\"File not found: {path}\": \"文件不存在:{path}\",\n\t\"Skill is duplicated in resources: {name}\": \"技能在资源中重复:{name}\",\n\t\"Skill conflicts with a resource skill: {name}\": \"技能与资源技能冲突:{name}\",\n\n\t// ---- 模型与提供商配置(model-runtime.ts / provider-composer.ts)----\n\t\"Credential {operation} committed for {providerId}, but local synchronization failed\":\n\t\t\"提供商 {providerId} 的凭证 {operation} 已提交,但本地同步失败\",\n\t\"Unknown provider: {provider}\": \"未知提供商:{provider}\",\n\t\"Provider is not configured: {provider}\": \"提供商未配置:{provider}\",\n\t'Provider {providerId}, model {modelId}: no \"api\" specified. Set at provider or model level.':\n\t\t'提供商 {providerId},模型 {modelId}:未指定 \"api\"。请在提供商或模型级别设置。',\n\t'Provider {providerId}: \"baseUrl\" is required when defining custom models.':\n\t\t'提供商 {providerId}:定义自定义模型时必须提供 \"baseUrl\"。',\n\t\"Provider {providerId}, model {modelId}: invalid contextWindow\":\n\t\t\"提供商 {providerId},模型 {modelId}:contextWindow 无效\",\n\t\"Provider {providerId}, model {modelId}: invalid maxTokens\": \"提供商 {providerId},模型 {modelId}:maxTokens 无效\",\n\t'Provider {providerId}: \"baseUrl\" is required when \"oauth\" is set.':\n\t\t'提供商 {providerId}:设置 \"oauth\" 时必须提供 \"baseUrl\"。',\n\t'Provider {providerId}: must specify \"baseUrl\", \"headers\", \"compat\", \"modelOverrides\", or \"models\".':\n\t\t'提供商 {providerId}:必须指定 \"baseUrl\"、\"headers\"、\"compat\"、\"modelOverrides\" 或 \"models\" 之一。',\n\t\"Provider {providerId}: no authentication method configured.\": \"提供商 {providerId}:未配置任何认证方式。\",\n\t'API key for provider \"{providerId}\"': '提供商 \"{providerId}\" 的 API key',\n\n\t// ---- 配置值解析(resolve-config-value.ts)----\n\t\"Failed to resolve {description} from shell command: {command}\": \"无法从 shell 命令解析{description}:{command}\",\n\t\"Failed to resolve {description} from environment variable: {envVar}\": \"无法从环境变量解析{description}:{envVar}\",\n\t\"Failed to resolve {description} from environment variables: {envVars}\":\n\t\t\"无法从环境变量解析{description}:{envVars}\",\n\t\"Failed to resolve {description}\": \"无法解析{description}\",\n\t'{description} header \"{key}\"': '{description}的 header \"{key}\"',\n\n\t// ---- settings 校验(settings-manager.ts / http-dispatcher.ts)----\n\t\"Invalid {settingName} setting: {value}\": \"无效的 {settingName} 设置:{value}\",\n\t\"Invalid compaction.{field} setting: {value}. Expected a non-negative safe integer.\":\n\t\t\"无效的 compaction.{field} 设置:{value}。应为非负安全整数。\",\n\t'Invalid compaction.modelOverrides[\"{modelKey}\"] setting: {value}. Expected an object.':\n\t\t'无效的 compaction.modelOverrides[\"{modelKey}\"] 设置:{value}。应为对象。',\n\t'Invalid compaction.modelOverrides[\"{modelKey}\"].{field} setting: {value}. Expected a non-negative safe integer.':\n\t\t'无效的 compaction.modelOverrides[\"{modelKey}\"].{field} 设置:{value}。应为非负安全整数。',\n\t\"Invalid httpIdleTimeoutMs setting: {value}\": \"无效的 httpIdleTimeoutMs 设置:{value}\",\n\t\"Invalid HTTP idle timeout: {value}\": \"无效的 HTTP 空闲超时:{value}\",\n\n\t// ---- 凭证存储(auth-storage.ts)----\n\t\"Failed to read auth.json: {reason}\": \"读取 auth.json 失败:{reason}\",\n\t\"Invalid auth.json: expected an object\": \"auth.json 无效:应为对象\",\n\t'Invalid auth.json credential for provider \"{providerId}\"': '提供商 \"{providerId}\" 的 auth.json 凭证无效',\n\t\"Read-only credential storage cannot modify auth.json\": \"只读凭证存储无法修改 auth.json\",\n\n\t// ---- 模型目录与压缩(remote-catalog-provider.ts / compaction.ts)----\n\t'Invalid model catalog for provider \"{providerId}\"': '提供商 \"{providerId}\" 的模型目录无效',\n\t\"Model catalog request failed for {providerId}: {status}\": \"提供商 {providerId} 的模型目录请求失败:{status}\",\n\t\"First kept entry has no UUID - session may need migration\": \"首个保留条目没有 UUID——会话可能需要迁移\",\n\n\t// ---- 导出(export-html/index.ts)----\n\t\"Cannot export in-memory session to HTML\": \"无法将内存中的会话导出为 HTML\",\n\t\"Nothing to export yet - start a conversation first\": \"暂无可导出内容——请先开始对话\",\n\n\t// ---- SDK 会话创建与插件装载(sdk.ts / capability-plugin.ts / capability-runtime.ts)----\n\t\"Failed to read capability plugin manifest {path}: {reason}\": \"读取能力插件 manifest 失败 {path}:{reason}\",\n\t\"Failed to inspect capability plugin directory {directory}: {reason}\": \"检查能力插件目录失败 {directory}:{reason}\",\n\t\"Capability plugin path must be a directory: {directory}\": \"能力插件路径必须是目录:{directory}\",\n\t\"Failed to resolve capability plugin directory {directory}: {reason}\": \"解析能力插件目录失败 {directory}:{reason}\",\n\t\"Failed to read capability plugin directory {directory}: {reason}\": \"读取能力插件目录失败 {directory}:{reason}\",\n\t\"Failed to resolve capability plugin manifest {path}: {reason}\": \"解析能力插件 manifest 失败 {path}:{reason}\",\n\t\"Failed to import capability plugin entry {path}: {reason}\": \"导入能力插件入口失败 {path}:{reason}\",\n\t\"Plugin capability is required but unavailable: {capabilityId}@{version} ({pluginId})\":\n\t\t\"必需的插件能力不可用:{capabilityId}@{version}({pluginId})\",\n\t'Session is bound to suite \"{boundSuiteId}\" and cannot resume with \"{suiteId}\"; rerun with --rebind-suite to adopt the new suite, or create a new session':\n\t\t'会话已绑定 suite \"{boundSuiteId}\",无法以 \"{suiteId}\" 恢复;请加 --rebind-suite 重新运行以切换到新 suite,或创建新会话',\n\t\"Session Profile identity drift detected (the active plugin set changed since the conversation started); rerun with --rebind-suite to adopt the new plugin set, or create a new session\":\n\t\t\"检测到会话 Profile 身份漂移(对话开始后生效的插件集发生了变化);请加 --rebind-suite 重新运行以采用新插件集,或创建新会话\",\n\n\t// ---- 包管理与命令执行(package-manager.ts / package-source.ts / package-install-host.ts / config.ts)----\n\t\"Path does not exist: {path}\": \"路径不存在:{path}\",\n\t\"Unsupported install source: {source}\": \"不支持的安装源:{source}\",\n\t\"Unsupported remove source: {source}\": \"不支持的移除源:{source}\",\n\t\"Missing source: {source}\": \"源缺失:{source}\",\n\t\"Empty response from npm view\": \"npm view 返回空响应\",\n\t\"Unexpected response from npm view\": \"npm view 返回意外响应\",\n\t\"Failed to determine remote HEAD\": \"无法确定远端 HEAD\",\n\t\"Unsupported upstream remote: {upstream}\": \"不支持的 upstream 远端:{upstream}\",\n\t\"Missing upstream branch name\": \"缺少 upstream 分支名\",\n\t\"Failed to run {command} {args}: {reason}\": \"执行 {command} {args} 失败:{reason}\",\n\t\"Failed to run {command}: {reason}\": \"执行 {command} 失败:{reason}\",\n\t\"No matching package found for {source}\": \"未找到与 {source} 匹配的包\",\n\t\"No matching package found for {source}. Did you mean {suggestion}?\":\n\t\t\"未找到与 {source} 匹配的包。你是想找 {suggestion} 吗?\",\n\t\"Invalid npmCommand: first array entry must be a non-empty command\": \"无效的 npmCommand:数组第一项必须是非空命令\",\n\n\t// ---- MCP(plugins/mcp-http / agent-session-services.ts)----\n\t\"MCP HTTP transport error: {reason}\": \"MCP HTTP 传输错误:{reason}\",\n\t\"MCP HTTP transport is closed\": \"MCP HTTP 传输已关闭\",\n\t\"MCP HTTP transport returned HTTP {status}\": \"MCP HTTP 传输返回 HTTP {status}\",\n\t\"MCP HTTP transport returned non-JSON body: {reason}\": \"MCP HTTP 传输返回了非 JSON 响应体:{reason}\",\n\t\"MCP error {code}: {message}\": \"MCP 错误 {code}:{message}\",\n\t\"unknown error\": \"未知错误\",\n\t\"MCP tools/list result must contain tools[]\": \"MCP tools/list 结果必须包含 tools[]\",\n\t\"MCP tool requires a non-empty name\": \"MCP 工具必须具有非空名称\",\n\n\t// ---- 插件生态:获取与分发失败表(plugin-acquisition.ts / distribution.ts)----\n\t\"Plugin ref is invalid\": \"插件 ref 无效\",\n\t\"Local plugin ref exists but is neither a directory nor a .zip/.tgz file\":\n\t\t\"本地插件 ref 存在,但既不是目录也不是 .zip/.tgz 文件\",\n\t\"Plugin ref URL scheme is not supported\": \"不支持插件 ref 的 URL 协议\",\n\t\"Plugin ref #sha256 digest fragment is invalid\": \"插件 ref 的 #sha256 摘要片段无效\",\n\t\"Plugin npm package ref is invalid\": \"插件 npm 包 ref 无效\",\n\t\"Plugin package acquisition was cancelled\": \"插件包获取已取消\",\n\t\"Plugin package download failed\": \"插件包下载失败\",\n\t\"Plugin npm package was not found on the registry\": \"注册表中未找到该插件 npm 包\",\n\t\"No npm package version matches the requested range\": \"没有匹配所请求范围的 npm 包版本\",\n\t\"Plugin package bytes do not match the expected digest\": \"插件包字节与预期摘要不匹配\",\n\t\"Plugin package bytes are neither a zip nor a tgz\": \"插件包字节既不是 zip 也不是 tgz\",\n\t\"Plugin package contents are invalid\": \"插件包内容无效\",\n\t\"Plugin package exceeds the configured size budget\": \"插件包超出配置的大小预算\",\n\t\"Plugin release was not found\": \"未找到插件 release\",\n\t\"Plugin release has no .zip/.tgz asset\": \"插件 release 没有 .zip/.tgz 资产\",\n\t\"Plugin release has multiple .zip/.tgz assets\": \"插件 release 有多个 .zip/.tgz 资产\",\n\t\"Plugin release API rate limit was exceeded\": \"插件 release API 超出速率限制\",\n\t\"Plugin distribution is unsupported on this host\": \"此宿主不支持插件分发\",\n\t\"Plugin distribution operation was cancelled\": \"插件分发操作已取消\",\n\t\"Plugin distribution descriptor is invalid\": \"插件分发描述符无效\",\n\t\"Plugin distribution metadata is invalid\": \"插件分发元数据无效\",\n\t\"Plugin distribution artifact handle is invalid\": \"插件分发产物句柄无效\",\n\t\"Plugin distribution source does not match the descriptor\": \"插件分发来源与描述符不匹配\",\n\t\"Plugin distribution plugin identity does not match the descriptor\": \"插件分发的插件身份与描述符不匹配\",\n\t\"Plugin distribution digest does not match the descriptor\": \"插件分发摘要与描述符不匹配\",\n\t\"Plugin distribution signature was rejected\": \"插件分发签名被拒绝\",\n\t\"Plugin distribution descriptor has expired\": \"插件分发描述符已过期\",\n\t\"Plugin distribution size does not match the descriptor\": \"插件分发大小与描述符不匹配\",\n\t\"Plugin distribution media type does not match the descriptor\": \"插件分发媒体类型与描述符不匹配\",\n\t\"Plugin distribution host operation failed\": \"插件分发宿主操作失败\",\n\t\"Plugin distribution artifact release failed\": \"插件分发产物释放失败\",\n\n\t// ---- 插件生态:网络下载与安装店 IO(node-*-source.ts / registry.ts)----\n\t\"npm registry request timed out\": \"npm registry 请求超时\",\n\t\"npm registry request was cancelled\": \"npm registry 请求已取消\",\n\t\"npm registry request failed\": \"npm registry 请求失败\",\n\t\"npm registry rate limit was exceeded\": \"npm registry 速率限制已触发\",\n\t\"npm registry redirect limit exceeded\": \"超出 npm registry 重定向次数上限\",\n\t\"npm package was not found on the registry\": \"注册表中未找到该 npm 包\",\n\t\"npm registry request did not succeed\": \"npm registry 请求未成功\",\n\t\"npm tarball download was cancelled\": \"npm tarball 下载已取消\",\n\t\"npm tarball download did not succeed\": \"npm tarball 下载未成功\",\n\t\"plugin package download was cancelled\": \"插件包下载已取消\",\n\t\"plugin package download timed out\": \"插件包下载超时\",\n\t\"plugin package download failed\": \"插件包下载失败\",\n\t\"plugin package redirect limit exceeded\": \"超出插件包重定向次数上限\",\n\t\"plugin package download did not succeed\": \"插件包下载未成功\",\n\t\"plugin package response has no body\": \"插件包响应没有响应体\",\n\t\"release API request timed out\": \"release API 请求超时\",\n\t\"release API request was cancelled\": \"release API 请求已取消\",\n\t\"release API request failed\": \"release API 请求失败\",\n\t\"repo or release was not found\": \"未找到仓库或 release\",\n\t\"release API request did not succeed\": \"release API 请求未成功\",\n\t\"release API redirect limit exceeded\": \"超出 release API 重定向次数上限\",\n\t\"release asset download was cancelled\": \"release 资产下载已取消\",\n\t\"repo has no published release\": \"仓库没有已发布的 release\",\n\t\"Plugin registry request failed\": \"插件注册表请求失败\",\n\t\"Plugin registry request was cancelled\": \"插件注册表请求已取消\",\n\t\"Plugin registry request timed out\": \"插件注册表请求超时\",\n\t\"Disk registry source read was cancelled\": \"磁盘注册表源读取已取消\",\n\t\"Install store index could not be read\": \"无法读取安装店索引\",\n\t\"Installed plugin manifest could not be read\": \"无法读取已安装插件的 manifest\",\n\t\"Plugin registry operation was cancelled\": \"插件注册表操作已取消\",\n\t\"only toggles the enabled flag; the record lifecycle is {lifecycle} and the runtime will not load it\":\n\t\t\"仅切换 enabled 标志;该记录 lifecycle 为 {lifecycle},运行时不会加载\",\n\n\t// --- provider-composer.ts OAuth 手动输码 ---\n\t\"Paste the authorization code\": \"请粘贴授权码\",\n};\n"]}
|
|
1
|
+
{"version":3,"file":"core-errors.js","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/core-errors.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * core-errors 域词典(批次⑥):core/plugins 层终端用户可见的 throw 错误消息。\n * 覆盖范围见 docs/design/国际化与本地化.md 与批次⑥登记:配置错误、认证与 API key\n * 失败、网络/超时/HTTP 失败、文件 IO、会话文件损坏、资源缺失、环境限制,以及\n * 插件生态的安装/下载失败。插件开发者契约校验(D 类)不在此域,归批次⑨。\n * key 为英文原文(与调用点逐字一致),占位符 `{name}` 原样保留。\n */\nexport const coreErrors: Record<string, string> = {\n\t// ---- 认证与模型引导(auth-guidance.ts 及其 throw 调用点)----\n\t\"Use /login to log into a provider via OAuth or API key. See:\":\n\t\t\"使用 /login 通过 OAuth 或 API key 登录提供商。参见:\",\n\t\"No models available. {help}\": \"没有可用模型。{help}\",\n\t\"No model selected.\\n\\n{help}\\n\\nThen use /model to select a model.\":\n\t\t\"未选择模型。\\n\\n{help}\\n\\n然后使用 /model 选择模型。\",\n\t\"No API key found for {provider}.\\n\\n{help}\": \"未找到 {provider} 的 API key。\\n\\n{help}\",\n\t\"the selected model\": \"所选模型\",\n\n\t// ---- 会话管理(session-manager.ts / session-storage.ts)----\n\t\"Session id must be non-empty, contain only alphanumeric characters, '-', '_', and '.', and start and end with an alphanumeric character\":\n\t\t\"会话 id 不能为空,只能包含字母数字字符、'-'、'_' 和 '.',且首尾必须是字母数字字符\",\n\t\"Session file is not a valid {appName} session: {path}\": \"会话文件不是有效的 {appName} 会话:{path}\",\n\t\"Invalid compaction operationId in session entry: {operationId}\": \"会话条目中的压缩 operationId 无效:{operationId}\",\n\t\"Duplicate compaction operationId in session: {operationId}\": \"会话中存在重复的压缩 operationId:{operationId}\",\n\t\"Session append failed and rollback failed\": \"会话追加失败且回滚失败\",\n\t\"Cannot fork: source session file is empty or invalid: {path}\": \"无法分叉:源会话文件为空或无效:{path}\",\n\t\"Cannot fork: source session has no header: {path}\": \"无法分叉:源会话缺少头信息:{path}\",\n\t\"session guard lock timeout after {timeoutMs} ms: {lockPath}\": \"会话守护锁在 {timeoutMs} 毫秒后超时:{lockPath}\",\n\t\"Session file is owned by another live process (pid {pid}): {sessionFile}. Close that process first; concurrent writers would silently fork the session history.\":\n\t\t\"会话文件被另一个存活进程占用(pid {pid}):{sessionFile}。请先关闭该进程;并发写入会导致会话历史静默分叉。\",\n\t\"Session file: {sessionFile}\": \"会话文件:{sessionFile}\",\n\t\"Stored session working directory does not exist: {sessionCwd}{sessionFile}\\nCurrent working directory: {fallbackCwd}\":\n\t\t\"会话中记录的工作目录不存在:{sessionCwd}{sessionFile}\\n当前工作目录:{fallbackCwd}\",\n\n\t// ---- 会话运行时状态与操作守卫(agent-session*.ts)----\n\t\"Input rejected by an input gate\": \"输入被输入门拒绝\",\n\t\"Input rejected by an input gate: {reason}\": \"输入被输入门拒绝:{reason}\",\n\t\"Session reload in progress; prompts are unavailable\": \"会话重载进行中;暂无法提交提示\",\n\t\"Session reload in progress; compaction is unavailable\": \"会话重载进行中;暂无法压缩\",\n\t\"Session reload in progress; compaction was not started\": \"会话重载进行中;压缩未启动\",\n\t\"Session reload in progress; tree navigation is unavailable\": \"会话重载进行中;暂无法导航会话树\",\n\t\"Session reload in progress; bash execution is unavailable\": \"会话重载进行中;暂无法执行 bash\",\n\t\"Session reload in progress; bash results cannot be recorded\": \"会话重载进行中;无法记录 bash 结果\",\n\t\"Cannot submit a prompt while compaction is in progress. Wait for compaction to finish and retry.\":\n\t\t\"压缩进行中无法提交提示。请等待压缩完成后再重试。\",\n\t\"Authentication failed for \\\"{provider}\\\". Credentials may have expired or network is unavailable. Run '/login {provider}' to re-authenticate.\":\n\t\t\"“{provider}”认证失败。凭证可能已过期或网络不可用。请运行 '/login {provider}' 重新认证。\",\n\t\"No model is set on this session's agent\": \"本会话的 agent 未设置模型\",\n\t\"No API key for {provider}/{model}\": \"没有 {provider}/{model} 的 API key\",\n\t\"Already compacted\": \"已压缩过\",\n\t\"Nothing to compact (session too small)\": \"没有可压缩的内容(会话太小)\",\n\t\"Wait for the current response to finish before navigating the session tree.\": \"请等待当前响应结束再导航会话树。\",\n\t\"Wait for the current compaction or tree navigation to finish before navigating the session tree.\":\n\t\t\"请等待当前压缩或树导航结束再导航会话树。\",\n\t\"No model available for summarization\": \"没有可用于生成摘要的模型\",\n\t\"Branch navigation is already in progress\": \"分支导航已在进行中\",\n\t\"Branch summary policy is not registered: {name}\": \"分支摘要策略未注册:{name}\",\n\t\"Configured context strategy is not registered: {name}\": \"已配置的上下文策略未注册:{name}\",\n\t\"Configured context strategy is not registered after reload: {name}\": \"重载后已配置的上下文策略未注册:{name}\",\n\t\"This session has not been saved yet. Send a message before cloning or forking it.\":\n\t\t\"本会话尚未保存。请先发送消息再克隆或分叉。\",\n\t\"Failed to create forked session\": \"创建分叉会话失败\",\n\t\"File not found: {path}\": \"文件不存在:{path}\",\n\t\"Skill is duplicated in resources: {name}\": \"技能在资源中重复:{name}\",\n\t\"Skill conflicts with a resource skill: {name}\": \"技能与资源技能冲突:{name}\",\n\n\t// ---- 模型与提供商配置(model-runtime.ts / provider-composer.ts)----\n\t\"Credential {operation} committed for {providerId}, but local synchronization failed\":\n\t\t\"提供商 {providerId} 的凭证 {operation} 已提交,但本地同步失败\",\n\t\"Unknown provider: {provider}\": \"未知提供商:{provider}\",\n\t\"Provider is not configured: {provider}\": \"提供商未配置:{provider}\",\n\t'Provider {providerId}, model {modelId}: no \"api\" specified. Set at provider or model level.':\n\t\t'提供商 {providerId},模型 {modelId}:未指定 \"api\"。请在提供商或模型级别设置。',\n\t'Provider {providerId}: \"baseUrl\" is required when defining custom models.':\n\t\t'提供商 {providerId}:定义自定义模型时必须提供 \"baseUrl\"。',\n\t\"Provider {providerId}, model {modelId}: invalid contextWindow\":\n\t\t\"提供商 {providerId},模型 {modelId}:contextWindow 无效\",\n\t\"Provider {providerId}, model {modelId}: invalid maxTokens\": \"提供商 {providerId},模型 {modelId}:maxTokens 无效\",\n\t'Provider {providerId}: \"baseUrl\" is required when \"oauth\" is set.':\n\t\t'提供商 {providerId}:设置 \"oauth\" 时必须提供 \"baseUrl\"。',\n\t'Provider {providerId}: must specify \"baseUrl\", \"headers\", \"compat\", \"modelOverrides\", or \"models\".':\n\t\t'提供商 {providerId}:必须指定 \"baseUrl\"、\"headers\"、\"compat\"、\"modelOverrides\" 或 \"models\" 之一。',\n\t\"Provider {providerId}: no authentication method configured.\": \"提供商 {providerId}:未配置任何认证方式。\",\n\t'API key for provider \"{providerId}\"': '提供商 \"{providerId}\" 的 API key',\n\n\t// ---- 配置值解析(resolve-config-value.ts)----\n\t\"Failed to resolve {description} from shell command: {command}\": \"无法从 shell 命令解析{description}:{command}\",\n\t\"Failed to resolve {description} from environment variable: {envVar}\": \"无法从环境变量解析{description}:{envVar}\",\n\t\"Failed to resolve {description} from environment variables: {envVars}\":\n\t\t\"无法从环境变量解析{description}:{envVars}\",\n\t\"Failed to resolve {description}\": \"无法解析{description}\",\n\t'{description} header \"{key}\"': '{description}的 header \"{key}\"',\n\n\t// ---- settings 校验(settings-manager.ts / http-dispatcher.ts)----\n\t\"Invalid {settingName} setting: {value}\": \"无效的 {settingName} 设置:{value}\",\n\t\"Invalid compaction.{field} setting: {value}. Expected a non-negative safe integer.\":\n\t\t\"无效的 compaction.{field} 设置:{value}。应为非负安全整数。\",\n\t'Invalid compaction.modelOverrides[\"{modelKey}\"] setting: {value}. Expected an object.':\n\t\t'无效的 compaction.modelOverrides[\"{modelKey}\"] 设置:{value}。应为对象。',\n\t'Invalid compaction.modelOverrides[\"{modelKey}\"].{field} setting: {value}. Expected a non-negative safe integer.':\n\t\t'无效的 compaction.modelOverrides[\"{modelKey}\"].{field} 设置:{value}。应为非负安全整数。',\n\t\"Invalid httpIdleTimeoutMs setting: {value}\": \"无效的 httpIdleTimeoutMs 设置:{value}\",\n\t\"Invalid HTTP idle timeout: {value}\": \"无效的 HTTP 空闲超时:{value}\",\n\n\t// ---- 凭证存储(auth-storage.ts)----\n\t\"Failed to read auth.json: {reason}\": \"读取 auth.json 失败:{reason}\",\n\t\"Invalid auth.json: expected an object\": \"auth.json 无效:应为对象\",\n\t'Invalid auth.json credential for provider \"{providerId}\"': '提供商 \"{providerId}\" 的 auth.json 凭证无效',\n\t\"Read-only credential storage cannot modify auth.json\": \"只读凭证存储无法修改 auth.json\",\n\n\t// ---- 模型目录与压缩(remote-catalog-provider.ts / compaction.ts)----\n\t'Invalid model catalog for provider \"{providerId}\"': '提供商 \"{providerId}\" 的模型目录无效',\n\t\"Model catalog request failed for {providerId}: {status}\": \"提供商 {providerId} 的模型目录请求失败:{status}\",\n\t\"First kept entry has no UUID - session may need migration\": \"首个保留条目没有 UUID——会话可能需要迁移\",\n\n\t// ---- 导出(src/export-html/index.ts)----\n\t\"Cannot export in-memory session to HTML\": \"无法将内存中的会话导出为 HTML\",\n\t\"Nothing to export yet - start a conversation first\": \"暂无可导出内容——请先开始对话\",\n\n\t// ---- SDK 会话创建与插件装载(sdk.ts / capability-plugin.ts / capability-runtime.ts)----\n\t\"Failed to read capability plugin manifest {path}: {reason}\": \"读取能力插件 manifest 失败 {path}:{reason}\",\n\t\"Failed to inspect capability plugin directory {directory}: {reason}\": \"检查能力插件目录失败 {directory}:{reason}\",\n\t\"Capability plugin path must be a directory: {directory}\": \"能力插件路径必须是目录:{directory}\",\n\t\"Failed to resolve capability plugin directory {directory}: {reason}\": \"解析能力插件目录失败 {directory}:{reason}\",\n\t\"Failed to read capability plugin directory {directory}: {reason}\": \"读取能力插件目录失败 {directory}:{reason}\",\n\t\"Failed to resolve capability plugin manifest {path}: {reason}\": \"解析能力插件 manifest 失败 {path}:{reason}\",\n\t\"Failed to import capability plugin entry {path}: {reason}\": \"导入能力插件入口失败 {path}:{reason}\",\n\t\"Plugin capability is required but unavailable: {capabilityId}@{version} ({pluginId})\":\n\t\t\"必需的插件能力不可用:{capabilityId}@{version}({pluginId})\",\n\t'Session is bound to suite \"{boundSuiteId}\" and cannot resume with \"{suiteId}\"; rerun with --rebind-suite to adopt the new suite, or create a new session':\n\t\t'会话已绑定 suite \"{boundSuiteId}\",无法以 \"{suiteId}\" 恢复;请加 --rebind-suite 重新运行以切换到新 suite,或创建新会话',\n\t\"Session Profile identity drift detected (the active plugin set changed since the conversation started); rerun with --rebind-suite to adopt the new plugin set, or create a new session\":\n\t\t\"检测到会话 Profile 身份漂移(对话开始后生效的插件集发生了变化);请加 --rebind-suite 重新运行以采用新插件集,或创建新会话\",\n\n\t// ---- 包管理与命令执行(package-manager.ts / package-source.ts / package-install-host.ts / config.ts)----\n\t\"Path does not exist: {path}\": \"路径不存在:{path}\",\n\t\"Unsupported install source: {source}\": \"不支持的安装源:{source}\",\n\t\"Unsupported remove source: {source}\": \"不支持的移除源:{source}\",\n\t\"Missing source: {source}\": \"源缺失:{source}\",\n\t\"Empty response from npm view\": \"npm view 返回空响应\",\n\t\"Unexpected response from npm view\": \"npm view 返回意外响应\",\n\t\"Failed to determine remote HEAD\": \"无法确定远端 HEAD\",\n\t\"Unsupported upstream remote: {upstream}\": \"不支持的 upstream 远端:{upstream}\",\n\t\"Missing upstream branch name\": \"缺少 upstream 分支名\",\n\t\"Failed to run {command} {args}: {reason}\": \"执行 {command} {args} 失败:{reason}\",\n\t\"Failed to run {command}: {reason}\": \"执行 {command} 失败:{reason}\",\n\t\"No matching package found for {source}\": \"未找到与 {source} 匹配的包\",\n\t\"No matching package found for {source}. Did you mean {suggestion}?\":\n\t\t\"未找到与 {source} 匹配的包。你是想找 {suggestion} 吗?\",\n\t\"Invalid npmCommand: first array entry must be a non-empty command\": \"无效的 npmCommand:数组第一项必须是非空命令\",\n\n\t// ---- MCP(plugins/mcp-http / agent-session-services.ts)----\n\t\"MCP HTTP transport error: {reason}\": \"MCP HTTP 传输错误:{reason}\",\n\t\"MCP HTTP transport is closed\": \"MCP HTTP 传输已关闭\",\n\t\"MCP HTTP transport returned HTTP {status}\": \"MCP HTTP 传输返回 HTTP {status}\",\n\t\"MCP HTTP transport returned non-JSON body: {reason}\": \"MCP HTTP 传输返回了非 JSON 响应体:{reason}\",\n\t\"MCP error {code}: {message}\": \"MCP 错误 {code}:{message}\",\n\t\"unknown error\": \"未知错误\",\n\t\"MCP tools/list result must contain tools[]\": \"MCP tools/list 结果必须包含 tools[]\",\n\t\"MCP tool requires a non-empty name\": \"MCP 工具必须具有非空名称\",\n\n\t// ---- 插件生态:获取与分发失败表(plugin-acquisition.ts / distribution.ts)----\n\t\"Plugin ref is invalid\": \"插件 ref 无效\",\n\t\"Local plugin ref exists but is neither a directory nor a .zip/.tgz file\":\n\t\t\"本地插件 ref 存在,但既不是目录也不是 .zip/.tgz 文件\",\n\t\"Plugin ref URL scheme is not supported\": \"不支持插件 ref 的 URL 协议\",\n\t\"Plugin ref #sha256 digest fragment is invalid\": \"插件 ref 的 #sha256 摘要片段无效\",\n\t\"Plugin npm package ref is invalid\": \"插件 npm 包 ref 无效\",\n\t\"Plugin package acquisition was cancelled\": \"插件包获取已取消\",\n\t\"Plugin package download failed\": \"插件包下载失败\",\n\t\"Plugin npm package was not found on the registry\": \"注册表中未找到该插件 npm 包\",\n\t\"No npm package version matches the requested range\": \"没有匹配所请求范围的 npm 包版本\",\n\t\"Plugin package bytes do not match the expected digest\": \"插件包字节与预期摘要不匹配\",\n\t\"Plugin package bytes are neither a zip nor a tgz\": \"插件包字节既不是 zip 也不是 tgz\",\n\t\"Plugin package contents are invalid\": \"插件包内容无效\",\n\t\"Plugin package exceeds the configured size budget\": \"插件包超出配置的大小预算\",\n\t\"Plugin release was not found\": \"未找到插件 release\",\n\t\"Plugin release has no .zip/.tgz asset\": \"插件 release 没有 .zip/.tgz 资产\",\n\t\"Plugin release has multiple .zip/.tgz assets\": \"插件 release 有多个 .zip/.tgz 资产\",\n\t\"Plugin release API rate limit was exceeded\": \"插件 release API 超出速率限制\",\n\t\"Plugin distribution is unsupported on this host\": \"此宿主不支持插件分发\",\n\t\"Plugin distribution operation was cancelled\": \"插件分发操作已取消\",\n\t\"Plugin distribution descriptor is invalid\": \"插件分发描述符无效\",\n\t\"Plugin distribution metadata is invalid\": \"插件分发元数据无效\",\n\t\"Plugin distribution artifact handle is invalid\": \"插件分发产物句柄无效\",\n\t\"Plugin distribution source does not match the descriptor\": \"插件分发来源与描述符不匹配\",\n\t\"Plugin distribution plugin identity does not match the descriptor\": \"插件分发的插件身份与描述符不匹配\",\n\t\"Plugin distribution digest does not match the descriptor\": \"插件分发摘要与描述符不匹配\",\n\t\"Plugin distribution signature was rejected\": \"插件分发签名被拒绝\",\n\t\"Plugin distribution descriptor has expired\": \"插件分发描述符已过期\",\n\t\"Plugin distribution size does not match the descriptor\": \"插件分发大小与描述符不匹配\",\n\t\"Plugin distribution media type does not match the descriptor\": \"插件分发媒体类型与描述符不匹配\",\n\t\"Plugin distribution host operation failed\": \"插件分发宿主操作失败\",\n\t\"Plugin distribution artifact release failed\": \"插件分发产物释放失败\",\n\n\t// ---- 插件生态:网络下载与安装店 IO(node-*-source.ts / registry.ts)----\n\t\"npm registry request timed out\": \"npm registry 请求超时\",\n\t\"npm registry request was cancelled\": \"npm registry 请求已取消\",\n\t\"npm registry request failed\": \"npm registry 请求失败\",\n\t\"npm registry rate limit was exceeded\": \"npm registry 速率限制已触发\",\n\t\"npm registry redirect limit exceeded\": \"超出 npm registry 重定向次数上限\",\n\t\"npm package was not found on the registry\": \"注册表中未找到该 npm 包\",\n\t\"npm registry request did not succeed\": \"npm registry 请求未成功\",\n\t\"npm tarball download was cancelled\": \"npm tarball 下载已取消\",\n\t\"npm tarball download did not succeed\": \"npm tarball 下载未成功\",\n\t\"plugin package download was cancelled\": \"插件包下载已取消\",\n\t\"plugin package download timed out\": \"插件包下载超时\",\n\t\"plugin package download failed\": \"插件包下载失败\",\n\t\"plugin package redirect limit exceeded\": \"超出插件包重定向次数上限\",\n\t\"plugin package download did not succeed\": \"插件包下载未成功\",\n\t\"plugin package response has no body\": \"插件包响应没有响应体\",\n\t\"release API request timed out\": \"release API 请求超时\",\n\t\"release API request was cancelled\": \"release API 请求已取消\",\n\t\"release API request failed\": \"release API 请求失败\",\n\t\"repo or release was not found\": \"未找到仓库或 release\",\n\t\"release API request did not succeed\": \"release API 请求未成功\",\n\t\"release API redirect limit exceeded\": \"超出 release API 重定向次数上限\",\n\t\"release asset download was cancelled\": \"release 资产下载已取消\",\n\t\"repo has no published release\": \"仓库没有已发布的 release\",\n\t\"Plugin registry request failed\": \"插件注册表请求失败\",\n\t\"Plugin registry request was cancelled\": \"插件注册表请求已取消\",\n\t\"Plugin registry request timed out\": \"插件注册表请求超时\",\n\t\"Disk registry source read was cancelled\": \"磁盘注册表源读取已取消\",\n\t\"Install store index could not be read\": \"无法读取安装店索引\",\n\t\"Installed plugin manifest could not be read\": \"无法读取已安装插件的 manifest\",\n\t\"Plugin registry operation was cancelled\": \"插件注册表操作已取消\",\n\t\"only toggles the enabled flag; the record lifecycle is {lifecycle} and the runtime will not load it\":\n\t\t\"仅切换 enabled 标志;该记录 lifecycle 为 {lifecycle},运行时不会加载\",\n\n\t// --- provider-composer.ts OAuth 手动输码 ---\n\t\"Paste the authorization code\": \"请粘贴授权码\",\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/index.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAoBvC,CAAC","sourcesContent":["/**\n * zh-CN 聚合入口:收集全部域词典为一个平面 `Record<string, string>`。\n * 新增域文件 = 新建 `<domain>.ts` + 在此处展开;域内 key 冲突处理见设计文档 §翻译规范。\n */\nimport { cli } from \"./cli.ts\";\nimport { common } from \"./common.ts\";\nimport { coreContractCore } from \"./core-contract-core.ts\";\nimport { coreContractExtensions } from \"./core-contract-extensions.ts\";\nimport { coreContractFinal } from \"./core-contract-final.ts\";\nimport { coreContractPlugins } from \"./core-contract-plugins.ts\";\nimport { coreErrors } from \"./core-errors.ts\";\nimport { example } from \"./example.ts\";\nimport { interactiveMode } from \"./interactive-mode.ts\";\nimport { keybindings } from \"./keybindings.ts\";\nimport { sessionCleanup } from \"./session-cleanup.ts\";\nimport { slashCommands } from \"./slash-commands.ts\";\nimport { tuiBuiltin } from \"./tui-builtin.ts\";\nimport { tuiComponentsMisc } from \"./tui-components-misc.ts\";\nimport { tuiComponentsSelectors } from \"./tui-components-selectors.ts\";\nimport { tuiInteractiveMisc } from \"./tui-interactive-misc.ts\";\nimport { tuiSelfOwned } from \"./tui-self-owned.ts\";\n\nexport const zhCn: Record<string, string> = {\n\t...common,\n\t...example,\n\t...interactiveMode,\n\t...slashCommands,\n\t...tuiSelfOwned,\n\t...tuiComponentsSelectors,\n\t...tuiComponentsMisc,\n\t...tuiInteractiveMisc,\n\t...cli,\n\t...coreErrors,\n\t...sessionCleanup,\n\t...coreContractExtensions,\n\t...coreContractCore,\n\t...coreContractPlugins,\n\t...coreContractFinal,\n\t// 批次⑦两个后铺域:与 interactiveMode 的同名 key(\"Jump forward/backward\n\t// to character\")译文一致,覆盖登记见设计文档 §5.3。\n\t...keybindings,\n\t...tuiBuiltin,\n};\n"]}
|
|
@@ -12,6 +12,7 @@ import { coreErrors } from "./core-errors.js";
|
|
|
12
12
|
import { example } from "./example.js";
|
|
13
13
|
import { interactiveMode } from "./interactive-mode.js";
|
|
14
14
|
import { keybindings } from "./keybindings.js";
|
|
15
|
+
import { sessionCleanup } from "./session-cleanup.js";
|
|
15
16
|
import { slashCommands } from "./slash-commands.js";
|
|
16
17
|
import { tuiBuiltin } from "./tui-builtin.js";
|
|
17
18
|
import { tuiComponentsMisc } from "./tui-components-misc.js";
|
|
@@ -29,6 +30,7 @@ export const zhCn = {
|
|
|
29
30
|
...tuiInteractiveMisc,
|
|
30
31
|
...cli,
|
|
31
32
|
...coreErrors,
|
|
33
|
+
...sessionCleanup,
|
|
32
34
|
...coreContractExtensions,
|
|
33
35
|
...coreContractCore,
|
|
34
36
|
...coreContractPlugins,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,CAAC,MAAM,IAAI,GAA2B;IAC3C,GAAG,MAAM;IACT,GAAG,OAAO;IACV,GAAG,eAAe;IAClB,GAAG,aAAa;IAChB,GAAG,YAAY;IACf,GAAG,sBAAsB;IACzB,GAAG,iBAAiB;IACpB,GAAG,kBAAkB;IACrB,GAAG,GAAG;IACN,GAAG,UAAU;IACb,GAAG,sBAAsB;IACzB,GAAG,gBAAgB;IACnB,GAAG,mBAAmB;IACtB,GAAG,iBAAiB;IACpB,wFAA4D;IAC5D,sEAAqC;IACrC,GAAG,WAAW;IACd,GAAG,UAAU;CACb,CAAC","sourcesContent":["/**\n * zh-CN 聚合入口:收集全部域词典为一个平面 `Record<string, string>`。\n * 新增域文件 = 新建 `<domain>.ts` + 在此处展开;域内 key 冲突处理见设计文档 §翻译规范。\n */\nimport { cli } from \"./cli.ts\";\nimport { common } from \"./common.ts\";\nimport { coreContractCore } from \"./core-contract-core.ts\";\nimport { coreContractExtensions } from \"./core-contract-extensions.ts\";\nimport { coreContractFinal } from \"./core-contract-final.ts\";\nimport { coreContractPlugins } from \"./core-contract-plugins.ts\";\nimport { coreErrors } from \"./core-errors.ts\";\nimport { example } from \"./example.ts\";\nimport { interactiveMode } from \"./interactive-mode.ts\";\nimport { keybindings } from \"./keybindings.ts\";\nimport { slashCommands } from \"./slash-commands.ts\";\nimport { tuiBuiltin } from \"./tui-builtin.ts\";\nimport { tuiComponentsMisc } from \"./tui-components-misc.ts\";\nimport { tuiComponentsSelectors } from \"./tui-components-selectors.ts\";\nimport { tuiInteractiveMisc } from \"./tui-interactive-misc.ts\";\nimport { tuiSelfOwned } from \"./tui-self-owned.ts\";\n\nexport const zhCn: Record<string, string> = {\n\t...common,\n\t...example,\n\t...interactiveMode,\n\t...slashCommands,\n\t...tuiSelfOwned,\n\t...tuiComponentsSelectors,\n\t...tuiComponentsMisc,\n\t...tuiInteractiveMisc,\n\t...cli,\n\t...coreErrors,\n\t...coreContractExtensions,\n\t...coreContractCore,\n\t...coreContractPlugins,\n\t...coreContractFinal,\n\t// 批次⑦两个后铺域:与 interactiveMode 的同名 key(\"Jump forward/backward\n\t// to character\")译文一致,覆盖登记见设计文档 §5.3。\n\t...keybindings,\n\t...tuiBuiltin,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,MAAM,CAAC,MAAM,IAAI,GAA2B;IAC3C,GAAG,MAAM;IACT,GAAG,OAAO;IACV,GAAG,eAAe;IAClB,GAAG,aAAa;IAChB,GAAG,YAAY;IACf,GAAG,sBAAsB;IACzB,GAAG,iBAAiB;IACpB,GAAG,kBAAkB;IACrB,GAAG,GAAG;IACN,GAAG,UAAU;IACb,GAAG,cAAc;IACjB,GAAG,sBAAsB;IACzB,GAAG,gBAAgB;IACnB,GAAG,mBAAmB;IACtB,GAAG,iBAAiB;IACpB,wFAA4D;IAC5D,sEAAqC;IACrC,GAAG,WAAW;IACd,GAAG,UAAU;CACb,CAAC","sourcesContent":["/**\n * zh-CN 聚合入口:收集全部域词典为一个平面 `Record<string, string>`。\n * 新增域文件 = 新建 `<domain>.ts` + 在此处展开;域内 key 冲突处理见设计文档 §翻译规范。\n */\nimport { cli } from \"./cli.ts\";\nimport { common } from \"./common.ts\";\nimport { coreContractCore } from \"./core-contract-core.ts\";\nimport { coreContractExtensions } from \"./core-contract-extensions.ts\";\nimport { coreContractFinal } from \"./core-contract-final.ts\";\nimport { coreContractPlugins } from \"./core-contract-plugins.ts\";\nimport { coreErrors } from \"./core-errors.ts\";\nimport { example } from \"./example.ts\";\nimport { interactiveMode } from \"./interactive-mode.ts\";\nimport { keybindings } from \"./keybindings.ts\";\nimport { sessionCleanup } from \"./session-cleanup.ts\";\nimport { slashCommands } from \"./slash-commands.ts\";\nimport { tuiBuiltin } from \"./tui-builtin.ts\";\nimport { tuiComponentsMisc } from \"./tui-components-misc.ts\";\nimport { tuiComponentsSelectors } from \"./tui-components-selectors.ts\";\nimport { tuiInteractiveMisc } from \"./tui-interactive-misc.ts\";\nimport { tuiSelfOwned } from \"./tui-self-owned.ts\";\n\nexport const zhCn: Record<string, string> = {\n\t...common,\n\t...example,\n\t...interactiveMode,\n\t...slashCommands,\n\t...tuiSelfOwned,\n\t...tuiComponentsSelectors,\n\t...tuiComponentsMisc,\n\t...tuiInteractiveMisc,\n\t...cli,\n\t...coreErrors,\n\t...sessionCleanup,\n\t...coreContractExtensions,\n\t...coreContractCore,\n\t...coreContractPlugins,\n\t...coreContractFinal,\n\t// 批次⑦两个后铺域:与 interactiveMode 的同名 key(\"Jump forward/backward\n\t// to character\")译文一致,覆盖登记见设计文档 §5.3。\n\t...keybindings,\n\t...tuiBuiltin,\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/interactive-mode.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAmSlD,CAAC","sourcesContent":["/**\n * interactive-mode 域词典(批次③):key 为\n * src/modes/interactive/interactive-mode.ts 中 `t()` 调用点的英文原文,\n * value 为 zh-CN 译文。占位符 `{name}` 原样保留(coverage-i18n 测试校验\n * key 与译文占位符集合一致)。命令名/路径/键名/品牌(/suite、models.json、\n * bash、tmux 指令、Agent Forge)不译;suite 保留原文;token 按语境译作\n * token(计量单位)。\n */\nexport const interactiveMode: Record<string, string> = {\n\t// ---- 默认状态指示器 ----\n\t\"Working...\": \"处理中…\",\n\t\"Thinking...\": \"思考中...\",\n\t\"({key} to interrupt)\": \"({key} 中断)\",\n\t\"({key} to cycle)\": \"({key} 切换)\",\n\t\"(thinking: {level})\": \"(思考:{level})\",\n\n\t// ---- 启动 banner / 模型范围 ----\n\t\"to interrupt\": \"中断\",\n\t\"to clear\": \"清空\",\n\t\"{key} twice\": \"{key} 两次\",\n\t\"to exit\": \"退出\",\n\t\"to exit (empty)\": \"退出(编辑器为空时)\",\n\t\"to suspend\": \"挂起\",\n\t\"to delete to end\": \"删除到行尾\",\n\t\"to expand tools\": \"展开工具输出\",\n\t\"to expand thinking\": \"展开思考\",\n\t\"for external editor\": \"打开外部编辑器\",\n\t\"for commands\": \"命令\",\n\t\"to run bash\": \"运行 bash\",\n\t\"to run bash (no context)\": \"运行 bash(不进上下文)\",\n\t\"to paste image (with text fallback)\": \"粘贴图片(无图则退回文本)\",\n\t\"to attach\": \"附加文件\",\n\tinterrupt: \"中断\",\n\t\"clear/exit\": \"清空/退出\",\n\tcommands: \"命令\",\n\tbash: \"bash\",\n\tmore: \"更多\",\n\t\"Press {key} to show full startup help and loaded resources.\": \"按 {key} 展示完整启动帮助与已加载资源。\",\n\t\"Agent Forge can explain its own features and look up its docs. Ask it how to use or extend Agent Forge.\":\n\t\t\"Agent Forge 能解释自身功能并查阅自己的文档。可以直接问它如何使用或扩展 Agent Forge。\",\n\t\"Model scope: {models}{hint}\": \"模型范围:{models}{hint}\",\n\n\t// ---- 更新与 changelog ----\n\t\"Updated to v{version}. Use {command} to view full changelog.\":\n\t\t\"已更新到 v{version}。使用 {command} 查看完整变更日志。\",\n\t\"What's New\": \"新特性\",\n\t\"No changelog entries found.\": \"未找到变更日志条目。\",\n\t\"New version {version} is available. Run\": \"新版本 {version} 可用。请运行\",\n\t\"Changelog:\": \"变更日志:\",\n\t\"Changelog URL is not configured.\": \"未配置变更日志 URL。\",\n\t\"Update Available\": \"有可用更新\",\n\t\"Package updates are available. Run\": \"有可用的包更新。请运行\",\n\t\"Package Updates Available\": \"有可用的包更新\",\n\t\"Packages:\": \"包:\",\n\n\t// ---- 启动警告 ----\n\t\"Migrated credentials to auth.json: {providers}\": \"已迁移凭据到 auth.json:{providers}\",\n\t\"models.json error: {error}\": \"models.json 错误:{error}\",\n\t\"tmux extended-keys is off. Modified Enter keys may not work. Add `set -g extended-keys on` to ~/.tmux.conf and restart tmux.\":\n\t\t\"tmux extended-keys 已关闭,修饰 Enter 键可能失效。请在 ~/.tmux.conf 中加入 `set -g extended-keys on` 并重启 tmux。\",\n\t\"tmux extended-keys-format is xterm. Agent Forge works best with csi-u. Add `set -g extended-keys-format csi-u` to ~/.tmux.conf and restart tmux.\":\n\t\t\"tmux extended-keys-format 为 xterm,Agent Forge 在 csi-u 下工作最佳。请在 ~/.tmux.conf 中加入 `set -g extended-keys-format csi-u` 并重启 tmux。\",\n\t\"Anthropic subscription auth is active. Third-party harness usage draws from extra usage and is billed per token, not your Claude plan limits. Manage extra usage at https://claude.ai/settings/usage. Disable this warning in /settings.\":\n\t\t\"Anthropic 订阅认证处于活跃状态。第三方 harness 用量计入 extra usage 并按 token 计费,不占用 Claude 计划额度。可在 https://claude.ai/settings/usage 管理 extra usage。在 /settings 中可关闭此警告。\",\n\n\t// ---- 已加载资源区块 ----\n\tContext: \"上下文\",\n\tSkills: \"技能\",\n\tPrompts: \"提示词\",\n\tThemes: \"主题\",\n\t\"[Skill conflicts]\": \"[技能冲突]\",\n\t\"[Prompt conflicts]\": \"[提示词模板冲突]\",\n\t\"[Theme conflicts]\": \"[主题冲突]\",\n\n\t// ---- 输入 / 消息队列 ----\n\t\"Startup in progress — input queued and will run when startup completes\": \"启动进行中——输入已排队,启动完成后执行\",\n\t\"A bash command is already running. Press Esc to cancel it first.\": \"已有 bash 命令在运行。请先按 Esc 取消。\",\n\t\"No queued messages to restore\": \"没有可恢复的排队消息\",\n\t\"No queued messages to manage\": \"没有可管理的排队消息\",\n\t\"Restored {count} queued message to editor\": \"已恢复 {count} 条排队消息到编辑器\",\n\t\"Restored {count} queued messages to editor\": \"已恢复 {count} 条排队消息到编辑器\",\n\t\"Usage: /queue <text>\": \"用法:/queue <文本>\",\n\t\"Queued message for after compaction\": \"消息已排队,压缩后发送\",\n\t\"Failed to send queued message: {error}\": \"发送排队消息失败:{error}\",\n\t\"Failed to send queued messages: {error}\": \"发送排队消息失败:{error}\",\n\t\"Steering: {message}\": \"转向:{message}\",\n\t\"Follow-up: {message}\": \"后续:{message}\",\n\t\"↳ {key} to edit all queued messages\": \"↳ {key} 编辑全部排队消息\",\n\n\t// ---- 事件 / 中止 / 压缩 / 重试 ----\n\t\"Aborted after {count} retry attempt\": \"已中止,此前重试 {count} 次\",\n\t\"Aborted after {count} retry attempts\": \"已中止,此前重试 {count} 次\",\n\t\"Operation aborted\": \"操作已中止\",\n\t\"Compaction cancelled\": \"已取消压缩\",\n\t\"Auto-compaction cancelled\": \"已取消自动压缩\",\n\t\"Auto-compaction skipped: nothing to compact\": \"自动压缩已跳过:没有可压缩内容\",\n\t\"Retry failed after {count} attempts: {error}\": \"重试 {count} 次后失败:{error}\",\n\t\"Previous reply was empty, retrying...\": \"上一条回复为空,正在重试…\",\n\n\t// ---- 计费 / 缓存通知 ----\n\tCompaction: \"压缩\",\n\t\"Branch summary\": \"分支摘要\",\n\t\"{tokens} tokens billed{cost}\": \"计费 {tokens} token{cost}\",\n\t\"Anthropic dropped {count} thinking blocks (details in session)\": \"Anthropic 丢弃了 {count} 个思考块(详情见会话)\",\n\t\"{tokens} tokens re-billed{cost}\": \"重新计费 {tokens} token{cost}\",\n\t\"Cache miss\": \"缓存未命中\",\n\t\"Cache miss after model switch\": \"切换模型后缓存未命中\",\n\t\"Cache miss after {minutes}m idle\": \"闲置 {minutes} 分钟后缓存未命中\",\n\t\"Session compacted {count} time\": \"会话已压缩 {count} 次\",\n\t\"Session compacted {count} times\": \"会话已压缩 {count} 次\",\n\n\t// ---- 退出 / 挂起 ----\n\t\"To resume this session:\": \"恢复本会话:\",\n\t\"{app} exiting due to uncaughtException:\": \"{app} 因未捕获异常退出:\",\n\t\"Suspend to background is not supported on Windows\": \"Windows 不支持挂起到后台\",\n\n\t// ---- 模型 / 思考 / 工具输出切换 ----\n\t\"Current model does not support thinking\": \"当前模型不支持思考\",\n\t\"Thinking level: {level}\": \"思考级别:{level}\",\n\t\"Only one model in scope\": \"范围内只有一个模型\",\n\t\"Only one model available\": \"只有一个可用模型\",\n\t\"Switched to {model}{thinking}\": \"已切换到 {model}{thinking}\",\n\t\"Tool output: expanded\": \"工具输出:已展开\",\n\t\"Tool output: collapsed\": \"工具输出:已折叠\",\n\t\"Thinking blocks: hidden\": \"思考块:已隐藏\",\n\t\"Thinking blocks: visible\": \"思考块:已显示\",\n\n\t// ---- 设置选择器 ----\n\t\"not set\": \"未设置\",\n\t\"HTTP idle timeout: {value}\": \"HTTP 空闲超时:{value}\",\n\t\"Close active overlays before changing TUI mode\": \"切换 TUI 模式前请先关闭活动浮层\",\n\t\"TUI mode: {mode}\": \"TUI 模式:{mode}\",\n\n\t// ---- suite / 会话重建 ----\n\t'Suite \"{id}\" was not found. The selected suite applies to the new session.':\n\t\t'未找到 suite \"{id}\"。所选 suite 将应用于新会话。',\n\t'Suite \"{id}\" was not found — continuing without a suite. Use /suite to choose one.':\n\t\t'未找到 suite \"{id}\"——将在无 suite 下继续。可使用 /suite 选择。',\n\t\"Suite set to {id} — new session started\": \"suite 已设为 {id}——新会话已开始\",\n\t\"Failed to create session\": \"创建会话失败\",\n\t'Cross-suite compatible mode: session created with \"{from}\", assembling with \"{to}\"':\n\t\t'跨 suite 兼容模式:会话创建于 \"{from}\",正以 \"{to}\" 组装',\n\n\t// ---- workflow / 子代理 / 会话树 ----\n\t\"No workflow in this session\": \"本会话没有 workflow\",\n\t\"Workflow action staged — review in the editor and submit\": \"workflow 动作已暂存——请在编辑器中审阅后提交\",\n\t\"No subagent sessions in this session\": \"本会话没有子代理会话\",\n\t\"No entries in session\": \"会话中没有条目\",\n\t\"Already at this point\": \"已在该节点\",\n\t\"Summarize branch?\": \"生成分支摘要?\",\n\t\"No summary\": \"不生成摘要\",\n\tSummarize: \"生成摘要\",\n\t\"Summarize with custom prompt\": \"使用自定义提示生成摘要\",\n\t\"Custom summarization instructions\": \"自定义摘要指令\",\n\t\"Branch summarization cancelled\": \"已取消分支摘要\",\n\t\"Navigation cancelled\": \"已取消导航\",\n\t\"Navigated to selected point\": \"已导航到所选节点\",\n\t\"Selected entry has no text to copy\": \"所选条目没有可复制的文本\",\n\t\"Copied selected message to clipboard\": \"已复制所选消息到剪贴板\",\n\n\t// ---- 恢复 / 导入 / 导出 ----\n\t\"Resumed session\": \"已恢复会话\",\n\t\"Resume cancelled\": \"已取消恢复\",\n\t\"Resumed session in current cwd\": \"已在当前工作目录恢复会话\",\n\t\"Failed to resume session\": \"恢复会话失败\",\n\t\"Usage: /import <path.jsonl>\": \"用法:/import <路径.jsonl>\",\n\t\"Import session\": \"导入会话\",\n\t\"Replace current session with {path}?\": \"用 {path} 替换当前会话?\",\n\t\"Import cancelled\": \"已取消导入\",\n\t\"Session imported from: {path}\": \"会话导入自:{path}\",\n\t\"Failed to import session: {error}\": \"导入会话失败:{error}\",\n\t\"Failed to import session\": \"导入会话失败\",\n\t\"Session exported to: {path}\": \"会话已导出到:{path}\",\n\t\"Failed to export session: {error}\": \"导出会话失败:{error}\",\n\n\t// ---- /copy / /name ----\n\t\"No agent messages to copy yet.\": \"还没有可复制的代理消息。\",\n\t\"Copied!\": \"已复制!\",\n\t\"Copied last agent message to clipboard\": \"已复制最近一条代理消息到剪贴板\",\n\t\"Session name: {name}\": \"会话名称:{name}\",\n\t\"Usage: /name <name>\": \"用法:/name <名称>\",\n\t\"Session name was normalized from {from} to {to}\": \"会话名称已从 {from} 规范化为 {to}\",\n\t\"Session name set: {name}\": \"会话名称已设置:{name}\",\n\n\t// ---- /stop-agents ----\n\t\"No background subagents running\": \"没有正在运行的后台子代理\",\n\t\"Terminated {count} background subagent\": \"已终止 {count} 个后台子代理\",\n\t\"Terminated {count} background subagents\": \"已终止 {count} 个后台子代理\",\n\t\"{count} subagent still running · /stop-agents stops all (Esc only stops the current turn)\":\n\t\t\"{count} 个子代理仍在运行 · /stop-agents 终止全部(Esc 只停当前回合)\",\n\t\"{count} subagents still running · /stop-agents stops all (Esc only stops the current turn)\":\n\t\t\"{count} 个子代理仍在运行 · /stop-agents 终止全部(Esc 只停当前回合)\",\n\n\t// ---- /session 统计 ----\n\t\"Session Info\": \"会话信息\",\n\t\"Name:\": \"名称:\",\n\t\"File:\": \"文件:\",\n\t\"ID:\": \"ID:\",\n\t\"In-memory\": \"内存中\",\n\tMessages: \"消息\",\n\t\"Total:\": \"总计:\",\n\t\"User:\": \"用户:\",\n\t\"Assistant:\": \"助手:\",\n\t\"Tools:\": \"工具:\",\n\t\"{calls} calls, {results} results\": \"{calls} 次调用,{results} 次结果\",\n\tTokens: \"Token\",\n\t\"Input:\": \"输入:\",\n\t\"Cached:\": \"已缓存:\",\n\t\"({count} written to cache)\": \"({count} 写入缓存)\",\n\t\"Uncached:\": \"未缓存:\",\n\t\"Output:\": \"输出:\",\n\t\"By Provider/Model\": \"按供应商/模型\",\n\t\"(cache {rate}%, W {written})\": \"(缓存 {rate}%,写 {written})\",\n\tCost: \"费用\",\n\t\"({tokens} tokens)\": \"({tokens} token)\",\n\t\"{count} miss\": \"{count} 次未命中\",\n\t\"{count} misses\": \"{count} 次未命中\",\n\t\"{tokens} tokens, {misses}\": \"{tokens} token,{misses}\",\n\t\"Cache Re-billed:\": \"缓存重新计费:\",\n\n\t// ---- /metrics ----\n\t\"Metrics are not available: the observability plugin is not mounted in this session\":\n\t\t\"指标不可用:本会话未挂载 observability 插件\",\n\t\"Invalid turns: {turns}. Usage: /metrics [turns]\": \"无效的轮数:{turns}。用法:/metrics [turns]\",\n\n\t// ---- /help ----\n\tCommand: \"命令\",\n\tDescription: \"说明\",\n\t\"Built-in commands\": \"内置命令\",\n\t\"Prompt templates\": \"提示词模板\",\n\t\"Type `/` for autocomplete. Use `/hotkeys` for keyboard shortcuts.\":\n\t\t\"输入 `/` 自动补全。使用 `/hotkeys` 查看快捷键。\",\n\t\"Available Commands\": \"可用命令\",\n\n\t// ---- /hotkeys ----\n\t\"Open model selector\": \"打开模型选择器\",\n\t\"Copy selection in /tree\": \"在 /tree 中复制选区\",\n\t\"External editor (inside dialog inputs)\": \"外部编辑器(对话框输入内)\",\n\t\"Queue follow-up message\": \"排队后续消息\",\n\t\"Restore queued messages\": \"恢复排队消息\",\n\t\"Cycle thinking level\": \"循环切换思考级别\",\n\t\"Cycle models\": \"循环切换模型\",\n\t\"Suspend to background\": \"挂起到后台\",\n\tNavigation: \"导航\",\n\tKey: \"按键\",\n\tAction: \"动作\",\n\t\"Move cursor / browse history\": \"移动光标 / 浏览历史\",\n\t\"Move by word\": \"按词移动\",\n\t\"Start of line\": \"行首\",\n\t\"End of line\": \"行尾\",\n\t\"Jump forward to character\": \"向后跳到字符\",\n\t\"Jump backward to character\": \"向前跳到字符\",\n\t\"Scroll by page\": \"按页滚动\",\n\tEditing: \"编辑\",\n\t\"Send message\": \"发送消息\",\n\t\"New line\": \"换行\",\n\t\"New line (Ctrl+Enter on Windows Terminal)\": \"换行(Windows Terminal 上为 Ctrl+Enter)\",\n\t\"Delete word backwards\": \"向前删除单词\",\n\t\"Delete word forwards\": \"向后删除单词\",\n\t\"Delete to start of line\": \"删除到行首\",\n\t\"Delete to end of line\": \"删除到行尾\",\n\t\"Paste the most-recently-deleted text\": \"粘贴最近删除的文本\",\n\t\"Cycle through the deleted text after pasting\": \"粘贴后循环切换已删除文本\",\n\tUndo: \"撤销\",\n\tOther: \"其他\",\n\t\"Path completion / accept autocomplete\": \"路径补全 / 接受自动补全\",\n\t\"Cancel autocomplete / abort streaming\": \"取消自动补全 / 中止流式输出\",\n\t\"Clear editor (first) / exit (second)\": \"清空编辑器(第一次)/ 退出(第二次)\",\n\t\"Exit (when editor is empty)\": \"退出(编辑器为空时)\",\n\t\"Toggle tool output expansion\": \"切换工具输出展开\",\n\t\"Toggle thinking block visibility\": \"切换思考块可见性\",\n\t\"Paste image or text from clipboard\": \"从剪贴板粘贴图片或文本\",\n\t\"Slash commands\": \"斜杠命令\",\n\t\"Run bash command\": \"运行 bash 命令\",\n\t\"Run bash command (excluded from context)\": \"运行 bash 命令(不进上下文)\",\n\t\"Keyboard Shortcuts\": \"键盘快捷键\",\n\n\t// ---- /new / /debug / bash ----\n\t\"✓ New session started\": \"✓ 新会话已开始\",\n\t\"Debug output at {date}\": \"调试输出时间:{date}\",\n\t\"Terminal: {columns}x{rows}\": \"终端:{columns}x{rows}\",\n\t\"Total lines: {count}\": \"总行数:{count}\",\n\t\"=== All rendered lines with visible widths ===\": \"=== 全部渲染行(含可见宽度)===\",\n\t\"=== Agent messages (JSONL) ===\": \"=== 代理消息(JSONL)===\",\n\t\"✓ Debug log written\": \"✓ 调试日志已写入\",\n\t\"Bash command failed: {error}\": \"bash 命令失败:{error}\",\n\n\t// ---- 通用错误前缀 / 兜底 ----\n\t\"Error: {message}\": \"错误:{message}\",\n\t\"Warning: {message}\": \"警告:{message}\",\n\tError: \"错误\",\n\t\"Unknown error\": \"未知错误\",\n\t\"Unknown error occurred\": \"发生未知错误\",\n\t\"Reload failed: {error}\": \"重载失败:{error}\",\n\t\"Wait for the current response to finish before reloading.\": \"请等待当前响应完成后再重载。\",\n\t\"Wait for compaction to finish before reloading.\": \"请等待压缩完成后再重载。\",\n\t\"Reloading keybindings, skills, prompts, themes, and context files...\":\n\t\t\"正在重载键位、技能、提示词模板、主题与上下文文件…\",\n\t\"Reloaded keybindings, skills, prompts, themes, and context files\": \"已重载键位、技能、提示词模板、主题与上下文文件\",\n};\n"]}
|
|
1
|
+
{"version":3,"file":"interactive-mode.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/interactive-mode.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAySlD,CAAC","sourcesContent":["/**\n * interactive-mode 域词典(批次③):key 为\n * src/modes/interactive/interactive-mode.ts 中 `t()` 调用点的英文原文,\n * value 为 zh-CN 译文。占位符 `{name}` 原样保留(coverage-i18n 测试校验\n * key 与译文占位符集合一致)。命令名/路径/键名/品牌(/suite、models.json、\n * bash、tmux 指令、Agent Forge)不译;suite 保留原文;token 按语境译作\n * token(计量单位)。\n */\nexport const interactiveMode: Record<string, string> = {\n\t// ---- 默认状态指示器 ----\n\t\"Working...\": \"处理中…\",\n\t\"Thinking...\": \"思考中...\",\n\t\"({key} to interrupt)\": \"({key} 中断)\",\n\t\"({key} to cycle)\": \"({key} 切换)\",\n\t\"(thinking: {level})\": \"(思考:{level})\",\n\n\t// ---- 启动 banner / 模型范围 ----\n\t\"to interrupt\": \"中断\",\n\t\"to clear\": \"清空\",\n\t\"{key} twice\": \"{key} 两次\",\n\t\"to exit\": \"退出\",\n\t\"to exit (empty)\": \"退出(编辑器为空时)\",\n\t\"to suspend\": \"挂起\",\n\t\"to delete to end\": \"删除到行尾\",\n\t\"to expand tools\": \"展开工具输出\",\n\t\"to expand thinking\": \"展开思考\",\n\t\"for external editor\": \"打开外部编辑器\",\n\t\"for commands\": \"命令\",\n\t\"to run bash\": \"运行 bash\",\n\t\"to run bash (no context)\": \"运行 bash(不进上下文)\",\n\t\"to paste image (with text fallback)\": \"粘贴图片(无图则退回文本)\",\n\t\"to attach\": \"附加文件\",\n\tinterrupt: \"中断\",\n\t\"clear/exit\": \"清空/退出\",\n\tcommands: \"命令\",\n\tbash: \"bash\",\n\tmore: \"更多\",\n\t\"Press {key} to show full startup help and loaded resources.\": \"按 {key} 展示完整启动帮助与已加载资源。\",\n\t\"Agent Forge can explain its own features and look up its docs. Ask it how to use or extend Agent Forge.\":\n\t\t\"Agent Forge 能解释自身功能并查阅自己的文档。可以直接问它如何使用或扩展 Agent Forge。\",\n\t\"Model scope: {models}{hint}\": \"模型范围:{models}{hint}\",\n\n\t// ---- 更新与 changelog ----\n\t\"Updated to v{version}. Use {command} to view full changelog.\":\n\t\t\"已更新到 v{version}。使用 {command} 查看完整变更日志。\",\n\t\"What's New\": \"新特性\",\n\t\"No changelog entries found.\": \"未找到变更日志条目。\",\n\t\"New version {version} is available. Run\": \"新版本 {version} 可用。请运行\",\n\t\"Changelog:\": \"变更日志:\",\n\t\"Changelog URL is not configured.\": \"未配置变更日志 URL。\",\n\t\"Update Available\": \"有可用更新\",\n\t\"Package updates are available. Run\": \"有可用的包更新。请运行\",\n\t\"Package Updates Available\": \"有可用的包更新\",\n\t\"Packages:\": \"包:\",\n\n\t// ---- 启动警告 ----\n\t\"Migrated credentials to auth.json: {providers}\": \"已迁移凭据到 auth.json:{providers}\",\n\t\"models.json error: {error}\": \"models.json 错误:{error}\",\n\t\"tmux extended-keys is off. Modified Enter keys may not work. Add `set -g extended-keys on` to ~/.tmux.conf and restart tmux.\":\n\t\t\"tmux extended-keys 已关闭,修饰 Enter 键可能失效。请在 ~/.tmux.conf 中加入 `set -g extended-keys on` 并重启 tmux。\",\n\t\"tmux extended-keys-format is xterm. Agent Forge works best with csi-u. Add `set -g extended-keys-format csi-u` to ~/.tmux.conf and restart tmux.\":\n\t\t\"tmux extended-keys-format 为 xterm,Agent Forge 在 csi-u 下工作最佳。请在 ~/.tmux.conf 中加入 `set -g extended-keys-format csi-u` 并重启 tmux。\",\n\t\"Anthropic subscription auth is active. Third-party harness usage draws from extra usage and is billed per token, not your Claude plan limits. Manage extra usage at https://claude.ai/settings/usage. Disable this warning in /settings.\":\n\t\t\"Anthropic 订阅认证处于活跃状态。第三方 harness 用量计入 extra usage 并按 token 计费,不占用 Claude 计划额度。可在 https://claude.ai/settings/usage 管理 extra usage。在 /settings 中可关闭此警告。\",\n\n\t// ---- 已加载资源区块 ----\n\tContext: \"上下文\",\n\tSkills: \"技能\",\n\tPrompts: \"提示词\",\n\tThemes: \"主题\",\n\t\"[Skill conflicts]\": \"[技能冲突]\",\n\t\"[Prompt conflicts]\": \"[提示词模板冲突]\",\n\t\"[Theme conflicts]\": \"[主题冲突]\",\n\n\t// ---- 输入 / 消息队列 ----\n\t\"Startup in progress — input queued and will run when startup completes\": \"启动进行中——输入已排队,启动完成后执行\",\n\t\"A bash command is already running. Press Esc to cancel it first.\": \"已有 bash 命令在运行。请先按 Esc 取消。\",\n\t\"No queued messages to restore\": \"没有可恢复的排队消息\",\n\t\"No queued messages to manage\": \"没有可管理的排队消息\",\n\t\"Restored {count} queued message to editor\": \"已恢复 {count} 条排队消息到编辑器\",\n\t\"Restored {count} queued messages to editor\": \"已恢复 {count} 条排队消息到编辑器\",\n\t\"Usage: /queue <text>\": \"用法:/queue <文本>\",\n\t\"Queued message for after compaction\": \"消息已排队,压缩后发送\",\n\t\"Failed to send queued message: {error}\": \"发送排队消息失败:{error}\",\n\t\"Failed to send queued messages: {error}\": \"发送排队消息失败:{error}\",\n\t\"Steering: {message}\": \"转向:{message}\",\n\t\"Follow-up: {message}\": \"后续:{message}\",\n\t\"↳ {key} to edit all queued messages\": \"↳ {key} 编辑全部排队消息\",\n\n\t// ---- 事件 / 中止 / 压缩 / 重试 ----\n\t\"Aborted after {count} retry attempt\": \"已中止,此前重试 {count} 次\",\n\t\"Aborted after {count} retry attempts\": \"已中止,此前重试 {count} 次\",\n\t\"Operation aborted\": \"操作已中止\",\n\t\"Compaction cancelled\": \"已取消压缩\",\n\t\"Auto-compaction cancelled\": \"已取消自动压缩\",\n\t\"Auto-compaction skipped: nothing to compact\": \"自动压缩已跳过:没有可压缩内容\",\n\t\"Retry failed after {count} attempts: {error}\": \"重试 {count} 次后失败:{error}\",\n\t\"Previous reply was empty, retrying...\": \"上一条回复为空,正在重试…\",\n\n\t// ---- 计费 / 缓存通知 ----\n\tCompaction: \"压缩\",\n\t\"Branch summary\": \"分支摘要\",\n\t\"{tokens} tokens billed{cost}\": \"计费 {tokens} token{cost}\",\n\t\"Anthropic dropped {count} thinking blocks (details in session)\": \"Anthropic 丢弃了 {count} 个思考块(详情见会话)\",\n\t\"{tokens} tokens re-billed{cost}\": \"重新计费 {tokens} token{cost}\",\n\t\"Cache miss\": \"缓存未命中\",\n\t\"Cache miss after model switch\": \"切换模型后缓存未命中\",\n\t\"Cache miss after {minutes}m idle\": \"闲置 {minutes} 分钟后缓存未命中\",\n\t\"Session compacted {count} time\": \"会话已压缩 {count} 次\",\n\t\"Session compacted {count} times\": \"会话已压缩 {count} 次\",\n\n\t// ---- 退出 / 挂起 ----\n\t\"To resume this session:\": \"恢复本会话:\",\n\t\"{app} exiting due to uncaughtException:\": \"{app} 因未捕获异常退出:\",\n\t\"Suspend to background is not supported on Windows\": \"Windows 不支持挂起到后台\",\n\n\t// ---- 模型 / 思考 / 工具输出切换 ----\n\t\"Current model does not support thinking\": \"当前模型不支持思考\",\n\t\"Thinking level: {level}\": \"思考级别:{level}\",\n\t\"Only one model in scope\": \"范围内只有一个模型\",\n\t\"Only one model available\": \"只有一个可用模型\",\n\t\"Switched to {model}{thinking}\": \"已切换到 {model}{thinking}\",\n\t\"Tool output: expanded\": \"工具输出:已展开\",\n\t\"Tool output: collapsed\": \"工具输出:已折叠\",\n\t\"Thinking blocks: hidden\": \"思考块:已隐藏\",\n\t\"Thinking blocks: visible\": \"思考块:已显示\",\n\n\t// ---- D-083 转录静默化(quiet 态合并标记与思考折叠行)----\n\t\"✻ thinking\": \"✻ 思考\",\n\t\"{count} tool\": \"{count} 个工具\",\n\t\"{count} tools\": \"{count} 个工具\",\n\t\"{count} failed\": \"{count} 个失败\",\n\n\t// ---- 设置选择器 ----\n\t\"not set\": \"未设置\",\n\t\"HTTP idle timeout: {value}\": \"HTTP 空闲超时:{value}\",\n\t\"Close active overlays before changing TUI mode\": \"切换 TUI 模式前请先关闭活动浮层\",\n\t\"TUI mode: {mode}\": \"TUI 模式:{mode}\",\n\n\t// ---- suite / 会话重建 ----\n\t'Suite \"{id}\" was not found. The selected suite applies to the new session.':\n\t\t'未找到 suite \"{id}\"。所选 suite 将应用于新会话。',\n\t'Suite \"{id}\" was not found — continuing without a suite. Use /suite to choose one.':\n\t\t'未找到 suite \"{id}\"——将在无 suite 下继续。可使用 /suite 选择。',\n\t\"Suite set to {id} — new session started\": \"suite 已设为 {id}——新会话已开始\",\n\t\"Failed to create session\": \"创建会话失败\",\n\t'Cross-suite compatible mode: session created with \"{from}\", assembling with \"{to}\"':\n\t\t'跨 suite 兼容模式:会话创建于 \"{from}\",正以 \"{to}\" 组装',\n\n\t// ---- workflow / 子代理 / 会话树 ----\n\t\"No workflow in this session\": \"本会话没有 workflow\",\n\t\"Workflow action staged — review in the editor and submit\": \"workflow 动作已暂存——请在编辑器中审阅后提交\",\n\t\"No subagent sessions in this session\": \"本会话没有子代理会话\",\n\t\"No entries in session\": \"会话中没有条目\",\n\t\"Already at this point\": \"已在该节点\",\n\t\"Summarize branch?\": \"生成分支摘要?\",\n\t\"No summary\": \"不生成摘要\",\n\tSummarize: \"生成摘要\",\n\t\"Summarize with custom prompt\": \"使用自定义提示生成摘要\",\n\t\"Custom summarization instructions\": \"自定义摘要指令\",\n\t\"Branch summarization cancelled\": \"已取消分支摘要\",\n\t\"Navigation cancelled\": \"已取消导航\",\n\t\"Navigated to selected point\": \"已导航到所选节点\",\n\t\"Selected entry has no text to copy\": \"所选条目没有可复制的文本\",\n\t\"Copied selected message to clipboard\": \"已复制所选消息到剪贴板\",\n\n\t// ---- 恢复 / 导入 / 导出 ----\n\t\"Resumed session\": \"已恢复会话\",\n\t\"Resume cancelled\": \"已取消恢复\",\n\t\"Resumed session in current cwd\": \"已在当前工作目录恢复会话\",\n\t\"Failed to resume session\": \"恢复会话失败\",\n\t\"Usage: /import <path.jsonl>\": \"用法:/import <路径.jsonl>\",\n\t\"Import session\": \"导入会话\",\n\t\"Replace current session with {path}?\": \"用 {path} 替换当前会话?\",\n\t\"Import cancelled\": \"已取消导入\",\n\t\"Session imported from: {path}\": \"会话导入自:{path}\",\n\t\"Failed to import session: {error}\": \"导入会话失败:{error}\",\n\t\"Failed to import session\": \"导入会话失败\",\n\t\"Session exported to: {path}\": \"会话已导出到:{path}\",\n\t\"Failed to export session: {error}\": \"导出会话失败:{error}\",\n\n\t// ---- /copy / /name ----\n\t\"No agent messages to copy yet.\": \"还没有可复制的代理消息。\",\n\t\"Copied!\": \"已复制!\",\n\t\"Copied last agent message to clipboard\": \"已复制最近一条代理消息到剪贴板\",\n\t\"Session name: {name}\": \"会话名称:{name}\",\n\t\"Usage: /name <name>\": \"用法:/name <名称>\",\n\t\"Session name was normalized from {from} to {to}\": \"会话名称已从 {from} 规范化为 {to}\",\n\t\"Session name set: {name}\": \"会话名称已设置:{name}\",\n\n\t// ---- /stop-agents ----\n\t\"No background subagents running\": \"没有正在运行的后台子代理\",\n\t\"Terminated {count} background subagent\": \"已终止 {count} 个后台子代理\",\n\t\"Terminated {count} background subagents\": \"已终止 {count} 个后台子代理\",\n\t\"{count} subagent still running · /stop-agents stops all (Esc only stops the current turn)\":\n\t\t\"{count} 个子代理仍在运行 · /stop-agents 终止全部(Esc 只停当前回合)\",\n\t\"{count} subagents still running · /stop-agents stops all (Esc only stops the current turn)\":\n\t\t\"{count} 个子代理仍在运行 · /stop-agents 终止全部(Esc 只停当前回合)\",\n\n\t// ---- /session 统计 ----\n\t\"Session Info\": \"会话信息\",\n\t\"Name:\": \"名称:\",\n\t\"File:\": \"文件:\",\n\t\"ID:\": \"ID:\",\n\t\"In-memory\": \"内存中\",\n\tMessages: \"消息\",\n\t\"Total:\": \"总计:\",\n\t\"User:\": \"用户:\",\n\t\"Assistant:\": \"助手:\",\n\t\"Tools:\": \"工具:\",\n\t\"{calls} calls, {results} results\": \"{calls} 次调用,{results} 次结果\",\n\tTokens: \"Token\",\n\t\"Input:\": \"输入:\",\n\t\"Cached:\": \"已缓存:\",\n\t\"({count} written to cache)\": \"({count} 写入缓存)\",\n\t\"Uncached:\": \"未缓存:\",\n\t\"Output:\": \"输出:\",\n\t\"By Provider/Model\": \"按供应商/模型\",\n\t\"(cache {rate}%, W {written})\": \"(缓存 {rate}%,写 {written})\",\n\tCost: \"费用\",\n\t\"({tokens} tokens)\": \"({tokens} token)\",\n\t\"{count} miss\": \"{count} 次未命中\",\n\t\"{count} misses\": \"{count} 次未命中\",\n\t\"{tokens} tokens, {misses}\": \"{tokens} token,{misses}\",\n\t\"Cache Re-billed:\": \"缓存重新计费:\",\n\n\t// ---- /metrics ----\n\t\"Metrics are not available: the observability plugin is not mounted in this session\":\n\t\t\"指标不可用:本会话未挂载 observability 插件\",\n\t\"Invalid turns: {turns}. Usage: /metrics [turns]\": \"无效的轮数:{turns}。用法:/metrics [turns]\",\n\n\t// ---- /help ----\n\tCommand: \"命令\",\n\tDescription: \"说明\",\n\t\"Built-in commands\": \"内置命令\",\n\t\"Prompt templates\": \"提示词模板\",\n\t\"Type `/` for autocomplete. Use `/hotkeys` for keyboard shortcuts.\":\n\t\t\"输入 `/` 自动补全。使用 `/hotkeys` 查看快捷键。\",\n\t\"Available Commands\": \"可用命令\",\n\n\t// ---- /hotkeys ----\n\t\"Open model selector\": \"打开模型选择器\",\n\t\"Copy selection in /tree\": \"在 /tree 中复制选区\",\n\t\"External editor (inside dialog inputs)\": \"外部编辑器(对话框输入内)\",\n\t\"Queue follow-up message\": \"排队后续消息\",\n\t\"Restore queued messages\": \"恢复排队消息\",\n\t\"Cycle thinking level\": \"循环切换思考级别\",\n\t\"Cycle models\": \"循环切换模型\",\n\t\"Suspend to background\": \"挂起到后台\",\n\tNavigation: \"导航\",\n\tKey: \"按键\",\n\tAction: \"动作\",\n\t\"Move cursor / browse history\": \"移动光标 / 浏览历史\",\n\t\"Move by word\": \"按词移动\",\n\t\"Start of line\": \"行首\",\n\t\"End of line\": \"行尾\",\n\t\"Jump forward to character\": \"向后跳到字符\",\n\t\"Jump backward to character\": \"向前跳到字符\",\n\t\"Scroll by page\": \"按页滚动\",\n\tEditing: \"编辑\",\n\t\"Send message\": \"发送消息\",\n\t\"New line\": \"换行\",\n\t\"New line (Ctrl+Enter on Windows Terminal)\": \"换行(Windows Terminal 上为 Ctrl+Enter)\",\n\t\"Delete word backwards\": \"向前删除单词\",\n\t\"Delete word forwards\": \"向后删除单词\",\n\t\"Delete to start of line\": \"删除到行首\",\n\t\"Delete to end of line\": \"删除到行尾\",\n\t\"Paste the most-recently-deleted text\": \"粘贴最近删除的文本\",\n\t\"Cycle through the deleted text after pasting\": \"粘贴后循环切换已删除文本\",\n\tUndo: \"撤销\",\n\tOther: \"其他\",\n\t\"Path completion / accept autocomplete\": \"路径补全 / 接受自动补全\",\n\t\"Cancel autocomplete / abort streaming\": \"取消自动补全 / 中止流式输出\",\n\t\"Clear editor (first) / exit (second)\": \"清空编辑器(第一次)/ 退出(第二次)\",\n\t\"Exit (when editor is empty)\": \"退出(编辑器为空时)\",\n\t\"Toggle tool output expansion\": \"切换工具输出展开\",\n\t\"Toggle thinking block visibility\": \"切换思考块可见性\",\n\t\"Paste image or text from clipboard\": \"从剪贴板粘贴图片或文本\",\n\t\"Slash commands\": \"斜杠命令\",\n\t\"Run bash command\": \"运行 bash 命令\",\n\t\"Run bash command (excluded from context)\": \"运行 bash 命令(不进上下文)\",\n\t\"Keyboard Shortcuts\": \"键盘快捷键\",\n\n\t// ---- /new / /debug / bash ----\n\t\"✓ New session started\": \"✓ 新会话已开始\",\n\t\"Debug output at {date}\": \"调试输出时间:{date}\",\n\t\"Terminal: {columns}x{rows}\": \"终端:{columns}x{rows}\",\n\t\"Total lines: {count}\": \"总行数:{count}\",\n\t\"=== All rendered lines with visible widths ===\": \"=== 全部渲染行(含可见宽度)===\",\n\t\"=== Agent messages (JSONL) ===\": \"=== 代理消息(JSONL)===\",\n\t\"✓ Debug log written\": \"✓ 调试日志已写入\",\n\t\"Bash command failed: {error}\": \"bash 命令失败:{error}\",\n\n\t// ---- 通用错误前缀 / 兜底 ----\n\t\"Error: {message}\": \"错误:{message}\",\n\t\"Warning: {message}\": \"警告:{message}\",\n\tError: \"错误\",\n\t\"Unknown error\": \"未知错误\",\n\t\"Unknown error occurred\": \"发生未知错误\",\n\t\"Reload failed: {error}\": \"重载失败:{error}\",\n\t\"Wait for the current response to finish before reloading.\": \"请等待当前响应完成后再重载。\",\n\t\"Wait for compaction to finish before reloading.\": \"请等待压缩完成后再重载。\",\n\t\"Reloading keybindings, skills, prompts, themes, and context files...\":\n\t\t\"正在重载键位、技能、提示词模板、主题与上下文文件…\",\n\t\"Reloaded keybindings, skills, prompts, themes, and context files\": \"已重载键位、技能、提示词模板、主题与上下文文件\",\n};\n"]}
|
|
@@ -110,6 +110,11 @@ export const interactiveMode = {
|
|
|
110
110
|
"Tool output: collapsed": "工具输出:已折叠",
|
|
111
111
|
"Thinking blocks: hidden": "思考块:已隐藏",
|
|
112
112
|
"Thinking blocks: visible": "思考块:已显示",
|
|
113
|
+
// ---- D-083 转录静默化(quiet 态合并标记与思考折叠行)----
|
|
114
|
+
"✻ thinking": "✻ 思考",
|
|
115
|
+
"{count} tool": "{count} 个工具",
|
|
116
|
+
"{count} tools": "{count} 个工具",
|
|
117
|
+
"{count} failed": "{count} 个失败",
|
|
113
118
|
// ---- 设置选择器 ----
|
|
114
119
|
"not set": "未设置",
|
|
115
120
|
"HTTP idle timeout: {value}": "HTTP 空闲超时:{value}",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode.js","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/interactive-mode.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * interactive-mode 域词典(批次③):key 为\n * src/modes/interactive/interactive-mode.ts 中 `t()` 调用点的英文原文,\n * value 为 zh-CN 译文。占位符 `{name}` 原样保留(coverage-i18n 测试校验\n * key 与译文占位符集合一致)。命令名/路径/键名/品牌(/suite、models.json、\n * bash、tmux 指令、Agent Forge)不译;suite 保留原文;token 按语境译作\n * token(计量单位)。\n */\nexport const interactiveMode: Record<string, string> = {\n\t// ---- 默认状态指示器 ----\n\t\"Working...\": \"处理中…\",\n\t\"Thinking...\": \"思考中...\",\n\t\"({key} to interrupt)\": \"({key} 中断)\",\n\t\"({key} to cycle)\": \"({key} 切换)\",\n\t\"(thinking: {level})\": \"(思考:{level})\",\n\n\t// ---- 启动 banner / 模型范围 ----\n\t\"to interrupt\": \"中断\",\n\t\"to clear\": \"清空\",\n\t\"{key} twice\": \"{key} 两次\",\n\t\"to exit\": \"退出\",\n\t\"to exit (empty)\": \"退出(编辑器为空时)\",\n\t\"to suspend\": \"挂起\",\n\t\"to delete to end\": \"删除到行尾\",\n\t\"to expand tools\": \"展开工具输出\",\n\t\"to expand thinking\": \"展开思考\",\n\t\"for external editor\": \"打开外部编辑器\",\n\t\"for commands\": \"命令\",\n\t\"to run bash\": \"运行 bash\",\n\t\"to run bash (no context)\": \"运行 bash(不进上下文)\",\n\t\"to paste image (with text fallback)\": \"粘贴图片(无图则退回文本)\",\n\t\"to attach\": \"附加文件\",\n\tinterrupt: \"中断\",\n\t\"clear/exit\": \"清空/退出\",\n\tcommands: \"命令\",\n\tbash: \"bash\",\n\tmore: \"更多\",\n\t\"Press {key} to show full startup help and loaded resources.\": \"按 {key} 展示完整启动帮助与已加载资源。\",\n\t\"Agent Forge can explain its own features and look up its docs. Ask it how to use or extend Agent Forge.\":\n\t\t\"Agent Forge 能解释自身功能并查阅自己的文档。可以直接问它如何使用或扩展 Agent Forge。\",\n\t\"Model scope: {models}{hint}\": \"模型范围:{models}{hint}\",\n\n\t// ---- 更新与 changelog ----\n\t\"Updated to v{version}. Use {command} to view full changelog.\":\n\t\t\"已更新到 v{version}。使用 {command} 查看完整变更日志。\",\n\t\"What's New\": \"新特性\",\n\t\"No changelog entries found.\": \"未找到变更日志条目。\",\n\t\"New version {version} is available. Run\": \"新版本 {version} 可用。请运行\",\n\t\"Changelog:\": \"变更日志:\",\n\t\"Changelog URL is not configured.\": \"未配置变更日志 URL。\",\n\t\"Update Available\": \"有可用更新\",\n\t\"Package updates are available. Run\": \"有可用的包更新。请运行\",\n\t\"Package Updates Available\": \"有可用的包更新\",\n\t\"Packages:\": \"包:\",\n\n\t// ---- 启动警告 ----\n\t\"Migrated credentials to auth.json: {providers}\": \"已迁移凭据到 auth.json:{providers}\",\n\t\"models.json error: {error}\": \"models.json 错误:{error}\",\n\t\"tmux extended-keys is off. Modified Enter keys may not work. Add `set -g extended-keys on` to ~/.tmux.conf and restart tmux.\":\n\t\t\"tmux extended-keys 已关闭,修饰 Enter 键可能失效。请在 ~/.tmux.conf 中加入 `set -g extended-keys on` 并重启 tmux。\",\n\t\"tmux extended-keys-format is xterm. Agent Forge works best with csi-u. Add `set -g extended-keys-format csi-u` to ~/.tmux.conf and restart tmux.\":\n\t\t\"tmux extended-keys-format 为 xterm,Agent Forge 在 csi-u 下工作最佳。请在 ~/.tmux.conf 中加入 `set -g extended-keys-format csi-u` 并重启 tmux。\",\n\t\"Anthropic subscription auth is active. Third-party harness usage draws from extra usage and is billed per token, not your Claude plan limits. Manage extra usage at https://claude.ai/settings/usage. Disable this warning in /settings.\":\n\t\t\"Anthropic 订阅认证处于活跃状态。第三方 harness 用量计入 extra usage 并按 token 计费,不占用 Claude 计划额度。可在 https://claude.ai/settings/usage 管理 extra usage。在 /settings 中可关闭此警告。\",\n\n\t// ---- 已加载资源区块 ----\n\tContext: \"上下文\",\n\tSkills: \"技能\",\n\tPrompts: \"提示词\",\n\tThemes: \"主题\",\n\t\"[Skill conflicts]\": \"[技能冲突]\",\n\t\"[Prompt conflicts]\": \"[提示词模板冲突]\",\n\t\"[Theme conflicts]\": \"[主题冲突]\",\n\n\t// ---- 输入 / 消息队列 ----\n\t\"Startup in progress — input queued and will run when startup completes\": \"启动进行中——输入已排队,启动完成后执行\",\n\t\"A bash command is already running. Press Esc to cancel it first.\": \"已有 bash 命令在运行。请先按 Esc 取消。\",\n\t\"No queued messages to restore\": \"没有可恢复的排队消息\",\n\t\"No queued messages to manage\": \"没有可管理的排队消息\",\n\t\"Restored {count} queued message to editor\": \"已恢复 {count} 条排队消息到编辑器\",\n\t\"Restored {count} queued messages to editor\": \"已恢复 {count} 条排队消息到编辑器\",\n\t\"Usage: /queue <text>\": \"用法:/queue <文本>\",\n\t\"Queued message for after compaction\": \"消息已排队,压缩后发送\",\n\t\"Failed to send queued message: {error}\": \"发送排队消息失败:{error}\",\n\t\"Failed to send queued messages: {error}\": \"发送排队消息失败:{error}\",\n\t\"Steering: {message}\": \"转向:{message}\",\n\t\"Follow-up: {message}\": \"后续:{message}\",\n\t\"↳ {key} to edit all queued messages\": \"↳ {key} 编辑全部排队消息\",\n\n\t// ---- 事件 / 中止 / 压缩 / 重试 ----\n\t\"Aborted after {count} retry attempt\": \"已中止,此前重试 {count} 次\",\n\t\"Aborted after {count} retry attempts\": \"已中止,此前重试 {count} 次\",\n\t\"Operation aborted\": \"操作已中止\",\n\t\"Compaction cancelled\": \"已取消压缩\",\n\t\"Auto-compaction cancelled\": \"已取消自动压缩\",\n\t\"Auto-compaction skipped: nothing to compact\": \"自动压缩已跳过:没有可压缩内容\",\n\t\"Retry failed after {count} attempts: {error}\": \"重试 {count} 次后失败:{error}\",\n\t\"Previous reply was empty, retrying...\": \"上一条回复为空,正在重试…\",\n\n\t// ---- 计费 / 缓存通知 ----\n\tCompaction: \"压缩\",\n\t\"Branch summary\": \"分支摘要\",\n\t\"{tokens} tokens billed{cost}\": \"计费 {tokens} token{cost}\",\n\t\"Anthropic dropped {count} thinking blocks (details in session)\": \"Anthropic 丢弃了 {count} 个思考块(详情见会话)\",\n\t\"{tokens} tokens re-billed{cost}\": \"重新计费 {tokens} token{cost}\",\n\t\"Cache miss\": \"缓存未命中\",\n\t\"Cache miss after model switch\": \"切换模型后缓存未命中\",\n\t\"Cache miss after {minutes}m idle\": \"闲置 {minutes} 分钟后缓存未命中\",\n\t\"Session compacted {count} time\": \"会话已压缩 {count} 次\",\n\t\"Session compacted {count} times\": \"会话已压缩 {count} 次\",\n\n\t// ---- 退出 / 挂起 ----\n\t\"To resume this session:\": \"恢复本会话:\",\n\t\"{app} exiting due to uncaughtException:\": \"{app} 因未捕获异常退出:\",\n\t\"Suspend to background is not supported on Windows\": \"Windows 不支持挂起到后台\",\n\n\t// ---- 模型 / 思考 / 工具输出切换 ----\n\t\"Current model does not support thinking\": \"当前模型不支持思考\",\n\t\"Thinking level: {level}\": \"思考级别:{level}\",\n\t\"Only one model in scope\": \"范围内只有一个模型\",\n\t\"Only one model available\": \"只有一个可用模型\",\n\t\"Switched to {model}{thinking}\": \"已切换到 {model}{thinking}\",\n\t\"Tool output: expanded\": \"工具输出:已展开\",\n\t\"Tool output: collapsed\": \"工具输出:已折叠\",\n\t\"Thinking blocks: hidden\": \"思考块:已隐藏\",\n\t\"Thinking blocks: visible\": \"思考块:已显示\",\n\n\t// ---- 设置选择器 ----\n\t\"not set\": \"未设置\",\n\t\"HTTP idle timeout: {value}\": \"HTTP 空闲超时:{value}\",\n\t\"Close active overlays before changing TUI mode\": \"切换 TUI 模式前请先关闭活动浮层\",\n\t\"TUI mode: {mode}\": \"TUI 模式:{mode}\",\n\n\t// ---- suite / 会话重建 ----\n\t'Suite \"{id}\" was not found. The selected suite applies to the new session.':\n\t\t'未找到 suite \"{id}\"。所选 suite 将应用于新会话。',\n\t'Suite \"{id}\" was not found — continuing without a suite. Use /suite to choose one.':\n\t\t'未找到 suite \"{id}\"——将在无 suite 下继续。可使用 /suite 选择。',\n\t\"Suite set to {id} — new session started\": \"suite 已设为 {id}——新会话已开始\",\n\t\"Failed to create session\": \"创建会话失败\",\n\t'Cross-suite compatible mode: session created with \"{from}\", assembling with \"{to}\"':\n\t\t'跨 suite 兼容模式:会话创建于 \"{from}\",正以 \"{to}\" 组装',\n\n\t// ---- workflow / 子代理 / 会话树 ----\n\t\"No workflow in this session\": \"本会话没有 workflow\",\n\t\"Workflow action staged — review in the editor and submit\": \"workflow 动作已暂存——请在编辑器中审阅后提交\",\n\t\"No subagent sessions in this session\": \"本会话没有子代理会话\",\n\t\"No entries in session\": \"会话中没有条目\",\n\t\"Already at this point\": \"已在该节点\",\n\t\"Summarize branch?\": \"生成分支摘要?\",\n\t\"No summary\": \"不生成摘要\",\n\tSummarize: \"生成摘要\",\n\t\"Summarize with custom prompt\": \"使用自定义提示生成摘要\",\n\t\"Custom summarization instructions\": \"自定义摘要指令\",\n\t\"Branch summarization cancelled\": \"已取消分支摘要\",\n\t\"Navigation cancelled\": \"已取消导航\",\n\t\"Navigated to selected point\": \"已导航到所选节点\",\n\t\"Selected entry has no text to copy\": \"所选条目没有可复制的文本\",\n\t\"Copied selected message to clipboard\": \"已复制所选消息到剪贴板\",\n\n\t// ---- 恢复 / 导入 / 导出 ----\n\t\"Resumed session\": \"已恢复会话\",\n\t\"Resume cancelled\": \"已取消恢复\",\n\t\"Resumed session in current cwd\": \"已在当前工作目录恢复会话\",\n\t\"Failed to resume session\": \"恢复会话失败\",\n\t\"Usage: /import <path.jsonl>\": \"用法:/import <路径.jsonl>\",\n\t\"Import session\": \"导入会话\",\n\t\"Replace current session with {path}?\": \"用 {path} 替换当前会话?\",\n\t\"Import cancelled\": \"已取消导入\",\n\t\"Session imported from: {path}\": \"会话导入自:{path}\",\n\t\"Failed to import session: {error}\": \"导入会话失败:{error}\",\n\t\"Failed to import session\": \"导入会话失败\",\n\t\"Session exported to: {path}\": \"会话已导出到:{path}\",\n\t\"Failed to export session: {error}\": \"导出会话失败:{error}\",\n\n\t// ---- /copy / /name ----\n\t\"No agent messages to copy yet.\": \"还没有可复制的代理消息。\",\n\t\"Copied!\": \"已复制!\",\n\t\"Copied last agent message to clipboard\": \"已复制最近一条代理消息到剪贴板\",\n\t\"Session name: {name}\": \"会话名称:{name}\",\n\t\"Usage: /name <name>\": \"用法:/name <名称>\",\n\t\"Session name was normalized from {from} to {to}\": \"会话名称已从 {from} 规范化为 {to}\",\n\t\"Session name set: {name}\": \"会话名称已设置:{name}\",\n\n\t// ---- /stop-agents ----\n\t\"No background subagents running\": \"没有正在运行的后台子代理\",\n\t\"Terminated {count} background subagent\": \"已终止 {count} 个后台子代理\",\n\t\"Terminated {count} background subagents\": \"已终止 {count} 个后台子代理\",\n\t\"{count} subagent still running · /stop-agents stops all (Esc only stops the current turn)\":\n\t\t\"{count} 个子代理仍在运行 · /stop-agents 终止全部(Esc 只停当前回合)\",\n\t\"{count} subagents still running · /stop-agents stops all (Esc only stops the current turn)\":\n\t\t\"{count} 个子代理仍在运行 · /stop-agents 终止全部(Esc 只停当前回合)\",\n\n\t// ---- /session 统计 ----\n\t\"Session Info\": \"会话信息\",\n\t\"Name:\": \"名称:\",\n\t\"File:\": \"文件:\",\n\t\"ID:\": \"ID:\",\n\t\"In-memory\": \"内存中\",\n\tMessages: \"消息\",\n\t\"Total:\": \"总计:\",\n\t\"User:\": \"用户:\",\n\t\"Assistant:\": \"助手:\",\n\t\"Tools:\": \"工具:\",\n\t\"{calls} calls, {results} results\": \"{calls} 次调用,{results} 次结果\",\n\tTokens: \"Token\",\n\t\"Input:\": \"输入:\",\n\t\"Cached:\": \"已缓存:\",\n\t\"({count} written to cache)\": \"({count} 写入缓存)\",\n\t\"Uncached:\": \"未缓存:\",\n\t\"Output:\": \"输出:\",\n\t\"By Provider/Model\": \"按供应商/模型\",\n\t\"(cache {rate}%, W {written})\": \"(缓存 {rate}%,写 {written})\",\n\tCost: \"费用\",\n\t\"({tokens} tokens)\": \"({tokens} token)\",\n\t\"{count} miss\": \"{count} 次未命中\",\n\t\"{count} misses\": \"{count} 次未命中\",\n\t\"{tokens} tokens, {misses}\": \"{tokens} token,{misses}\",\n\t\"Cache Re-billed:\": \"缓存重新计费:\",\n\n\t// ---- /metrics ----\n\t\"Metrics are not available: the observability plugin is not mounted in this session\":\n\t\t\"指标不可用:本会话未挂载 observability 插件\",\n\t\"Invalid turns: {turns}. Usage: /metrics [turns]\": \"无效的轮数:{turns}。用法:/metrics [turns]\",\n\n\t// ---- /help ----\n\tCommand: \"命令\",\n\tDescription: \"说明\",\n\t\"Built-in commands\": \"内置命令\",\n\t\"Prompt templates\": \"提示词模板\",\n\t\"Type `/` for autocomplete. Use `/hotkeys` for keyboard shortcuts.\":\n\t\t\"输入 `/` 自动补全。使用 `/hotkeys` 查看快捷键。\",\n\t\"Available Commands\": \"可用命令\",\n\n\t// ---- /hotkeys ----\n\t\"Open model selector\": \"打开模型选择器\",\n\t\"Copy selection in /tree\": \"在 /tree 中复制选区\",\n\t\"External editor (inside dialog inputs)\": \"外部编辑器(对话框输入内)\",\n\t\"Queue follow-up message\": \"排队后续消息\",\n\t\"Restore queued messages\": \"恢复排队消息\",\n\t\"Cycle thinking level\": \"循环切换思考级别\",\n\t\"Cycle models\": \"循环切换模型\",\n\t\"Suspend to background\": \"挂起到后台\",\n\tNavigation: \"导航\",\n\tKey: \"按键\",\n\tAction: \"动作\",\n\t\"Move cursor / browse history\": \"移动光标 / 浏览历史\",\n\t\"Move by word\": \"按词移动\",\n\t\"Start of line\": \"行首\",\n\t\"End of line\": \"行尾\",\n\t\"Jump forward to character\": \"向后跳到字符\",\n\t\"Jump backward to character\": \"向前跳到字符\",\n\t\"Scroll by page\": \"按页滚动\",\n\tEditing: \"编辑\",\n\t\"Send message\": \"发送消息\",\n\t\"New line\": \"换行\",\n\t\"New line (Ctrl+Enter on Windows Terminal)\": \"换行(Windows Terminal 上为 Ctrl+Enter)\",\n\t\"Delete word backwards\": \"向前删除单词\",\n\t\"Delete word forwards\": \"向后删除单词\",\n\t\"Delete to start of line\": \"删除到行首\",\n\t\"Delete to end of line\": \"删除到行尾\",\n\t\"Paste the most-recently-deleted text\": \"粘贴最近删除的文本\",\n\t\"Cycle through the deleted text after pasting\": \"粘贴后循环切换已删除文本\",\n\tUndo: \"撤销\",\n\tOther: \"其他\",\n\t\"Path completion / accept autocomplete\": \"路径补全 / 接受自动补全\",\n\t\"Cancel autocomplete / abort streaming\": \"取消自动补全 / 中止流式输出\",\n\t\"Clear editor (first) / exit (second)\": \"清空编辑器(第一次)/ 退出(第二次)\",\n\t\"Exit (when editor is empty)\": \"退出(编辑器为空时)\",\n\t\"Toggle tool output expansion\": \"切换工具输出展开\",\n\t\"Toggle thinking block visibility\": \"切换思考块可见性\",\n\t\"Paste image or text from clipboard\": \"从剪贴板粘贴图片或文本\",\n\t\"Slash commands\": \"斜杠命令\",\n\t\"Run bash command\": \"运行 bash 命令\",\n\t\"Run bash command (excluded from context)\": \"运行 bash 命令(不进上下文)\",\n\t\"Keyboard Shortcuts\": \"键盘快捷键\",\n\n\t// ---- /new / /debug / bash ----\n\t\"✓ New session started\": \"✓ 新会话已开始\",\n\t\"Debug output at {date}\": \"调试输出时间:{date}\",\n\t\"Terminal: {columns}x{rows}\": \"终端:{columns}x{rows}\",\n\t\"Total lines: {count}\": \"总行数:{count}\",\n\t\"=== All rendered lines with visible widths ===\": \"=== 全部渲染行(含可见宽度)===\",\n\t\"=== Agent messages (JSONL) ===\": \"=== 代理消息(JSONL)===\",\n\t\"✓ Debug log written\": \"✓ 调试日志已写入\",\n\t\"Bash command failed: {error}\": \"bash 命令失败:{error}\",\n\n\t// ---- 通用错误前缀 / 兜底 ----\n\t\"Error: {message}\": \"错误:{message}\",\n\t\"Warning: {message}\": \"警告:{message}\",\n\tError: \"错误\",\n\t\"Unknown error\": \"未知错误\",\n\t\"Unknown error occurred\": \"发生未知错误\",\n\t\"Reload failed: {error}\": \"重载失败:{error}\",\n\t\"Wait for the current response to finish before reloading.\": \"请等待当前响应完成后再重载。\",\n\t\"Wait for compaction to finish before reloading.\": \"请等待压缩完成后再重载。\",\n\t\"Reloading keybindings, skills, prompts, themes, and context files...\":\n\t\t\"正在重载键位、技能、提示词模板、主题与上下文文件…\",\n\t\"Reloaded keybindings, skills, prompts, themes, and context files\": \"已重载键位、技能、提示词模板、主题与上下文文件\",\n};\n"]}
|
|
1
|
+
{"version":3,"file":"interactive-mode.js","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/interactive-mode.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * interactive-mode 域词典(批次③):key 为\n * src/modes/interactive/interactive-mode.ts 中 `t()` 调用点的英文原文,\n * value 为 zh-CN 译文。占位符 `{name}` 原样保留(coverage-i18n 测试校验\n * key 与译文占位符集合一致)。命令名/路径/键名/品牌(/suite、models.json、\n * bash、tmux 指令、Agent Forge)不译;suite 保留原文;token 按语境译作\n * token(计量单位)。\n */\nexport const interactiveMode: Record<string, string> = {\n\t// ---- 默认状态指示器 ----\n\t\"Working...\": \"处理中…\",\n\t\"Thinking...\": \"思考中...\",\n\t\"({key} to interrupt)\": \"({key} 中断)\",\n\t\"({key} to cycle)\": \"({key} 切换)\",\n\t\"(thinking: {level})\": \"(思考:{level})\",\n\n\t// ---- 启动 banner / 模型范围 ----\n\t\"to interrupt\": \"中断\",\n\t\"to clear\": \"清空\",\n\t\"{key} twice\": \"{key} 两次\",\n\t\"to exit\": \"退出\",\n\t\"to exit (empty)\": \"退出(编辑器为空时)\",\n\t\"to suspend\": \"挂起\",\n\t\"to delete to end\": \"删除到行尾\",\n\t\"to expand tools\": \"展开工具输出\",\n\t\"to expand thinking\": \"展开思考\",\n\t\"for external editor\": \"打开外部编辑器\",\n\t\"for commands\": \"命令\",\n\t\"to run bash\": \"运行 bash\",\n\t\"to run bash (no context)\": \"运行 bash(不进上下文)\",\n\t\"to paste image (with text fallback)\": \"粘贴图片(无图则退回文本)\",\n\t\"to attach\": \"附加文件\",\n\tinterrupt: \"中断\",\n\t\"clear/exit\": \"清空/退出\",\n\tcommands: \"命令\",\n\tbash: \"bash\",\n\tmore: \"更多\",\n\t\"Press {key} to show full startup help and loaded resources.\": \"按 {key} 展示完整启动帮助与已加载资源。\",\n\t\"Agent Forge can explain its own features and look up its docs. Ask it how to use or extend Agent Forge.\":\n\t\t\"Agent Forge 能解释自身功能并查阅自己的文档。可以直接问它如何使用或扩展 Agent Forge。\",\n\t\"Model scope: {models}{hint}\": \"模型范围:{models}{hint}\",\n\n\t// ---- 更新与 changelog ----\n\t\"Updated to v{version}. Use {command} to view full changelog.\":\n\t\t\"已更新到 v{version}。使用 {command} 查看完整变更日志。\",\n\t\"What's New\": \"新特性\",\n\t\"No changelog entries found.\": \"未找到变更日志条目。\",\n\t\"New version {version} is available. Run\": \"新版本 {version} 可用。请运行\",\n\t\"Changelog:\": \"变更日志:\",\n\t\"Changelog URL is not configured.\": \"未配置变更日志 URL。\",\n\t\"Update Available\": \"有可用更新\",\n\t\"Package updates are available. Run\": \"有可用的包更新。请运行\",\n\t\"Package Updates Available\": \"有可用的包更新\",\n\t\"Packages:\": \"包:\",\n\n\t// ---- 启动警告 ----\n\t\"Migrated credentials to auth.json: {providers}\": \"已迁移凭据到 auth.json:{providers}\",\n\t\"models.json error: {error}\": \"models.json 错误:{error}\",\n\t\"tmux extended-keys is off. Modified Enter keys may not work. Add `set -g extended-keys on` to ~/.tmux.conf and restart tmux.\":\n\t\t\"tmux extended-keys 已关闭,修饰 Enter 键可能失效。请在 ~/.tmux.conf 中加入 `set -g extended-keys on` 并重启 tmux。\",\n\t\"tmux extended-keys-format is xterm. Agent Forge works best with csi-u. Add `set -g extended-keys-format csi-u` to ~/.tmux.conf and restart tmux.\":\n\t\t\"tmux extended-keys-format 为 xterm,Agent Forge 在 csi-u 下工作最佳。请在 ~/.tmux.conf 中加入 `set -g extended-keys-format csi-u` 并重启 tmux。\",\n\t\"Anthropic subscription auth is active. Third-party harness usage draws from extra usage and is billed per token, not your Claude plan limits. Manage extra usage at https://claude.ai/settings/usage. Disable this warning in /settings.\":\n\t\t\"Anthropic 订阅认证处于活跃状态。第三方 harness 用量计入 extra usage 并按 token 计费,不占用 Claude 计划额度。可在 https://claude.ai/settings/usage 管理 extra usage。在 /settings 中可关闭此警告。\",\n\n\t// ---- 已加载资源区块 ----\n\tContext: \"上下文\",\n\tSkills: \"技能\",\n\tPrompts: \"提示词\",\n\tThemes: \"主题\",\n\t\"[Skill conflicts]\": \"[技能冲突]\",\n\t\"[Prompt conflicts]\": \"[提示词模板冲突]\",\n\t\"[Theme conflicts]\": \"[主题冲突]\",\n\n\t// ---- 输入 / 消息队列 ----\n\t\"Startup in progress — input queued and will run when startup completes\": \"启动进行中——输入已排队,启动完成后执行\",\n\t\"A bash command is already running. Press Esc to cancel it first.\": \"已有 bash 命令在运行。请先按 Esc 取消。\",\n\t\"No queued messages to restore\": \"没有可恢复的排队消息\",\n\t\"No queued messages to manage\": \"没有可管理的排队消息\",\n\t\"Restored {count} queued message to editor\": \"已恢复 {count} 条排队消息到编辑器\",\n\t\"Restored {count} queued messages to editor\": \"已恢复 {count} 条排队消息到编辑器\",\n\t\"Usage: /queue <text>\": \"用法:/queue <文本>\",\n\t\"Queued message for after compaction\": \"消息已排队,压缩后发送\",\n\t\"Failed to send queued message: {error}\": \"发送排队消息失败:{error}\",\n\t\"Failed to send queued messages: {error}\": \"发送排队消息失败:{error}\",\n\t\"Steering: {message}\": \"转向:{message}\",\n\t\"Follow-up: {message}\": \"后续:{message}\",\n\t\"↳ {key} to edit all queued messages\": \"↳ {key} 编辑全部排队消息\",\n\n\t// ---- 事件 / 中止 / 压缩 / 重试 ----\n\t\"Aborted after {count} retry attempt\": \"已中止,此前重试 {count} 次\",\n\t\"Aborted after {count} retry attempts\": \"已中止,此前重试 {count} 次\",\n\t\"Operation aborted\": \"操作已中止\",\n\t\"Compaction cancelled\": \"已取消压缩\",\n\t\"Auto-compaction cancelled\": \"已取消自动压缩\",\n\t\"Auto-compaction skipped: nothing to compact\": \"自动压缩已跳过:没有可压缩内容\",\n\t\"Retry failed after {count} attempts: {error}\": \"重试 {count} 次后失败:{error}\",\n\t\"Previous reply was empty, retrying...\": \"上一条回复为空,正在重试…\",\n\n\t// ---- 计费 / 缓存通知 ----\n\tCompaction: \"压缩\",\n\t\"Branch summary\": \"分支摘要\",\n\t\"{tokens} tokens billed{cost}\": \"计费 {tokens} token{cost}\",\n\t\"Anthropic dropped {count} thinking blocks (details in session)\": \"Anthropic 丢弃了 {count} 个思考块(详情见会话)\",\n\t\"{tokens} tokens re-billed{cost}\": \"重新计费 {tokens} token{cost}\",\n\t\"Cache miss\": \"缓存未命中\",\n\t\"Cache miss after model switch\": \"切换模型后缓存未命中\",\n\t\"Cache miss after {minutes}m idle\": \"闲置 {minutes} 分钟后缓存未命中\",\n\t\"Session compacted {count} time\": \"会话已压缩 {count} 次\",\n\t\"Session compacted {count} times\": \"会话已压缩 {count} 次\",\n\n\t// ---- 退出 / 挂起 ----\n\t\"To resume this session:\": \"恢复本会话:\",\n\t\"{app} exiting due to uncaughtException:\": \"{app} 因未捕获异常退出:\",\n\t\"Suspend to background is not supported on Windows\": \"Windows 不支持挂起到后台\",\n\n\t// ---- 模型 / 思考 / 工具输出切换 ----\n\t\"Current model does not support thinking\": \"当前模型不支持思考\",\n\t\"Thinking level: {level}\": \"思考级别:{level}\",\n\t\"Only one model in scope\": \"范围内只有一个模型\",\n\t\"Only one model available\": \"只有一个可用模型\",\n\t\"Switched to {model}{thinking}\": \"已切换到 {model}{thinking}\",\n\t\"Tool output: expanded\": \"工具输出:已展开\",\n\t\"Tool output: collapsed\": \"工具输出:已折叠\",\n\t\"Thinking blocks: hidden\": \"思考块:已隐藏\",\n\t\"Thinking blocks: visible\": \"思考块:已显示\",\n\n\t// ---- D-083 转录静默化(quiet 态合并标记与思考折叠行)----\n\t\"✻ thinking\": \"✻ 思考\",\n\t\"{count} tool\": \"{count} 个工具\",\n\t\"{count} tools\": \"{count} 个工具\",\n\t\"{count} failed\": \"{count} 个失败\",\n\n\t// ---- 设置选择器 ----\n\t\"not set\": \"未设置\",\n\t\"HTTP idle timeout: {value}\": \"HTTP 空闲超时:{value}\",\n\t\"Close active overlays before changing TUI mode\": \"切换 TUI 模式前请先关闭活动浮层\",\n\t\"TUI mode: {mode}\": \"TUI 模式:{mode}\",\n\n\t// ---- suite / 会话重建 ----\n\t'Suite \"{id}\" was not found. The selected suite applies to the new session.':\n\t\t'未找到 suite \"{id}\"。所选 suite 将应用于新会话。',\n\t'Suite \"{id}\" was not found — continuing without a suite. Use /suite to choose one.':\n\t\t'未找到 suite \"{id}\"——将在无 suite 下继续。可使用 /suite 选择。',\n\t\"Suite set to {id} — new session started\": \"suite 已设为 {id}——新会话已开始\",\n\t\"Failed to create session\": \"创建会话失败\",\n\t'Cross-suite compatible mode: session created with \"{from}\", assembling with \"{to}\"':\n\t\t'跨 suite 兼容模式:会话创建于 \"{from}\",正以 \"{to}\" 组装',\n\n\t// ---- workflow / 子代理 / 会话树 ----\n\t\"No workflow in this session\": \"本会话没有 workflow\",\n\t\"Workflow action staged — review in the editor and submit\": \"workflow 动作已暂存——请在编辑器中审阅后提交\",\n\t\"No subagent sessions in this session\": \"本会话没有子代理会话\",\n\t\"No entries in session\": \"会话中没有条目\",\n\t\"Already at this point\": \"已在该节点\",\n\t\"Summarize branch?\": \"生成分支摘要?\",\n\t\"No summary\": \"不生成摘要\",\n\tSummarize: \"生成摘要\",\n\t\"Summarize with custom prompt\": \"使用自定义提示生成摘要\",\n\t\"Custom summarization instructions\": \"自定义摘要指令\",\n\t\"Branch summarization cancelled\": \"已取消分支摘要\",\n\t\"Navigation cancelled\": \"已取消导航\",\n\t\"Navigated to selected point\": \"已导航到所选节点\",\n\t\"Selected entry has no text to copy\": \"所选条目没有可复制的文本\",\n\t\"Copied selected message to clipboard\": \"已复制所选消息到剪贴板\",\n\n\t// ---- 恢复 / 导入 / 导出 ----\n\t\"Resumed session\": \"已恢复会话\",\n\t\"Resume cancelled\": \"已取消恢复\",\n\t\"Resumed session in current cwd\": \"已在当前工作目录恢复会话\",\n\t\"Failed to resume session\": \"恢复会话失败\",\n\t\"Usage: /import <path.jsonl>\": \"用法:/import <路径.jsonl>\",\n\t\"Import session\": \"导入会话\",\n\t\"Replace current session with {path}?\": \"用 {path} 替换当前会话?\",\n\t\"Import cancelled\": \"已取消导入\",\n\t\"Session imported from: {path}\": \"会话导入自:{path}\",\n\t\"Failed to import session: {error}\": \"导入会话失败:{error}\",\n\t\"Failed to import session\": \"导入会话失败\",\n\t\"Session exported to: {path}\": \"会话已导出到:{path}\",\n\t\"Failed to export session: {error}\": \"导出会话失败:{error}\",\n\n\t// ---- /copy / /name ----\n\t\"No agent messages to copy yet.\": \"还没有可复制的代理消息。\",\n\t\"Copied!\": \"已复制!\",\n\t\"Copied last agent message to clipboard\": \"已复制最近一条代理消息到剪贴板\",\n\t\"Session name: {name}\": \"会话名称:{name}\",\n\t\"Usage: /name <name>\": \"用法:/name <名称>\",\n\t\"Session name was normalized from {from} to {to}\": \"会话名称已从 {from} 规范化为 {to}\",\n\t\"Session name set: {name}\": \"会话名称已设置:{name}\",\n\n\t// ---- /stop-agents ----\n\t\"No background subagents running\": \"没有正在运行的后台子代理\",\n\t\"Terminated {count} background subagent\": \"已终止 {count} 个后台子代理\",\n\t\"Terminated {count} background subagents\": \"已终止 {count} 个后台子代理\",\n\t\"{count} subagent still running · /stop-agents stops all (Esc only stops the current turn)\":\n\t\t\"{count} 个子代理仍在运行 · /stop-agents 终止全部(Esc 只停当前回合)\",\n\t\"{count} subagents still running · /stop-agents stops all (Esc only stops the current turn)\":\n\t\t\"{count} 个子代理仍在运行 · /stop-agents 终止全部(Esc 只停当前回合)\",\n\n\t// ---- /session 统计 ----\n\t\"Session Info\": \"会话信息\",\n\t\"Name:\": \"名称:\",\n\t\"File:\": \"文件:\",\n\t\"ID:\": \"ID:\",\n\t\"In-memory\": \"内存中\",\n\tMessages: \"消息\",\n\t\"Total:\": \"总计:\",\n\t\"User:\": \"用户:\",\n\t\"Assistant:\": \"助手:\",\n\t\"Tools:\": \"工具:\",\n\t\"{calls} calls, {results} results\": \"{calls} 次调用,{results} 次结果\",\n\tTokens: \"Token\",\n\t\"Input:\": \"输入:\",\n\t\"Cached:\": \"已缓存:\",\n\t\"({count} written to cache)\": \"({count} 写入缓存)\",\n\t\"Uncached:\": \"未缓存:\",\n\t\"Output:\": \"输出:\",\n\t\"By Provider/Model\": \"按供应商/模型\",\n\t\"(cache {rate}%, W {written})\": \"(缓存 {rate}%,写 {written})\",\n\tCost: \"费用\",\n\t\"({tokens} tokens)\": \"({tokens} token)\",\n\t\"{count} miss\": \"{count} 次未命中\",\n\t\"{count} misses\": \"{count} 次未命中\",\n\t\"{tokens} tokens, {misses}\": \"{tokens} token,{misses}\",\n\t\"Cache Re-billed:\": \"缓存重新计费:\",\n\n\t// ---- /metrics ----\n\t\"Metrics are not available: the observability plugin is not mounted in this session\":\n\t\t\"指标不可用:本会话未挂载 observability 插件\",\n\t\"Invalid turns: {turns}. Usage: /metrics [turns]\": \"无效的轮数:{turns}。用法:/metrics [turns]\",\n\n\t// ---- /help ----\n\tCommand: \"命令\",\n\tDescription: \"说明\",\n\t\"Built-in commands\": \"内置命令\",\n\t\"Prompt templates\": \"提示词模板\",\n\t\"Type `/` for autocomplete. Use `/hotkeys` for keyboard shortcuts.\":\n\t\t\"输入 `/` 自动补全。使用 `/hotkeys` 查看快捷键。\",\n\t\"Available Commands\": \"可用命令\",\n\n\t// ---- /hotkeys ----\n\t\"Open model selector\": \"打开模型选择器\",\n\t\"Copy selection in /tree\": \"在 /tree 中复制选区\",\n\t\"External editor (inside dialog inputs)\": \"外部编辑器(对话框输入内)\",\n\t\"Queue follow-up message\": \"排队后续消息\",\n\t\"Restore queued messages\": \"恢复排队消息\",\n\t\"Cycle thinking level\": \"循环切换思考级别\",\n\t\"Cycle models\": \"循环切换模型\",\n\t\"Suspend to background\": \"挂起到后台\",\n\tNavigation: \"导航\",\n\tKey: \"按键\",\n\tAction: \"动作\",\n\t\"Move cursor / browse history\": \"移动光标 / 浏览历史\",\n\t\"Move by word\": \"按词移动\",\n\t\"Start of line\": \"行首\",\n\t\"End of line\": \"行尾\",\n\t\"Jump forward to character\": \"向后跳到字符\",\n\t\"Jump backward to character\": \"向前跳到字符\",\n\t\"Scroll by page\": \"按页滚动\",\n\tEditing: \"编辑\",\n\t\"Send message\": \"发送消息\",\n\t\"New line\": \"换行\",\n\t\"New line (Ctrl+Enter on Windows Terminal)\": \"换行(Windows Terminal 上为 Ctrl+Enter)\",\n\t\"Delete word backwards\": \"向前删除单词\",\n\t\"Delete word forwards\": \"向后删除单词\",\n\t\"Delete to start of line\": \"删除到行首\",\n\t\"Delete to end of line\": \"删除到行尾\",\n\t\"Paste the most-recently-deleted text\": \"粘贴最近删除的文本\",\n\t\"Cycle through the deleted text after pasting\": \"粘贴后循环切换已删除文本\",\n\tUndo: \"撤销\",\n\tOther: \"其他\",\n\t\"Path completion / accept autocomplete\": \"路径补全 / 接受自动补全\",\n\t\"Cancel autocomplete / abort streaming\": \"取消自动补全 / 中止流式输出\",\n\t\"Clear editor (first) / exit (second)\": \"清空编辑器(第一次)/ 退出(第二次)\",\n\t\"Exit (when editor is empty)\": \"退出(编辑器为空时)\",\n\t\"Toggle tool output expansion\": \"切换工具输出展开\",\n\t\"Toggle thinking block visibility\": \"切换思考块可见性\",\n\t\"Paste image or text from clipboard\": \"从剪贴板粘贴图片或文本\",\n\t\"Slash commands\": \"斜杠命令\",\n\t\"Run bash command\": \"运行 bash 命令\",\n\t\"Run bash command (excluded from context)\": \"运行 bash 命令(不进上下文)\",\n\t\"Keyboard Shortcuts\": \"键盘快捷键\",\n\n\t// ---- /new / /debug / bash ----\n\t\"✓ New session started\": \"✓ 新会话已开始\",\n\t\"Debug output at {date}\": \"调试输出时间:{date}\",\n\t\"Terminal: {columns}x{rows}\": \"终端:{columns}x{rows}\",\n\t\"Total lines: {count}\": \"总行数:{count}\",\n\t\"=== All rendered lines with visible widths ===\": \"=== 全部渲染行(含可见宽度)===\",\n\t\"=== Agent messages (JSONL) ===\": \"=== 代理消息(JSONL)===\",\n\t\"✓ Debug log written\": \"✓ 调试日志已写入\",\n\t\"Bash command failed: {error}\": \"bash 命令失败:{error}\",\n\n\t// ---- 通用错误前缀 / 兜底 ----\n\t\"Error: {message}\": \"错误:{message}\",\n\t\"Warning: {message}\": \"警告:{message}\",\n\tError: \"错误\",\n\t\"Unknown error\": \"未知错误\",\n\t\"Unknown error occurred\": \"发生未知错误\",\n\t\"Reload failed: {error}\": \"重载失败:{error}\",\n\t\"Wait for the current response to finish before reloading.\": \"请等待当前响应完成后再重载。\",\n\t\"Wait for compaction to finish before reloading.\": \"请等待压缩完成后再重载。\",\n\t\"Reloading keybindings, skills, prompts, themes, and context files...\":\n\t\t\"正在重载键位、技能、提示词模板、主题与上下文文件…\",\n\t\"Reloaded keybindings, skills, prompts, themes, and context files\": \"已重载键位、技能、提示词模板、主题与上下文文件\",\n};\n"]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 会话清理命令域词典:`core/session-cleanup.ts` 中 `t()` 调用点的英文原文 →
|
|
3
|
+
* zh-CN 译文。占位符 `{name}` 原样保留(coverage-i18n 测试校验 key 与译文
|
|
4
|
+
* 占位符集合一致);命令名(/clean-sessions)与大小单位(MB)不译。
|
|
5
|
+
*/
|
|
6
|
+
export declare const sessionCleanup: Record<string, string>;
|
|
7
|
+
//# sourceMappingURL=session-cleanup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-cleanup.d.ts","sourceRoot":"","sources":["../../../../../src/core/i18n/locales/zh-cn/session-cleanup.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAWjD,CAAC","sourcesContent":["/**\n * 会话清理命令域词典:`core/session-cleanup.ts` 中 `t()` 调用点的英文原文 →\n * zh-CN 译文。占位符 `{name}` 原样保留(coverage-i18n 测试校验 key 与译文\n * 占位符集合一致);命令名(/clean-sessions)与大小单位(MB)不译。\n */\nexport const sessionCleanup: Record<string, string> = {\n\t\"Usage: /clean-sessions [days] - days must be a positive integer (default 7)\":\n\t\t\"用法:/clean-sessions [days] - days 必须为正整数(默认 7)\",\n\t\"No sessions untouched for {days} days - nothing to clean\": \"没有连续 {days} 天无变动的会话 - 无可清理\",\n\t\"{count} sessions ({size}) untouched since {cutoff} - confirm to delete\":\n\t\t\"{count} 个会话({size})自 {cutoff} 起无变动 - 确认后删除\",\n\t\"Clean old sessions\": \"清理旧会话\",\n\t\"Permanently delete {count} sessions ({size}) untouched for {days} days? This cannot be undone.\":\n\t\t\"永久删除 {count} 个连续 {days} 天无变动的会话({size})?此操作不可撤销。\",\n\t\"Clean-sessions cancelled\": \"已取消会话清理\",\n\t\"Deleted {count} sessions, freed {size}\": \"已删除 {count} 个会话,释放 {size}\",\n};\n"]}
|