Skip to content
dsh.fish
Bundle

@dsh-external/dsh-arbiter-wf

独立裁判层:把你的话编译成可执行约束(意图 / 质量口径 / 未决项 / 实现选项),治理工作区工具运行时(内置 bash 与 POSIX:取消、输出、资源收尾可靠),并在交付前由独立顾问做分项复核与覆盖核对。private 保持 true:只发 GitHub Release 附件,不发布到 npm;效果证据待后续跑分测试,本描述不作性能断言。

Source
WestFox-AwA
stars
114 stars
License
BSD-3-Clause
Updated
Updated 10 days ago

Readme

# dsh-arbiter-wf **v0.8.3-stable** · 独立裁判层(DSH Web 插件)

**中文** | [English](README.en.md)

效果展示:皆为Windows+DSH+PTC环境,OneShoot
(其中插件档位为"重度")
模型DeepSeek-V4.1-Flash
![](./docs/image/contrast_small.png)
提示词:不要预览文件夹内的其他文件,制作一个单html程序,要求是极其精细的现代主战坦克模型,可以预览,操控,真实,帅气,炫技写真.

> **它不改写你的话。** 你照常说话,它在你按下发送**之前**,把"这一轮到底要什么"理清楚,再把这份理解交给工作 AI——
> 你的原话一个字不动,理解**随行**;模型给出的澄清与建议**始终标成机器产出**,不会冒充你说过的话;每一轮**重新想一遍**(不继承上一轮)。
> 完整说明与自检见 [`po06/README.md`](po06/README.md),人工验收见 [`po06/HUMAN-TEST.md`](po06/HUMAN-TEST.md)。

> ### ⚠️ 安装来源只有一个:本仓库的 Release
>
> | 渠道 | 是什么 | 该不该用 |
> |---|---|---|
> | **GitHub Release 附件** | 当前版本(`@dsh-external/dsh-arbiter-wf`) | ✅ **唯一正确来源**,就是下面这段命令 |
> | **npm** | **本插件不发 npm**(`private: true`),只在 Release 分发;
>   registry 上搜到的同名或相似包**都不是本项目** | ❌ 不要从 npm 装 |
> | 仓库根直接 clone | 与本 Release 同源,适合开发者 | ⚠️ 需要自己构建,普通使用走 Release 更省事 |
>
> 想找 0.1 ~ 0.6 的旧版本?见 [`old/`](old/README.md)(含各代简介与下载方法)。
> 想自己发一版?见 [`RELEASING.md`](docs/RELEASING.md)(9 步发布规程 + 检查清单)。
> ### 30 秒装上 0.8.3-stable
>
> ```powershell
> $v = '0.8.3-stable'; $d = "$env:USERPROFILE\Downloads"
> Invoke-WebRequest "https://github.com/WestFox-AwA/dsh-prompt-optimizer/releases/download/v$v/dsh-external-dsh-arbiter-wf-$v.tgz" -OutFile "$d\dsh-external-dsh-arbiter-wf-$v.tgz"
> Invoke-WebRequest "https://github.com/WestFox-AwA/dsh-prompt-optimizer/releases/download/v$v/SHA256SUMS-$v.txt" -OutFile "$d\SHA256SUMS-$v.txt"
> Get-Content "$d\SHA256SUMS-$v.txt"     # 与上一行下载到的 tgz 对 sha256(Release 页也有同一份)
> dsh --profile po061 --from-default-profile web --dump-config        # 建一个干净 profile
> dsh plugin --profile po061 add "$d\dsh-external-dsh-arbiter-wf-$v.tgz"    # 装
> dsh --profile po061                                                 # 起服务(会打印带 token 的地址)
> ```
>
> 装完在面板上把**档位**拨到 `标准` 或 `重度`(`关闭` 档不拦截、不注入)。
> 详细版(含 4 步自检、常见装不上的原因)见 [`po06/README.md`](po06/README.md)。
> **不要装进 0.5.x 所在的那个 profile**:同装配会被 `DOUBLE_INTERCEPT` 守卫拒绝启用(这是刻意的),
> 两者也**不共用配置**(0.6 的启用意图在 `<home>/po06.json`,不会碰 0.5 的 `prompt-optimizer.json`)。

---

## 它解决的是哪个问题

这类模型(v4.1-flash 一类)**不主动、不猜、一次做完**:你没写、它又推不出来的,就是**必然缺失**;
你写了,它**一定会照做**。所以缺的从来不是"更漂亮的提示词",而是**你自己也忘了说、而它无法自知的那点信息**。

本插件只做一件事:**在你发送前,把这点信息补齐,并让每一条都能指回依据**。它不写下游的本行
(通用写法、常规 API、最佳实践、教学),也不写没有具体指向的验证套话——对这类模型,提示词不是建议而是**指令集**。

## 它怎么工作(四步)

