dsh-plugin-guide 0.3.21 → 0.3.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README-es.md +15 -12
- package/README-hi.md +15 -12
- package/README-pt.md +15 -12
- package/README-zh.md +15 -12
- package/README.md +290 -280
- package/SKILL.md +36 -19
- package/dist/dsh-plugin-dev.js +113 -9
- package/guide/choosing-a-plugin.md +412 -0
- package/guide/choosing-a-plugin.zh-CN.md +414 -0
- package/guide/links.md +20 -2
- package/guide/migration-0.2.md +219 -0
- package/guide/plugin-dev-guide.md +99 -24
- package/guide/quick-reference.es.md +14 -8
- package/guide/quick-reference.hi.md +15 -9
- package/guide/quick-reference.md +18 -10
- package/guide/quick-reference.pt.md +15 -9
- package/guide/quick-reference.zh-CN.md +19 -11
- package/guide/release-engineering.md +2 -2
- package/guide/release-engineering.zh-CN.md +2 -2
- package/guide/unfixed-issues.md +117 -82
- package/guide/when-to-retire-a-plugin.md +127 -0
- package/guide/when-to-retire-a-plugin.zh-CN.md +127 -0
- package/icon.svg +5 -0
- package/locale/en.json +6 -0
- package/locale/zh.json +6 -0
- package/package.json +8 -4
- package/references/official-docs/AGENTS.md +8 -5
- package/references/official-docs/CONTRIBUTING.i18n.yaml +6 -5
- package/references/official-docs/README.i18n.yaml +33 -5
- package/references/official-docs/README.zh.md +3 -3
- package/references/official-docs/SNAPSHOT.md +3 -3
- package/references/official-docs/THIRD_PARTY_NOTICES.md +34 -6
- package/references/official-docs/docs/AGENTS.md +4 -4
- package/references/official-docs/docs/agent-lifecycle.i18n.yaml +9 -5
- package/references/official-docs/docs/api-gateway.i18n.yaml +27 -5
- package/references/official-docs/docs/api-gateway.md +10 -9
- package/references/official-docs/docs/api-gateway.zh.md +10 -9
- package/references/official-docs/docs/architecture.i18n.yaml +36 -5
- package/references/official-docs/docs/architecture.md +10 -8
- package/references/official-docs/docs/architecture.zh.md +10 -8
- package/references/official-docs/docs/capability-seams.i18n.yaml +9 -5
- package/references/official-docs/docs/capability-seams.md +76 -32
- package/references/official-docs/docs/capability-seams.zh.md +76 -32
- package/references/official-docs/docs/config-catalog.i18n.yaml +18 -5
- package/references/official-docs/docs/config-catalog.md +1360 -765
- package/references/official-docs/docs/config-catalog.zh.md +1363 -767
- package/references/official-docs/docs/cookbook/adding-a-package.i18n.yaml +27 -5
- package/references/official-docs/docs/cookbook/adding-a-package.md +56 -3
- package/references/official-docs/docs/cookbook/adding-a-package.zh.md +54 -3
- package/references/official-docs/docs/cookbook/adding-a-remote-api.i18n.yaml +24 -5
- package/references/official-docs/docs/cookbook/adding-a-remote-api.md +2 -2
- package/references/official-docs/docs/cookbook/adding-a-remote-api.zh.md +2 -2
- package/references/official-docs/docs/cookbook/adding-a-session-format-version.i18n.yaml +39 -5
- package/references/official-docs/docs/cookbook/adding-a-session-format-version.md +46 -6
- package/references/official-docs/docs/cookbook/adding-a-session-format-version.zh.md +46 -6
- package/references/official-docs/docs/cookbook/adding-a-settings-card.i18n.yaml +21 -5
- package/references/official-docs/docs/cookbook/adding-a-settings-card.md +34 -64
- package/references/official-docs/docs/cookbook/adding-a-settings-card.zh.md +34 -64
- package/references/official-docs/docs/cookbook/adding-a-tool.i18n.yaml +30 -5
- package/references/official-docs/docs/cookbook/adding-a-tool.md +2 -2
- package/references/official-docs/docs/cookbook/adding-a-tool.zh.md +2 -2
- package/references/official-docs/docs/cookbook/adding-a-vendored-package.i18n.yaml +18 -5
- package/references/official-docs/docs/cookbook/adding-an-llm-adapter.i18n.yaml +18 -5
- package/references/official-docs/docs/cookbook/extension-cookbook.i18n.yaml +24 -5
- package/references/official-docs/docs/cookbook/extension-cookbook.md +3 -3
- package/references/official-docs/docs/cookbook/extension-cookbook.zh.md +3 -3
- package/references/official-docs/docs/cookbook/maintaining-dsh-code-review.i18n.yaml +21 -5
- package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.i18n.yaml +15 -5
- package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.i18n.yaml +30 -5
- package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.md +13 -1
- package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.zh.md +13 -1
- package/references/official-docs/docs/cordis-api/context.i18n.yaml +72 -5
- package/references/official-docs/docs/cordis-api/events.i18n.yaml +36 -5
- package/references/official-docs/docs/cordis-api/fiber.i18n.yaml +75 -5
- package/references/official-docs/docs/cordis-api/inherited.md +15 -13
- package/references/official-docs/docs/cordis-api/registry.i18n.yaml +21 -5
- package/references/official-docs/docs/cordis-api/service.i18n.yaml +36 -5
- package/references/official-docs/docs/cordis-primer.i18n.yaml +21 -5
- package/references/official-docs/docs/cordis-tutorial/01-first-plugin.i18n.yaml +21 -5
- package/references/official-docs/docs/cordis-tutorial/02-lifecycle-and-effects.i18n.yaml +15 -5
- package/references/official-docs/docs/cordis-tutorial/03-services.i18n.yaml +21 -5
- package/references/official-docs/docs/cordis-tutorial/04-events.i18n.yaml +15 -5
- package/references/official-docs/docs/cordis-tutorial/05-config.i18n.yaml +18 -5
- package/references/official-docs/docs/cordis-tutorial/05-config.md +27 -0
- package/references/official-docs/docs/cordis-tutorial/05-config.zh.md +27 -0
- package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.i18n.yaml +15 -5
- package/references/official-docs/docs/cordis-tutorial/07-into-the-harness.i18n.yaml +18 -5
- package/references/official-docs/docs/cordis-tutorial/index.i18n.yaml +15 -5
- package/references/official-docs/docs/deepseek-llm-api-wire-extensions.i18n.yaml +33 -5
- package/references/official-docs/docs/deepseek-llm-api-wire-extensions.md +7 -7
- package/references/official-docs/docs/deepseek-llm-api-wire-extensions.zh.md +7 -7
- package/references/official-docs/docs/defensive-patterns.i18n.yaml +27 -5
- package/references/official-docs/docs/dependency-catalog.json +2 -2
- package/references/official-docs/docs/development.i18n.yaml +48 -5
- package/references/official-docs/docs/development.md +27 -10
- package/references/official-docs/docs/development.zh.md +27 -10
- package/references/official-docs/docs/event-producer-consumer.i18n.yaml +12 -5
- package/references/official-docs/docs/event-producer-consumer.md +78 -66
- package/references/official-docs/docs/event-producer-consumer.zh.md +78 -66
- package/references/official-docs/docs/glossary.i18n.yaml +24 -5
- package/references/official-docs/docs/graph-atlas.i18n.yaml +9 -5
- package/references/official-docs/docs/i18n/README.i18n.yaml +18 -5
- package/references/official-docs/docs/i18n/README.md +12 -8
- package/references/official-docs/docs/i18n/README.zh.md +12 -8
- package/references/official-docs/docs/i18n/terminology.md +4 -4
- package/references/official-docs/docs/i18n/translation-prompt.md +2 -2
- package/references/official-docs/docs/i18n/translation-rules.i18n.yaml +27 -5
- package/references/official-docs/docs/module-graph.i18n.yaml +9 -5
- package/references/official-docs/docs/module-graph.md +348 -245
- package/references/official-docs/docs/module-graph.zh.md +348 -245
- package/references/official-docs/docs/persistence-catalog.i18n.yaml +2064 -5
- package/references/official-docs/docs/persistence-catalog.md +5275 -3205
- package/references/official-docs/docs/persistence-catalog.zh.md +5275 -3205
- package/references/official-docs/docs/persistence-changes/2026-09-11-initial.i18n.yaml +27 -5
- package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.i18n.yaml +27 -5
- package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.i18n.yaml +27 -5
- package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.i18n.yaml +27 -5
- package/references/official-docs/docs/persistence-changes/2026-09-16-session-format-v4.i18n.yaml +28 -0
- package/references/official-docs/docs/persistence-changes/2026-09-16-session-format-v4.md +120 -0
- package/references/official-docs/docs/persistence-changes/2026-09-16-session-format-v4.schema.json +16212 -0
- package/references/official-docs/docs/persistence-changes/2026-09-16-session-format-v4.zh.md +120 -0
- package/references/official-docs/docs/persistence-changes/2026-09-18-schedule-optional-title.i18n.yaml +28 -0
- package/references/official-docs/docs/persistence-changes/2026-09-18-schedule-optional-title.md +48 -0
- package/references/official-docs/docs/persistence-changes/2026-09-18-schedule-optional-title.schema.json +302 -0
- package/references/official-docs/docs/persistence-changes/2026-09-18-schedule-optional-title.zh.md +48 -0
- package/references/official-docs/docs/persistence-changes/2026-09-20-unknown-child-catalog.i18n.yaml +28 -0
- package/references/official-docs/docs/persistence-changes/2026-09-20-unknown-child-catalog.md +48 -0
- package/references/official-docs/docs/persistence-changes/2026-09-20-unknown-child-catalog.schema.json +250 -0
- package/references/official-docs/docs/persistence-changes/2026-09-20-unknown-child-catalog.zh.md +48 -0
- package/references/official-docs/docs/persistence-changes/2026-09-21-user-question-reply.i18n.yaml +28 -0
- package/references/official-docs/docs/persistence-changes/2026-09-21-user-question-reply.md +60 -0
- package/references/official-docs/docs/persistence-changes/2026-09-21-user-question-reply.schema.json +11405 -0
- package/references/official-docs/docs/persistence-changes/2026-09-21-user-question-reply.zh.md +60 -0
- package/references/official-docs/docs/persistence-changes/README.i18n.yaml +27 -5
- package/references/official-docs/docs/persistence-changes/README.md +17 -3
- package/references/official-docs/docs/persistence-changes/README.zh.md +17 -3
- package/references/official-docs/docs/persistence-changes/finalized/v4.json +379 -0
- package/references/official-docs/docs/persistence-changes/historical-formats/README.i18n.yaml +27 -5
- package/references/official-docs/docs/persistence-changes/historical-formats/README.md +3 -2
- package/references/official-docs/docs/persistence-changes/historical-formats/README.zh.md +3 -2
- package/references/official-docs/docs/persistence-changes/historical-formats/v0.i18n.yaml +1284 -5
- package/references/official-docs/docs/persistence-changes/historical-formats/v1.i18n.yaml +1284 -5
- package/references/official-docs/docs/persistence-changes/historical-formats/v2.i18n.yaml +1344 -5
- package/references/official-docs/docs/persistence-changes/historical-formats/v3.i18n.yaml +1441 -0
- package/references/official-docs/docs/persistence-changes/historical-formats/v3.md +5634 -0
- package/references/official-docs/docs/persistence-changes/historical-formats/v3.schema.json +61307 -0
- package/references/official-docs/docs/persistence-changes/historical-formats/v3.zh.md +5634 -0
- package/references/official-docs/docs/persistence-changes/releases/README.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.schema.json +3 -3
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.i18n.yaml +30 -5
- package/references/official-docs/docs/persistence-schema.json +12692 -48753
- package/references/official-docs/docs/postmortem/0001-acp-default-export-drops-inject.i18n.yaml +33 -5
- package/references/official-docs/docs/postmortem/0002-js-expression-disabled-filesystem-tools.i18n.yaml +27 -5
- package/references/official-docs/docs/postmortem/0003-web-agent-gui-feedback-loop.i18n.yaml +27 -5
- package/references/official-docs/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.i18n.yaml +27 -5
- package/references/official-docs/docs/postmortem/README.i18n.yaml +6 -5
- package/references/official-docs/docs/rescope.i18n.yaml +18 -5
- package/references/official-docs/docs/rescope.md +1 -1
- package/references/official-docs/docs/rescope.zh.md +1 -1
- package/references/official-docs/docs/session-format-status.i18n.yaml +27 -5
- package/references/official-docs/docs/session-format-status.md +17 -3
- package/references/official-docs/docs/session-format-status.zh.md +17 -3
- package/references/official-docs/docs/subsystems/README.i18n.yaml +6 -5
- package/references/official-docs/docs/subsystems/README.md +6 -3
- package/references/official-docs/docs/subsystems/README.zh.md +6 -3
- package/references/official-docs/docs/subsystems/agent-team.i18n.yaml +21 -5
- package/references/official-docs/docs/subsystems/agent-team.md +52 -28
- package/references/official-docs/docs/subsystems/agent-team.zh.md +52 -28
- package/references/official-docs/docs/subsystems/approval.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/approval.md +1 -1
- package/references/official-docs/docs/subsystems/approval.zh.md +1 -1
- package/references/official-docs/docs/subsystems/attachment.i18n.yaml +12 -5
- package/references/official-docs/docs/subsystems/attachment.md +2 -2
- package/references/official-docs/docs/subsystems/attachment.zh.md +2 -2
- package/references/official-docs/docs/subsystems/boot.i18n.yaml +9 -5
- package/references/official-docs/docs/subsystems/boot.md +117 -17
- package/references/official-docs/docs/subsystems/boot.zh.md +117 -17
- package/references/official-docs/docs/subsystems/browser-use.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/claude-code-mods.i18n.yaml +28 -0
- package/references/official-docs/docs/subsystems/claude-code-mods.md +146 -0
- package/references/official-docs/docs/subsystems/claude-code-mods.zh.md +146 -0
- package/references/official-docs/docs/subsystems/client-modules.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/client-modules.md +13 -7
- package/references/official-docs/docs/subsystems/client-modules.zh.md +13 -7
- package/references/official-docs/docs/subsystems/client-resources.i18n.yaml +21 -5
- package/references/official-docs/docs/subsystems/commands.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/commands.md +1 -1
- package/references/official-docs/docs/subsystems/commands.zh.md +1 -1
- package/references/official-docs/docs/subsystems/compaction.i18n.yaml +21 -5
- package/references/official-docs/docs/subsystems/compaction.md +2 -2
- package/references/official-docs/docs/subsystems/compaction.zh.md +2 -2
- package/references/official-docs/docs/subsystems/computer-use.i18n.yaml +15 -5
- package/references/official-docs/docs/subsystems/conversation.i18n.yaml +30 -5
- package/references/official-docs/docs/subsystems/conversation.md +35 -6
- package/references/official-docs/docs/subsystems/conversation.zh.md +34 -5
- package/references/official-docs/docs/subsystems/core.i18n.yaml +36 -5
- package/references/official-docs/docs/subsystems/core.md +70 -214
- package/references/official-docs/docs/subsystems/core.zh.md +70 -214
- package/references/official-docs/docs/subsystems/credentials.i18n.yaml +24 -5
- package/references/official-docs/docs/subsystems/credentials.md +168 -5
- package/references/official-docs/docs/subsystems/credentials.zh.md +168 -5
- package/references/official-docs/docs/subsystems/deliverables.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/extensions.i18n.yaml +6 -5
- package/references/official-docs/docs/subsystems/extensions.md +6 -4
- package/references/official-docs/docs/subsystems/extensions.zh.md +6 -4
- package/references/official-docs/docs/subsystems/feedback.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/filesystem.i18n.yaml +33 -5
- package/references/official-docs/docs/subsystems/filesystem.md +10 -0
- package/references/official-docs/docs/subsystems/filesystem.zh.md +10 -0
- package/references/official-docs/docs/subsystems/goal.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/goal.md +1 -1
- package/references/official-docs/docs/subsystems/goal.zh.md +1 -1
- package/references/official-docs/docs/subsystems/jobs.i18n.yaml +24 -5
- package/references/official-docs/docs/subsystems/jobs.md +335 -126
- package/references/official-docs/docs/subsystems/jobs.zh.md +335 -126
- package/references/official-docs/docs/subsystems/llm-streaming.i18n.yaml +48 -5
- package/references/official-docs/docs/subsystems/llm-streaming.md +60 -31
- package/references/official-docs/docs/subsystems/llm-streaming.zh.md +60 -31
- package/references/official-docs/docs/subsystems/lsp.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/mcp.i18n.yaml +33 -5
- package/references/official-docs/docs/subsystems/mcp.md +2 -2
- package/references/official-docs/docs/subsystems/mcp.zh.md +2 -2
- package/references/official-docs/docs/subsystems/office-to-pdf.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/office-to-pdf.md +4 -4
- package/references/official-docs/docs/subsystems/office-to-pdf.zh.md +4 -4
- package/references/official-docs/docs/subsystems/otel.i18n.yaml +7 -0
- package/references/official-docs/docs/subsystems/otel.md +44 -0
- package/references/official-docs/docs/subsystems/otel.zh.md +44 -0
- package/references/official-docs/docs/subsystems/permission-presets.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/permission-presets.md +7 -6
- package/references/official-docs/docs/subsystems/permission-presets.zh.md +7 -6
- package/references/official-docs/docs/subsystems/persistence.i18n.yaml +36 -5
- package/references/official-docs/docs/subsystems/persistence.md +3 -3
- package/references/official-docs/docs/subsystems/persistence.zh.md +3 -3
- package/references/official-docs/docs/subsystems/plan.i18n.yaml +21 -5
- package/references/official-docs/docs/subsystems/plan.md +1 -1
- package/references/official-docs/docs/subsystems/plan.zh.md +1 -1
- package/references/official-docs/docs/subsystems/product-telemetry.i18n.yaml +10 -0
- package/references/official-docs/docs/subsystems/product-telemetry.md +79 -0
- package/references/official-docs/docs/subsystems/product-telemetry.zh.md +79 -0
- package/references/official-docs/docs/subsystems/ptc-runtime.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/sandbox.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/sandbox.md +1 -1
- package/references/official-docs/docs/subsystems/sandbox.zh.md +1 -1
- package/references/official-docs/docs/subsystems/schedule.i18n.yaml +39 -5
- package/references/official-docs/docs/subsystems/schedule.md +391 -33
- package/references/official-docs/docs/subsystems/schedule.zh.md +391 -33
- package/references/official-docs/docs/subsystems/scope.i18n.yaml +15 -5
- package/references/official-docs/docs/subsystems/scope.md +1 -1
- package/references/official-docs/docs/subsystems/scope.zh.md +1 -1
- package/references/official-docs/docs/subsystems/session-projection.i18n.yaml +15 -5
- package/references/official-docs/docs/subsystems/session-projection.md +20 -18
- package/references/official-docs/docs/subsystems/session-projection.zh.md +20 -18
- package/references/official-docs/docs/subsystems/session-query.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/session-reference.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/session-telemetry.i18n.yaml +21 -5
- package/references/official-docs/docs/subsystems/session-telemetry.md +6 -4
- package/references/official-docs/docs/subsystems/session-telemetry.zh.md +6 -4
- package/references/official-docs/docs/subsystems/session-title.i18n.yaml +15 -5
- package/references/official-docs/docs/subsystems/session.i18n.yaml +66 -5
- package/references/official-docs/docs/subsystems/session.md +113 -62
- package/references/official-docs/docs/subsystems/session.zh.md +113 -62
- package/references/official-docs/docs/subsystems/settings.i18n.yaml +12 -5
- package/references/official-docs/docs/subsystems/settings.md +42 -292
- package/references/official-docs/docs/subsystems/settings.zh.md +42 -292
- package/references/official-docs/docs/subsystems/shell.i18n.yaml +24 -5
- package/references/official-docs/docs/subsystems/shell.md +29 -22
- package/references/official-docs/docs/subsystems/shell.zh.md +29 -22
- package/references/official-docs/docs/subsystems/sidebar-right.i18n.yaml +36 -5
- package/references/official-docs/docs/subsystems/sidebar-right.md +14 -9
- package/references/official-docs/docs/subsystems/sidebar-right.zh.md +14 -9
- package/references/official-docs/docs/subsystems/skills.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/skills.md +2 -2
- package/references/official-docs/docs/subsystems/skills.zh.md +2 -2
- package/references/official-docs/docs/subsystems/slots.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/slots.md +21 -7
- package/references/official-docs/docs/subsystems/slots.zh.md +21 -7
- package/references/official-docs/docs/subsystems/spill.i18n.yaml +15 -5
- package/references/official-docs/docs/subsystems/spill.md +1 -1
- package/references/official-docs/docs/subsystems/spill.zh.md +1 -1
- package/references/official-docs/docs/subsystems/ssh.i18n.yaml +21 -5
- package/references/official-docs/docs/subsystems/storage.i18n.yaml +24 -5
- package/references/official-docs/docs/subsystems/storage.md +1 -2
- package/references/official-docs/docs/subsystems/storage.zh.md +1 -2
- package/references/official-docs/docs/subsystems/subagent.i18n.yaml +30 -5
- package/references/official-docs/docs/subsystems/subagent.md +35 -60
- package/references/official-docs/docs/subsystems/subagent.zh.md +35 -60
- package/references/official-docs/docs/subsystems/subprocess.i18n.yaml +30 -5
- package/references/official-docs/docs/subsystems/system-prompt.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/terminal.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/todo.i18n.yaml +12 -5
- package/references/official-docs/docs/subsystems/todo.md +3 -3
- package/references/official-docs/docs/subsystems/todo.zh.md +3 -3
- package/references/official-docs/docs/subsystems/token-meter.i18n.yaml +12 -5
- package/references/official-docs/docs/subsystems/tools.i18n.yaml +24 -5
- package/references/official-docs/docs/subsystems/tools.md +15 -4
- package/references/official-docs/docs/subsystems/tools.zh.md +15 -4
- package/references/official-docs/docs/subsystems/typert.i18n.yaml +21 -5
- package/references/official-docs/docs/subsystems/typert.md +147 -6
- package/references/official-docs/docs/subsystems/typert.zh.md +147 -6
- package/references/official-docs/docs/subsystems/user-questions.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/user-questions.md +128 -1
- package/references/official-docs/docs/subsystems/user-questions.zh.md +129 -2
- package/references/official-docs/docs/subsystems/voice-input.i18n.yaml +19 -0
- package/references/official-docs/docs/subsystems/voice-input.md +164 -0
- package/references/official-docs/docs/subsystems/voice-input.zh.md +164 -0
- package/references/official-docs/docs/subsystems/web-client.i18n.yaml +36 -5
- package/references/official-docs/docs/subsystems/web-client.md +10 -5
- package/references/official-docs/docs/subsystems/web-client.zh.md +10 -5
- package/references/official-docs/docs/subsystems/web-server.i18n.yaml +15 -5
- package/references/official-docs/docs/subsystems/web-server.md +12 -4
- package/references/official-docs/docs/subsystems/web-server.zh.md +12 -4
- package/references/official-docs/docs/subsystems/web.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/webhook.i18n.yaml +18 -5
- package/references/official-docs/docs/subsystems/webhook.md +1 -1
- package/references/official-docs/docs/subsystems/webhook.zh.md +1 -1
- package/references/official-docs/docs/subsystems/workflow.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/workflow.md +2 -2
- package/references/official-docs/docs/subsystems/workflow.zh.md +2 -2
- package/references/official-docs/docs/subsystems/workspace.i18n.yaml +27 -5
- package/references/official-docs/docs/subsystems/workspace.md +175 -35
- package/references/official-docs/docs/subsystems/workspace.zh.md +175 -35
- package/references/official-docs/docs/testing.i18n.yaml +33 -5
- package/references/official-docs/docs/testing.md +2 -2
- package/references/official-docs/docs/testing.zh.md +2 -2
- package/references/official-docs/docs/tool-catalog.i18n.yaml +312 -5
- package/references/official-docs/docs/tool-catalog.md +321 -92
- package/references/official-docs/docs/tool-catalog.zh.md +321 -92
- package/references/official-docs/docs/tool-execution-pipeline.i18n.yaml +9 -5
- package/references/official-docs/docs/tool-execution-pipeline.md +6 -3
- package/references/official-docs/docs/tool-execution-pipeline.zh.md +6 -3
- package/references/official-docs/docs/ui-radius.i18n.yaml +31 -0
- package/references/official-docs/docs/ui-radius.md +115 -0
- package/references/official-docs/docs/ui-radius.zh.md +115 -0
- package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/schedule-optional-bundle/guide.i18n.yaml +16 -0
- package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/schedule-optional-bundle/guide.md +22 -0
- package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/schedule-optional-bundle/guide.zh.md +22 -0
- package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/transcript-view-legacy-normal/guide.i18n.yaml +16 -0
- package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/transcript-view-legacy-normal/guide.md +25 -0
- package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/transcript-view-legacy-normal/guide.zh.md +25 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/account-sign-in-errors/guide.i18n.yaml +16 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/account-sign-in-errors/guide.md +18 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/account-sign-in-errors/guide.zh.md +18 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/remove-runtime-invariants/guide.i18n.yaml +16 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/remove-runtime-invariants/guide.md +23 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/remove-runtime-invariants/guide.zh.md +23 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/schedule-bundle-retired/guide.i18n.yaml +16 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/schedule-bundle-retired/guide.md +22 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/schedule-bundle-retired/guide.zh.md +22 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/subpath-plugin-display-manifest/guide.i18n.yaml +16 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/subpath-plugin-display-manifest/guide.md +27 -0
- package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/subpath-plugin-display-manifest/guide.zh.md +27 -0
- package/references/official-docs/docs/user/develop/basic/config.i18n.yaml +27 -5
- package/references/official-docs/docs/user/develop/basic/index.i18n.yaml +36 -5
- package/references/official-docs/docs/user/develop/basic/publish.i18n.yaml +30 -5
- package/references/official-docs/docs/user/develop/basic/publish.md +7 -1
- package/references/official-docs/docs/user/develop/basic/publish.zh.md +7 -1
- package/references/official-docs/docs/user/develop/basic/tool.i18n.yaml +15 -5
- package/references/official-docs/docs/user/develop/framework/events.i18n.yaml +45 -5
- package/references/official-docs/docs/user/develop/framework/index.i18n.yaml +30 -5
- package/references/official-docs/docs/user/develop/framework/service.i18n.yaml +39 -5
- package/references/official-docs/docs/user/develop/practice/dynamic-cordis.i18n.yaml +9 -5
- package/references/official-docs/docs/user/develop/practice/index.i18n.yaml +45 -5
- package/references/official-docs/docs/user/develop/practice/llm-adapter.i18n.yaml +33 -5
- package/references/official-docs/docs/user/develop/practice/llm-adapter.md +1 -1
- package/references/official-docs/docs/user/develop/practice/llm-adapter.zh.md +1 -1
- package/references/official-docs/docs/user/guide/github-review.i18n.yaml +24 -5
- package/references/official-docs/docs/user/guide/index.i18n.yaml +18 -5
- package/references/official-docs/docs/user/guide/index.md +1 -0
- package/references/official-docs/docs/user/guide/index.zh.md +1 -0
- package/references/official-docs/docs/user/guide/mcp-memory.i18n.yaml +36 -5
- package/references/official-docs/docs/user/guide/network-proxy.i18n.yaml +24 -5
- package/references/official-docs/docs/user/guide/providers-custom-form.png +0 -0
- package/references/official-docs/docs/user/guide/providers-custom-form.zh.png +0 -0
- package/references/official-docs/docs/user/guide/providers-models-page.png +0 -0
- package/references/official-docs/docs/user/guide/providers-models-page.zh.png +0 -0
- package/references/official-docs/docs/user/guide/providers.i18n.yaml +36 -5
- package/references/official-docs/docs/user/guide/providers.md +88 -78
- package/references/official-docs/docs/user/guide/providers.zh.md +102 -92
- package/references/official-docs/docs/user/guide/public-deployments.i18n.yaml +19 -0
- package/references/official-docs/docs/user/guide/public-deployments.md +33 -0
- package/references/official-docs/docs/user/guide/public-deployments.zh.md +33 -0
- package/references/official-docs/docs/user/guide/python-sdk.i18n.yaml +27 -5
- package/references/official-docs/docs/user/guide/python-sdk.md +1 -1
- package/references/official-docs/docs/user/guide/python-sdk.zh.md +1 -1
- package/references/official-docs/docs/user/guide/schedule.i18n.yaml +30 -5
- package/references/official-docs/docs/user/guide/schedule.md +69 -11
- package/references/official-docs/docs/user/guide/schedule.zh.md +69 -11
- package/references/official-docs/docs/user/index.i18n.yaml +9 -5
- package/references/official-docs/docs/web-styling.i18n.yaml +18 -5
- package/references/official-docs/docs/web-styling.md +12 -3
- package/references/official-docs/docs/web-styling.zh.md +12 -3
- package/references/official-docs/packages/AGENTS.md +1 -2
- package/references/official-docs/packages/README.md +5 -5
- package/references/official-docs/vendor/README.md +6 -2
- package/references/official-docs/website-docs.ts +10 -3
- package/references/official-plugin-dev-skill.md +124 -0
- package/references/sources.md +10 -5
- package/scripts/archive-discussions.ps1 +9 -1
- package/scripts/build-llms-full.mjs +64 -0
- package/scripts/check-docs-drift.ps1 +1 -1
- package/scripts/sync-official-docs.ps1 +1 -1
- package/templates/js/icon.svg +4 -0
- package/templates/js/locale/en.json +6 -0
- package/templates/js/locale/zh.json +6 -0
- package/templates/js/package.json +9 -1
- package/templates/ts/icon.svg +4 -0
- package/templates/ts/locale/en.json +6 -0
- package/templates/ts/locale/zh.json +6 -0
- package/templates/ts/package.json +9 -1
- package/references/official-docs/docs/subsystems/invariants.i18n.yaml +0 -6
- package/references/official-docs/docs/subsystems/invariants.md +0 -88
- package/references/official-docs/docs/subsystems/invariants.zh.md +0 -88
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[English](agent-team.md) | 中文
|
|
4
4
|
|
|
5
|
-
实验性隐式 Root Team 领域、模型工具与宿主适配器共享的类型。[Agent Teams Agent Note](../../.agents/notes/implemented/feature/2026-08-05-agent-teams.zh.md)负责身份、mailbox、task 与共享 checkout 决策;本页记录 [`packages/experimental/agent-team/src/types.ts`](../../packages/experimental/agent-team/src/types.ts)
|
|
5
|
+
实验性隐式 Root Team 领域、模型工具与宿主适配器共享的类型。[Agent Teams Agent Note](../../.agents/notes/implemented/feature/2026-08-05-agent-teams.zh.md)负责身份、mailbox、task 与共享 checkout 决策;本页记录 [`packages/experimental/agent-team/src/types.ts`](../../packages/experimental/agent-team/src/types.ts) 中的持久与客户端可见形式。
|
|
6
6
|
|
|
7
7
|
## 身份与 roster
|
|
8
8
|
|
|
@@ -21,7 +21,7 @@ interface TeamMemberSnapshot {
|
|
|
21
21
|
}
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
-
每个 member 都从 `provisioning` 开始,并且只到达一个终态 roster phase:`active` 或 `failed
|
|
24
|
+
每个 member 都从 `provisioning` 开始,并且只到达一个终态 roster phase:`active` 或 `failed`。roster 的 `running`/`inactive` 状态单独派生,绝不会重写该记录。
|
|
25
25
|
|
|
26
26
|
## 持久 mailbox
|
|
27
27
|
|
|
@@ -38,7 +38,7 @@ interface TeamMessageSnapshot {
|
|
|
38
38
|
}
|
|
39
39
|
```
|
|
40
40
|
|
|
41
|
-
每条消息都会尝试 Steer 投递。running target 在最近的步骤边界收到消息,
|
|
41
|
+
每条消息都会尝试 Steer 投递。running target 在最近的步骤边界收到消息,inactive target 在已加载时启动一个轮次,否则冷恢复。调用方不能选择其他模式,因此持久记录不存储调度方式。
|
|
42
42
|
|
|
43
43
|
target Session 会在 pending inbox 条目和最终用户消息上保留消息身份与发送者归因。跨 inbox 与历史折叠该 source 构成 target 侧去重键;模型可见的 framing 会重复 id 和发送者。
|
|
44
44
|
|
|
@@ -73,9 +73,56 @@ interface TeamTaskSnapshot {
|
|
|
73
73
|
|
|
74
74
|
`pending` 表示尚未开始或已经释放,`in_progress` 携带 owner,`completed` 满足 blocker,`deleted` 是保留的 tombstone。view 会添加 owner name、readiness 和 write-scope 重叠警告,但不会改变持久快照。
|
|
75
75
|
|
|
76
|
+
<a id="web-projection"></a>
|
|
77
|
+
|
|
78
|
+
## Web 投影
|
|
79
|
+
|
|
80
|
+
Lead Session 通过 `SessionProjectionMap.agentTeam` 发布持久 roster 行与未删除任务视图。`failure` 在最后有效状态旁报告被拒绝的持久记录。成员活动来自 Session 状态;模型标签来自各成员的 `modelSelection` 投影。
|
|
81
|
+
|
|
82
|
+
```ts type-equiv
|
|
83
|
+
/** One durable roster row published through the `agentTeam` Session projection. */
|
|
84
|
+
interface TeamMemberProjection {
|
|
85
|
+
readonly id: SessionId
|
|
86
|
+
readonly name: string
|
|
87
|
+
readonly role: 'lead' | 'teammate'
|
|
88
|
+
/** Durable lifecycle; the Lead row is always `active`. Turn activity comes from Session status. */
|
|
89
|
+
readonly phase: TeamMemberPhase
|
|
90
|
+
readonly error?: string
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
```ts type-equiv
|
|
95
|
+
/** Runtime-enriched task view returned to tools and hosts. */
|
|
96
|
+
interface TeamTaskView {
|
|
97
|
+
readonly id: TeamTaskId
|
|
98
|
+
readonly revision: number
|
|
99
|
+
readonly subject: string
|
|
100
|
+
readonly description: string
|
|
101
|
+
readonly status: TeamTaskStatus
|
|
102
|
+
readonly blockedBy: TeamTaskId[]
|
|
103
|
+
readonly writeScopes: string[]
|
|
104
|
+
readonly ownerName?: string
|
|
105
|
+
readonly ready: boolean
|
|
106
|
+
readonly writeScopeWarnings: string[]
|
|
107
|
+
}
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
```ts type-equiv
|
|
111
|
+
/**
|
|
112
|
+
* Durable Team state published to browser clients through the Lead Session's
|
|
113
|
+
* `agentTeam` projection. `failure` names the first rejected persisted Team
|
|
114
|
+
* record; members and tasks then stay at the last valid state.
|
|
115
|
+
*/
|
|
116
|
+
interface TeamProjection {
|
|
117
|
+
readonly members: TeamMemberProjection[]
|
|
118
|
+
readonly tasks: TeamTaskView[]
|
|
119
|
+
readonly failure?: string
|
|
120
|
+
}
|
|
121
|
+
```
|
|
122
|
+
|
|
76
123
|
## 回放
|
|
77
124
|
|
|
78
|
-
`
|
|
125
|
+
`agentTeam` Session 投影把一个 Root Session 回放成每个 Team 操作所读取的 roster、任务板与 queued-minus-delivered mailbox。它按 `TeamId` 选取记录,因此普通 fork 继承的 event 保留 ancestor id,绝不会进入新 Root 的状态。Session event 的 `seq` 与 `time` 继续负责顺序和时间记录,Team snapshot 不再重复保存它们。roster 与 task 读取以 view 形式到达调用方,而 pending 邮件仅供投递与恢复内部使用。包 [README](../../packages/experimental/agent-team/README.zh.md)负责 operation、authorization、recovery 和限制行为。
|
|
79
126
|
|
|
80
127
|
<!-- BEGIN GENERATED cordis-surface (gen-cordis-catalog.ts) — do not edit between markers -->
|
|
81
128
|
|
|
@@ -168,7 +215,7 @@ async waitForChange(caller: Agent, timeoutMs: number, signal: AbortSignal): Prom
|
|
|
168
215
|
* @param targetName - durable teammate name.
|
|
169
216
|
* @returns the target status sampled before cancellation.
|
|
170
217
|
*/
|
|
171
|
-
interrupt(caller: Agent, targetName: string): { previousStatus: 'running' | '
|
|
218
|
+
interrupt(caller: Agent, targetName: string): { previousStatus: 'running' | 'inactive' }
|
|
172
219
|
|
|
173
220
|
/**
|
|
174
221
|
* Resolve a caller without throwing, used by scoped-tool installation and observers.
|
|
@@ -176,29 +223,6 @@ interrupt(caller: Agent, targetName: string): { previousStatus: 'running' | 'idl
|
|
|
176
223
|
* @returns Team membership, or undefined for non-Team subagents and stale identities.
|
|
177
224
|
*/
|
|
178
225
|
tryMembership(agent: Agent): TeamMembership | undefined
|
|
179
|
-
|
|
180
|
-
/**
|
|
181
|
-
* Read the current roster and non-deleted task board through the generated Remote API.
|
|
182
|
-
* @param agent - exact live Team member used as the authority credential.
|
|
183
|
-
* @returns detached current roster and task views.
|
|
184
|
-
*/
|
|
185
|
-
@Remote('view') remoteView(agent: Agent): TeamView
|
|
186
|
-
|
|
187
|
-
/**
|
|
188
|
-
* Create one shared task through the generated Remote API.
|
|
189
|
-
* @param agent - exact live Team member creating the task.
|
|
190
|
-
* @param request - task text, blockers, and advisory write scopes.
|
|
191
|
-
* @returns the revision-one task or a typed Team rejection.
|
|
192
|
-
*/
|
|
193
|
-
@Remote('createTask') remoteCreateTask(agent: Agent, request: CreateTeamTaskRequest): Promise<TeamTaskMutationResult>
|
|
194
|
-
|
|
195
|
-
/**
|
|
196
|
-
* Apply one task mutation and preserve Team rejections as business results.
|
|
197
|
-
* @param agent - exact live Team member authorizing the mutation.
|
|
198
|
-
* @param request - task identity, expected revision, action, and action fields.
|
|
199
|
-
* @returns the committed task or a typed Team rejection.
|
|
200
|
-
*/
|
|
201
|
-
@Remote('updateTask') remoteUpdateTask(agent: Agent, request: UpdateTeamTaskRequest): Promise<TeamTaskMutationResult>
|
|
202
226
|
```
|
|
203
227
|
|
|
204
228
|
Types: [Agent](core.zh.md)
|
|
@@ -1,6 +1,19 @@
|
|
|
1
|
-
# Bilingual-pair consistency record (docs/i18n/README.md):
|
|
2
|
-
#
|
|
3
|
-
#
|
|
1
|
+
# Bilingual-pair consistency record for approval.md (docs/i18n/README.md): per heading
|
|
2
|
+
# section, a hash of its English and Chinese blocks outside code blocks and generated regions.
|
|
3
|
+
# After editing either side, bring the other along and re-record with:
|
|
4
4
|
# pnpm run verify-translation-pairing --write docs/subsystems/approval.md
|
|
5
|
-
approval
|
|
6
|
-
|
|
5
|
+
/user-approval:
|
|
6
|
+
en: 490b0cce7f1ceed5
|
|
7
|
+
zh: 1126f2d7261b490a
|
|
8
|
+
/user-approval/identity-and-outcome:
|
|
9
|
+
en: 3dd2094e3bd0f10f
|
|
10
|
+
zh: 0a56f3add2e1fc57
|
|
11
|
+
/user-approval/per-session-policy:
|
|
12
|
+
en: 5e51c6e37c5e30c3
|
|
13
|
+
zh: 84bad36357332539
|
|
14
|
+
/user-approval/approval-request:
|
|
15
|
+
en: 044ddfc382eb745c
|
|
16
|
+
zh: c0010b23c94ab3af
|
|
17
|
+
/user-approval/dispatch-and-audit:
|
|
18
|
+
en: bd2c2cc1eaaaf2d6
|
|
19
|
+
zh: 67bfbed1b7499ffb
|
|
@@ -50,7 +50,7 @@ Both policies contribute their complete current meaning to the cache-safe runtim
|
|
|
50
50
|
|
|
51
51
|
## Approval request
|
|
52
52
|
|
|
53
|
-
`ApprovalRequest` identifies the agent and tool action closely enough to route and audit the question. It deliberately omits tool arguments: an answerer attaches the prompt to the already-streamed tool call through `callId` instead of rendering a second copy that could drift.
|
|
53
|
+
`ApprovalRequest` identifies the agent and tool action closely enough to route and audit the question. It deliberately omits tool arguments: an answerer attaches the prompt to the already-streamed tool call through `callId` instead of rendering a second copy that could drift. Optional `displayReason` carries requester-owned locale strings to presentation; `reason` remains the audit text.
|
|
54
54
|
|
|
55
55
|
```ts type-equiv
|
|
56
56
|
/**
|
|
@@ -50,7 +50,7 @@ type ApprovalPolicy = 'ask' | 'never'
|
|
|
50
50
|
|
|
51
51
|
## 审批请求
|
|
52
52
|
|
|
53
|
-
`ApprovalRequest` 以足够精确的方式标识 agent 和工具操作,以便路由和审计该问题。它有意省略工具参数:应答者通过 `callId`
|
|
53
|
+
`ApprovalRequest` 以足够精确的方式标识 agent 和工具操作,以便路由和审计该问题。它有意省略工具参数:应答者通过 `callId` 将提示附加到已流式输出的工具调用上,而非渲染另一份可能漂移的副本。可选的 `displayReason` 向界面传递请求方提供的本地化字符串;`reason` 仍是审计文本。
|
|
54
54
|
|
|
55
55
|
```ts type-equiv
|
|
56
56
|
/**
|
|
@@ -1,6 +1,13 @@
|
|
|
1
|
-
# Bilingual-pair consistency record (docs/i18n/README.md):
|
|
2
|
-
#
|
|
3
|
-
#
|
|
1
|
+
# Bilingual-pair consistency record for attachment.md (docs/i18n/README.md): per heading
|
|
2
|
+
# section, a hash of its English and Chinese blocks outside code blocks and generated regions.
|
|
3
|
+
# After editing either side, bring the other along and re-record with:
|
|
4
4
|
# pnpm run verify-translation-pairing --write docs/subsystems/attachment.md
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/durable-attachments:
|
|
6
|
+
en: 564dfcaaca384e23
|
|
7
|
+
zh: 5d215635919b5bc4
|
|
8
|
+
/durable-attachments/identity-and-verified-metadata:
|
|
9
|
+
en: 3ddfd5100061dc6a
|
|
10
|
+
zh: 3eedb90c8813d015
|
|
11
|
+
/durable-attachments/commit-and-verified-read-payloads:
|
|
12
|
+
en: 01c9eb5d67e3c7c3
|
|
13
|
+
zh: abf32dddcca5fce1
|
|
@@ -303,7 +303,7 @@ Source: [`packages/attachment/attachment/src/index.ts`](../../packages/attachmen
|
|
|
303
303
|
|
|
304
304
|
### `ctx.fileUploads` — `FileUploads`
|
|
305
305
|
|
|
306
|
-
Host service owning upload storage and Agent
|
|
306
|
+
Host service owning upload storage and receipts keyed by each receiving Agent's exact Session.
|
|
307
307
|
|
|
308
308
|
```ts cordis-catalog
|
|
309
309
|
/**
|
|
@@ -330,7 +330,7 @@ registerAgentResolver(resolve: AgentResolver): () => void
|
|
|
330
330
|
async uploadStream(request: { readonly sessionId: SessionId readonly data: AsyncIterable<Uint8Array> readonly signal?: AbortSignal readonly name?: string }): Promise<FileUploadValue>
|
|
331
331
|
|
|
332
332
|
/**
|
|
333
|
-
* Resolve one staged receipt
|
|
333
|
+
* Resolve one staged receipt for the receiving Agent's exact Session.
|
|
334
334
|
* @param agent - receiving Agent.
|
|
335
335
|
* @param receiptId - opaque receipt minted for one completed upload.
|
|
336
336
|
* @returns durable file reference, or `undefined` for an unknown or foreign receipt.
|
|
@@ -303,7 +303,7 @@ Source: [`packages/attachment/attachment/src/index.ts`](../../packages/attachmen
|
|
|
303
303
|
|
|
304
304
|
### `ctx.fileUploads` — `FileUploads`
|
|
305
305
|
|
|
306
|
-
Host service owning upload storage and Agent
|
|
306
|
+
Host service owning upload storage and receipts keyed by each receiving Agent's exact Session.
|
|
307
307
|
|
|
308
308
|
```ts cordis-catalog
|
|
309
309
|
/**
|
|
@@ -330,7 +330,7 @@ registerAgentResolver(resolve: AgentResolver): () => void
|
|
|
330
330
|
async uploadStream(request: { readonly sessionId: SessionId readonly data: AsyncIterable<Uint8Array> readonly signal?: AbortSignal readonly name?: string }): Promise<FileUploadValue>
|
|
331
331
|
|
|
332
332
|
/**
|
|
333
|
-
* Resolve one staged receipt
|
|
333
|
+
* Resolve one staged receipt for the receiving Agent's exact Session.
|
|
334
334
|
* @param agent - receiving Agent.
|
|
335
335
|
* @param receiptId - opaque receipt minted for one completed upload.
|
|
336
336
|
* @returns durable file reference, or `undefined` for an unknown or foreign receipt.
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
# Bilingual-pair consistency record (docs/i18n/README.md):
|
|
2
|
-
#
|
|
3
|
-
#
|
|
1
|
+
# Bilingual-pair consistency record for boot.md (docs/i18n/README.md): per heading
|
|
2
|
+
# section, a hash of its English and Chinese blocks outside code blocks and generated regions.
|
|
3
|
+
# After editing either side, bring the other along and re-record with:
|
|
4
4
|
# pnpm run verify-translation-pairing --write docs/subsystems/boot.md
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/profile-management:
|
|
6
|
+
en: 962b4398c9052959
|
|
7
|
+
zh: 14471c340a9f6e60
|
|
8
|
+
/profile-management/management-records:
|
|
9
|
+
en: 2d5acb4065719db7
|
|
10
|
+
zh: 3d21e44376092d77
|
|
@@ -8,13 +8,15 @@ The [boot package group](../../packages/boot/README.md) owns launcher-provided p
|
|
|
8
8
|
|
|
9
9
|
`PluginEntryId` identifies one Loader entry; callers obtain it from `listPlugins` rather than constructing a patch id.
|
|
10
10
|
|
|
11
|
-
`PluginInfo` carries module identity, effective enablement
|
|
11
|
+
`PluginInfo` carries module identity, effective enablement, fiber phase and optional display `meta`, plus a unique `patchId` or a `readOnlyReason`.
|
|
12
12
|
|
|
13
|
-
`BundleInfo` carries the package name, optional installed version, selected enablement, removal availability
|
|
13
|
+
`BundleInfo` carries the package name, optional installed version, selected enablement, removal availability, optional resolution error, and, for a bundle the profile's own dependency supplies and the installation does not, `source`: that dependency as a spec `pnpm add` accepts. Its optional `meta` and each `BundleRowInfo.meta` contain display text or a metadata diagnostic; Clients select a language at render time.
|
|
14
14
|
|
|
15
|
-
`InstallBundleOptions.enabled` defaults to true. False installs without selecting the bundle layer. `approvedBuilds` grants persistent script permission to the supplied pending package names before installation.
|
|
15
|
+
`InstallBundleOptions.enabled` defaults to true. False installs without selecting the bundle layer. `approvedBuilds` grants persistent script permission to the supplied pending package names before installation. `registry` names the registry asked first; absent, the configured one.
|
|
16
16
|
|
|
17
|
-
`
|
|
17
|
+
`PluginRegistries` carries the configured first registry, `null` for the one pnpm's own configuration names, the fallbacks asked after it, and `resolved`, the URL pnpm's own configuration names or `null` while unread. `InspectOptions.registry` names the registry a lookup asks first.
|
|
18
|
+
|
|
19
|
+
`ChangeResult.changed` reports a disk edit independently of `application`: `applied`, `restart-required`, `overridden` or `failed`. Optional `error` carries a localizable code and external diagnostic. `packageResult` records the pnpm exit code, bounded output, truncation flag and complete diagnostic log path, plus `timedOut` when the manager terminated a run that stopped printing. A terminated run is classified `timeout` whatever exit status the signal left behind, so installation and removal report failure instead of success and no further registry is asked. `pendingBuilds` lists undecided packages across the profile; `approvedBuilds` records the names granted permission by this operation; `registries` lists the registries an installation asked, in order; `bundle` and `version` name the package a finished installation added and its manifest version; `failedAt` says whether the last failed run could not reach the registry it asked or the host a git or tarball spec is fetched from.
|
|
18
20
|
|
|
19
21
|
<!-- BEGIN GENERATED cordis-surface (gen-cordis-catalog.ts) — do not edit between markers -->
|
|
20
22
|
|
|
@@ -24,6 +26,33 @@ The [boot package group](../../packages/boot/README.md) owns launcher-provided p
|
|
|
24
26
|
|
|
25
27
|
Generated from source by `scripts/gen-cordis-catalog.ts` (verified fresh by `pnpm run verify-cordis-catalog` in doc-sync; regenerate with `pnpm run gen-cordis-catalog`) — the language sides differ only in locale-specific paired document paths. Signature blocks use a `ts cordis-catalog` fence and keep the original source JSDoc; dispatch modes are defined in the [primer](../cordis-primer.md#dispatch-modes), and the framework-inherited `ctx` API lives in [cordis-api/inherited.md](../cordis-api/inherited.md).
|
|
26
28
|
|
|
29
|
+
<a id="ctxconfigeditor--configeditor"></a>
|
|
30
|
+
|
|
31
|
+
### `ctx.configEditor` — `ConfigEditor`
|
|
32
|
+
|
|
33
|
+
Persist complete raw configs and apply them through the normal Loader path.
|
|
34
|
+
|
|
35
|
+
```ts cordis-catalog
|
|
36
|
+
/** Addressable profile rows; nested Includes have independent configuration ownership.
|
|
37
|
+
* @returns Active entries with unique profile patch ids.
|
|
38
|
+
*/
|
|
39
|
+
entries(): Entry[]
|
|
40
|
+
|
|
41
|
+
/** Read inherited and explicit profile values for the active entries.
|
|
42
|
+
* @returns Detached layer values alongside their Loader entries.
|
|
43
|
+
*/
|
|
44
|
+
configuration(): Array<{ entry: Entry; inherited: Record<string, unknown>; override: Record<string, unknown> }>
|
|
45
|
+
|
|
46
|
+
/** Validate, persist, and reconcile a plugin's next config; ordinary fields keep normal lifecycle rules.
|
|
47
|
+
* @param entry Current Loader entry, also used to detect replacement during the write.
|
|
48
|
+
* @param change Derive a raw config from the current entry and its inherited layer.
|
|
49
|
+
* @returns Fulfillment after Loader reconciliation completes.
|
|
50
|
+
*/
|
|
51
|
+
async edit( entry: Entry, change: (current: Record<string, unknown>, inherited: Record<string, unknown>) => Record<string, unknown>, ): Promise<void>
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Source: [`packages/boot/config-editor/src/index.ts`](../../packages/boot/config-editor/src/index.ts)
|
|
55
|
+
|
|
27
56
|
<a id="ctxhmr--hmr"></a>
|
|
28
57
|
|
|
29
58
|
### `ctx.hmr` — `Hmr`
|
|
@@ -60,6 +89,21 @@ Source: [`packages/boot/hmr/src/index.ts`](../../packages/boot/hmr/src/index.ts)
|
|
|
60
89
|
Manage profile files and apply their declared reload lifecycle.
|
|
61
90
|
|
|
62
91
|
```ts cordis-catalog
|
|
92
|
+
/** Read exact plugin-version exemptions saved in this profile.
|
|
93
|
+
* @returns Accepted package-name@version keys with the runtime versions they may run on, and any
|
|
94
|
+
* record or file problem the reader rejected, which the caller reports instead of failing.
|
|
95
|
+
*/
|
|
96
|
+
@Remote listVersionExemptions(): { exemptions: Record<string, string[]>; warnings: string[] }
|
|
97
|
+
|
|
98
|
+
/** Grant or revoke one exact plugin/runtime exemption and reevaluate live plugins.
|
|
99
|
+
* @param packageVersion Exact manifest package name followed by @ and its version; never an installation spec or alias.
|
|
100
|
+
* @param runtimeVersion Exact current DSH version for grants; revocation may name a previous runtime.
|
|
101
|
+
* @param enabled Whether to grant rather than revoke the exemption.
|
|
102
|
+
* @param acceptRisk Required true for grants after the user accepts possible crashes and data loss.
|
|
103
|
+
* @returns Saved and runtime outcomes. Startup-only profiles require restart.
|
|
104
|
+
*/
|
|
105
|
+
@Remote setVersionExemption(packageVersion: string, runtimeVersion: string, enabled: boolean, acceptRisk?: boolean): Promise<ChangeResult>
|
|
106
|
+
|
|
63
107
|
/** Read current plugins, including why a row cannot be changed through the profile patch.
|
|
64
108
|
* @returns Current runtime entries with persistent patch targets.
|
|
65
109
|
*/
|
|
@@ -67,17 +111,23 @@ Manage profile files and apply their declared reload lifecycle.
|
|
|
67
111
|
|
|
68
112
|
/** Read the profile's installed bundles, the bundles this dsh installation supplies, and the selected names that are not bundles.
|
|
69
113
|
* A dependency without a bundle patch is listed, as a `not-bundle` problem, only while it is selected.
|
|
70
|
-
* @returns Package versions,
|
|
71
|
-
* bundle, and removal availability.
|
|
114
|
+
* @returns Package versions, manifest descriptions, the installable spec of profile dependencies, rows, optional
|
|
115
|
+
* display metadata, activation selections, whether the installation offers the bundle, and removal availability.
|
|
72
116
|
*/
|
|
73
117
|
@Remote listBundles(): Promise<BundleInfo[]>
|
|
74
118
|
|
|
119
|
+
/** Read the registries this manager asks: the configured first one, its fallbacks in order, and what pnpm's own configuration names.
|
|
120
|
+
* @returns The registries in pnpm's comparison form; null is the one pnpm's own configuration names, `resolved` as pnpm reads it now.
|
|
121
|
+
*/
|
|
122
|
+
@Remote async registries(): Promise<PluginRegistries>
|
|
123
|
+
|
|
75
124
|
/** Read what a spec names before installing it.
|
|
76
125
|
* @param spec One package spec: a registry name, an absolute path, a git address, or a tarball.
|
|
126
|
+
* @param options The registry asked first.
|
|
77
127
|
* @param signal Ends a registry lookup early.
|
|
78
128
|
* @returns The package the spec names, or why it is refused.
|
|
79
129
|
*/
|
|
80
|
-
@Remote async inspect(spec: string, signal?: AbortSignal): Promise<PluginSpecInspection>
|
|
130
|
+
@Remote async inspect(spec: string, options?: InspectOptions, signal?: AbortSignal): Promise<PluginSpecInspection>
|
|
81
131
|
|
|
82
132
|
/** Persist a plugin entry's desired enablement and apply it on live profiles.
|
|
83
133
|
* @param id Loader entry identity returned by listPlugins.
|
|
@@ -94,25 +144,35 @@ Manage profile files and apply their declared reload lifecycle.
|
|
|
94
144
|
@Remote setBundleEnabled(name: string, enabled: boolean): Promise<ChangeResult>
|
|
95
145
|
|
|
96
146
|
/**
|
|
97
|
-
* Install a package using the same pnpm implementation as dsh plugin.
|
|
147
|
+
* Install a package using the same pnpm implementation as dsh plugin. GitHub
|
|
148
|
+
* repositories get a connection check bounded by githubConnectionTimeoutMs before pnpm starts;
|
|
149
|
+
* only network failures or timeouts stop installation, while pnpm owns authentication and transport fallback. A run
|
|
98
150
|
* that fails, is cancelled, or adds a package without a bundle patch restores
|
|
99
151
|
* `package.json` and `pnpm-lock.yaml` as they were; downloaded files can stay.
|
|
100
152
|
* @param spec One package spec, including local paths relative to the invocation directory.
|
|
101
|
-
* @param options Whether to activate the installed bundle (defaults to true), the request id a cancellation names,
|
|
102
|
-
* the pending build scripts to allow for this profile before pnpm runs.
|
|
103
|
-
* @returns Package-manager diagnostics and observed activation outcome.
|
|
153
|
+
* @param options Whether to activate the installed bundle (defaults to true), the request id a cancellation names,
|
|
154
|
+
* the pending build scripts to allow for this profile before pnpm runs, and the registry asked first.
|
|
155
|
+
* @returns Package-manager diagnostics, the registries asked, and the observed activation outcome.
|
|
104
156
|
*/
|
|
105
157
|
@Remote installBundle(spec: string, options?: InstallBundleOptions): Promise<ChangeResult>
|
|
106
158
|
|
|
159
|
+
/** Recover the result of an active installation without cancelling it.
|
|
160
|
+
* @param requestId The id supplied when installation started.
|
|
161
|
+
* @returns The installation's outcome after it settles, or null if no active request has that id.
|
|
162
|
+
* Completed results are not retained; null establishes neither success nor cancellation.
|
|
163
|
+
*/
|
|
164
|
+
@Remote async waitForInstall(requestId: PluginInstallRequestId): Promise<ChangeResult | null>
|
|
165
|
+
|
|
107
166
|
/** Stop an installation this manager owns and wait until its files are back.
|
|
108
167
|
* @param requestId The id the installation was started with.
|
|
109
|
-
* @returns `cancelled` once pnpm exited and the files are restored, `too-late` once the bundle is being
|
|
168
|
+
* @returns `cancelled` once the Git check or pnpm exited and the files are restored, `too-late` once the bundle is being
|
|
110
169
|
* applied, `not-running` for any other id.
|
|
111
170
|
*/
|
|
112
171
|
@Remote async cancelInstall(requestId: PluginInstallRequestId): Promise<PluginInstallCancellation>
|
|
113
172
|
|
|
114
|
-
/** Unload and remove a profile-owned bundle dependency through dsh plugin's pnpm path
|
|
115
|
-
*
|
|
173
|
+
/** Unload and remove a profile-owned bundle dependency through dsh plugin's pnpm path; a selected name no
|
|
174
|
+
* dependency holds is only deselected.
|
|
175
|
+
* @param name Installed dependency or selected bundle name.
|
|
116
176
|
* @returns Removal diagnostics and the remaining profile state.
|
|
117
177
|
*/
|
|
118
178
|
@Remote removeBundle(name: string): Promise<ChangeResult>
|
|
@@ -120,6 +180,24 @@ Manage profile files and apply their declared reload lifecycle.
|
|
|
120
180
|
|
|
121
181
|
Source: [`packages/boot/plugin-manager/src/index.ts`](../../packages/boot/plugin-manager/src/index.ts)
|
|
122
182
|
|
|
183
|
+
<a id="ctxpluginregistryprobe--pluginregistryprobe"></a>
|
|
184
|
+
|
|
185
|
+
### `ctx.pluginRegistryProbe` — `PluginRegistryProbe`
|
|
186
|
+
|
|
187
|
+
Compares public registry responses on the Host; the Client owns the initial selection.
|
|
188
|
+
|
|
189
|
+
```ts cordis-catalog
|
|
190
|
+
/**
|
|
191
|
+
* Race npm and npmmirror HTTPS ping responses through the Host's fetch proxy.
|
|
192
|
+
* Concurrent readers share a probe; a winner cancels and awaits the other request.
|
|
193
|
+
* @returns the first registry with a successful response, or null when disabled or neither responds successfully; results are cached.
|
|
194
|
+
* @throws rejects when the service has been unloaded.
|
|
195
|
+
*/
|
|
196
|
+
@Remote async fastest(): Promise<string | null>
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
Source: [`packages/client/ui-plugin-manager/src/index.ts`](../../packages/client/ui-plugin-manager/src/index.ts)
|
|
200
|
+
|
|
123
201
|
<a id="ctxprofilecontext--profilecontext"></a>
|
|
124
202
|
|
|
125
203
|
### `ctx.profileContext` — `ProfileContext`
|
|
@@ -128,6 +206,27 @@ Current profile facts; scheduling and mutation belong to their callers.
|
|
|
128
206
|
|
|
129
207
|
Source: [`packages/boot/app-boot/src/profile-context.ts`](../../packages/boot/app-boot/src/profile-context.ts)
|
|
130
208
|
|
|
209
|
+
<a id="app-boot-events"></a>
|
|
210
|
+
|
|
211
|
+
### `app-boot/*` events
|
|
212
|
+
|
|
213
|
+
<a id="app-bootconfig-reload--emit"></a>
|
|
214
|
+
|
|
215
|
+
#### `app-boot/config-reload` — emit
|
|
216
|
+
|
|
217
|
+
Profile patches were reconciled into the running Loader tree: every entry update settled and no new inactive entry was introduced. Carries no diff; listeners re-read Loader entries.
|
|
218
|
+
|
|
219
|
+
```ts cordis-catalog
|
|
220
|
+
/**
|
|
221
|
+
* Profile patches were reconciled into the running Loader tree: every entry update settled and no new
|
|
222
|
+
* inactive entry was introduced. Carries no diff; listeners re-read Loader entries.
|
|
223
|
+
* @mode emit
|
|
224
|
+
*/
|
|
225
|
+
'app-boot/config-reload'(): void
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
Source: [`packages/boot/app-boot/src/index.ts`](../../packages/boot/app-boot/src/index.ts)
|
|
229
|
+
|
|
131
230
|
<a id="hmr-events"></a>
|
|
132
231
|
|
|
133
232
|
### `hmr/*` events
|
|
@@ -208,13 +307,14 @@ Source: [`packages/boot/plugin-manager/src/types.ts`](../../packages/boot/plugin
|
|
|
208
307
|
|
|
209
308
|
#### `plugin-manager/install-state` — emit
|
|
210
309
|
|
|
211
|
-
An installation moved between its Host phases.
|
|
310
|
+
An installation moved between its Host phases. `installing` is announced once per registry the installation asks, with the attempt's registry and position; `cancelling` and `applying` once.
|
|
212
311
|
|
|
213
312
|
```ts cordis-catalog
|
|
214
313
|
/**
|
|
215
|
-
* An installation moved between its Host phases.
|
|
314
|
+
* An installation moved between its Host phases. `installing` is announced once per registry the
|
|
315
|
+
* installation asks, with the attempt's registry and position; `cancelling` and `applying` once.
|
|
216
316
|
* @mode emit
|
|
217
|
-
* @param progress - the installation's request id and phase.
|
|
317
|
+
* @param progress - the installation's request id and phase, with the attempt while installing.
|
|
218
318
|
*/
|
|
219
319
|
'plugin-manager/install-state'(progress: PluginInstallProgress): void
|
|
220
320
|
```
|