🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

提示词副驾驶 Hwayn-pixel/dsh-prompt-desk

DeepSeek 客户端v0.4.0
Hwayn-pixel28 天前有提交已提供中文文档扫描:含敏感能力兼容 / 相关生态

DSH 提示词工作台:看清 system prompt 的每一段、写下自己的家规、体检重复与矛盾,并记下每次改动。A…

30.7/100
综合分
1
GitHub 星标
42
npm 周下载
—/5
用户评分

数据截至 2026/10/4 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/Hwayn-pixel/dsh-prompt-desk.git

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
生态插件
可安装,未声明 dsh 能力
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功(非静态推断);本次验证针对插件 v0.5.0,当前版本为 v0.4.0
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 28 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-prompt-desk @ 0.4.0
✓Node 引擎要求 >=20 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/16 14:10:25

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 10 处,展示前 10 条)
  • 读取本地文件
    lib/index.js:67
    const parsed = JSON.parse(readFileSync(historyFile(), "utf8"));
  • 写入本地文件
    lib/index.js:105
    mkdirSync(dirname(historyFile()), { recursive: true });
  • 写入本地文件
    lib/index.js:106
    writeFileSync(historyFile(), JSON.stringify(history.slice(-HISTORY_KEEP), null, 1), "utf8");
  • 发起网络请求
    lib/client.js:268
    fetch(`${ROUTE}/prompt`, { cache: "no-store" }),
  • 发起网络请求
    lib/client.js:269
    fetch(`${ROUTE}/history`, { cache: "no-store" }),
  • 发起网络请求
    src/client/index.ts:310
    fetch(`${ROUTE}/prompt`, { cache: "no-store" }),
  • 发起网络请求
    src/client/index.ts:311
    fetch(`${ROUTE}/history`, { cache: "no-store" }),
  • 读取本地文件
    src/index.ts:120
    const parsed = JSON.parse(readFileSync(historyFile(), "utf8")) as HistoryEntry[];
  • 写入本地文件
    src/index.ts:158
    mkdirSync(dirname(historyFile()), { recursive: true });
  • 写入本地文件
    src/index.ts:159
    writeFileSync(historyFile(), JSON.stringify(history.slice(-HISTORY_KEEP), null, 1), "utf8");
扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 分段查看系统提示词
  • 写入自定义规则
  • 检测重复与矛盾

给 DSH 智能体的指令配个副驾:把系统提示词按段落读,把自己的家规写进去,找出重复或矛盾的地方,每次改动都记进日志——还能一键全部回滚。

README

由 DeepSeek 最新模型翻译生成
dsh-prompt-desk npm: dsh-prompt-desk · one-line install: dsh plugin --profile web add dsh-prompt-desk 一个"提示词工作台",不是"自动驾驶"。 A co-pilot, not an autopilot. dsh-prompt-desk 给 DSH 的 system prompt 配了一位副驾驶:它让你看清这份说明书由哪些段组成、 写下你自己的家规、并点名重复与臃肿。它不替你改,也不打分——方向盘始终在你手里。 它做什么 | 看得见 | 把当前 system prompt 按段摊开:每段叫什么、来自谁、多少字节、原文长什么样。走的是真实的 ctx.systemPrompt.assemble(),不是猜的。 | | 改得动 | 「我的家规」:写一段话,选它落在 prompt 的哪个位置(靠前 / 中间 / 靠后)。改完立刻生效,不用重启——因为每段的正文是一个 provider,在每次组装时才读取。 | | 解得开 | 「体检」:同一条话出现在两段以上、两条互相矛盾(一个有「要」、一个有「不要」)、某段特别长、规则开着却没写正文……只看事实,不替你做决定。
展开完整文档(README 剩余 1 节)
dsh-prompt-desk

npm: dsh-prompt-desk · one-line install: dsh plugin --profile web add dsh-prompt-desk

一个"提示词工作台",不是"自动驾驶"。
A co-pilot, not an autopilot.

dsh-prompt-desk 给 DSH 的 system prompt 配了一位副驾驶:它让你看清这份说明书由哪些段组成、 写下你自己的家规、并点名重复与臃肿。它不替你改,也不打分——方向盘始终在你手里。

它做什么

| 看得见 | 把当前 system prompt 按段摊开:每段叫什么、来自谁、多少字节、原文长什么样。走的是真实的 ctx.systemPrompt.assemble(),不是猜的。 |
| 改得动 | 「我的家规」:写一段话,选它落在 prompt 的哪个位置(靠前 / 中间 / 靠后)。改完立刻生效,不用重启——因为每段的正文是一个 provider,在每次组装时才读取。 |
| 解得开 | 「体检」:同一条话出现在两段以上、两条互相矛盾(一个有「要」、一个有「不要」)、某段特别长、规则开着却没写正文……只看事实,不替你做决定。 |
| 退得回 | 所有贡献都来自本插件自己的段名(copilot:pre / copilot:mid / copilot:post)。关掉开关或卸载插件,一切回到原样——它从不改写别人的段。 |