1. **拦在发送前**:你的原话还没进工作 AI,先停一下(面板上写着"优化中…已用 N 秒",随时可「跳过并直接发送」)。
2. **另起一次调用做释义**(解释层):输入只有两样——**你这轮原话的逐字文本** + **本轮真读进来的**会话上下文/项目文件。
   它返回四类内容:**本轮意图**、**表达澄清**、**正向补充与建议**、**需要反问的点**;它**不替你改写原话**。
3. **宿主接管工程部分**:条目编号、来源标记、状态更新由插件完成;模型给出的澄清与建议**一律标成机器产出**,不会进入"你说过的"那一类。
4. **随行注入**:你的原话**原样发出**,这份辅助作为"随行包"贴在这一轮;下一轮重新想一遍(留档不删)。

**三条不变量**(也是它与别的工具的分界):

| 不变量 | 含义 | 分界 |
|---|---|---|
| **不改写** | 派发给工作 AI 的原话=你写的字节 | 不是提示词改写器 |
| **机器建议不越权** | 澄清与建议始终是机器产出,不会冒充你的要求;你明说的才算要求 | 不是自由发挥的补全 |
| **每轮归零** | 本轮的理解不依赖上一轮的条目 | 不是记忆/画像,也不是 RAG |
| **可以什么都不补** | 没有值得补充的内容时,这轮就是"读懂了、无补充" | 不硬凑条目 |

> **代价(如实说)**:长期约束("只交单个文件""别动别的文件夹")不会自动跨轮,要靠上下文每轮重新看出来
> ⇒ **别把「上下文」调得太小**。换来的是:不会再出现"上一轮早就解决的事又被要求一次"。

## 界面上有什么

面板只有一行:**优化选项**(图标 + 当前档位摘要)、状态灯、`?` 用户手册。点开是一块克制的卡片:

| 控件 | 取值 | 作用 |
|---|---|---|
| **档位** | `关闭` / `轻度` / `标准` / `重度` | 档位=**依据预算**。`关闭`=完全不拦、不注入(等于没装) |
| **权限** | `审查` / `自动` | 审查=它完成后**先给你看**要注入的内容,你可以直接改,再决定提交;自动=它完成即发出 |
| **模型** | 跟随会话模型(默认)或指定 | 解释层用哪个模型 |
| **上下文** | 回合 `0–10` / `全文` | 解释时参考多少历史;读得越多越懂你,也越慢 |
| **只读工具** | `开` / `关`(默认关) | 允许它在**你的工作目录内**读文件核对事实(只读、不写、不执行命令) |
| **详情** | — | 改解释层用的提示词(可撤销、可恢复内置) |

拦截浮层(发送前那一下)分两块:**思维层**(固定显示范围、无滚动条、正文不截断,可往回滚)与
**产出层**(要注入的内容;审查档可直接编辑)。token 用 provider **真实上报**的 `入 / 出 / 缓存` 三分量
(过千记 `k`/`M`,拿不到就显示 `—`,**从不按字数估算**)。

**界面语言跟随 DSH**:在 DSH 里把语言设成中文就全中文、设成英文就全英文(`?` 用户手册也跟着切),
插件内**没有**自己的语言开关;**浅色/深色也跟随 DSH 主题**,切换即时生效。

## 常见问题

**要等多久?** 一般 20–60 秒(取决于档位、上下文、模型)。这段等待就是它"替你想清楚"的时间;不想等随时点「跳过并直接发送」。

**会改我的话吗?** 不会。被补的是**给工作 AI 的那份理解**;你发出去的字还是你写的。

**会不会把我的消息弄丢?** 不会。解释失败时:`自动` 档按你的原话发出并在说明原因;`审查` 档停在错误态等你决定(消息一直躺在输入框里)。

**它这一轮什么都没提取到怎么办?** "读懂了、但没有值得补充的内容"现在是**合法结果**:不会再硬造条目,也不会因为内容为空而重试。只有**输出格式真的坏了**时才会重试一次。

**它会记住上一轮的目标吗?** 不会。每轮从「你这轮的原话 + 本轮读入的上下文」重新推;代价见上面"三条不变量"那段。

**它会替我编要求吗?** 不会。你明说的才算"你的要求";模型产出的澄清与建议一律标为**机器建议**,不会进入"你说过的"那一类。旧格式条目仍要求逐字引文,对不上就丢弃并记账。

**读项目文件会不会动我的东西?** 不会:只读、限定在你的工作目录内、越界一律拒绝。

**关掉/卸载?** 临时关:档位拨到 `关闭`(不拦不注入,等于没装)。彻底卸载:从 profile 的 `dsh.profile.bundles` 与
`dependencies` 里移除 `@dsh-external/dsh-arbiter-wf`,重启 DSH;配置在 `<home>/po06.json`,可自行删除。

## 隐私与边界

