deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:cuddly-guacamole/dsh-auto-approval-llm
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
为 DeepSeek Harness 的 Auto 权限档提供 LLM 辅助自动审批 + 超时自动兜底。
English: README.en.md
Auto 档 = sandbox: danger-full-access + approval: ask。本插件在 Auto 会话里充当 approval/request 的唯一终结裁决者:常规操作放行、危险/模糊操作交给「静态规则 → LLM 分类 → LLM/人工裁决 → 倒计时兜底 → 熔断」的自动管线,把「自动但安全」的吞吐做高,同时保证有人工与审计兜底。
tools/guard + tools/pre-execute)。timeoutAction 处理(拒绝 / 通过 / 低风险自动同意)。关浏览器也不悬挂(host 计时器独裁)。maxConsecutiveDenials 次或累计 maxTotalDenials 次被 LLM 拒绝 → 转人工、不再自动倒计时;/approval reset 可重置。history.jsonl,append-only audit.jsonl(清空留 tombstone)。/approval-mode manual|smart|unattended 持久化;manual 全转人、unattended 自动应答;高风险超时仍转人工/失败关闭。rulesText 用 Claude 风格 工具(正则) | allow|deny|human [| 字段] 一眼看懂、实时校验。工具调用
→ tools.guard 静态硬拒闸门(命中即拒,不弹窗)
→ tools/pre-execute 静态评估:allow 放行 / deny 拒绝 / ask 交给 LLM 分类器
→ approval/request 唯一终结裁决:
声明规则 rulesText → denyList/allowlist → humanOnlyList → 评审模式 →
熔断检查 → 风险分档(LOW/MEDIUM/HIGH)→ LLM 复审 + 人工倒计时
→ tools/post-execute 把「超时/规则/模型拒绝」标记喂回模型
llmTakeoverScope 覆盖且 LLM 给出明确结论 → 立即跟随;否则只显示建议。timeoutAction(unattended 下 HIGH 超时仍转人工/失败关闭)。已发布 npm(@quill507/dsh-auto-approval-llm),直接安装:
dsh plugin --profile web add @quill507/dsh-auto-approval-llm
本地开发构建 / 注入(dsh-super-injector 环境):
提示:本插件依赖 DSH 的
auto权限预设(danger-full-access+approval: ask),并作为approval/request的唯一终结者——不要与其他审批类插件(如 dsh-approval-llm / dsh-auto-review)同时启用。
auto 预设)。拒绝 / 低风险自动同意。在 Auto 权限预设下使用(设置 → 通用设置 → 权限 → Auto;Read Only / Workspace Write / Auto / Full access):

设置卡总览——顶层开关即时保存,右侧为可折叠子卡:

计时器与熔断——三档倒计时、熔断防劫持与双熔断阈值:

在线评审模型——API 协议 / 地址 / 模型 / 密钥(密钥前端不可见):

安全规则列表——安全 Prompt / 白黑名单 / 声明规则 / 规则干跑:

审批面板——倒计时贴在超时自动执行的动作上(此处 超时动作=低风险自动同意 → 中风险超时自动拒绝,「拒绝」按钮带倒计时、「允许一次」保持干净):

会话审批统计——会话标题栏「自动审批」按钮弹层:总计/通过/拒绝/超时/熔断 + 最近记录:

| 键 | 默认 | 说明 |
|---|---|---|
enabled |
true | 总开关 |
autoSwitchPolicyToAsk |
false | 仅 Auto 预设且 override=never 时自动切 ask |
timeoutAction |
reject |
倒计时超时动作:reject 拒绝 / allow 全部通过 / low-risk-allow 仅低风险放行 |
llmReviewScope |
low-or-above |
LOW/MEDIUM/HIGH 哪些档送 LLM 复审 |
llmTakeoverScope |
medium-or-below |
哪些档允许 LLM 结论直接接管 |
defaultReviewMode |
smart |
每会话评审模式默认:人工 / 智能 / 无人值守 |
lowRiskSeconds / mediumRiskSeconds / highRiskSeconds |
3 / 5 / 10 | 三档倒计时(秒) |
breakerAntiHijackMs |
0 | 熔断弹窗按钮防误点禁用时长,0 不启用 |
maxConsecutiveDenials |
3 | 连续 LLM 拒绝熔断阈值,0 关闭 |
maxTotalDenials |
20 | 累计拒绝熔断阈值,0 关闭 |
reviewerProtocol |
openai |
在线评审协议:openai(chat/completions) / anthropic(messages) |
reviewerBaseUrl |
'' | 在线评审 API 地址;非空才走在线评审,空则跟随会话模型 |
reviewerModel(+旧 reviewerProvider) |
'' | 在线评审模型名(旧 Provider 路由保留兼容,不再 UI 暴露) |
safetyPrompt |
'' | 附加给评审模型的额外策略(保存即热生效) |
allowlist / denyList / humanOnlyList |
[] | 工具名精确匹配 |
rulesText |
'' | 声明式规则(优先于内置列表执行) |
rulesDryRun |
false | 规则干跑:只记命中不执法 |
maxArgsChars |
4000 | 取回工具参数的最大长度 |
notifyUser |
true | 「模型通过」通知进会话 |
showSessionPanel |
off |
会话标题栏按钮:关 / 仅Auto / 开 |
aiButtonPosition |
header |
按钮位置:标题栏 / 悬浮 |
workspaceRoot / dshHome / tempRoots |
''/''/[] | 路径根(DSH_HOME 默认保护) |
classifierTimeoutMs / classifierMaxOutputTokens |
8000 / 1024 | 分类器超时与输出上限 |
debug |
false | 调试模式:写 approval-debug.jsonl 与 [debug] 日志 |
顶层开关(启用/切换策略/超时动作/评审·接管范围/默认模式/按钮显示与位置)改动即保存;每张子卡有独立的 保存/放弃修改 按钮(安全规则列表另有 恢复默认)。host-only 键(workspaceRoot 等)用 patch/YAML 配置,设置卡保存不会抹掉它们。
/approval-mode 查看当前会话评审模式/approval-mode manual|smart|unattended 设置(持久化)/approval reset 重置熔断计数与在途审批状态| 文件 | 语义 |
|---|---|
history.jsonl |
审批历史(内存窗口 200 条 + 落盘;>1MB 轮转)。删除文件不触发重载、不清内存窗口,下一条裁决会自动重建 |
audit.jsonl |
append-only 审计(清空留 clear tombstone) |
review-mode.json |
每会话评审模式快照 |
approval-debug.jsonl |
仅调试模式开启时写入:评审/审批时序(decision/risk/tookMs/outcome/source),>1MB 轮转 |
数据查询:node scripts/audit-query.mjs [--last N|--tool X|--session S|--source S|--since ISO|--json]
timeoutAction=allow 自动放行;reviewer 失败不计入熔断。timeoutAction=通过 → 超时自动通过,「允许一次」倒计时、拒绝按钮干净;timeoutAction=拒绝 / 低风险自动同意 → 中/高风险超时自动拒绝,「拒绝」按钮倒计时(低风险自动同意时仅低风险超时通过)。中风险默认 5 秒偏紧,建议按需调大。本项目在设计与实现中参考/移植了以下开源项目,谨此致谢它们的作者与社区:
src/auto/ 中重写为独立实现(移除该项目也可正常工作)。0.0.5(待发布)—— npm:@quill507/dsh-auto-approval-llm,GitHub:Release v0.0.5。dsh plugin --profile web add @quill507/dsh-auto-approval-llmCLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。