dsh-creator-mode-plus 0.3.8

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/AGENTS.md ADDED
@@ -0,0 +1,40 @@
1
+ # Creator Mode+ repository orders
2
+
3
+ This repository contains only the DSH-side fixed bridge and its user preset. DSHX outside the Host is the supervisor. Official DeepSeek Harness runtime source outranks this repository when contracts disagree.
4
+
5
+ Read [docs/bridge-contract.md](docs/bridge-contract.md) and [docs/dshx-v0.7-alignment.md](docs/dshx-v0.7-alignment.md) before changing tool arguments, lifecycle behavior, compatibility ranges, installation, migration, or Harness-update guidance.
6
+
7
+ ## Change gates
8
+
9
+ - Keep the model-facing surface to the ten named tools, including `dshx_hot_reload` and the session-bound `dshx_browser_open`. Every argument must remain schema-bounded and independently allowlisted in `src/runner.js`. Test the exact argv behind all ten tools; a registration-only test is insufficient.
10
+ - `dshx_hot_reload` accepts only a claimed plugin id. Derive Host/profile/port and session provenance inside the bridge. Require checked same-PID replacement and disposal evidence; it grants no shell, arbitrary path, or process-control authority. Module replacement never proves feature behavior.
11
+ - Require the complete stable DSHX `>=0.7.8 <0.8.0` contract, not only a matching version string. Atomic same-Home Host discovery/attach, identity-bound start/restart/update gates, isolated verification Home, Creator, watched-plugin removal, external safe profile-bundle removal, proactive Guardian integrity quarantine, RC2 boot-manifest activation, managed-shell, Harness Update Assistant, and their knowledge contracts must be present before the bridge or installer mutates anything.
12
+ - Preserve bridge-v2 provenance: session id comes from `exec.agent.id`, not model input. Claim one plugin per session before any named operation; different plugins may run concurrently, while the same plugin fails closed for a second owner.
13
+ - Preserve workspace provenance: scaffold destination comes from `exec.agent.session.header.cwd`, never model input. If the Harness plugin path is outside that workspace, DSHX owns the atomic source-plus-symlink transaction.
14
+ - Preserve automatic session-start Guardian arm, agent-dispose claim release, adopted-launcher lifetime tracking, exact-session recovery steering, and incident acknowledgement. Never register or wrap Host signal handlers.
15
+ - Keep Host start, stop, restart, arbitrary shell, arbitrary argv, paths, profile selection, and ports outside model input.
16
+ - Treat App, direct CLI, and dshx as launchers for one long-lived Web Host per `DSH_HOME`. Duplicate/unknown Host visibility fails closed; isolated verification must never be retained.
17
+ - Keep Harness `update prepare`, `verify`, `apply`, and `rollback` outside the Creator session. DSHX v0.7 permits only read-only `update plan` from a managed shell; this does not become a bridge update tool.
18
+ - Preserve the ordered `activate-new-client` DSHX operation; profile linking and resolution happen before watched-patch mutation.
19
+ - Preserve the `dshx_remove_plugin` order: quarantine/remove the watched Host row, prove same-PID absence, use the official profile remover while the dependency exists, prove dependency/link absence, and detach only target-verified plugin-owned symlinks. Partial attempts resume from durable quarantine without rerunning package removal for an already-absent dependency. Preserve source and never expose recursive source deletion.
20
+ - Keep boot-captured bundle removal outside the ten-tool bridge. Creator Mode+ may hand it to external `dshx plugin remove`, but must never expose that command through the managed shell or reinterpret it as `dshx_remove_plugin` watched-row success.
21
+ - Keep the preset-scoped bash guard narrow: block claimed plugin-root, Harness-link, and active-profile teardown while allowing ordinary file/component cleanup inside a plugin. Guardian must independently quarantine a claimed watched row when its profile link disappears.
22
+ - Keep Host recovery outside DSH and bounded to one restart plus a crash-loop fuse. Official client-Loader recovery must remain same-origin, Host-stamped, uniquely attributed, quarantined before reload, and separate from arbitrary render/visual/function failures. Never expose internal `creator watch/release/disarm/client-failure/recovery` argv as model inputs.
23
+ - Treat preset generations as concurrent. Any process-global route or resource must use a Host-scoped lease shared across independently loaded module generations, and must have a regression test that mounts two generations before either is disposed.
24
+ - A managed upgrade that does not change `agent.cordis.yml` bytes must preserve that file's exact filesystem stamp. Do not retrigger preset generation for skill, metadata, or bundled-asset-only changes.
25
+ - Route structured outcomes by scope. A checked server with only module-HMR evidence pending returns HOT_RELOAD_READY and its next fixed action. Browser-adapter failures block browser verification, not independent activation. Real source, ownership, authentication and Host-identity failures block their dependent operation.
26
+ - Edit only this package and user-owned presets. Never patch Harness core or shipped presets.
27
+ - Retain source, Host, client-manifest, page-load, and visual evidence internally. User-facing updates state plugin completion, verified features and remaining work; expose operational details only for a user question or required user action.
28
+
29
+ ## Release gate
30
+
31
+ Run `npm run check`, `DSHX_HARNESS=<absolute-checkout> npm run test:native`, `npm run verify:dshx -- --harness <absolute-checkout>`, `npm run verify:harness-install -- --harness <absolute-checkout>`, DSHX `check <absolute-package-path> --harness <absolute-checkout>`, and `npm pack --dry-run`. Inspect the exact staged paths before committing. A release is ready only when every fixed-tool argv and internal lifecycle hook traverses the allowlist, and provenance, cross-generation route leasing, same-origin Loader recovery, recovery steering, full v0.7 capability attestation, real shipped-Standard install, fresh-install, stamp-stable managed-upgrade, legacy-migration, and package-contract tests pass. Report RC2 static/package acceptance separately from live Host, page-load, and visual acceptance.
32
+
33
+ ## User-confirmed takeover
34
+
35
+ `dshx_request_takeover({name})` is the only model-facing handoff entry. It uses
36
+ the public `userQuestions` service; an approval/request auto-allow or model
37
+ boolean is not confirmation. A Host-lifetime, durable ownership fence blocks
38
+ all tools in revoked old sessions except status and a new takeover request;
39
+ this is separate from the narrow destructive-shell guard. It persists across
40
+ preset generations, and never deletes session locks or restarts the Host.
package/CHANGELOG.md ADDED
@@ -0,0 +1,104 @@
1
+ # Changelog
2
+
3
+ ## 0.3.8 - 2026-09-21
4
+
5
+ - Add `dshx_request_takeover`: show the actual claim owner in the current conversation and transfer only after an explicit answer through the native user-question service. Cancellation is the default.
6
+ - Stop and await the old session, its runtime-owned children, jobs and terminals before atomic DSHX transfer; keep durable old-session fences across preset reloads.
7
+ - Bind each confirmation to one claim snapshot and one short-lived private CLI grant; reject stale confirmation, grant replay, unknown owners and incomplete stopping.
8
+ - Require DSHX `>=0.7.8 <0.8.0` and attest its takeover capability. Keep all ten model tools schema-bounded.
9
+ - Verify native questions, Core guards, jobs and actual CLI processes with `npm run test:native` against an explicit Harness checkout. Human UI click-through acceptance remains unverified; automated answers are not human acceptance.
10
+
11
+ ## 0.3.7 - 2026-09-15
12
+
13
+ - Verify the conversational create, activate, server hot-reload and remove flow with DSHX 0.7.7 on the live RC2 Host. Pair new-client cache recovery with that DSHX version.
14
+
15
+ - Pair self-upgrade with the explicit external DSHX mixed-mount transaction when root and session instances share the Creator module.
16
+
17
+ - Continue checked server activation through an explicit HOT_RELOAD_READY state and fixed next action; preserve the original CLI code for old evidence-only plans.
18
+ - Scope browser-adapter failures to verification and retain independent activation actions.
19
+ - Rewrite the Agent workflow with branch references, persistent installation authorization and concrete feature acceptance.
20
+ - Preserve the established fixed bridge and native approval guards for ordinary Creator sessions.
21
+
22
+ ## 0.3.6 - 2026-09-11
23
+
24
+ - Adapt the user preset to Harness 0.1.5-rc.2 persona config: write `prefix`/`suffix` instead of the removed `text` field. A leftover `text` composition is migrated on `--upgrade` and again when the Host plugin loads, so other installs do not have to edit DSH source.
25
+ - Fresh installs from the current Standard preset use the official 0.1.5 persona shape; RC1 `text` Standard copies still install and are rewritten to `prefix`.
26
+
27
+ ## 0.3.5 - 2026-09-11
28
+
29
+ - Attest DSHX 0.7.6's Harness `dsh-v0.1.5-rc.2` plugin contract (`compat-0.1.5` / `compat-015-*`) on the same Creator Bridge v2 range `>=0.7.5 <0.8.0`.
30
+ - Document the authenticated Web line through `0.1.5-rc.2`. Live Host, page-load, and visual acceptance remain separate evidence.
31
+
32
+ ## 0.3.4 - 2026-09-06
33
+
34
+ - Require DSHX `>=0.7.5 <0.8.0` and attest the atomic same-Home operation lock, PID/start-time/Home/profile/root binding, post-spawn discovery, and apply/rollback live-Host guard.
35
+ - Keep Creator Bridge v2 and its seven fixed tools unchanged; Host process control and mutating Harness update stages remain external-supervisor-only.
36
+ - Support Harness 0.1.2-rc.1's relocated shipped Standard preset and authenticated Host proofs through the public Connection service. Credentials stay in the child process environment, outside model arguments and output.
37
+ - An already-loaded older server bridge needs the server activation branch; ordinary watched configuration and new-client development do not automatically require Host restarts. Plugin-specific functional correctness remains separately tested.
38
+
39
+ ## 0.3.3 - 2026-09-01
40
+
41
+ - Require the complete DSHX `>=0.7.4 <0.8.0` surface, including same-Home Web Host discovery/attach, three-state PID/port probes, and temporary-Home `verify-boot` teardown.
42
+ - Teach the managed skill that App, direct `dsh web`, and dshx are launchers for one long-lived Host; collision or unknown visibility is a stop condition and `--keep` is unsafe.
43
+ - Keep the seven-tool bridge unchanged. Managed skill/metadata refresh remains stamp-stable when the user's preset composition is unchanged, so no immediate Host restart is required.
44
+
45
+ ## 0.3.2 - 2026-08-31
46
+
47
+ - Require the complete DSHX `>=0.7.3 <0.8.0` surface, including the external `dshx plugin remove` profile-bundle transaction and its same-PID/tombstone guards.
48
+ - Teach Creator Mode+ to distinguish its fixed watched-row `dshx_remove_plugin` tool from boot-captured bundle removal, which is handed to the external supervisor without adding an eighth model tool.
49
+ - Keep managed preset composition stamp-stable; a running Host may load the stricter bridge preflight on its next normal App reopen instead of restarting only for this metadata/skill refresh.
50
+
51
+ ## 0.3.1 - 2026-08-26
52
+
53
+ - Add `dshx_remove_plugin`, the seventh fixed tool. It deactivates the watched Host row, proves same-PID absence, runs official profile cleanup, detaches only target-verified symlinks, and preserves source. RC8 partial removals resume from durable quarantine and safely handle a package-manager orphan link without rerunning removal for an already-absent dependency.
54
+ - Add a preset-scoped monotonic bash guard for claimed plugin-root, Harness-link, and active-profile teardown while leaving ordinary component/file cleanup available.
55
+ - Require DSHX `>=0.7.2 <0.8.0`, including proactive Guardian quarantine when a claimed watched client loses its profile link while the Host is still healthy.
56
+ - Add regression coverage for the exact failure chain that previously left stale patch/profile registration and broke the next DSH cold boot.
57
+
58
+ ## 0.3.0 - 2026-08-26
59
+
60
+ - Align the standalone bridge with the complete stable DSHX `>=0.7.1 <0.8.0` contract while keeping Creator Bridge v2 at six bounded model-facing tools.
61
+ - Require the RC2-compatible boot-manifest surface that recognizes both `window.__DSH_BOOT__` and `globalThis["__DSH_BOOT__"]` before any bridge or installer mutation.
62
+ - Unblock fresh client creation by enforcing scaffold → implement/build → `dshx_check` → `dshx_activation_plan` → same-PID activation; an unbuilt client scaffold is no longer asked to pass the plan gate.
63
+ - Replace version-only acceptance with a fail-closed capability preflight covering Creator claims/scaffold, Guardian, seven-surface activation, managed-shell policy, Harness Update Assistant, and their knowledge contracts.
64
+ - Make fresh install, managed upgrade, and legacy migration refuse an old or incomplete DSHX before writing user preset state; report the accepted DSHX version, bridge version, and contract id.
65
+ - Add a real-checkout verifier that probes DSHX's CLI version and contract markers, plus a portable `dshx.yml` so DSHX v0.7 can check this package directly on the current RC2 line.
66
+ - Teach the managed preset skill the Harness update state machine: only read-only `update plan` may run inside the session; `prepare`, `verify`, `apply`, `rollback`, and process control remain externally supervised.
67
+ - Expand evidence language with preset roster/session layers and keep candidate verification, local apply, live runtime acceptance, and production activation separate.
68
+ - Document the RC8-to-RC2 compatibility line and the one controlled server-branch restart required when a running Host upgrades from 0.2.x to 0.3.0.
69
+ - Test Node 22.19 and Node 24 in CI and package the compatibility verifier and DSHX manifest.
70
+
71
+ ## 0.2.2 - 2026-08-21
72
+
73
+ - Fix the Bridge v2 allowlist so the registered `dshx_scaffold` and `dshx_activation_plan` tools can reach their exact four-argument CLI forms.
74
+ - Execute every fixed tool argv and internal session lifecycle hook through the allowlist in release tests.
75
+ - Treat a fixed-tool `outside bridge v2` rejection as a bridge integrity defect that stops the workflow without manual mounting or inferred downstream success.
76
+ - Require DSHX 0.6.2 and scaffold new source in the trusted writable session workspace, with an automatic fail-closed `my-plugins` link when Harness lives elsewhere.
77
+ - Scaffold before planning a new target, consult the DSHX knowledge bundle before broad source exploration, and stop speculative mutation when live behavior is already confirmed.
78
+
79
+ ## 0.2.1 - 2026-08-21
80
+
81
+ - Share the fixed client-failure route across concurrent preset generations instead of registering one exact Host route per generation.
82
+ - Keep the newest live generation behind the shared route and unregister it only after the last generation is disposed.
83
+ - Preserve the exact `agent.cordis.yml` filesystem stamp when a managed upgrade changes only bundled assets or metadata, avoiding an unnecessary preset generation.
84
+ - Document the one-time external Host restart required when upgrading an already-mounted 0.2.0 or older generation, whose route predates the shared broker.
85
+
86
+ ## 0.2.0 - 2026-08-20
87
+
88
+ - Upgrade to Creator Bridge v2 and require DSHX `>=0.6.0 <0.7.0`.
89
+ - Add trusted session/call/Host provenance and one-plugin-per-session claims.
90
+ - Allow concurrent Creator+ sessions on different plugins while serializing only live activation.
91
+ - Arm the external Guardian on session start and release claims on disposal without registering or wrapping Host signal handlers.
92
+ - Preserve the adopted App launcher's lifetime across Guardian replacements; launcher exit ends recovery and its replacement.
93
+ - Rely on DSHX's managed-shell boundary so stale Creator conversations cannot invoke raw Host mutation or process control.
94
+ - Deliver quarantined recovery incidents back to the exact persisted session with plugin-source steering and acknowledgement.
95
+ - Add a same-origin browser sentry and Host-stamped fixed route for official Loader failures; reload only after unique attribution, quarantine, and live-manifest absence.
96
+ - Keep all Host recovery external and bounded; no model-facing process control was added.
97
+
98
+ ## 0.1.0 - 2026-08-20
99
+
100
+ - Publish Creator Mode+ as an independent DSH plugin and user preset.
101
+ - Expose five fixed DSHX bridge operations with no Host process control.
102
+ - Add fail-closed Harness discovery and DSHX `>=0.5.1 <0.6.0` compatibility gating.
103
+ - Preserve safe new-client ordering and layered activation evidence.
104
+ - Add transactional fresh install, managed upgrade, and bundled-DSHX migration.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 aa2246740
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.en.md ADDED
@@ -0,0 +1,83 @@
1
+ # Creator Mode+
2
+
3
+ [中文](README.md)
4
+
5
+ Pick Creator Mode+ in a normal DeepSeek Harness Web session. Ten fixed tools scaffold, check, mount, and uninstall a file-backed plugin in a safe order.
6
+
7
+ Creator Mode+ 0.3.8 is paired with DSHX 0.7.8 and adds user-confirmed claim takeover in the current conversation. New-client activation, server hot reload within the same conversation, and removal have been verified on DSH `dsh-v0.1.5-rc.2`. The bridge compatibility range remains [DSHX](https://github.com/aa2246740/dsh-external-plugin-devkit) `>=0.7.8 <0.8.0`; both the version range and the human-confirmed takeover capability are checked before use.
8
+
9
+ ![Open Creator Mode+ in the official WebUI](docs/screenshots/mode-picker.gif)
10
+
11
+ ![Creator Mode+ in the mode list](docs/screenshots/mode-picker.png)
12
+
13
+ ![Creator Mode+ selected](docs/screenshots/mode-selected.png)
14
+
15
+ ## Use it in a conversation
16
+
17
+ Select a workspace and **Creator Mode+**, then state the feature and delivery target:
18
+
19
+ > Create a page counter plugin and install it in this DSH. Then add a server tool to it.
20
+
21
+ The Agent creates source, builds, checks, selects activation and continues. Server changes use same-process hot reload; a new client entry needs a page refresh. Correct build failures before retrying. A missing browser adapter blocks its UI check only. An explicit installation request carries through these steps.
22
+
23
+ ## Install
24
+
25
+ Do this outside an Agent session, in your Harness checkout:
26
+
27
+ ```sh
28
+ cd /path/to/deepseek-harness
29
+ git clone https://github.com/aa2246740/dsh-creator-mode-plus.git tools/dsh-creator-mode-plus
30
+ pnpm dsh plugin --profile web add link:./tools/dsh-creator-mode-plus
31
+ node tools/dsh-creator-mode-plus/scripts/install.mjs --harness "$PWD"
32
+ ```
33
+
34
+ The installer writes a user preset. It leaves the shipped Standard and Creator presets alone. Open the official WebUI, confirm Creator Mode+ is in the mode list, and try it in a new session. Adding a profile dependency is not by itself a reason to restart the Host.
35
+
36
+ Contracts: [Bridge v2](docs/bridge-contract.md) and [DSHX v0.7 alignment](docs/dshx-v0.7-alignment.md).
37
+
38
+ ![Installer writing the user preset](docs/screenshots/install.png)
39
+
40
+ ## The ten tools
41
+
42
+ | Tool | What |
43
+ |---|---|
44
+ | `dshx_browser_open` | Open the authenticated WebUI through the session-approved adapter, then continue UI verification |
45
+ | `dshx_status` | Read supervisor and Host. No process changes |
46
+ | `dshx_claim_plugin` | This session owns one plugin |
47
+ | `dshx_scaffold` | Create a project in the session workspace. Does not overwrite |
48
+ | `dshx_check` | Check interfaces, build artifacts and activation prerequisites |
49
+ | `dshx_activation_plan` | Select activation for the changed component |
50
+ | `dshx_activate_new_client` | Install a new client and verify its entry |
51
+ | `dshx_remove_plugin` | Unload from the current Host, then clear the profile. Source stays |
52
+ | `dshx_hot_reload` | Activate server code changes |
53
+
54
+ Whole-plugin removal goes through `dshx_remove_plugin` only. Running the installer again on an existing install does not overwrite.
55
+
56
+ ![Duplicate install refused](docs/screenshots/already-installed.png)
57
+
58
+ Harness `update prepare` / `verify` / `apply` / `rollback` are not among the ten tools. They stay with an external DSHX supervisor. Inside the session, managed shell may only read `update plan`.
59
+
60
+ ## Upgrade
61
+
62
+ ```sh
63
+ cd /path/to/deepseek-harness/tools/dsh-creator-mode-plus
64
+ git pull --ff-only
65
+ node scripts/install.mjs --harness /path/to/deepseek-harness --upgrade
66
+ npm run verify:dshx -- --harness /path/to/deepseek-harness
67
+ ```
68
+
69
+ ## Develop
70
+
71
+ ```sh
72
+ npm test
73
+ npm run check
74
+ DSHX_HARNESS=/absolute/path/to/deepseek-harness npm run test:native
75
+ npm run verify:dshx -- --harness /absolute/path/to/deepseek-harness
76
+ npm run verify:harness-install -- --harness /absolute/path/to/deepseek-harness
77
+ ```
78
+
79
+ ## License
80
+
81
+ MIT.
82
+
83
+ `dshx_request_takeover({name})` asks through the current conversation’s user-question UI, then drains old work and atomically transfers ownership. This requires the `human-confirmed-creator-takeover` capability in addition to the version range.
package/README.md ADDED
@@ -0,0 +1,82 @@
1
+ # Creator Mode+
2
+
3
+ [English](README.en.md)
4
+
5
+ 在 DeepSeek Harness 的普通 Web 会话里选 Creator Mode+,用十个固定工具把一个文件化插件搭起来、检查、挂载,也能按安全顺序卸载。
6
+
7
+ Creator Mode+ 0.3.8 配套 DSHX 0.7.8,新增当前对话内的用户确认接管。此前已在 DSH `dsh-v0.1.5-rc.2` 上验证新插件加载、同一会话内服务端热更新和卸载。底层桥接兼容范围为 [DSHX](https://github.com/aa2246740/dsh-external-plugin-devkit) `>=0.7.8 <0.8.0`,并在使用前核对用户确认接管能力。
8
+
9
+ ![在官方 WebUI 里打开 Creator Mode+](docs/screenshots/mode-picker.gif)
10
+
11
+ ![模式列表里的 Creator Mode+](docs/screenshots/mode-picker.png)
12
+
13
+ ![已选中 Creator Mode+](docs/screenshots/mode-selected.png)
14
+
15
+ ## 在对话里使用
16
+
17
+ 选择工作区和 **Creator Mode+**,直接说明功能和安装目标,例如:
18
+
19
+ > 做一个页面计数按钮插件,装到当前 DSH;完成后继续给它加一个服务端工具。
20
+
21
+ Agent 会创建源码、构建检查、选择激活方式并继续执行。服务端修改使用同进程热更新;新客户端首次加载需要刷新页面。构建失败后先修复再重试,浏览器适配器缺失只影响对应的界面验收。明确的安装请求会沿用到这些步骤。
22
+
23
+ ## 安装
24
+
25
+ 在 Agent 会话外面做。进你的 Harness 仓库:
26
+
27
+ ```sh
28
+ cd /path/to/deepseek-harness
29
+ git clone https://github.com/aa2246740/dsh-creator-mode-plus.git tools/dsh-creator-mode-plus
30
+ pnpm dsh plugin --profile web add link:./tools/dsh-creator-mode-plus
31
+ node tools/dsh-creator-mode-plus/scripts/install.mjs --harness "$PWD"
32
+ ```
33
+
34
+ 安装器只写用户 preset,不动随仓库带的 Standard / Creator。打开官方 WebUI,检查 Creator Mode+ 是否出现在模式列表,并在新会话验收。不要仅因增加 profile 依赖就重启 Host。
35
+
36
+ 合同见 [Bridge v2](docs/bridge-contract.md) 和 [DSHX v0.7 alignment](docs/dshx-v0.7-alignment.md)。
37
+
38
+ ![安装器把 preset 写进用户目录](docs/screenshots/install.png)
39
+
40
+ ## 十个工具
41
+
42
+ | 工具 | 做什么 |
43
+ |---|---|
44
+ | `dshx_browser_open` | 通过当前会话已批准的适配器完成私有认证交接,然后继续界面验收 |
45
+ | `dshx_status` | 读 supervisor 和 Host,不动进程 |
46
+ | `dshx_claim_plugin` | 这个会话独占一个插件 |
47
+ | `dshx_request_takeover` | 在当前对话请用户确认,停止旧任务后接管认领 |
48
+ | `dshx_scaffold` | 在会话工作区建项目,不覆盖已有的 |
49
+ | `dshx_check` | 检查接口、构建产物和激活前置条件 |
50
+ | `dshx_activation_plan` | 确定本次修改的激活方式 |
51
+ | `dshx_activate_new_client` | 安装并验证新客户端插件的入口 |
52
+ | `dshx_remove_plugin` | 先让当前 Host 脱载,再清 profile;只断开链接,保留源码 |
53
+ | `dshx_hot_reload` | 激活服务端代码修改 |
54
+
55
+ 整插件删除只走 `dshx_remove_plugin`。已经装着再跑安装器,它不会覆盖。
56
+
57
+ ![重复安装被拒绝](docs/screenshots/already-installed.png)
58
+
59
+ Harness 更新的 `prepare` / `verify` / `apply` / `rollback` 不在这十个工具里,交给外部 DSHX supervisor。会话内只允许通过 managed shell 读 `update plan`。
60
+
61
+ ## 升级
62
+
63
+ ```sh
64
+ cd /path/to/deepseek-harness/tools/dsh-creator-mode-plus
65
+ git pull --ff-only
66
+ node scripts/install.mjs --harness /path/to/deepseek-harness --upgrade
67
+ npm run verify:dshx -- --harness /path/to/deepseek-harness
68
+ ```
69
+
70
+ ## 开发
71
+
72
+ ```sh
73
+ npm test
74
+ npm run check
75
+ DSHX_HARNESS=/absolute/path/to/deepseek-harness npm run test:native
76
+ npm run verify:dshx -- --harness /absolute/path/to/deepseek-harness
77
+ npm run verify:harness-install -- --harness /absolute/path/to/deepseek-harness
78
+ ```
79
+
80
+ ## License
81
+
82
+ MIT。