- **不外发**:没有遥测、没有回传。所有状态都在本机 `<home>/po06-*.json*` 与 `po06-state/` 下。
- **只读工具是唯一的文件访问**:默认关闭;打开后也只读、限定工作目录、不执行命令。
- **不注入无关内容**:包只由你这一轮的原话与本轮读入的上下文得出;来源不可核的条目直接丢弃。
- **默认不启用(保守)**:装配期启用闸门默认 `off`;要启用就在 `<home>/po06.json` 写
  `{"settingsVersion":1,"enabled":true,"rollout":{"mode":"all"}}`(只想给某些会话用就写 `{"mode":"allowlist","sessions":["<会话 id>"]}`)。
  只要旧版插件仍在装配,会以 `DOUBLE_INTERCEPT` 拒绝启用——一条消息被两个拦截器处理两次的代价更大。

## 诚实声明(请按这个预期使用)

- ✅ **内部自洽有证据**:**93 套测试全绿**(`node po06/scripts/run-suites.mjs`;各套件自报用例合计 1,003 项;含打包自足性、文档漂移门禁)。**两种 shell 下均已复验**(bash 与 pwsh)。
- 📊 **作者实测观察(不是专业跑分)**:测试主要在 **DeepSeek-V4.1-Flash + PTC + PowerShell** 环境下进行。
  **目前没有做过专业的跑分测试**;但在常见的各类 one-shot 任务与长任务迭代中,
  **实际效果明显强于同环境、同提示词下的 DeepSeek-V4.1-Flash**;另据**少量项目**的统计,
  **疑似会降低 token 消耗量、节省开销**。
- 📌 本版(0.8.3-stable)改了什么:
  ⓪ **解释协议 v3(本版主线)** —— 发送前那一轮的优化协议被重写成"短协议":模型只收到**共用核心 + 当前档位 + 薄输出格式**,
     输出改成 `intent / clarify / add / ask` 四类;条目编号、来源标记、状态更新**由插件负责**,不再让模型填工程字段。
     中文普通组合 **596 / 599 / 639 字符**(轻度 / 标准 / 重度)——此前是三段叠加的数千字符。
  ① **三档按用途区分**(不再靠条数或问题配额)—— 轻度=把原意讲清楚、消除歧义、指出必要反问;
     标准=澄清表达并补足影响结果最大的缺口;重度=围绕已有目标做**全方位正向补充**、构思与方法,并呈现实质取舍。
  ② **补充可以为零** —— "读懂了但没有值得补充的内容"是合法结果,不再硬造条目;同时取消了旧的 12 条 / 300 字 / 提问配额,
     长建议与多条反问完整进入上下文与审查面板。
  ③ **机器建议不会冒充你的要求** —— 模型产出的澄清与建议始终标为机器产出;你明说的才算要求,原话独立保留、原样发出。
  ④ **界面可核对** —— 详情里同时给出「当前设置的完整组合预览」与「本会话最后一次**实际发送**的协议 / 字符数 / 思考档位」。
  ⑤ **CI 可移植性修复** —— 旧 Node 上 zstd 具名导入会让整个模块链接失败(CI Node 20 实测),改为能力探测 + 显式跳过;
     安装检查的 `dsh` 命令改为可注入,单测自带桩命令,不再依赖某台机器是否装了 DSH。
  ⑥ 其余能力(英文模式、实验性推理增强、独立顾问 `consult_task`、内置 Bash、斜杠命令允许列表、拦截浮层流式显示)自 0.8.1 / 0.8.2 起提供。
  **未做专业跑分**:协议变短不等于模型更快,实际价值请自己在同一任务上对照三档判断。详见 [`CHANGELOG.md`](CHANGELOG.md)。

## 版本与证据

- 更新日志:[`CHANGELOG.md`](CHANGELOG.md) | 人工验收:[`po06/HUMAN-TEST.md`](po06/HUMAN-TEST.md) |
  发版登记(含每次真跑过的装机演练):[`po06/RELEASE-CHECKLIST.md`](po06/RELEASE-CHECKLIST.md)
- 安装与自检:[`po06/README.md`](po06/README.md) | 当前 Release:**[v0.8.3-stable](https://github.com/WestFox-AwA/dsh-prompt-optimizer/releases/tag/v0.8.3-stable)**
- 💬 **欢迎加入 QQ 群:1121399051** 获取最新消息、安装帮助与版本公告。
- 兼容:`dsh-0.1.7-rc.2`(本机实测运行)| `dsh-0.2.0-rc.2`(逐成员静态契约核对通过,实机待验,见 [`docs/DSH-0.2-COMPAT.md`](docs/DSH-0.2-COMPAT.md))| 作者:啃轮胎的西狐
- **上一代(0.5 线,仍可用,但已不再更新)**:装在另一个包 `@dsh-external/dsh-prompt-optimizer`,
  最后发布 `v0.5.0-beta.1`;设计与用法见 [`SPEC.md`](docs/SPEC.md),历史文档(含 0.5 的实测数据)见
  **[`README-0.5.md`](old/0.5/README.md)** —— 那里的数字**只属于 0.5**,不是 0.6 的效果证据。

## 许可

[BSD-3-Clause](LICENSE) · 完全开源,欢迎任何人以任何形式使用、修改、提建议。

Install

dsh plugin --profile web add github:WestFox-AwA/dsh-prompt-optimizer

Profile: web

  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source