DeepSeek Harness Hub
← 返回列表

简洁模式插件qiufenqiu/dsh-concise

DeepSeek Harnessspec-screened在 GitHub 查看 ↗
未验证

给回复注入简洁约束,按会话白名单精确豁免

尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/16 · 已提供中文文档

让 DeepSeek Harness 少说废话、省词元:系统提示词级简洁约束插件,零依赖单文件,支持按会话黑白名单精确控制哪些窗口生效。A concise-mode plugin for DeepSeek Harness — less fluff, fewer tokens, per-session allow/block lists, zero dependencies.

综合分
27.6
GitHub 分
27.6
用户评分
★ Stars
1
周下载量
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add qiufenqiu/dsh-concise
该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/16(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动

README

dsh-concise

让 DeepSeek Harness 少说废话、省词元。Make DeepSeek Harness concise and save tokens.

在系统提示词末尾注入一条“简洁语气”指令段:先给结论、不寒暄、不重复、不总结、不追问,
直接压低每次回复的输出词元;同时支持按会话精确豁免(文学/文风/小说窗口完全不受影响)。

- 零依赖零导入:单文件 .mjs,复制即用;也兼容官方 dsh plugin 安装
- 原理:ctx.systemPrompt.section() 在 order 200(工具指引之后、提示词末尾)
注册语气段;calmSessions / allowSessions 命中会话渲染为空段(等于没装)

⚠️ 关于 GUI 设置面板:dsh 0.1.0-rc.6 的设置 API 只暴露硬编码白名单命名空间
(dsh-host-apiproxy 的 WEB_SETTINGS_NAMESPACES),官方注释明确第三方插件
自行暴露配置是“延期工作”。因此当前版本无法在设置页渲染本插件卡片——
配置一律写在 cordis.patch.yml(见下)。不改官方包,等官方开放后再补面板。

快速开始(Quick Start)

1. 安装(二选一):
- 方式 A(推荐,官方插件管理器):dsh plugin --profile web add dsh-concise
- 方式 B(零依赖):把 dsh-concise.mjs 复制到 profiles/web/plugins/
2. 挂载:把上面示例的 insert 条目加进 profiles/web/cordis.patch.yml(包名或相对路径对应你的安装方式)
3. 重启 dsh web,开始省词元

开箱默认行为:所有窗口的回复都变得简洁直接(不寒暄、不复述、不追问),
你明确要求的文学创作/文案写作不受影响。不需要任何配置就能用。
想“放行”某些窗口(比如你的写作窗口),在 calmSessions 里加它们的会话 ID 前缀即可。

安装

方式 A:官方插件管理器(推荐)

要求本机已安装 pnpm(dsh 的插件命令基于 pnpm)。

从 npm 安装(发布后)或直接从 GitHub 安装:
dsh plugin --profile web add dsh-concise            # npm 发布后
或
dsh plugin --profile web add github:qiufenqiu/dsh-concise   # 未发布时用 git 地址

然后把插件挂进 profile 的补丁层 profiles/web/cordis.patch.yml:

- insert:
- id: dsh-concise
name: dsh-concise
config: {}          # 可选:不填则全部走设置面板/默认值

重启 dsh web 生效。
(说明:设置页的插件卡片仅对官方白名单命名空间开放,本插件配置在 patch YAML 中。)

方式 B:零依赖直接复制

把 dsh-concise.mjs 复制到 profile 的插件目录:
cp dsh-concise.mjs profiles/web/plugins/

profiles/web/cordis.patch.yml 加入(注意是相对路径 ./plugins/...):

- insert:
- id: dsh-concise
name: ./plugins/dsh-concise.mjs
config:
strength: strong
suppressRuntimeContext: false
exemptCreative: true
calmSessions:
- session-abcdef12

重启 dsh web 生效。此方式无设置面板,配置全在 YAML。

配置说明

| 字段 | 默认 | 说明 |
|---|---|---|
| strength | strong | strong 硬约束(禁止寒暄/复述/收尾问句);light 温和约束(保留语气余地);off 关闭(空载) |
| suppressRuntimeContext | false | 进阶省词元:每轮不再重发“当前运行时上下文”快照。副作用=模型会“忘记”文件策略/技能目录等事实,默认关闭,改动需重启 |
| exemptCreative | true | 豁免用户明确要求的创作/文案/文学写作,这类任务按用户风格要求走 |
| calmSessions | [] | 黑名单模式(默认):会话 ID 前缀列表,命中会话完全不加简洁段。用于保护文学/文风/小说窗口 |
| allowlist | false | true 开启白名单模式:只有 allowSessions 列出的窗口运行简洁段,其余零影响 |
| allowSessions | [] | 白名单模式下要运行插件的窗口会话 ID 前缀列表 |

两种模式互斥:allowlist: true 时 calmSessions 不生效;反之亦然。
默认黑名单 = 新开的开发窗口自动被覆盖,不会漏;白名单 = 严格“只有指定窗口”,适合窗口很固定时用。

如何找到会话 ID

会话 ID 形如 session-abcdef12-9b93-4d3c-8b6f-e04e38b58d51。
calmSessions 支持前缀匹配,写 session-abcdef12 即可。
来源:会话存档目录 $DSH_HOME/sessions/// 的目录名;
或让 AI 助手从 $DSH_HOME/storages/session_projcache.json 里读出“会话ID → 标题”对照表。

省词元与缓存命中

DeepSeek 对重复的提示词前缀自动缓存,缓存读价格约为未缓存输入的 1/10。
省词元的两条腿:

1. 输出侧:简洁语气段直接压输出词元(这是本插件的主职)。
2. 输入侧(缓存友好):
- 语气段是静态固定字符串,不改变系统提示词前缀 → 首轮后每轮前缀都命中缓存;
- strong 档内置“输入卫生”引导:能并行的读/查/工具调用放同一轮、不重复读取已读过的文件、
不回显已有的工具结果、尽量少回合——回合数越少,新增未缓存输入越少;
- suppressRuntimeContext: true 可再省每轮固定重发的“运行时上下文”快照
(默认关闭,副作用=模型会忘记文件策略/技能目录等事实,进阶自担)。

想验证效果:对比开启插件前后的 token 用量(未缓存输入 vs 缓存读 vs 输出),
输出与未缓存输入应明显下降。

工作原理

1. 每次模型轮次组装系统提示词时,在 order 200(所有工具指引之后)注入语气段;
2. 语气段的 text 是函数:读取当前会话的 agent.session.id,
命中 calmSessions 前缀则返回空串(渲染时被丢弃,零影响);
3. 配置全部来自 patch 条目的 config 字段(设置页卡片受官方白名单限制,暂不可用)。

兼容性

- 依赖 DSH 0.1.0-rc.6 的 dsh-system-prompt 服务(系统提示词注册表);
- 会话分流依赖组装上下文的运行时字段 context.agent.session.id(rc.6 实测有效),
解析失败时安全回退为“全部会话应用简洁约束”。

常见问题(FAQ)

Q: 装上后没看到任何界面/设置项,是不是没生效?
A: 生效了。这个插件没有界面(dsh 0.1.0-rc.6 的设置页只对官方白名单命名空间开放,
第三方插件无法渲染配置卡片——官方注释明确为“延期工作”)。它的效果体现在回复行为上:
你会明显感到回复变简洁、不寒暄、不复述。配置全部在 cordis.patch.yml。

Q: 默认会管我的创作/写作吗?
A: 不会。exemptCreative 默认 true:你明确要求写的创作、文案、文学内容按你的风格要求走,
不受简洁约束。如果你连“分析类”写作(如文学评论)也想豁免,把对应窗口加进 calmSessions。

Q: 怎么关掉?
A: strength 改成 off 即可,或直接删掉 patch 里的条目。

Q: 怎么找到窗口的会话 ID?
A: 会话 ID 形如 session-abcdef12-xxxx-...。查看 $DSH_HOME/sessions///
目录名;或直接问你的 AI 助手,让它从 $DSH_HOME/storages/session_projcache.json 读出
“会话ID → 标题”对照表(本插件只认 ID 前缀,写 session-abcdef12 即可)。

Q: 为什么是 ID 不是窗口标题?
A: 组装钩子里只能读到会话 ID(标题存于独立投影存储,运行时不可达)。
所以豁免/白名单用 ID 前缀匹配。

English

dsh-concise — a zero-dependency DeepSeek Harness plugin that makes the agent
concise and saves tokens.

- Injects a concision directive at the end of the system prompt (order 200):
lead with the conclusion, no greetings/summaries/closing questions, no
re-reading or re-echoing content already in context, batch independent tool
calls (cache-friendly — keeps the prompt prefix stable for DeepSeek's
automatic prompt caching, cache reads ≈ 1/10 the price of uncached input).
- Per-session control by session-ID prefix:
- Blocklist (calmSessions, default): listed sessions are left completely
untouched (great for writing/creative windows).
- Allowlist (allowlist: true + allowSessions): only listed sessions get
the concise directive.
- exemptCreative: true (default): explicitly requested creative writing /
copywriting / literary prose keeps the user's own style guidance.
- strength: strong (default) | light | off.
- suppressRuntimeContext: advanced — skip re-sending the per-turn runtime
context snapshot (bigger savings, makes the model "forget" policies/skills;
restart required).

Install: dsh plugin --profile web add dsh-concise (or copy dsh-concise.mjs
to profiles/web/plugins/), add the insert entry, restart dsh web. All config
lives in cordis.patch.yml — no UI (dsh rc.6 settings page exposes only
hardcoded official namespaces).

License

MIT

上游仓库有新提交时邮件通知你(每天最多一封,无更新不打扰),随时一键退订。

💬 加入 DPharness 群聊

插件用法、部署报错、新插件第一时间同步——群里问,比一个人翻文档快。

点击加入 QQ 群
DPharness 群聊二维码,手机 QQ 扫码进群
扫码进群