dsh-primer 0.4.5 → 0.4.7
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.en.md +6 -6
- package/README.es.md +6 -6
- package/README.hi.md +6 -6
- package/README.md +7 -7
- package/README.pt.md +6 -6
- package/SKILL.md +11 -9
- package/data/facts.json +35 -15
- package/data/seams/index.json +1526 -98
- package/data/standards.json +17 -11
- package/dist/dsh-plugin-dev.js +7 -7
- package/guide/links.md +2 -2
- package/guide/migration-0.2.md +105 -14
- package/guide/plugin-dev-guide.md +6 -6
- package/guide/quick-reference.es.md +4 -4
- package/guide/quick-reference.hi.md +4 -4
- package/guide/quick-reference.md +4 -4
- package/guide/quick-reference.pt.md +4 -4
- package/guide/quick-reference.zh-CN.md +4 -4
- package/guide/standards.md +1 -1
- package/guide/standards.zh-CN.md +1 -1
- package/guide/unfixed-issues.md +2 -2
- package/guide/version-matrix.md +65 -42
- package/package.json +13 -7
- package/references/official-docs/CLAUDE.md +1 -1
- package/references/official-docs/README.md +9 -4
- package/references/official-docs/SNAPSHOT.md +7 -5
- package/references/official-docs/docs/capability-seams.i18n.yaml +2 -2
- package/references/official-docs/docs/capability-seams.md +4 -0
- package/references/official-docs/docs/capability-seams.zh.md +4 -0
- package/references/official-docs/docs/config-catalog.md +26 -28
- package/references/official-docs/docs/config-catalog.zh.md +26 -28
- package/references/official-docs/docs/defensive-patterns/package-surface.i18n.yaml +2 -2
- package/references/official-docs/docs/defensive-patterns/package-surface.md +0 -1
- package/references/official-docs/docs/defensive-patterns/package-surface.zh.md +0 -1
- package/references/official-docs/docs/event-producer-consumer.md +1 -1
- package/references/official-docs/docs/event-producer-consumer.zh.md +1 -1
- package/references/official-docs/docs/module-graph.md +12 -17
- package/references/official-docs/docs/module-graph.zh.md +12 -17
- package/references/official-docs/docs/subsystems/computer-use.i18n.yaml +2 -2
- package/references/official-docs/docs/subsystems/computer-use.md +1 -1
- package/references/official-docs/docs/subsystems/computer-use.zh.md +1 -1
- package/references/official-docs/docs/subsystems/persistence.md +19 -0
- package/references/official-docs/docs/subsystems/persistence.zh.md +19 -0
- package/references/official-docs/docs/subsystems/ptc-runtime.i18n.yaml +4 -4
- package/references/official-docs/docs/subsystems/ptc-runtime.md +8 -48
- package/references/official-docs/docs/subsystems/ptc-runtime.zh.md +8 -48
- package/references/official-docs/docs/tool-catalog.i18n.yaml +2 -2
- package/references/official-docs/docs/tool-catalog.md +1 -1
- package/references/official-docs/docs/tool-catalog.zh.md +1 -1
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/cua-native-platform/guide.i18n.yaml +4 -4
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/cua-native-platform/guide.md +7 -7
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/cua-native-platform/guide.zh.md +7 -7
- package/references/official-plugin-dev-skill.md +16 -12
- package/references/sources.md +2 -2
- package/scripts/check-docs-drift.mjs +121 -0
- package/scripts/check-docs-drift.ps1 +4 -1
- package/scripts/check-facts.mjs +81 -3
- package/scripts/sync-official-docs.ps1 +16 -5
- package/templates/js/README-es.md +1 -1
- package/templates/js/README-hi.md +1 -1
- package/templates/js/README-pt.md +1 -1
- package/templates/js/README-zh.md +1 -1
- package/templates/js/README.md +1 -1
- package/templates/ts/README-es.md +1 -1
- package/templates/ts/README-hi.md +1 -1
- package/templates/ts/README-pt.md +1 -1
- package/templates/ts/README-zh.md +1 -1
- package/templates/ts/README.md +1 -1
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/package-export-cleanup/guide.i18n.yaml +0 -16
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/package-export-cleanup/guide.md +0 -26
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/package-export-cleanup/guide.zh.md +0 -26
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-bootstrap-protocol/guide.i18n.yaml +0 -16
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-bootstrap-protocol/guide.md +0 -25
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-bootstrap-protocol/guide.zh.md +0 -25
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-inspect-output/guide.i18n.yaml +0 -16
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-inspect-output/guide.md +0 -48
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-inspect-output/guide.zh.md +0 -48
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-scoped-repl-default/guide.i18n.yaml +0 -16
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-scoped-repl-default/guide.md +0 -45
- package/references/official-docs/docs/upgrade-guide/v0.2.2-rc.1/ptc-scoped-repl-default/guide.zh.md +0 -45
|
@@ -888,26 +888,6 @@ export interface Config {
|
|
|
888
888
|
```
|
|
889
889
|
<!-- END GENERATED config-catalog:@deepseek-ai/dsh-credentials-local -->
|
|
890
890
|
|
|
891
|
-
<!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-cua-windows -->
|
|
892
|
-
<a id="deepseek-aidsh-cua-windows"></a>
|
|
893
|
-
|
|
894
|
-
## `@deepseek-ai/dsh-cua-windows`
|
|
895
|
-
|
|
896
|
-
- `inject`: `computerUse` · `tools` · `systemPrompt` · `subprocess` · `agents`
|
|
897
|
-
- `refs`: [`CuaConfig`](../packages/experimental/cua/src/index.ts)
|
|
898
|
-
- `source`: [`packages/experimental/cua-windows/src/index.ts:32`](../packages/experimental/cua-windows/src/index.ts)
|
|
899
|
-
|
|
900
|
-
```ts config-catalog
|
|
901
|
-
/** Windows native waiting policy, alongside shared CUA resource limits. */
|
|
902
|
-
export interface Config extends CuaConfig {
|
|
903
|
-
/** Windows PowerShell executable used to query WSL interoperation and the Windows architecture. */
|
|
904
|
-
windowsPowerShellPath: string
|
|
905
|
-
/** Milliseconds between application-readiness and clipboard-release observations. */
|
|
906
|
-
pollIntervalMs: number
|
|
907
|
-
}
|
|
908
|
-
```
|
|
909
|
-
<!-- END GENERATED config-catalog:@deepseek-ai/dsh-cua-windows -->
|
|
910
|
-
|
|
911
891
|
<!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-deepseek-account -->
|
|
912
892
|
<a id="deepseek-aidsh-deepseek-account"></a>
|
|
913
893
|
|
|
@@ -953,6 +933,29 @@ export interface Config {
|
|
|
953
933
|
```
|
|
954
934
|
<!-- END GENERATED config-catalog:@deepseek-ai/dsh-deepseek-account -->
|
|
955
935
|
|
|
936
|
+
<!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-deepseek-chat-import -->
|
|
937
|
+
<a id="deepseek-aidsh-deepseek-chat-import"></a>
|
|
938
|
+
|
|
939
|
+
## `@deepseek-ai/dsh-deepseek-chat-import`
|
|
940
|
+
|
|
941
|
+
- `inject`: `typert` · `connection` · `sessionPersistence` · `workspaceRegistry`
|
|
942
|
+
- `source`: [`packages/experimental/deepseek-chat-import/src/index.ts:36`](../packages/experimental/deepseek-chat-import/src/index.ts)
|
|
943
|
+
|
|
944
|
+
```ts config-catalog
|
|
945
|
+
/** Deployment limits of the importer. */
|
|
946
|
+
export interface Config {
|
|
947
|
+
/** Most Sessions one import writes, choosing the conversations the export index lists as most recently updated. */
|
|
948
|
+
maxSessions: number
|
|
949
|
+
/** Largest export archive, in bytes, one upload may carry; the whole archive is held in memory while it is imported. */
|
|
950
|
+
maxUploadBytes: number
|
|
951
|
+
/** Largest declared uncompressed size, in bytes, of one archive entry; larger entries are not decompressed. */
|
|
952
|
+
maxEntryBytes: number
|
|
953
|
+
/** Largest UTF-8 size, in bytes, of an imported title, matching the session-title service's limit of the composition. */
|
|
954
|
+
maxTitleBytes: number
|
|
955
|
+
}
|
|
956
|
+
```
|
|
957
|
+
<!-- END GENERATED config-catalog:@deepseek-ai/dsh-deepseek-chat-import -->
|
|
958
|
+
|
|
956
959
|
<!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-api-speech-to-text -->
|
|
957
960
|
<a id="deepseek-aidsh-experimental-api-speech-to-text"></a>
|
|
958
961
|
|
|
@@ -1628,7 +1631,7 @@ export interface Config {
|
|
|
1628
1631
|
## `@deepseek-ai/dsh-file-reference-local`
|
|
1629
1632
|
|
|
1630
1633
|
- `inject`: `agents` · `workingDirectory`
|
|
1631
|
-
- `source`: [`packages/context/file-reference-local/src/index.ts:
|
|
1634
|
+
- `source`: [`packages/context/file-reference-local/src/index.ts:35`](../packages/context/file-reference-local/src/index.ts)
|
|
1632
1635
|
|
|
1633
1636
|
```ts config-catalog
|
|
1634
1637
|
/** Local file-reference discovery configuration. */
|
|
@@ -2427,7 +2430,7 @@ export type Config = Readonly<Record<string, never>>
|
|
|
2427
2430
|
## `@deepseek-ai/dsh-lsp-stdio`
|
|
2428
2431
|
|
|
2429
2432
|
- `inject`: `fs` · `lsp` · `subprocess`
|
|
2430
|
-
- `source`: [`packages/lsp/lsp-stdio/src/index.ts:
|
|
2433
|
+
- `source`: [`packages/lsp/lsp-stdio/src/index.ts:83`](../packages/lsp/lsp-stdio/src/index.ts)
|
|
2431
2434
|
|
|
2432
2435
|
```ts config-catalog
|
|
2433
2436
|
/** Plugin configuration: provider id → local language-server configuration. */
|
|
@@ -2880,7 +2883,7 @@ export interface Config {
|
|
|
2880
2883
|
## `@deepseek-ai/dsh-ptc-runtime-node`
|
|
2881
2884
|
|
|
2882
2885
|
- `inject`: `fs` · `subprocess` · `sandbox` · `sandboxPolicy`
|
|
2883
|
-
- `source`: [`packages/ptc-runtime/ptc-runtime-node/src/config.ts:
|
|
2886
|
+
- `source`: [`packages/ptc-runtime/ptc-runtime-node/src/config.ts:7`](../packages/ptc-runtime/ptc-runtime-node/src/config.ts)
|
|
2884
2887
|
|
|
2885
2888
|
```ts config-catalog
|
|
2886
2889
|
/** Deployment-varying runtime bounds and launch choices. */
|
|
@@ -2891,11 +2894,6 @@ export interface Config {
|
|
|
2891
2894
|
executionMode?: 'per-call' | 'persistent-in-memory' | 'vm-script'
|
|
2892
2895
|
/** Retain a Script process and context per stateOwner; only supported with executionMode: vm-script. */
|
|
2893
2896
|
scriptPersistence?: boolean
|
|
2894
|
-
/**
|
|
2895
|
-
* Run persistent-in-memory programs as scoped REPL statements whose later calls receive copies of earlier top-level bindings;
|
|
2896
|
-
* omitted, it is `SCOPED_REPL_BY_DEFAULT` from configuration.ts, currently true, with persistent-in-memory and false otherwise.
|
|
2897
|
-
*/
|
|
2898
|
-
replScoped?: boolean
|
|
2899
2897
|
/** Default elapsed deadline, including nested tool and approval waits. */
|
|
2900
2898
|
timeoutMs?: number
|
|
2901
2899
|
/** Maximum numeric elapsed budget accepted by resolve. */
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
en: bf79c6acf35c90a5
|
|
13
13
|
zh: 9f2ce6c7f6493b17
|
|
14
14
|
/package-surface-rules/package-json-exports-uses-the-standard-key-set:
|
|
15
|
-
en:
|
|
16
|
-
zh:
|
|
15
|
+
en: 692ded0ff903609d
|
|
16
|
+
zh: c871ab58ca92ad70
|
|
17
17
|
/package-surface-rules/dependency-declarations-and-version-consistency-are-enforced-by-the-dependency-scan:
|
|
18
18
|
en: e68bfcde70f845b4
|
|
19
19
|
zh: 73e5c4fb067c4fa1
|
|
@@ -79,7 +79,6 @@ A `package.json` `exports` map uses only the standard key set, in which every ke
|
|
|
79
79
|
- Standard keys, each with one meaning repo-wide, across `packages/*/*/package.json` and `apps/*/package.json`: `.` (the package entry), `./package.json` (toolchain access, not a semantic export), `./src/*` (source passthrough for tests and tools, whose documented status is still open), `./client` (the browser entry, paired with the `dsh.client` declaration), `./types` (the type entry), `./typert` (the typert type runtime), `./remote` (the `@Remote` call surface), `./locale/*.json` (locale resources), `./cordis.patch.yml` (the bundle patch layer declared by `dsh.bundle`). Counts are not listed here because they rot on the next package; the recompute command below prints them.
|
|
80
80
|
- Keys outside that set (`./brand` in 5 packages, `./worker` in 4, `./startup`, `./runner`, and `./protocol` in 2 each, plus many one-off keys) have no documented meaning; they are pending review, not a pattern to copy.
|
|
81
81
|
- `dsh-tools` additionally exposes `./pipeline` for reusable invocation stages and batch scheduling. Its main and pipeline bundles share runtime chunks to preserve error-class identity; workspace constraints check the export targets and publication files.
|
|
82
|
-
- `dsh-tool-executor-ptc` exposes `./run-code` for the shared program-tool factory, explicit runtime and call limits, and private callable tool definitions. Workspace constraints check its export targets and publication files.
|
|
83
82
|
- Judged condition: does a change add an export key outside the standard set?
|
|
84
83
|
- Exception: none by default; a new key changes the owning document and the check first, with the domain owner's confirmation.
|
|
85
84
|
- Recompute the distribution:
|
|
@@ -79,7 +79,6 @@ import { isSurfaceEligibleType } from '../../core/session/src/surface.ts'
|
|
|
79
79
|
- 标准键,每个键在全仓只有一个含义,统计口径是 `packages/*/*/package.json` 与 `apps/*/package.json`:`.`(包主入口)、`./package.json`(工具链访问,不是语义导出)、`./src/*`(测试与工具的源码透传,文档状态仍待定)、`./client`(浏览器入口,与 `dsh.client` 声明配对)、`./types`(类型入口)、`./typert`(typert 类型运行时)、`./remote`(`@Remote` 调用面)、`./locale/*.json`(本地化资源)、`./cordis.patch.yml`(`dsh.bundle` 声明的 bundle 补丁层)。这里不列各键的包数,因为下一个包就会让它过期;下面的复算命令会打印当前数字。
|
|
80
80
|
- 集合之外的键(`./brand` 5 个包、`./worker` 4 个、`./startup`、`./runner`、`./protocol` 各 2 个,另有大量一次性键)没有文档含义,属待核项,不是可照抄的先例。
|
|
81
81
|
- `dsh-tools` 另行提供 `./pipeline`,用于复用调用阶段与批量调度。主入口与 pipeline bundle 共享运行时 chunk,以保持错误类的身份一致;工作区检查验证导出目标与发布文件。
|
|
82
|
-
- `dsh-tool-executor-ptc` 提供 `./run-code`,用于共享程序工具工厂、显式指定运行时及调用上限,并传入私有可调用工具定义。工作区检查验证其导出目标与发布文件。
|
|
83
82
|
- 判定条件:改动是否新增了标准集合以外的 export 键?
|
|
84
83
|
- 例外:无默认例外;新增键须先改正家文档与检查,并取得对应领域专家确认。
|
|
85
84
|
- 复算分布:
|
|
@@ -56,7 +56,7 @@ Application listeners are outside this package matrix. Desktop Host subscribes t
|
|
|
56
56
|
| `goal/changed` | `emit` | [`packages/goal/goal/src/domain.ts:114`](../packages/goal/goal/src/domain.ts) | [`goal`](../packages/goal/goal) (`emit`) | [`goal-round-driver`](../packages/goal/goal-round-driver) |
|
|
57
57
|
| `hmr/change` | `emit` | [`packages/boot/hmr/src/index.ts:35`](../packages/boot/hmr/src/index.ts) | [`hmr`](../packages/boot/hmr) (`emit`) | - |
|
|
58
58
|
| `hmr/reload` | `emit` | [`packages/boot/hmr/src/index.ts:40`](../packages/boot/hmr/src/index.ts) | [`hmr`](../packages/boot/hmr) (`emit`) | - |
|
|
59
|
-
| `llm-pi-ai/request-headers` | `waterfall` | [`packages/llm/llm-pi-ai/src/index.ts:
|
|
59
|
+
| `llm-pi-ai/request-headers` | `waterfall` | [`packages/llm/llm-pi-ai/src/index.ts:114`](../packages/llm/llm-pi-ai/src/index.ts) | [`llm-pi-ai`](../packages/llm/llm-pi-ai) (`waterfall`) | - |
|
|
60
60
|
| `llm/adapters-updated` | `emit` | [`packages/llm/llm/src/types.ts:24`](../packages/llm/llm/src/types.ts) | [`llm`](../packages/llm/llm) (`events.dispatch`) | [`acp`](../packages/acp/acp), `remotes` |
|
|
61
61
|
| `llm/models-updated` | `emit` | [`packages/llm/llm/src/types.ts:30`](../packages/llm/llm/src/types.ts) | [`llm-deepseek`](../packages/llm/llm-deepseek) (`emit`) | `remotes` |
|
|
62
62
|
| `llm/stream` | `waterfall` | [`packages/llm/llm/src/index.ts:76`](../packages/llm/llm/src/index.ts) | [`llm`](../packages/llm/llm) (`waterfall`) | [`llm-replay`](../packages/test-support/llm-replay), [`session-checkpoint-policy`](../packages/session/session-checkpoint-policy), [`session-title`](../packages/session/session-title) |
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
| `goal/changed` | `emit` | [`packages/goal/goal/src/domain.ts:114`](../packages/goal/goal/src/domain.ts) | [`goal`](../packages/goal/goal) (`emit`) | [`goal-round-driver`](../packages/goal/goal-round-driver) |
|
|
59
59
|
| `hmr/change` | `emit` | [`packages/boot/hmr/src/index.ts:35`](../packages/boot/hmr/src/index.ts) | [`hmr`](../packages/boot/hmr) (`emit`) | - |
|
|
60
60
|
| `hmr/reload` | `emit` | [`packages/boot/hmr/src/index.ts:40`](../packages/boot/hmr/src/index.ts) | [`hmr`](../packages/boot/hmr) (`emit`) | - |
|
|
61
|
-
| `llm-pi-ai/request-headers` | `waterfall` | [`packages/llm/llm-pi-ai/src/index.ts:
|
|
61
|
+
| `llm-pi-ai/request-headers` | `waterfall` | [`packages/llm/llm-pi-ai/src/index.ts:114`](../packages/llm/llm-pi-ai/src/index.ts) | [`llm-pi-ai`](../packages/llm/llm-pi-ai) (`waterfall`) | - |
|
|
62
62
|
| `llm/adapters-updated` | `emit` | [`packages/llm/llm/src/types.ts:24`](../packages/llm/llm/src/types.ts) | [`llm`](../packages/llm/llm) (`events.dispatch`) | [`acp`](../packages/acp/acp), `remotes` |
|
|
63
63
|
| `llm/models-updated` | `emit` | [`packages/llm/llm/src/types.ts:30`](../packages/llm/llm/src/types.ts) | [`llm-deepseek`](../packages/llm/llm-deepseek) (`emit`) | `remotes` |
|
|
64
64
|
| `llm/stream` | `waterfall` | [`packages/llm/llm/src/index.ts:76`](../packages/llm/llm/src/index.ts) | [`llm`](../packages/llm/llm) (`waterfall`) | [`llm-replay`](../packages/test-support/llm-replay), [`session-checkpoint-policy`](../packages/session/session-checkpoint-policy), [`session-title`](../packages/session/session-title) |
|
|
@@ -264,7 +264,7 @@ flowchart TD
|
|
|
264
264
|
pkg_creation_recommendations["creation-recommendations"]
|
|
265
265
|
pkg_cua["cua"]
|
|
266
266
|
pkg_cua_bundle["cua-bundle"]
|
|
267
|
-
|
|
267
|
+
pkg_deepseek_chat_import["deepseek-chat-import"]
|
|
268
268
|
pkg_experimental_api_speech_to_text["experimental-api-speech-to-text"]
|
|
269
269
|
pkg_experimental_auto_review["experimental-auto-review"]
|
|
270
270
|
pkg_experimental_badge_skill_bundle["experimental-badge-skill-bundle"]
|
|
@@ -587,7 +587,6 @@ flowchart TD
|
|
|
587
587
|
pkg_skill_badge --> pkg_skill
|
|
588
588
|
pkg_host_product_telemetry_otel --> pkg_otel
|
|
589
589
|
pkg_persona --> pkg_system_prompt
|
|
590
|
-
pkg_ptc_runtime --> pkg_attachment
|
|
591
590
|
pkg_ptc_runtime --> pkg_sandbox
|
|
592
591
|
pkg_sandbox_local --> pkg_llm
|
|
593
592
|
pkg_sandbox_local --> pkg_sandbox
|
|
@@ -960,12 +959,10 @@ flowchart TD
|
|
|
960
959
|
pkg_creation_recommendations --> pkg_session
|
|
961
960
|
pkg_creation_recommendations --> pkg_skill
|
|
962
961
|
pkg_creation_recommendations --> pkg_tools
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
pkg_cua_windows --> pkg_tools
|
|
968
|
-
pkg_cua_windows --> pkg_user_questions
|
|
962
|
+
pkg_cua --> pkg_attachment
|
|
963
|
+
pkg_cua --> pkg_ptc_runtime_node
|
|
964
|
+
pkg_cua --> pkg_scope
|
|
965
|
+
pkg_cua --> pkg_user_questions
|
|
969
966
|
pkg_experimental_browser_use_chrome_devtools_mcp --> pkg_agent
|
|
970
967
|
pkg_experimental_browser_use_chrome_devtools_mcp --> pkg_browser_use
|
|
971
968
|
pkg_experimental_browser_use_chrome_devtools_mcp --> pkg_system_prompt
|
|
@@ -1133,12 +1130,10 @@ flowchart TD
|
|
|
1133
1130
|
pkg_api_settings_controller --> pkg_settings
|
|
1134
1131
|
pkg_api_settings_controller --> pkg_typert_protocol
|
|
1135
1132
|
pkg_web_app --> pkg_shell_env
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
pkg_cua --> pkg_tool_executor_ptc
|
|
1141
|
-
pkg_cua --> pkg_user_questions
|
|
1133
|
+
pkg_deepseek_chat_import --> pkg_llm
|
|
1134
|
+
pkg_deepseek_chat_import --> pkg_session
|
|
1135
|
+
pkg_deepseek_chat_import --> pkg_session_title
|
|
1136
|
+
pkg_deepseek_chat_import --> pkg_tool_web
|
|
1142
1137
|
pkg_experimental_auto_review --> pkg_agent
|
|
1143
1138
|
pkg_experimental_auto_review --> pkg_agent_instructions
|
|
1144
1139
|
pkg_experimental_auto_review --> pkg_llm
|
|
@@ -1761,7 +1756,7 @@ flowchart TD
|
|
|
1761
1756
|
| [`skill-badge`](../packages/experimental/skill-badge) | `experimental` | [`skill`](../packages/skill/skill) |
|
|
1762
1757
|
| [`host-product-telemetry-otel`](../packages/host/product-telemetry-otel) | `host` | [`otel`](../packages/telemetry/otel) |
|
|
1763
1758
|
| [`persona`](../packages/preset/persona) | `preset` | [`system-prompt`](../packages/core/system-prompt) |
|
|
1764
|
-
| [`ptc-runtime`](../packages/ptc-runtime/ptc-runtime) | `ptc-runtime` | [`
|
|
1759
|
+
| [`ptc-runtime`](../packages/ptc-runtime/ptc-runtime) | `ptc-runtime` | [`sandbox`](../packages/sandbox/sandbox) |
|
|
1765
1760
|
| [`sandbox-local`](../packages/sandbox/sandbox-local) | `sandbox` | [`llm`](../packages/llm/llm), [`sandbox`](../packages/sandbox/sandbox), [`session`](../packages/core/session) |
|
|
1766
1761
|
| [`sandbox-windows-acl`](../packages/sandbox/sandbox-windows-acl) | `sandbox` | [`skill`](../packages/skill/skill), [`subprocess`](../packages/subprocess/subprocess) |
|
|
1767
1762
|
| [`session-persistence-jsonl`](../packages/session/session-persistence-jsonl) | `session` | [`session`](../packages/core/session), [`session-persistence`](../packages/session/session-persistence) |
|
|
@@ -1841,7 +1836,7 @@ flowchart TD
|
|
|
1841
1836
|
| [`workspace-changes`](../packages/deliverables/workspace-changes) | `deliverables` | [`agent`](../packages/core/agent), [`fs`](../packages/fs/fs), [`session`](../packages/core/session), [`subprocess`](../packages/subprocess/subprocess), [`tools`](../packages/core/tools) |
|
|
1842
1837
|
| [`action-cards`](../packages/experimental/action-cards) | `experimental` | [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`tools`](../packages/core/tools), [`typert-protocol`](../packages/typert/protocol) |
|
|
1843
1838
|
| [`creation-recommendations`](../packages/experimental/creation-recommendations) | `experimental` | [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`skill`](../packages/skill/skill), [`tools`](../packages/core/tools) |
|
|
1844
|
-
| [`cua
|
|
1839
|
+
| [`cua`](../packages/experimental/cua) | `experimental` | [`attachment`](../packages/attachment/attachment), [`ptc-runtime-node`](../packages/ptc-runtime/ptc-runtime-node), [`scope`](../packages/core/scope), [`user-questions`](../packages/interaction/user-questions) |
|
|
1845
1840
|
| [`experimental-browser-use-chrome-devtools-mcp`](../packages/experimental/browser-use-chrome-devtools-mcp) | `experimental` | [`agent`](../packages/core/agent), [`browser-use`](../packages/browser-use/browser-use), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools), [`working-directory`](../packages/session/working-directory) |
|
|
1846
1841
|
| [`experimental-browser-use-playwright-mcp`](../packages/experimental/browser-use-playwright-mcp) | `experimental` | [`agent`](../packages/core/agent), [`browser-use`](../packages/browser-use/browser-use), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools), [`working-directory`](../packages/session/working-directory) |
|
|
1847
1842
|
| [`experimental-browser-use-stagehand-native`](../packages/experimental/browser-use-stagehand-native) | `experimental` | [`agent`](../packages/core/agent), [`browser-use`](../packages/browser-use/browser-use), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools) |
|
|
@@ -1875,7 +1870,7 @@ flowchart TD
|
|
|
1875
1870
|
| [`session-query`](../packages/session-query/session-query) | `session-query` | [`brand`](../packages/util/brand), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-persistence`](../packages/session/session-persistence), [`session-projection`](../packages/session/session-projection), [`session-projection-cache`](../packages/session/session-projection-cache), [`session-title`](../packages/session/session-title), [`tool-todo`](../packages/todo/tool-todo) |
|
|
1876
1871
|
| [`api-settings-controller`](../packages/api/settings-controller) | `api` | [`agent-preset-registry`](../packages/preset/agent-preset-registry), [`credentials`](../packages/credentials/credentials), [`native-command`](../packages/util/native-command), [`session`](../packages/core/session), [`settings`](../packages/settings/settings), [`typert-protocol`](../packages/typert/protocol) |
|
|
1877
1872
|
| [`web-app`](../packages/bundle/web-app) | `bundle` | [`shell-env`](../packages/shell/shell-env) |
|
|
1878
|
-
| [`
|
|
1873
|
+
| [`deepseek-chat-import`](../packages/experimental/deepseek-chat-import) | `experimental` | [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-title`](../packages/session/session-title), [`tool-web`](../packages/web/tool-web) |
|
|
1879
1874
|
| [`experimental-auto-review`](../packages/experimental/auto-review) | `experimental` | [`agent`](../packages/core/agent), [`agent-instructions`](../packages/context/agent-instructions), [`llm`](../packages/llm/llm), [`permission-presets`](../packages/interaction/permission-presets), [`session`](../packages/core/session), [`tools`](../packages/core/tools), [`working-directory`](../packages/session/working-directory) |
|
|
1880
1875
|
| [`experimental-forge-session`](../packages/experimental/forge-session) | `experimental` | [`experimental-forge`](../packages/experimental/forge), [`sandbox-policy`](../packages/sandbox/sandbox-policy), [`session`](../packages/core/session), [`session-projection`](../packages/session/session-projection), [`shell`](../packages/shell/shell), [`shell-env`](../packages/shell/shell-env), [`tools`](../packages/core/tools) |
|
|
1881
1876
|
| [`webhook`](../packages/experimental/webhook) | `experimental` | [`agent`](../packages/core/agent), [`agent-default-model`](../packages/core/agent-default-model), [`agent-preset-registry`](../packages/preset/agent-preset-registry), [`llm`](../packages/llm/llm), [`permission-presets`](../packages/interaction/permission-presets), [`session`](../packages/core/session), [`session-title`](../packages/session/session-title), [`workspace`](../packages/workspace/workspace) |
|
|
@@ -266,7 +266,7 @@ flowchart TD
|
|
|
266
266
|
pkg_creation_recommendations["creation-recommendations"]
|
|
267
267
|
pkg_cua["cua"]
|
|
268
268
|
pkg_cua_bundle["cua-bundle"]
|
|
269
|
-
|
|
269
|
+
pkg_deepseek_chat_import["deepseek-chat-import"]
|
|
270
270
|
pkg_experimental_api_speech_to_text["experimental-api-speech-to-text"]
|
|
271
271
|
pkg_experimental_auto_review["experimental-auto-review"]
|
|
272
272
|
pkg_experimental_badge_skill_bundle["experimental-badge-skill-bundle"]
|
|
@@ -589,7 +589,6 @@ flowchart TD
|
|
|
589
589
|
pkg_skill_badge --> pkg_skill
|
|
590
590
|
pkg_host_product_telemetry_otel --> pkg_otel
|
|
591
591
|
pkg_persona --> pkg_system_prompt
|
|
592
|
-
pkg_ptc_runtime --> pkg_attachment
|
|
593
592
|
pkg_ptc_runtime --> pkg_sandbox
|
|
594
593
|
pkg_sandbox_local --> pkg_llm
|
|
595
594
|
pkg_sandbox_local --> pkg_sandbox
|
|
@@ -962,12 +961,10 @@ flowchart TD
|
|
|
962
961
|
pkg_creation_recommendations --> pkg_session
|
|
963
962
|
pkg_creation_recommendations --> pkg_skill
|
|
964
963
|
pkg_creation_recommendations --> pkg_tools
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
pkg_cua_windows --> pkg_tools
|
|
970
|
-
pkg_cua_windows --> pkg_user_questions
|
|
964
|
+
pkg_cua --> pkg_attachment
|
|
965
|
+
pkg_cua --> pkg_ptc_runtime_node
|
|
966
|
+
pkg_cua --> pkg_scope
|
|
967
|
+
pkg_cua --> pkg_user_questions
|
|
971
968
|
pkg_experimental_browser_use_chrome_devtools_mcp --> pkg_agent
|
|
972
969
|
pkg_experimental_browser_use_chrome_devtools_mcp --> pkg_browser_use
|
|
973
970
|
pkg_experimental_browser_use_chrome_devtools_mcp --> pkg_system_prompt
|
|
@@ -1135,12 +1132,10 @@ flowchart TD
|
|
|
1135
1132
|
pkg_api_settings_controller --> pkg_settings
|
|
1136
1133
|
pkg_api_settings_controller --> pkg_typert_protocol
|
|
1137
1134
|
pkg_web_app --> pkg_shell_env
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
pkg_cua --> pkg_tool_executor_ptc
|
|
1143
|
-
pkg_cua --> pkg_user_questions
|
|
1135
|
+
pkg_deepseek_chat_import --> pkg_llm
|
|
1136
|
+
pkg_deepseek_chat_import --> pkg_session
|
|
1137
|
+
pkg_deepseek_chat_import --> pkg_session_title
|
|
1138
|
+
pkg_deepseek_chat_import --> pkg_tool_web
|
|
1144
1139
|
pkg_experimental_auto_review --> pkg_agent
|
|
1145
1140
|
pkg_experimental_auto_review --> pkg_agent_instructions
|
|
1146
1141
|
pkg_experimental_auto_review --> pkg_llm
|
|
@@ -1763,7 +1758,7 @@ flowchart TD
|
|
|
1763
1758
|
| [`skill-badge`](../packages/experimental/skill-badge) | `experimental` | [`skill`](../packages/skill/skill) |
|
|
1764
1759
|
| [`host-product-telemetry-otel`](../packages/host/product-telemetry-otel) | `host` | [`otel`](../packages/telemetry/otel) |
|
|
1765
1760
|
| [`persona`](../packages/preset/persona) | `preset` | [`system-prompt`](../packages/core/system-prompt) |
|
|
1766
|
-
| [`ptc-runtime`](../packages/ptc-runtime/ptc-runtime) | `ptc-runtime` | [`
|
|
1761
|
+
| [`ptc-runtime`](../packages/ptc-runtime/ptc-runtime) | `ptc-runtime` | [`sandbox`](../packages/sandbox/sandbox) |
|
|
1767
1762
|
| [`sandbox-local`](../packages/sandbox/sandbox-local) | `sandbox` | [`llm`](../packages/llm/llm), [`sandbox`](../packages/sandbox/sandbox), [`session`](../packages/core/session) |
|
|
1768
1763
|
| [`sandbox-windows-acl`](../packages/sandbox/sandbox-windows-acl) | `sandbox` | [`skill`](../packages/skill/skill), [`subprocess`](../packages/subprocess/subprocess) |
|
|
1769
1764
|
| [`session-persistence-jsonl`](../packages/session/session-persistence-jsonl) | `session` | [`session`](../packages/core/session), [`session-persistence`](../packages/session/session-persistence) |
|
|
@@ -1843,7 +1838,7 @@ flowchart TD
|
|
|
1843
1838
|
| [`workspace-changes`](../packages/deliverables/workspace-changes) | `deliverables` | [`agent`](../packages/core/agent), [`fs`](../packages/fs/fs), [`session`](../packages/core/session), [`subprocess`](../packages/subprocess/subprocess), [`tools`](../packages/core/tools) |
|
|
1844
1839
|
| [`action-cards`](../packages/experimental/action-cards) | `experimental` | [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`tools`](../packages/core/tools), [`typert-protocol`](../packages/typert/protocol) |
|
|
1845
1840
|
| [`creation-recommendations`](../packages/experimental/creation-recommendations) | `experimental` | [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`skill`](../packages/skill/skill), [`tools`](../packages/core/tools) |
|
|
1846
|
-
| [`cua
|
|
1841
|
+
| [`cua`](../packages/experimental/cua) | `experimental` | [`attachment`](../packages/attachment/attachment), [`ptc-runtime-node`](../packages/ptc-runtime/ptc-runtime-node), [`scope`](../packages/core/scope), [`user-questions`](../packages/interaction/user-questions) |
|
|
1847
1842
|
| [`experimental-browser-use-chrome-devtools-mcp`](../packages/experimental/browser-use-chrome-devtools-mcp) | `experimental` | [`agent`](../packages/core/agent), [`browser-use`](../packages/browser-use/browser-use), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools), [`working-directory`](../packages/session/working-directory) |
|
|
1848
1843
|
| [`experimental-browser-use-playwright-mcp`](../packages/experimental/browser-use-playwright-mcp) | `experimental` | [`agent`](../packages/core/agent), [`browser-use`](../packages/browser-use/browser-use), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools), [`working-directory`](../packages/session/working-directory) |
|
|
1849
1844
|
| [`experimental-browser-use-stagehand-native`](../packages/experimental/browser-use-stagehand-native) | `experimental` | [`agent`](../packages/core/agent), [`browser-use`](../packages/browser-use/browser-use), [`system-prompt`](../packages/core/system-prompt), [`tools`](../packages/core/tools) |
|
|
@@ -1877,7 +1872,7 @@ flowchart TD
|
|
|
1877
1872
|
| [`session-query`](../packages/session-query/session-query) | `session-query` | [`brand`](../packages/util/brand), [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-persistence`](../packages/session/session-persistence), [`session-projection`](../packages/session/session-projection), [`session-projection-cache`](../packages/session/session-projection-cache), [`session-title`](../packages/session/session-title), [`tool-todo`](../packages/todo/tool-todo) |
|
|
1878
1873
|
| [`api-settings-controller`](../packages/api/settings-controller) | `api` | [`agent-preset-registry`](../packages/preset/agent-preset-registry), [`credentials`](../packages/credentials/credentials), [`native-command`](../packages/util/native-command), [`session`](../packages/core/session), [`settings`](../packages/settings/settings), [`typert-protocol`](../packages/typert/protocol) |
|
|
1879
1874
|
| [`web-app`](../packages/bundle/web-app) | `bundle` | [`shell-env`](../packages/shell/shell-env) |
|
|
1880
|
-
| [`
|
|
1875
|
+
| [`deepseek-chat-import`](../packages/experimental/deepseek-chat-import) | `experimental` | [`llm`](../packages/llm/llm), [`session`](../packages/core/session), [`session-title`](../packages/session/session-title), [`tool-web`](../packages/web/tool-web) |
|
|
1881
1876
|
| [`experimental-auto-review`](../packages/experimental/auto-review) | `experimental` | [`agent`](../packages/core/agent), [`agent-instructions`](../packages/context/agent-instructions), [`llm`](../packages/llm/llm), [`permission-presets`](../packages/interaction/permission-presets), [`session`](../packages/core/session), [`tools`](../packages/core/tools), [`working-directory`](../packages/session/working-directory) |
|
|
1882
1877
|
| [`experimental-forge-session`](../packages/experimental/forge-session) | `experimental` | [`experimental-forge`](../packages/experimental/forge), [`sandbox-policy`](../packages/sandbox/sandbox-policy), [`session`](../packages/core/session), [`session-projection`](../packages/session/session-projection), [`shell`](../packages/shell/shell), [`shell-env`](../packages/shell/shell-env), [`tools`](../packages/core/tools) |
|
|
1883
1878
|
| [`webhook`](../packages/experimental/webhook) | `experimental` | [`agent`](../packages/core/agent), [`agent-default-model`](../packages/core/agent-default-model), [`agent-preset-registry`](../packages/preset/agent-preset-registry), [`llm`](../packages/llm/llm), [`permission-presets`](../packages/interaction/permission-presets), [`session`](../packages/core/session), [`session-title`](../packages/session/session-title), [`workspace`](../packages/workspace/workspace) |
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
# After editing either side, bring the other along and re-record with:
|
|
4
4
|
# pnpm run verify-translation-pairing --write docs/subsystems/computer-use.md
|
|
5
5
|
/computer-use:
|
|
6
|
-
en:
|
|
7
|
-
zh:
|
|
6
|
+
en: e02a2e4cc9970cba
|
|
7
|
+
zh: 29aac6c0530a582f
|
|
8
8
|
/computer-use/choose-a-provider:
|
|
9
9
|
en: fa2e0d7b41c0450b
|
|
10
10
|
zh: af9a799711f901e6
|
|
@@ -14,7 +14,7 @@ The CUA provider owns `ctx.cuaAccess` for system-permission status, explicit sys
|
|
|
14
14
|
|---|---|
|
|
15
15
|
| `CuaApplicationId`, `CuaApplicationGrant` | A platform-provided application identity and its displayed saved decision. |
|
|
16
16
|
| `CuaSystemPermission` | Accessibility or Screen Recording, selected by the human. |
|
|
17
|
-
| `CuaPermissionProcess`, `CuaSystemPermissionState` | Native access observations tagged `darwin` or `
|
|
17
|
+
| `CuaPermissionProcess`, `CuaSystemPermissionState` | Native access observations tagged `darwin` or `win32`, with helper process identity. macOS includes permission checks, parent identity and responsible-application metadata when available (falling back to the helper’s own bundle); Windows includes desktop lock, capture availability and elevation status. |
|
|
18
18
|
| `CuaApplicationState` | Saved grants, refused applications, and whether persistence is available. Session-only grants remain internal to the provider. System observations and application icons are queried separately so the page can display each result as it arrives. |
|
|
19
19
|
|
|
20
20
|
The [shared object API](../../packages/experimental/cua/README.md) uses `connectCua` to select an application, then `app.getWindows()` and `app.getWindow(windowId)` to select a window for screenshots and pointer input. Accessibility operations use element IDs from the latest tree for that application handle. Providers declare keyboard scopes and application-level accessibility in `getCapabilities()`.
|
|
@@ -14,7 +14,7 @@ CUA provider 通过 `ctx.cuaAccess` 提供系统权限状态、用户主动申
|
|
|
14
14
|
|---|---|
|
|
15
15
|
| `CuaApplicationId`、`CuaApplicationGrant` | 平台提供的应用身份,以及显示给用户的已保存决定。 |
|
|
16
16
|
| `CuaSystemPermission` | 用户选择申请的辅助功能或屏幕录制权限。 |
|
|
17
|
-
| `CuaPermissionProcess`、`CuaSystemPermissionState` | 以 `darwin` 或 `
|
|
17
|
+
| `CuaPermissionProcess`、`CuaSystemPermissionState` | 以 `darwin` 或 `win32` 标记的原生访问状态和 helper 进程身份。macOS 包含权限检查、父进程身份和责任应用信息(系统无法识别时使用 helper 自身的应用包);Windows 包含桌面锁定、截图可用性和提权状态。 |
|
|
18
18
|
| `CuaApplicationState` | 持久授权、拒绝记录,以及能否持久保存。会话授权只保留在 provider 内部。系统权限和应用图标分别查询,页面在各项结果返回后分别显示。 |
|
|
19
19
|
|
|
20
20
|
调用[共享对象 API](../../packages/experimental/cua/README.zh.md) 时,通过 `connectCua` 连接,选择应用后用 `app.getWindows()` 和 `app.getWindow(windowId)` 选择要截图或进行鼠标操作的窗口。辅助功能操作使用该应用句柄最近一次读取的树中的元素 ID。提供方通过 `getCapabilities()` 声明键盘输入支持的范围,以及是否支持应用级辅助功能。
|
|
@@ -348,6 +348,25 @@ The shipped provider implements the abstract `SessionPersistence` contract (`cre
|
|
|
348
348
|
|
|
349
349
|
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).
|
|
350
350
|
|
|
351
|
+
<a id="ctxdeepseekchatimport--deepseekchatimportservice"></a>
|
|
352
|
+
|
|
353
|
+
### `ctx.deepseekChatImport` — `DeepseekChatImportService`
|
|
354
|
+
|
|
355
|
+
Serves the owner-only export upload route and the limits the browser checks first.
|
|
356
|
+
|
|
357
|
+
```ts cordis-catalog
|
|
358
|
+
/**
|
|
359
|
+
* Report the limits the browser checks before uploading. Only the owner may
|
|
360
|
+
* import, so every other principal is refused.
|
|
361
|
+
* @param signal - Client cancellation or Remote withdrawal.
|
|
362
|
+
* @returns the largest accepted archive size.
|
|
363
|
+
* @throws {RemoteError} `deepseekChatImport/owner-only` for a caller that is not the owner.
|
|
364
|
+
*/
|
|
365
|
+
@Remote limits(signal: AbortSignal): DeepseekChatImportLimits
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
Source: [`packages/experimental/deepseek-chat-import/src/index.ts`](../../packages/experimental/deepseek-chat-import/src/index.ts)
|
|
369
|
+
|
|
351
370
|
<a id="ctxsessionpersistence--sessionpersistence-abstract-seam"></a>
|
|
352
371
|
|
|
353
372
|
### `ctx.sessionPersistence` — `SessionPersistence` (abstract seam)
|
|
@@ -348,6 +348,25 @@ interface SessionPersistenceSnapshot {
|
|
|
348
348
|
|
|
349
349
|
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.zh.md#dispatch-modes), and the framework-inherited `ctx` API lives in [cordis-api/inherited.md](../cordis-api/inherited.md).
|
|
350
350
|
|
|
351
|
+
<a id="ctxdeepseekchatimport--deepseekchatimportservice"></a>
|
|
352
|
+
|
|
353
|
+
### `ctx.deepseekChatImport` — `DeepseekChatImportService`
|
|
354
|
+
|
|
355
|
+
Serves the owner-only export upload route and the limits the browser checks first.
|
|
356
|
+
|
|
357
|
+
```ts cordis-catalog
|
|
358
|
+
/**
|
|
359
|
+
* Report the limits the browser checks before uploading. Only the owner may
|
|
360
|
+
* import, so every other principal is refused.
|
|
361
|
+
* @param signal - Client cancellation or Remote withdrawal.
|
|
362
|
+
* @returns the largest accepted archive size.
|
|
363
|
+
* @throws {RemoteError} `deepseekChatImport/owner-only` for a caller that is not the owner.
|
|
364
|
+
*/
|
|
365
|
+
@Remote limits(signal: AbortSignal): DeepseekChatImportLimits
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
Source: [`packages/experimental/deepseek-chat-import/src/index.ts`](../../packages/experimental/deepseek-chat-import/src/index.ts)
|
|
369
|
+
|
|
351
370
|
<a id="ctxsessionpersistence--sessionpersistence-abstract-seam"></a>
|
|
352
371
|
|
|
353
372
|
### `ctx.sessionPersistence` — `SessionPersistence` (abstract seam)
|
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
en: 337a6580d7571274
|
|
7
7
|
zh: f4ae98899120d122
|
|
8
8
|
/ptc-runtime/the-run-request-in-result-out:
|
|
9
|
-
en:
|
|
10
|
-
zh:
|
|
9
|
+
en: 6dfa7da8b13a4f17
|
|
10
|
+
zh: 09a3c8c4922239ef
|
|
11
11
|
/ptc-runtime/bindings-host-functions-as-program-globals:
|
|
12
12
|
en: 182147ddf388c600
|
|
13
13
|
zh: c0a7d77602c78bcd
|
|
14
14
|
/ptc-runtime/captured-output-and-the-failure-taxonomy:
|
|
15
|
-
en:
|
|
16
|
-
zh:
|
|
15
|
+
en: 8eb1607888ab6efc
|
|
16
|
+
zh: 580c852d17b9413f
|
|
17
17
|
/ptc-runtime/the-service:
|
|
18
18
|
en: a82f828fa006c7e9
|
|
19
19
|
zh: 2279d36867335b57
|
|
@@ -19,15 +19,13 @@ interface PtcRunRequest {
|
|
|
19
19
|
/**
|
|
20
20
|
* The program source, in the runtime's {@link ../index.ts | language}. It
|
|
21
21
|
* follows the provider's programFormat: an async function body supports
|
|
22
|
-
* top-level `await` and `return`; REPL
|
|
22
|
+
* top-level `await` and `return`; REPL and Script programs support top-level
|
|
23
23
|
* declarations, `await`, and a final expression, but not top-level `return`.
|
|
24
24
|
* The Script provider lowers top-level await; its executionInstructions and
|
|
25
25
|
* documentation define retained-binding semantics. The completion value
|
|
26
26
|
* becomes {@link PtcRunResult.value}.
|
|
27
27
|
*/
|
|
28
28
|
program: string
|
|
29
|
-
/** Discard the completion without JSON validation when true; omission preserves the completion value. */
|
|
30
|
-
discardCompletion?: boolean
|
|
31
29
|
/**
|
|
32
30
|
* Object-identity owner for optional in-memory state. Omission requests a fresh
|
|
33
31
|
* environment. Consumers must await runtime.release(owner) when the owner ends.
|
|
@@ -95,12 +93,11 @@ interface PtcRunResult {
|
|
|
95
93
|
*/
|
|
96
94
|
value?: PtcJsonValue
|
|
97
95
|
/**
|
|
98
|
-
* Captured text
|
|
99
|
-
* Each source channel preserves emission order; interleaving
|
|
96
|
+
* Captured text. Each source channel preserves emission order; interleaving
|
|
100
97
|
* across independent channels is backend-dependent. Bounded only as part of
|
|
101
98
|
* the outer result.
|
|
102
99
|
*/
|
|
103
|
-
|
|
100
|
+
logs: string[]
|
|
104
101
|
/** Present iff the run failed; see {@link PtcRunFailure} for the taxonomy. */
|
|
105
102
|
error?: PtcRunFailure
|
|
106
103
|
}
|
|
@@ -108,10 +105,10 @@ interface PtcRunResult {
|
|
|
108
105
|
|
|
109
106
|
```ts type-equiv
|
|
110
107
|
/** Source evaluation form, independent of retained program state. */
|
|
111
|
-
type PtcProgramFormat = 'function-body' | 'repl' | 'script'
|
|
108
|
+
type PtcProgramFormat = 'function-body' | 'repl' | 'script'
|
|
112
109
|
```
|
|
113
110
|
|
|
114
|
-
`programFormat` distinguishes async function bodies, REPL statements,
|
|
111
|
+
`programFormat` distinguishes async function bodies, REPL statements, and scripts. REPL and Script programs accept top-level `await`, declarations, and a final expression; top-level `return` is not supported. The Node Script provider lowers top-level await and awaits the completion value; its [declaration limitations](../../packages/ptc-runtime/ptc-runtime-node/README.md#known-limitations-and-deferred-work) apply to transformed programs. `retainsState` reports memory retention independently of source syntax. `stateOwner` is an in-process object identity for optional retained memory; distinct objects remain isolated. Consumers await `release(owner)` when that owner ends; cleanup failures reject that call. Omitted owners are one-shot, and stateless providers ignore ownership. The [persistent Node provider](../../packages/ptc-runtime/ptc-runtime-node/README.md#persistent-repl) defines reset and recovery behavior; no retained object enters the durable Session format.
|
|
115
112
|
|
|
116
113
|
## Bindings: host functions as program globals
|
|
117
114
|
|
|
@@ -153,7 +150,7 @@ interface PtcBindingNamespace {
|
|
|
153
150
|
* words, so the same namespace list works against every backend regardless
|
|
154
151
|
* of `language` — a JS-only spelling like `$tools` is rejected by design,
|
|
155
152
|
* not just by the Python backend. Names that satisfy the identifier rule but
|
|
156
|
-
* name a backend-owned slot (`RESERVED_BINDING_GLOBALS`, e.g. `
|
|
153
|
+
* name a backend-owned slot (`RESERVED_BINDING_GLOBALS`, e.g. `console`,
|
|
157
154
|
* `__dsh_main__`) are also refused everywhere; see its declaration for the
|
|
158
155
|
* exact set and why each entry is reserved.
|
|
159
156
|
*/
|
|
@@ -174,7 +171,7 @@ type PtcJsonValue = null | boolean | number | string | PtcJsonValue[] | { [key:
|
|
|
174
171
|
/**
|
|
175
172
|
* One host-side function exposed to the program as an async callable. The
|
|
176
173
|
* runtime bridges calls to it (possibly across a serialization boundary), so
|
|
177
|
-
* `args`
|
|
174
|
+
* `args` and the resolution value MUST be lossless JSON. A runtime rejects a
|
|
178
175
|
* lossy or non-cloneable value with a descriptive error rather than corrupting
|
|
179
176
|
* the run. No seam-level byte cap applies to a binding resolution. A rejection
|
|
180
177
|
* of this function surfaces inside the program as a rejection of the
|
|
@@ -185,29 +182,7 @@ type PtcBindingFunction = (args: unknown) => Promise<PtcJsonValue>
|
|
|
185
182
|
|
|
186
183
|
## Captured output and the failure taxonomy
|
|
187
184
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
```ts public-api
|
|
191
|
-
/** A stored image readable from the program's execution environment. */
|
|
192
|
-
declare class PtcImage {
|
|
193
|
-
readonly [key: string]: PtcJsonValue;
|
|
194
|
-
/** Absolute attachment file path readable in the execution world. */
|
|
195
|
-
readonly path: string;
|
|
196
|
-
/** Stored image selected when the program inspects this value. */
|
|
197
|
-
readonly attachment: Readonly<ImageAttachmentRef>;
|
|
198
|
-
/**
|
|
199
|
-
* Describe one immutable image file in the execution world.
|
|
200
|
-
* @param path - Absolute path to the stored image.
|
|
201
|
-
* @param attachment - Reference to the immutable stored image.
|
|
202
|
-
*/
|
|
203
|
-
constructor(path: string, attachment: ImageAttachmentRef);
|
|
204
|
-
}
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
```ts type-equiv
|
|
208
|
-
/** Raw text fragments and inspected images in emission order; concatenate adjacent text without separators. */
|
|
209
|
-
type PtcOutput = { type: 'text'; text: string } | { type: 'image'; attachment: ImageAttachmentRef }
|
|
210
|
-
```
|
|
185
|
+
Logs are plain strings. Each source channel preserves emission order, while interleaving across independent channels is backend-dependent because channel metadata is not part of the seam. The runtime captures the program's console and stream output, and consumers render only the text. Implementations cap the serialized outer log-array plus completion-value or failure-message payload; fixed result-envelope syntax and consumer presentation whitespace are not part of that variable-payload ledger. Overflow is an explicit failure rather than in-band value substitution.
|
|
211
186
|
|
|
212
187
|
Failure kinds are **orthogonal outcomes reported independently** (per [defensive-patterns](../defensive-patterns/general.md)): a budget expiry is not an exception, an abort is not a timeout, and a substrate death (e.g. OOM) is neither:
|
|
213
188
|
|
|
@@ -262,21 +237,6 @@ Registers one `ctx.ptcRuntime` implementation. Program, budget, abort, and subst
|
|
|
262
237
|
*/
|
|
263
238
|
release(owner: object): Promise<void>
|
|
264
239
|
|
|
265
|
-
/**
|
|
266
|
-
* Register source evaluated once when each execution environment is created.
|
|
267
|
-
* Registration must precede the first run admission; only one initializer may
|
|
268
|
-
* be registered. Current bindings are installed before initialization. Its
|
|
269
|
-
* completion is discarded; logs, timeout, cancellation and output bounds share
|
|
270
|
-
* the first run. Initialization failure discards the environment without
|
|
271
|
-
* executing the user program or rolling back external effects.
|
|
272
|
-
* @param program - Initialization source in the provider's language and format.
|
|
273
|
-
* @returns An idempotent async disposer that stops admission, cancels and drains
|
|
274
|
-
* admitted runs, and releases environments. Failed cleanup blocks execution
|
|
275
|
-
* until the disposer succeeds on retry. The caller owns this disposer.
|
|
276
|
-
* @throws When unsupported, registered twice, registered after admission, or invalid.
|
|
277
|
-
*/
|
|
278
|
-
registerEnvironmentInitializer(program: string): () => Promise<void>
|
|
279
|
-
|
|
280
240
|
/**
|
|
281
241
|
* Resolve supported options and provider defaults before execution.
|
|
282
242
|
* @param request - Program, bindings, cancellation and optional execution choices.
|