설치
npx -y @deepseek-ai/dsh plugin --profile web add github:Czerror/dsh-plugin-prompt-tool이 설치 명령은 GitHub 저장소 주소에서 생성된 확인되지 않은 시작점입니다.
README
유지 관리자가 작성한 문서 스냅샷입니다.
提示词工具(dsh-plugin-prompt-tool)
DSH 插件:为 DeepSeek Harness 提供三层提示词规范注入,并通过 Web 界面在线编辑。核心是“最优组合”首轮锚定:保持官方 Minimal(极简)训练分布的首轮条件,在模型轨迹稳定后再恢复完整能力。
来源与参考
| 项目 | 关系 | 复用内容 |
|---|---|---|
| xiaobright/dsh-anchored-standard | 上游,内联快照 | 两阶段首轮锚定、tool-bootstrap、context-gate、resident 目录与按需解锁 |
| yjh051108/dsh-router-standard | 参考 | 首轮结构、追加任务引导、Flash 弱路由人设与三锚、子代理方案 |
| yjh051108/dsh-super-injector | 参考 | 缓存铁律、工具面成本原则 |
上游文件固化在 upstream/dsh-anchored-standard/(含 LICENSE、NOTICE、REVISION),
用 pnpm sync:anchored 更新。
项目说明
- 常驻层:把
AGENTS.md作为受管块写入~/.dsh/AGENTS.md;开启injectAgentsPrompt时,以instruction-hint的位置每会话注入一次。 - 按需层:扫描
skills/*/SKILL.md注册可开关技能,内容只来自技能自身。 - 锚定层:生成独立的
~/.dsh/.agent-presets/prompt-tool/预设,承载首轮工具引导、上下文闸门、任务引导注入与提示词注入。 - Web 界面:自建回环设置桥,在线编辑
preset.md与AGENTS.md,切换全部开关;不占用模型设置区。 - TUI(终端界面)命令:
/prompt-tool status查看状态,/prompt-tool on|off|toggle <开关>切换。 - 上游管理:上游 dsh-anchored-standard 以内联快照形式放在
upstream/,pnpm sync:anchored刷新;不再使用 git 子模块。
构建 / 装载
pnpm install
pnpm build # 生成 lib/
pnpm typecheck # Host 与 Client 两个 tsc program
pnpm lint # oxlint
pnpm test # pnpm build + node --test
pnpm prepare # npm publish / git install 前自动触发
pnpm sync:anchored # 从上游 main 刷新内联快照(可加 ref 参数)
安装到 prompt-tool profile:
# 1. 先安装宿主服务(提供 webServer 等本插件依赖的服务)
dsh plugin --profile prompt-tool add @deepseek-ai/dsh-web-app
# 或使用 dsh-tui:dsh plugin --profile prompt-tool add @deepseek-harness-tui/dsh-tui
# 2. npm 安装本插件(官方插件指令,自动加入 profile bundles)
dsh plugin --profile prompt-tool add dsh-plugin-prompt-tool
# 3. 本地开发安装(任选其一,会覆盖上一步的 registry 依赖)
dsh plugin --profile prompt-tool add link:<本仓库绝对路径>
# 4. 启动方式(任选)
dsh --profile prompt-tool
dsh web
dsh-tui
# 卸载
dsh plugin --profile prompt-tool remove dsh-plugin-prompt-tool
本插件声明了 dsh.bundle,所以官方 add 会自动把它追加进
dsh.profile.bundles;dsh-base 与 dsh-web-app 不会由本插件写入。
如果启动时报 waiting for service: webServer,说明该 profile 缺少宿主
服务,先执行第 1 步。等价的 profile 清单如下:
// <DSH_HOME>/profiles/prompt-tool/package.json
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dsh-plugin-prompt-tool"
]
}
}
临时调试可用官方 --patch 覆盖层(不落盘、不改 profile):
dsh --profile prompt-tool --patch <cordis.yml>
完全重启 dsh 后,新建会话并选择 prompt-tool 预设。
原理
模型的首轮请求结构决定整条会话轨迹。上游实测:官方 Minimal 首轮(训练原句 + 持久 bash + str_replace_editor,无输出封顶)稳定锚定 we 轨迹;完整 Standard 目录与自动注入在场会破坏锚定。
本插件把“首轮轨迹选择”和“后续完整能力”拆开:
- 干净首轮:
context-gate清空首轮自动上下文并剥离自动注入;tool-bootstrap只暴露 Minimal 两个工具;router-first-turn按主会话模型替换 persona——Pro 用训练原句,Flash 自动采用 dsh-router-standard 的 Flash 弱路由人设(build/fix 分类 + 三锚 + 先深想再产出)。 - 晋升:首次工具调用或助手回复落地后,目录进入 resident(常驻)集,上下文与注入恢复;工具按需解锁。
- 追加任务引导:可选
near-anchor,在首条真实用户消息之后追加一次引导——默认按任务自动选择 we/let 首句,也可固定使用自定义文本。Flash 主会话晋升后,router-guide还会在每个真实用户消息后追加固定深度引导;首句与每轮分别有独立的自定义开关和文本框。 - 提示词注入:we 锚定确认后,把
preset.md作为用户消息注入一次;未确认最多等一轮兜底。 - 子代理:目录直接全量放行(实际仍受调用方工具白名单过滤);开启
subagentFlash时,采用 dsh-router-standard 的 Flash 方案——固定 Flash 路由、任务分类人设与三锚。
主会话首轮始终只有两个工具;模型性能不受记忆、技能等自动注入影响,完整能力在轨迹稳定后恢复。
配置参考
挂载配置(cordis.patch.yml / profile patch):
- insert:
- id: prompt-tool
name: dsh-plugin-prompt-tool
config:
text: '' # 覆盖 preset.md 文本;默认读项目文件
agentsText: '' # 覆盖 AGENTS.md 文本;默认读项目文件
injectAgentsPrompt: false # 用 AGENTS.md 替换 instruction-hint 提示文本
writeAgents: true # 写 ~/.dsh/AGENTS.md 受管块(默认 true)
writePreset: true # 启用锚定预设(总开关,默认 true)
injectPrompt: true # we 确认后注入 preset.md(默认 true)
skillSwitches: {} # 按 skills/* 目录名开关,未列出默认开启
anchorFirstTurn: false # 追加任务引导(默认关闭)
anchorText: '' # 自定义引导文本(首句)
anchorCustom: false # 使用自定义引导(首句)
guideText: '' # 自定义引导文本(每轮);默认写入自动引导(简单/复杂两段)
guideCustom: false # 使用自定义引导(每轮;仅 Flash 主会话晋升后生效)
subagentFlash: false # 子代理固定 Flash 模型(默认关闭)
subagentFlashProvider: 'deepseek-official'
subagentFlashModel: 'deepseek-v4-flash'
customBashPath: 'bash.exe' # 自定义 bash 路径(默认 PATH 查找)
skillsDir: '' # 可选技能目录(默认包内 skills/)
skillRankBase: 250 # 技能候选排序基数
residentAgentsPath: '' # 默认 ~/.dsh/AGENTS.md
presetDir: '' # 默认 ~/.dsh/.agent-presets/prompt-tool/
presetOrder: 5 # preset 显示顺序
fallbackText: '' # preset.md 缺失或不可读时的回退文本
字段说明:
- 启用锚定预设:总开关。开启时生成并刷新
~/.dsh/.agent-presets/prompt-tool/;关闭时移除已生成目录,锚定相关开关失效。 - 追加任务引导:开启时挂载
near-anchor,在首条真实用户消息后追加一次任务引导。 - 使用自定义引导(首句):开启时固定使用
anchorText;关闭时按任务自动选择 we/let 首句。开启且文本为空时不注入。 - 使用自定义引导(每轮):开启时每轮固定使用
guideText,Pro 与 Flash 都注入(便于对照测试);关闭时按任务自动选择快速收敛/深度引导,仅 Flash 主会话晋升后由 router-guide 注入。留空则不注入。 - 子代理固定 Flash 模型:开启时采用 dsh-router-standard 的 Flash 子代理方案——通用子代理行加固定 Flash 路由、任务分类人设与三锚;宿主直派子代理(含 dsh-mnemon)自动补 Flash 路由,调用方显式模型优先。检测不到 DeepSeek 模型路由时 Web/TUI 禁用,且运行时强制降级为关闭。
- 自定义 bash 路径:上游若带作者机器固定路径,生成 preset 时归一化为该值,默认 PATH 查找
bash.exe。 - 其他字段语义见上方配置注释;设置文件优先级高于挂载配置,首次安装时用项目文件内容初始化设置。
版权
本项目采用 MIT 许可证。
- 首轮锚定机制源自 xiaobright/dsh-anchored-standard(MIT),其
preset/快照内联于本仓库upstream/,对应上游提交记录见REVISION。 - 任务引导与 Flash 子代理方案参考 yjh051108/dsh-router-standard(MIT)。
- 缓存与工具面成本原则参考 yjh051108/dsh-super-injector(MIT)。
- 上游
agent.cordis.yml基于 DeepSeek Harness Standard 预设修改;原始 DeepSeek 版权与 MIT 声明保留在upstream/dsh-anchored-standard/NOTICE与LICENSE。 - 本项目
LICENSE见仓库根目录;随上游快照发布的upstream/dsh-anchored-standard/LICENSE与NOTICE继续保留。
프로젝트 파일 및 신호
표시된 항목은 디렉터리 스냅샷에서 감지된 공개 저장소 신호입니다.
저장소 정보
- 언어
- JavaScript
- 라이선스
- MIT
- 마지막 업데이트
- 2026. 8. 17. AM 6:04
신중하게 설치하기
소스 코드, 권한, 수명 주기 스크립트, 의존성 및 네트워크 접근을 검토하고 신뢰하지 않는 플러그인은 격리 환경에서 테스트하세요.