为什么段名不叫 deployment:persona-prefix

DSH 允许一个段按名字遮蔽同名段(这正是"预设可以盖掉部署 persona"的机制)。dsh-prompt-desk 故意不使用这种遮蔽:副驾驶是加一层你的声音,不是悄悄替换机长的声音。想覆盖 persona,请用 DSH 自己的预设机制——那才是它的正门。

安装

npm 上的包名是 dsh-prompt-desk(原因见下)
dsh plugin --profile web add dsh-prompt-desk

本地开发(link 方式,改完 build 即可)
dsh plugin --profile web add -w . # 在插件目录里执行

重启 web 宿主
dsh --profile web --no-open

浏览器硬刷新(Ctrl+F5)

打开 设置 → 副驾驶。

本地 link 安装时,插件目录的 node_modules 里需要有 @deepseek-ai/schemastery(DSH 自带的那份即可);从 npm 正式安装时由依赖声明自动解决。

⚠️ 给 DSH 插件作者的一条血泪经验(已验证):DSH 的插件 id 不支持 npm 作用域名。
包名叫 @hwayn/dsh-prompt-desk 时,宿主照常加载(路由都通),但客户端半会被悄悄丢出加载清单——设置页直接消失,前端一点报错都没有。名字必须三处一字不差、且不带作用域: package.json 的 name、cordis.patch.yml 里的 name、profile 的 dependencies 键 + dsh.profile.bundles。
所以这个仓库叫 dsh-prompt-desk,npm 上叫 dsh-prompt-desk。

怎么退回去

- 只要临时静默:设置页里关掉「启用」——本插件不再往 prompt 里写任何字,别的都不动。
- 完全卸载:把 node_modules 里的链接删掉、从 profile 的 dsh.profile.bundles 里去掉 dsh-prompt-desk,然后重启宿主。已写入过的家规留在 profile 的设置文档里,可以手动清。
- 本插件从不修改别的插件贡献的段,所以“退回去”不需要任何补丁。

接口(主机半)

- GET /dsh-prompt-desk/prompt → { ok, enabled, sections:[{name,bytes,text}], rendered, bytes, tools, contexts, ours, bands }
返回当前真实组装出的提示词。:3080/dsh-prompt-desk/prompt 可以直接 curl,方便排查。

设置命名空间:ui-prompt-desk。

| 字段 | 默认 | 含义 |
| enabled | true | 总开关。关掉后本插件不往 prompt 里写任何字 |
| rules[] | [] | { id, title, text, band: pre\|mid\|post, enabled } |

段落落点(数值取自 DSH 的 SECTION_ORDERS 空闲档位):

| band | order | 位置 |
| pre | 700 | deployment persona 之后、工具说明之前 |
| mid | 5500 | 所有工具段之后 |
| post | 10150 | prompt 末尾、persona suffix 之前 |

已知限制(诚实清单)

- 只增不改:目前能新增段,不能删除或改写别的插件贡献的段。要让某段"消失"目前只能靠 DSH 自己的配置(例如关掉那个插件),或者写一条家规去纠正它。
- 体检是启发式:重复检测看的是"长度 ≥30 的规范化行在不止一段里出现"。它只找线索,不是判决。
- 预览里的 {{变量}}:主机半优先用 dsh-system-prompt 的 renderPrompt() 插值;如果那个包在 profile 里解析不到,就退化成"原样拼接"(保留 {{model}} 之类),此时预览不等于最终文本。
- 组装预览是在没有具体 agent scope 的情况下调用的,所以 tools 常显示 0——真实会话里的工具段属于各次请求的 scope。

状态

🌱 v0.0.1 · 2026-09-30 夜。地基:@deepseek-ai/dsh-system-prompt 的 ctx.systemPrompt (段注册表 + assemble())。已实测:注册三段 → UI 改写 → 提示词内容随之变化 → 删除后归零。

作者:Hwayn(幻弈)
预览分享卡片长什么样 ↓Hwayn-pixel/dsh-prompt-desk
分享 · DeepSeek Harness Hub
Hwayn-pixel/dsh-prompt-desk

DSH 提示词工作台:看清 system prompt 的每一段、写下自己的家规、体检重复与矛盾,并记下每次改动。A…

回到顶部