DeepSeek Harness Hub
← 返回列表

Zoria-Lind/dsh-behavior-enhancer

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

DeepSeek Harness 行为管理插件:改变模型怎么调用工具,让复杂任务更稳定,不干预内容本身。

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

DeepSeek Harness 的行为管理插件:工具调用纪律提示词部分、失败触发的并行收敛(池降至 1,自动恢复)、连续失败时用户干预。与 dsh-token-optimizer 互补;可独立使用。

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

README

dsh-behavior-enhancer

DeepSeek Harness 行为管理插件:改变模型怎么调用工具,让复杂任务更稳定,不干预内容本身。
与 dsh-token-optimizer 职责互补——
token-optimizer 管内容(压缩/裁剪/采样),本插件管行为(调用纪律/失败收敛/连续失败介入)。两者互不依赖,可独立安装。

它做什么(30 秒版)

| 模块 | 机制 | 说明 |
| :--- | :--- | :--- |
| behaviorPrompt | ctx.inject(['systemPrompt']) + systemPrompt.section() | 注册静态行为约束段(先读后写、批量前先验证、失败即收敛、同类修改串行)。软约束,强制靠下面模块 |
| parallelConvergence | tools/result + settings.update('agent-loop', {maxParallelToolCalls}) | 任何工具失败(含命令级失败)→ 并行池上限压到 1;连续 3 次成功 → 恢复用户原值;上下文压力 ≥60%(idle 测量)→ 降档,回落  为什么 cordis.patch.yml 里的 name 是带 scope 的全名:patch 条目的
name 是 loader 解析已安装包名用的(与 package.json 的 name 一一
对应),id: behavior-enhancer 才是配置树里的逻辑标识。npm/marketplace
安装的包名带 scope,所以 name 必须与之一致;不一致时 loader 会报
cannot resolve package。用上面的 dsh plugin add 安装即自动一致。

配置

- id: behavior-enhancer
name: '@zoria-lind/dsh-behavior-enhancer'
config:
behaviorPrompt:
enabled: true
order: -98
text: |        # 可整体替换;必须保持静态(禁时间戳/动态值)
工具调用行为纪律(本会话)
- 先读后写
- 批量操作前先验证
- 失败立即收敛
- 同类修改串行
- 证据与诚实
- 上下文已压缩时先查日志再回答
parallelConvergence:
enabled: true
recoveryThreshold: 3     # 连续成功次数达到后恢复原并行度
complexRatio: 0.6        # 上下文压力比(idle 测量),超阈值降档
minParallel: 1
defaultParallel: 10      # 读不到当前值时的 fallback(核心默认 10)
contextWindowFallback: 1000000
failureGuard:
enabled: true
maxFailures: 2yaml
followupMessage: '工具 {tool} 已连续失败 {count} 次。请停止重试,向用户说明失败原因并询问下一步。'
blockFeedback: false     # 慎用:拦截错误结果正文,模型会看不到失败细节
feedbackText: '该工具调用失败。请先分析失败原因并修正调用参数后再重试,不要原样重复。'
postWriteCheck:            # v1.1 写后检查(默认开启)
enabled: true
writeTools: ['write', 'edit']
checkExtensions: ['json', 'yaml', 'yml', 'js', 'mjs', 'cjs', 'ts', 'tsx', 'jsx', 'py', 'ps1', 'sh', 'toml', 'xml']
maxFileBytes: 500000     # 超过该大小跳过检查(也跳过快照)
keepBackups: 5           # 每文件保留的 .bak 快照份数
askThreshold: 3          # ≥3 个问题才弹窗询问(1~2 个自动回滚)
askTimeoutMs: 120000     # 询问超时,超时按 autoRollback 降级
snapshotDir: '~/.dsh-memory/files'
autoRollback: true       # 询问不可用/超时时自动回滚(fail-safe)
memory_bridge:             # dsh-memory-bridge 联动占位节(阶段 3b 完成后开开关)
enabled: false
sync_on_check: true
rollback_from_memory: true
post_write_check: true

开发
bash
node test/smoke.mjs          # 单进程全量自检(无需 API),npm test 同

路线图

- 实验分支:给 grep/glob 补 isConcurrencySafe(需 agent 作用域 shadow 包装器,复杂度高,主线不依赖)
- dsh-memory-bridge 联动(配置节已占位;~/.dsh-memory/files/ 文件快照已就绪,等 bridge 服务上线后支持"从快照找回文件正确版本")

权限与边界(上架声明)

| 类别 | 实际行为 | 边界 |
| :--- | :--- | :--- |
| 文件 files | 读写 ~/.dsh/behavior-enhancer/state.json(parallelConvergence 串行状态);postWriteCheck 在 write/edit 执行前把目标文件快照到 ~/.dsh-memory/files/(.bak-,每文件留 5 份),写后检查失败时把快照回滚写回目标文件 | 不写 Profile 配置、不改 DSH 核心/官方包;用户工作区的读写仅限模型主动调用的 write/edit 目标文件,快照目录固定为 ~/.dsh-memory/files/ |
| 网络 network | 无 | 不发起任何网络请求 |
| 命令 commands | 无 | 不执行任何子进程 |
| 凭据 credentials | 无 | 不读取任何环境变量或凭据 |

- 运行时依赖:零 npm 依赖,无外部服务。
- 失败边界:所有模块 fail-open——状态文件损坏即丢弃重来;约束段是软约束(行为提示),强制收敛由并行池与 followup 两条独立路径保证,任何一条失效不影响 DSH 核心流程。
- 已知风险:failureGuard 通过 agent.followup() 注入提示,模型是否服从取决于模型本身;behaviorPrompt.text 若被改成动态内容会破坏 DeepSeek 前缀缓存(默认静态)。postWriteCheck 的轻量解析是启发式(非编译器),回滚恢复的是整个文件的写入前版本(文件写入前已存在的问题会一并带回);检查范围仅 write/edit 工具,经 pwsh/bash 等命令写入的文件不检查。
- 兼容范围:支持基线 DSH 0.1.5-rc.x(Node ≥ 18):0.1.5-rc.1 已按核心源码静态核验全部依赖 API、0.1.5-rc.2 经真实环境运行验证(Issue #2 报告),在 package.json 的 dsh.compatibility.dshReleases 中标为 compatible;≤0.1.4 旧版不再跟踪支持。

开发
bash
node test/smoke.mjs          # 单进程全量自检(无需 API),npm test 同

路线图

- 实验分支:给 grep/glob 补 isConcurrencySafe(需 agent 作用域 shadow 包装器,复杂度高,主线不依赖)
- dsh-memory-bridge 联动(配置节已占位;~/.dsh-memory/files/ 文件快照已就绪,等 bridge 服务上线后支持"从快照找回文件正确版本")

许可 / License

MIT © 2026 Zoria Lind

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

同作者(Zoria-Lind)的其他插件

💬 加入 DPharness 群聊

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

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