前言¶
在 DeepSeek Harness(DSH)里让 Agent 写实现、选依赖或排查工具时,常见浪费是「本机已有同类插件、Skill、脚本或源码,却直接开写新代码」。local-solution-first 是一套挂在 DSH 上的行为规程 Skill:不新增权限、不注册 MCP 工具,只约束 Agent 先在本机分层检索可复用方案,再用可核对的事实给出结论;证据不足则明确说明为何不宜强行复用。下面介绍它是什么、如何安装,以及适用边界。
这是什么¶
- 名称:
local-solution-first(DSH 组合包名@shenhe3939-debug/local-solution-first,当前冻结版本 v0.1.6)。 - 维护者:GitHub 用户 shenhe3939-debug。
- 分类:工作流(社区目录 SkillHub 与仓库 README 一致)。
- 定位:技能正文在仓库
SKILL.md;仓库另有一层很薄的 DSH 插件包装,作用是把该 Skill 注册进 DSH。许可证为 MIT。
与「直接实现」相比,它把顺序固定为:先定检索范围 → 对候选取证 → 给出四种结论之一 → 写清安全、验证与证据边界。
核心功能¶
资料中可核实的能力如下。
工作流四步¶
- 先定检索范围:按分层从「最可能被复用」的位置向外搜。
- 再逐个候选取证:用路径、版本、能力、代价等可核对事实,而不是印象。
- 给出建议:结论限于「复用 / 部分复用 / 不复用 / 需要更多信息」四种。
- 写清安全与验证:标明证据边界(哪些地方没查、为什么没查)。
触发场景(README 列举)¶
评估仓库能否直接用、把外部项目移植进来、实现新功能前选方案、挑选依赖、排查本机已有工具,以及「复用它还是自己写」类抉择。
配套参考与回归¶
仓库除 SKILL.md 外还提供:
| 路径 | 作用 |
|---|---|
references/compatibility-checklist.md |
复用前能力/兼容性核对清单 |
references/decision-matrix.md |
复用判定矩阵 |
references/validator-design.md |
验证器设计说明 |
tests/regression-protocol.md |
回归协议 |
tests/regression-cases.md |
13 个用例 LS-01 … LS-13 |
维护者在 as-of 2026-10-17 的记录中写明:最终回归 run #10 为 behavioral 13/13 PASS;冻结策略是仅在 DSH 升级、观察到 Skill 行为错误或明确新增功能时开新版本。
安装与启用¶
方式 A:作为 DSH 插件安装¶
任选其一:
dsh plugin add github:shenhe3939-debug/local-solution-first
- 或在 DSH 桌面端 Web 侧边栏的插件页安装并启用;
- 或由 Agent 通过
plugin_manager安装(需danger-full-access或逐次批准)。
组合包在 profile 依赖里的名字为 @shenhe3939-debug/local-solution-first:bundle 记录在 dsh.profile.bundles;cordis.patch.yml 中 insert 的 name 须与该包名一致才会装载。改配置后,启用 HMR 的 profile 可立即生效,否则需重启。
启用后,cordis.patch.yml 将 lib/index.mjs 挂进组合,由其在 ctx.skills.register 上注册本技能(source: bundled,资源基目录为包根,references/、tests/ 可被引用)。技能正文由 scripts/build-skill-content.mjs 从 SKILL.md 生成到 lib/skill-content.mjs;若修改 SKILL.md,需重跑该生成脚本。
README 对安装链路的说明(as-of 2026-10-17):除真机执行 dsh plugin add 的端到端外,装载与指示符解析等在 DSH 0.2.0-rc.2 上另有契约级与运行时级验证记录;读者若依赖插件安装器,宜自行在目标环境确认装载结果。
方式 B:作为普通 Skill 目录¶
DSH Skill 发现规则(README 引述 DSH 0.2.0-rc.2):只发现一层 <root>/<skill-name>/SKILL.md;多个根目录时优先级数字小的生效(例如项目 .dsh/skills 100 优于用户 .dsh/skills 400)。
可将目录名为 local-solution-first 的副本放入任一 skill 根目录。README 给出 clone 示例(用户若不用 git,可用发行包,见下)。
冻结发行包(v0.1.6):
- 发行页:https://github.com/shenhe3939-debug/local-solution-first/releases/tag/v0.1.6
- 直链:https://raw.githubusercontent.com/shenhe3939-debug/local-solution-first/v0.1.6/dist/local-solution-first-dsh-v0.1.6.zip
解压后为 local-solution-first/ 目录,放入任一 skill 根目录即可。
典型用法¶
本插件不暴露独立 CLI;「用法」即 Agent 在相关任务上遵循 Skill 规程时的输出结构。按 README,Agent 应:
- 在实现、移植、选依赖或排查工具之前,按分层搜索本机已有方案;
- 对每个候选记录可验证证据;
- 在报告中给出上述四种结论之一,并说明未覆盖的检索范围。
需要核对「能否复用」时,可让 Agent 参照包内 references/decision-matrix.md 与 compatibility-checklist.md(路径在已安装的 bundle 或 skill 目录下)。
开发者维护包时,可在仓库根目录执行:
node scripts/build-skill-content.mjs
node scripts/verify-package.mjs
前者在修改 SKILL.md 后同步 lib/skill-content.mjs;后者做打包自检(仅需 Node,无其他依赖)。
适用场景与注意¶
适合谁:经常在 DSH 里做方案选型、依赖挑选、本机工具排查,并希望 Agent 先查本地再写代码的开发者。
运行与权限:Skill 本身不扩权;Agent 仍按当前 DSH 进程已有能力去读文件、搜仓库。安装插件或解压 skill 前,应自行查看仓库源码与 MIT 许可证,确认符合环境策略。
版本与生态:社区目录 SkillHub 与 GitHub 仓库由维护者发布,与 DeepSeek / 幻方无官方从属关系;目录页星标为 0(以抓取线索为准)。包要求 Node >= 20,peerDependencies 含 @deepseek-ai/cordis ^4.0.2。
同名 Skill:多根目录下同名副本仅优先级最高者生效;项目级目录会遮蔽用户级副本。
结尾¶
local-solution-first 用规程把「先搜本机、证据说话、结论四类、边界写清」固定进 Agent 工作流,适合作为 DSH 工作流类组合包长期启用。进一步了解可访问 SkillHub 目录页 与 GitHub 仓库。