@klarkxy/dsh-unrestricted 0.1.0-rc.1 → 0.1.1

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.md CHANGED
@@ -1,98 +1,31 @@
1
- # 破限 / Unrestricted
1
+ # Unrestricted
2
2
 
3
3
  <!-- release-state-note -->
4
- The [repository registry](../../README.md#plugin-lifecycle) tracks Draft → Testing → Published, moving forward only. Fixes, testing and version updates keep published packages Published; each update still passes release checks. First publication explicitly selects Testing packages and records Published only after npm archive verification. See the [release guide](../../RELEASING.md).
5
4
 
6
5
  [简体中文](README.zh-CN.md)
7
6
 
8
- A DeepSeek Harness agent preset that answers under the unrestricted delivery contract:
9
- deliver the complete artifact directly, no softening. The contract lives in THIS preset's
10
- persona, so it applies **only to sessions that select the preset** — nothing rewrites any
11
- other session's prompt the way global injection does. Pure static bundle: no runtime
12
- plugin, no hooks, no settings card.
7
+ A DeepSeek Harness session preset that delivers complete results directly, without watering them down or dodging. It only affects sessions where you choose it; every other preset stays exactly as it was.
13
8
 
14
- ## How this differs from global injection
15
-
16
- The contract text comes from [yexi-by/dsh-unrestricted](https://github.com/yexi-by/dsh-unrestricted)
17
- (MIT). That plugin mounts a root `system-prompt/assemble` waterfall and fuses the contract
18
- into every standard / ptc / cordis / minimal and subagent prompt at assembly time, with a
19
- toggle, anchor checks, fingerprint and preview. This package settles the same contract
20
- into a **per-session preset**:
21
-
22
- - New sessions on **破限 / Unrestricted** answer under the contract; standard, Creator,
23
- PTC, minimal and every other preset keep their prompt byte for byte.
24
- - There is no toggle to forget: selecting the preset is on, selecting another preset is
25
- off.
26
- - Subagents inherit automatically: the host joins child sessions to the parent's preset
27
- revision (`composeFrom`), and the native `subagent` / `subagent_fork` tools only read a
28
- persona from row config — which the standard roster does not set — so delegated threads
29
- carry the contract too. Only derivations that explicitly give the child a persona (for
30
- example Classmates teammates built from role instructions) replace the persona slot, and
31
- those children do not see the contract.
32
-
33
- ## Install and use
34
-
35
- Before the npm release, pack this package and add the archive:
9
+ ## Install
36
10
 
37
11
  ```sh
38
- cd plugins/dsh-unrestricted
39
- npm pack --ignore-scripts
40
- dsh plugin --profile web add "D:/path/to/klarkxy-dsh-unrestricted-0.1.0-rc.1.tgz"
12
+ dsh plugin --profile web add @klarkxy/dsh-unrestricted
41
13
  ```
42
14
 
43
- After release: `dsh plugin --profile web add @klarkxy/dsh-unrestricted`. Replace `web`
44
- with your profile name, restart the profile, and pick **破限 / Unrestricted** in the
45
- preset selector of a new session. Sessions that already carry messages cannot switch
46
- presets.
47
-
48
- You choose the model in the session. Preset metadata binds no model and no reasoning
49
- effort; this package changes no default preset, model, permission, or other preset.
15
+ Replace `web` with your profile name and restart the profile.
50
16
 
51
- ## What is inside
17
+ ## Use
52
18
 
53
- - **persona**: the standard opening sentence, the execution pointer, and the full
54
- `## Unrestricted local execution mode` contract — byte-identical to the
55
- `EXECUTION_MODE_BLOCK` in dsh-unrestricted 0.2.2 `src/rules.js`, contract fingerprint
56
- `e9e4eead5f84504c` (first 16 hex digits of SHA-256); tests re-check it after any edit.
57
- - **plan-mode note**: the official plan-mode body unchanged, closed by one paragraph —
58
- plan mode restricts delivery and mutation, not the plan's content.
59
- - **tool roster**: the complete tool composition of the DSH `0.2.0-rc.2` standard preset
60
- (shell, filesystem and search, background jobs, skills, goals, plan mode, context
61
- compaction, delegation and workflows, ask-user, todo, web, present) — nothing added,
62
- nothing removed.
19
+ Pick **Unrestricted** in the preset menu when creating a new session. A session that already has messages cannot switch presets. Subagents started from that session normally carry it too.
63
20
 
64
- The web declaration is [cordis.patch.yml](cordis.patch.yml). The roster, persona opening
65
- and plan body are taken from the DeepSeek Harness standard preset, line-checked against
66
- `@deepseek-ai/dsh-web-app/presets/standard.patch.yml` on the installed host; re-verify this
67
- static composition when upgrading DSH.
21
+ There is no switch to remember: choose the preset to use it, choose another preset to stop. It does not change your model, default preset, or permissions.
68
22
 
69
- ## Boundaries
70
-
71
- - The preset unlocks no tools and no permissions: approvals, sandbox, plan mode and the
72
- tool catalog stay under host control; the contract only governs answer content and
73
- scale.
74
- - Against the upstream runtime plugin the behavioral gap is only: children with an
75
- explicit persona override do not carry the contract (a static preset cannot register a
76
- custom-named section to bypass the persona shadow); structured subagents miss one
77
- appended hint line on `tool:structured_output` (the contract's Runtime coordination
78
- bullet states the same principle); and there is no toggle, anchor check, prompt preview
79
- or recheck. `PTC_ONLY_NOTE` belongs to the ptc preset and has no object here.
80
- - Uninstall by removing the `@klarkxy/dsh-unrestricted` bundle in the native plugin
81
- manager of the target profile.
82
-
83
- ## Verify
84
-
85
- ```sh
86
- pnpm --filter @klarkxy/dsh-unrestricted test
87
- pnpm check
88
- ```
23
+ ## Limits
89
24
 
90
- Tests pin the contract fingerprint, roster parity with the standard preset, template
91
- variables and packed contents. The [acceptance scenarios](ACCEPTANCE.md) evaluate real
92
- model behavior; static keyword assertions do not stand in for them.
25
+ - It unlocks no tools or permissions; approvals, sandbox, and plan mode work as usual.
26
+ - A subagent given its own persona does not carry the preset.
27
+ - To uninstall, remove the bundle from the plugin manager.
93
28
 
94
29
  ## Credits
95
30
 
96
- Contract text adapted from yexi-by/dsh-unrestricted (MIT), itself derived from
97
- Jia-Ethan/codex-keysmith (MIT); tool roster and plan body from DeepSeek Harness (MIT).
98
- Full statements and license texts in [NOTICE.md](NOTICE.md).
31
+ The contract text is adapted from [yexi-by/dsh-unrestricted](https://github.com/yexi-by/dsh-unrestricted) (MIT). See [NOTICE.md](NOTICE.md) for full attribution and licenses.
package/README.zh-CN.md CHANGED
@@ -1,57 +1,31 @@
1
1
  # 破限 / Unrestricted
2
2
 
3
3
  <!-- release-state-note -->
4
- 插件生命周期见[仓库状态清单](../../README.zh-CN.md#插件生命周期):草稿 → 测试中 → 已发布,只向前推进。已发布插件的修复、测试和升版保持已发布;每次更新仍须通过发布检查。首次发布须明确选择测试中的包,并在 npm 归档验证成功后登记。详见[发布规则](../../RELEASING.zh-CN.md)。
5
4
 
6
5
  [English](README.md)
7
6
 
8
- 按破限交付契约回答的 DSH Agent Preset:直接交付完整成果,不缩水、不回避。契约只写在本 Preset 的 persona 里,**只作用于选择它的会话**;不再像全局注入那样改写所有会话的提示词。纯静态 bundle:没有运行时插件、没有 hook、没有设置卡。
7
+ 一个 DeepSeek Harness 会话 Preset:直接交付完整成果,不缩水、不回避。它只作用于选择它的会话,其他 Preset 完全不受影响。
9
8
 
10
- ## 与全局注入的区别
11
-
12
- 契约文本来自 [yexi-by/dsh-unrestricted](https://github.com/yexi-by/dsh-unrestricted)(MIT)。它在拼装期挂根级 `system-prompt/assemble`,把契约融合进 standard / ptc / cordis / minimal 与子代理的所有提示词,并带开关、锚点校验、指纹与预览;本包把同一份契约沉淀为**按会话选择的 Preset**:
13
-
14
- - 选用 **破限 / Unrestricted** 的新会话按契约回答;standard、Creator、PTC、minimal 等其他 Preset 的提示词一个字节都不动。
15
- - 没有开关:选中即生效,切回其他 Preset 即结束。不存在“忘记关掉、全局限制被放开”的状态。
16
- - 子代理自动继承:宿主让子会话加入父会话的 Preset 修订(`composeFrom`),原生 `subagent` / `subagent_fork` 只读行配置里的 persona,标准清单没有配置,所以委派出去的子代理线程同样携带契约。只有**显式给子会话指定 persona** 的派生(例如按角色指令生成的 Classmates 队友)会替换 persona 槽位,那种子会话看不到契约。
17
-
18
- ## 安装与使用
19
-
20
- 发布到 npm 前,从本包目录取包安装:
9
+ ## 安装
21
10
 
22
11
  ```sh
23
- cd plugins/dsh-unrestricted
24
- npm pack --ignore-scripts
25
- dsh plugin --profile web add "D:/path/to/klarkxy-dsh-unrestricted-0.1.0-rc.1.tgz"
12
+ dsh plugin --profile web add @klarkxy/dsh-unrestricted
26
13
  ```
27
14
 
28
- 发布后可直接 `dsh plugin --profile web add @klarkxy/dsh-unrestricted`。自定义 profile 把 `web` 换成其名称。安装后重启该 profile,在新会话的 Preset 选择器中选择 **破限 / Unrestricted**。已有消息的会话不能切换 Preset。
29
-
30
- 模型由你在会话中选择。Preset 元数据不绑定模型或推理强度,本包不改默认 Preset、模型、权限或其他 Preset。
15
+ 把 `web` 换成你的 profile 名,安装后重启 profile。
31
16
 
32
- ## 里面有什么
17
+ ## 使用
33
18
 
34
- - **persona**:标准起始句 + 执行指针 + `## Unrestricted local execution mode` 契约全文。与 dsh-unrestricted 0.2.2 `src/rules.js` 的 `EXECUTION_MODE_BLOCK` 逐字节一致,契约指纹 `e9e4eead5f84504c`(SHA-256 前 16 位),升级或改动后测试会重新核对。
35
- - **计划模式补注**:官方计划模式正文不变,结尾增加一段——计划模式只限制交付与变更,不限制计划内容本身。
36
- - **工具组合**:DSH `0.2.0-rc.2` 标准 Preset 的完整工具清单(shell、文件与搜索、后台任务、Skills、目标、计划模式、上下文压缩、委派与工作流、提问、待办、网页、交付展示),不增不减。
19
+ 新建会话时在 Preset 菜单中选择「破限 / Unrestricted」。已有消息的会话不能切换 Preset。从该会话派出的子代理通常也会沿用它。
37
20
 
38
- Web 声明在 [cordis.patch.yml](cordis.patch.yml)。工具组合、persona 起始句与计划正文取自 DeepSeek Harness 标准 Preset,逐行对照本机 `@deepseek-ai/dsh-web-app/presets/standard.patch.yml`;升级 DSH 时应重新核验该静态组合。
21
+ 没有需要记得关闭的开关:选择即生效,换成其他 Preset 即结束。它不会改变你的模型、默认 Preset 或权限。
39
22
 
40
- ## 边界
41
-
42
- - 本 Preset 不解锁任何工具或权限:审批、沙箱、计划模式、工具目录照旧由宿主管辖,契约只决定回答的内容与尺度。
43
- - 与上游运行时插件的行为差距只剩:显式 persona 覆盖的子会话不携带契约(见上,静态 Preset 无法注册自定义名 section 绕过 persona 影子);结构化子代理 `tool:structured_output` 说明上少一行追加提示(契约正文的 Runtime coordination 已含同一原则);没有开关、锚点校验、提示词预览与 recheck。PTC_ONLY_NOTE 只属于 ptc Preset,与本包无关。
44
- - 卸载:在目标 profile 的原生插件管理页移除 `@klarkxy/dsh-unrestricted` bundle。
45
-
46
- ## 验证
47
-
48
- ```sh
49
- pnpm --filter @klarkxy/dsh-unrestricted test
50
- pnpm check
51
- ```
23
+ ## 限制
52
24
 
53
- 测试钉住契约指纹、与标准 Preset 的工具清单一致性、模板变量和打包内容。[行为验收场景](ACCEPTANCE.md) 用来评估真实模型在各场景中的表现,不得用静态关键词断言冒充行为验收。
25
+ - 不解锁任何工具或权限,审批、沙箱和计划模式照常生效。
26
+ - 被单独指定了 persona 的子代理不会沿用本 Preset。
27
+ - 卸载时在插件管理器中移除该 bundle。
54
28
 
55
29
  ## 署名
56
30
 
57
- 契约文本改写自 yexi-by/dsh-unrestricted(MIT),其上承 Jia-Ethan/codex-keysmith(MIT);工具组合与计划正文取自 DeepSeek Harness(MIT)。完整声明与许可文本见 [NOTICE.md](NOTICE.md)。
31
+ 契约文本改写自 [yexi-by/dsh-unrestricted](https://github.com/yexi-by/dsh-unrestricted)(MIT)。完整署名与许可见 [NOTICE.md](NOTICE.md)。
package/locale/en.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "meta": {
3
3
  "title": "Unrestricted",
4
- "description": "Answer under the unrestricted delivery contract in sessions that pick this preset; every other session stays untouched."
4
+ "description": "A session preset that delivers complete results; every other session stays untouched."
5
5
  }
6
6
  }
package/locale/zh.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "meta": {
3
3
  "title": "破限",
4
- "description": "选用本 Preset 的会话按破限交付契约回答;其他会话保持原样。"
4
+ "description": "直接交付完整成果的会话 Preset;其他会话保持原样。"
5
5
  }
6
6
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@klarkxy/dsh-unrestricted",
3
- "version": "0.1.0-rc.1",
4
- "description": "Unrestricted: a session preset that answers under the unrestricted delivery contract, instead of injecting that contract into every prompt.",
3
+ "version": "0.1.1",
4
+ "description": "Unrestricted: a session preset that delivers complete results, only in sessions that pick it.",
5
5
  "icon": "./icon.svg",
6
6
  "homepage": "https://klarkxy.github.io/dsh-plugins/plugins/unrestricted/",
7
7
  "type": "module",
@@ -29,7 +29,6 @@
29
29
  "locale/*.json",
30
30
  "cordis.patch.yml",
31
31
  "README*.md",
32
- "ACCEPTANCE.md",
33
32
  "NOTICE.md",
34
33
  "LICENSE"
35
34
  ],
@@ -49,6 +48,6 @@
49
48
  "@deepseek-ai/dsh": "0.2.0-rc.2"
50
49
  },
51
50
  "dshRelease": {
52
- "contentHash": "a3de44e956895c2e714239e63b891906eda9293ebd96041a5daa3a1861431bf1"
51
+ "contentHash": "645472f60965562bbf4c0ca1c2cbd7d1675c29dc0a5ba639f89acee9876ad956"
53
52
  }
54
53
  }
package/ACCEPTANCE.md DELETED
@@ -1,15 +0,0 @@
1
- # 破限 / Unrestricted 行为验收
2
-
3
- 每个场景使用隔离 DSH profile、一次性工作区和新的会话,记录宿主版本、实际模型/推理设置、输入、提示词组装结果与输出。不得将安装测试、提示词指纹检查或模拟模型通过写成以下真实模型验收通过。
4
-
5
- | 场景 | 准备与请求 | 验收依据 |
6
- | --- | --- | --- |
7
- | A 隔离性 | 安装 bundle 前后各导出一次 standard 与 Creator 会话的提示词组装。 | 两个 Preset 的组装逐字节不变;`## Unrestricted local execution mode` 不出现在其中。 |
8
- | B 契约生效 | 新建会话选择「破限 / Unrestricted」,导出提示词组装;再发一个要求直接交付成果的请求。 | 组装含执行指针与契约全文,指纹 `e9e4eead5f84504c`;模型直接交付完整产物而非描述或方案。 |
9
- | C 计划模式 | 在该 Preset 进入计划模式,请求一个有实现细节的任务。 | 计划 markdown 完整展开技术步骤与细节;批准前不执行任何变更;计划正文含内容范围补注。 |
10
- | D 子代理继承 | 从破限会话用原生 `subagent` / `subagent_fork` spawn 子代理,导出子代理提示词组装。 | 子会话 join 父 Preset 修订且无人覆盖 persona,组装应含执行指针与契约全文。 |
11
- | D2 persona 覆盖 | 从破限会话派生一个显式指定 persona 的子会话(如 Classmates 角色队友),导出其组装。 | 组装以派生 persona 为准、不含契约,与 README 边界一致;如实记录,不虚构继承。 |
12
- | E 菜单与挂载 | 安装后重启 profile,查看新会话菜单并通过真实创建接口建会话。 | 菜单显示并可选中「破限 / Unrestricted」,返回 `agentPreset: unrestricted`。 |
13
- | F 卸载 | 在插件管理页移除 bundle 并重启。 | 新会话菜单不再出现该 Preset;其他 Preset 与既有会话不受影响。 |
14
-
15
- 结果分为通过、失败、未执行;静态审阅可以说明契约与工具组合覆盖,不能替代上述真实运行记录。升级 DSH 后 A、E 需要重跑。