← 返回列表
未验证
🧩 dsh-plugin-module-driven-dev
尚未跑自动兼容性验证,可查看页面内的依赖与入口分析。 · 最近上游提交 2026/8/30 · 已提供中文文档
面向模块驱动开发的DSH插件:将需求分解为模块树,为每个模块分配独立代理进行生成,并在任何变更时基于设计完整重新生成。
综合分
28.8
GitHub 分
28.8
用户评分
—
★ Stars
1
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add phantomSuying/dsh-module-driven-develop该插件未发布到 npm,走 GitHub 源安装(pnpm 若拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑)
数据截至 2026/9/18(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
🧩 dsh-plugin-module-driven-dev DeepSeek Harness 的模块驱动开发(MDD)插件 把任意需求递归拆解成模块树,让每个模块由独立 agent 完成设计与代码生成,由主 agent 统一调度、集成、调试;设计或需求一旦变更,从设计出发全量重新生成。 DSH plugin Version Skill Stars License 目录 - 特性 - 示例项目 - 安装 - 使用 - 工作原理 - 项目结构 - 开发 - 许可证 ✨ 特性 | # | 特性 | 实现方式 | |---|------|----------| | 1 | 编程插件 | 技能驱动的软件开发工作协议,覆盖拆解、设计、实现、集成、调试、变更管理全流程 | | 2 | 需求递归拆解 | 需求 → 模块 → 子模块,逐层拆解直到每个叶子模块小到单个 agent 可独立完成设计与实现(终止规则见 references/decomposition.md) | | 3 | 独立 agent 生成代码 | 每个叶子模块由独立子 agent 一次性完整生成;带子模块的模块 agent 自动成为下一层主 agent 递归派单;主 agent 统一调度、集成、调试(references/agent-protocol.md) | | 4 | 设计变更 ⇒ 代码全量重生成 | 设计文档是唯一事实来源;修订号 +1 即触发:旧代码整体归档、目录清空、按新设计从零重新生成,禁止在旧代码上打补丁 | | 5 | 需求调整递归传播 | 主 agent 派"变更分析师"子 agent 定位受影响模块(含沿依赖图的间接传播);各模块 agent 自主判断是否继续下发到子模块 agent,最后重新设计 + 重新生成 | 🎯 示例项目:auth-service 一个用本插件端到端开发出来的真实项目——小型 JWT 认证服务(Python 3.12 / FastAPI + SQLite),完全由 MDD 流程产出。 | 模块 id | Python 包 | 职责 | |---------|-----------|------| | common/contracts | authsvc_contracts | 公共 DTO(pydantic)、业务异常、规则常量 | | common/config | authsvc_config | 环境变量配置加载(AUTH_* 前缀) | | core/security | authsvc_security | PBKDF2-SHA256 密码哈希、JWT 签发/验证、token 哈希 | | data/db | authsvc_db | SQLite 连接(WAL、外键)与 users/sessions schema | | data/user-store | authsvc_user_store | 用户表存取 | | data/session-store | authsvc_session_store | 会话生命周期(创建/查询/吊销) | | auth/service | authsvc_auth | 认证业务编排:注册/登录/刷新/登出/me | | api/routes | authsvc_api | FastAPI HTTP 层:路由、依赖注入、统一异常处理 | 仓库里的 .mdd/ 工作区完整记录了全过程: - manifest.md — 模块树:8 个叶子模块 + root、依赖图无环、状态 integrated、revision 1; - designs/ — 9 份设计文档(每模块 + root),含契约表、依赖引用、验收标准、修订历史; - logs/schedule.md — 派单流水:5 个拓扑批次(B1–B5)独立子 agent,随后 P4 集成与 P5 冒烟; - logs//report.md — 各模块交付报告。 实测验证: - ✅ 169 个测试用例全部通过(模块单测 + API 端到端,exit 0); - ✅ 15/15 项 HTTP 冒烟检查通过——注册、重复注册 409、登录、错误密码 401、/me、refresh token rotation(防重放)、登出吊销、校验错误。 克隆下来看看——每个设计决策、派单和测试都记录在 .mdd/ 里。 📦 安装 方式 A:一键安装(profile 插件包,推荐) 本包是自包含的 Cordis bundle:index.js 通过 import.meta.url 自动定位包内 skills/ 目录并注册技能 provider——无任何写死的绝对路径,任意机器、任意安装来源都可用: 一条命令装进 profile(web 或其他 profile 名),重启 dsh 后生效 dsh plugin --profile web add git+https://github.com/phantomSuying/dsh-module-driven-develop.git 安装后该 profile 下所有 agent 会话的技能目录都会包含 module-driven-dev。 方式 B:复制技能目录(无需 pnpm / profile) DSH 从固定技能根目录发现技能(/.dsh/skills、~/.dsh/skills、~/.agents/skills): 安装到当前项目(本目录会话立即可用) .\scripts\install.ps1 -Scope Project 安装到用户级(所有项目可用) .\scripts\install.ps1 -Scope User 方式 C:从打包产物安装 npm pack dsh plugin --profile web add C:\path\to\dsh-plugin-module-driven-dev-1.1.0.tgz 验证 新会话中让 agent 列出可用技能(或直接说"使用模块驱动开发模式"),应能看到 module-driven-dev。 🚀 使用 直接在对话中对 agent 说: - "用模块驱动开发实现 \" → 主 agent 执行 P0–P5:拆解模块树(.mdd/manifest.md)→ 逐模块设计(.mdd/designs/)→ 派独立子 agent 生成代码(.mdd/code/)→ 主 agent 集成、构建、调试。 - "把 \ 的设计改成 …" → 设计变更:修订号 +1 → 旧代码归档 → 按新设计全量重新生成。 - "需求调整:\" → 变更分析师子 agent 定位受影响模块(含沿依赖图的传播),模块 agent 递归决定是否继续下发,最后重新设计 + 重新生成 + 重新集成。 所有产物在 .mdd/ 下(布局见 references/workspace-layout.md)。 🧠 工作原理 dsh-plugin-module-driven-dev ← Cordis bundle(补丁层,本身不执行) └─ cordis.patch.yml 插入一行: skill-mdd-provider ← 加载树条目(id) name: dsh-plugin-module-driven-dev └─ index.js ← 自定位插件(import.meta.url → ./skills/) └─ ctx.skills provider:module-driven-dev └─ 发现 → module-driven-dev(技能本体 SKILL.md) └─ 主 agent 协议:P0 启动 → P1 拆解 → P2 设计 → P3 独立 agent 生成 → P4 集成 → P5 调试 → P6 变更 技能是"产品",provider 行是让它被发现的基础设施。 📁 项目结构 dsh-plugin-module-driven-develop/ ├── index.js # 自包含技能 provider(可移植,无绝对路径) ├── cordis.patch.yml # Bundle patch:把 index.js 挂进 host 组合 ├── package.json # Bundle 元数据(dsh.bundle.patch) ├── scripts/ │ └── install.ps1 # 技能目录安装脚本(Project / User 两种作用域) ├── test-provider.mjs # 技能 provider 功能测试 └── skills/ └── module-driven-dev/ # 插件核心:技能 bundle ├── SKILL.md # 主 agent 工作协议(六大阶段) └── references/ ├── decomposition.md # 拆解算法与叶子终止条件 ├── agent-protocol.md # 子 agent 调度协议 + 派单提示词模板 ├── workspace-layout.md # .mdd/ 工作区约定 └── templates/ ├── module-design.md # 模块设计文档模板 ├── module-manifest.md # 模块树 manifest 模板 └── change-request.md # 需求变更请求模板 🛠 开发 npm pack # 构建可分发的 tgz node test-provider.mjs # 验证技能 provider(发现 + 加载) .\scripts\install.ps1 -Scope Project # 本地安装技能用于测试 provider 刻意零依赖:除 Node 内置模块外没有任何运行时依赖,因此可装到任何环境。 📄 许可证 MIT © 2026 phantomSuying
扫码进群