精选
为什么选中它
待人工精选——以下事实来自源码仓库。
它能做什么
DSH 插件价值裁判:装前审核(源码静态扫描 + LLM 裁判)、装后审计与模型切换复核提醒 · Plugin value auditor for DeepSeek Harness.
适合谁
想用 DSH 获得这项能力的用户;装前建议先看源码和文档。
风险提示
- 未发现明显风险信号;安装前仍建议查看源码。
DSH 插件价值裁判:装前审核(源码静态扫描 + LLM 裁判)、装后审计与模型切换复核提醒 · Plugin value auditor for DeepSeek Harness.
待人工精选——以下事实来自源码仓库。
DSH 插件价值裁判:装前审核(源码静态扫描 + LLM 裁判)、装后审计与模型切换复核提醒 · Plugin value auditor for DeepSeek Harness.
想用 DSH 获得这项能力的用户;装前建议先看源码和文档。
dsh plugin --profile web add github:pengxuding/dsh-plugin-judge 作者没有声明支持的平台。
agent/pre-step / tools/pre-execute, restrict / guard on tools, or complete: true wholesale prompt replacement) — like putting the model "in a cage". Constraint plugins carry a hidden cost: the model will follow the rules faithfully (compliance looks great), but it performs worse on the task you actually care about — rules crowd the context and suppress the model's own judgment, putting a low ceiling over a capable model. Worse, as models get upgraded, many "patch rules for the old model" turn from patches into ceilings, and the plugin becomes obsolete or even harmful. So a plugin's value is not a property of the plugin alone — it is a binary relation of "plugin × current model". That is exactly what this plugin evaluates. ## Features | Feature | When | How | | --- | --- | --- | | Pre-install review | Before installing | /plugin-audit <github:owner/repo or npm:pkg> command, the judge_plugin tool, or the settings-page input. Fetches the plugin source → static scan + LLM judge → a "worth installing?" verdict | | Post-install audit | Already installed | Enumerates installed bundles from the profile → scans and classifies each (capability / constraint / cosmetic / hybrid) → constraint-risk score → settings-page report panel | | Model-switch reminders | When the model changes | Watches the default model → flags plugins whose verdict depended on the old model → overlay popup reminder to re-audit | ## How it judges (two layers combined) 1. Rule heuristics (free, deterministic): scans the plugin source and its injected content for signals, weights them into a 0–100 constraint-risk score, and classifies the plugin as capability / constraint / cosmetic / hybrid. 2. LLM judge (fine-grained, on demand): hands the scan result, the injected content summary, and the current model's identity to a model and asks whether these rules help or suppress this specific model, returning a verdict with reasons. ## Usage sh # Install (requires an existing web profile) dsh plugin --profile web add dsh-plugin-judge # Or install from source dsh plugin --profile web add <path-to-this-repo> After installing and restarting the harness: - Type /plugin-audit github:some/repo in chat for a pre-install review; - Or let the model call the judge_plugin tool directly; - The settings panel gains a Plugin Judge page: scan reports for every installed plugin, a pre-install review input, and audit history; - After a model switch, if any plugins need re-auditing, a floating reminder pops up on the page. ## Design ### Data flow Installed plugins: profile manifest (~/.dsh/profiles/<profile>/package.json → dsh.profile.bundles) + each package's package.json / lib source (read locally via node:fs) Candidate plugins: package.json + entry source fetched from npm registry / jsDelivr / GitHub raw (Node fetch) Heuristic scan: capability signals (+) vs constraint signals (−), weighted → class + risk score LLM judge: llm.stream (generative verdict, carrying the current model identity) → verdict + reasons Model watch: agentDefaultModel.currentSelection() polling (fallback: agent/request waterfall observation) Persistence: ~/.dsh/plugin-judge/audits.json (audit history + model fingerprint) Bridge: Host ctx.connection.rpc.handle('/plugin-judge', …) ← Client rpc.call polling Reminders: Host produces pending-reminders → Client polls → shell.overlay popup Reports: Client settings.section "Plugin Judge" page + judge_plugin tool card ### Signal table (heuristics) Capability signals: tools.register / defineTool / skills / MCP / webServer.register / registerFetchProvider / commands.register / provide( … Constraint signals: systemPrompt.section / ctx.systemPrompt / persona / writing AGENTS.md / agent/pre-step / tools/pre-execute / tools/execute waterfall listeners / restrict( / guard( / complete: true wholesale replacement / strong-directive density (must, never, always, MUST, NEVER, 必须、不得、禁止) / fixed-template instructions (strictly follow, exact format, 严格按照、按以下格式) … ### Layout judgePlugin/ ├── package.json # dsh.bundle.patch + dsh.client.inject + exports (Node >= 18) ├── cordis.patch.yml # insert: plugin-judge ├── lib/ │ └── index.js # Host half: inventory / source fetching / heuristic scan / LLM judge / │ # model watch & reminders / tool & command / connection RPC bridge / persistence └── client/ └── client.js # Client half (__ModuleLoader__ format, no build step): # settings.section report panel + shell.overlay model-switch reminder popup ### Disclaimer Verdicts are advisory opinions produced by heuristics plus a model judge — not a security audit. Installing any plugin runs third-party code on your machine with your own permissions; read the source before you install.不看 Star,人工一条条挑的。
把 DSH 的 settings.yaml 做成可视化看板:所有已注册的 settings namespace——包括官方界面从未覆盖的第三方插件配置——都渲染成可编辑表单。项目还早,但方向很对:告别手改 YAML。
给 DSH 的 DIY 轨迹可视化:把 agent 的计划与执行画成图,不用翻原始日志也能看清它在干嘛。项目还早,但补上了「一眼看懂 agent 在做什么」这个真实缺口。
从 Claude Code / Codex 把活派给 DSH:在宿主内拉起带分级预设的 DSH agent 会话,看原生子代理进度,还能借它的多模态桥给纯文本的 DSH 补上视觉和生图。编排型插件,把 DSH 变成其他编码 agent 的后端。