dsh-ai-studio
workflownpmMIT
面向项目所有者的 DeepSeek Harness AI 工作室:角色、任务验收、worktree 代理执行、Host 验证、独立评审、决策记录和人工触发合并。
下载量 / Downloads
580
安装
dsh plugin --profile web add dsh-ai-studio
沙箱测试
这个插件还没测过。提交测试 →
README
dsh-ai-studio
即装即用的 DeepSeek Harness AI Studio:工作室仪表盘、Agent 派单、token 预算、决策台、支线/契约冲突、worktree 代码执行、项目、角色、任务、验收、合并治理,一个独立页面。
当前版本 3.12.0,已在 DSH 0.2.1-rc.2 上完成端到端验证(Web/桌面安装、页面渲染、任务创建、验收门禁、合并治理、工作室仪表盘、Agent 派单与结构化回执、token 计量、决策台、支线/契约冲突自动升级、git worktree 代码编辑与自动提交、Host 独立验证、独立 AI 评审、自动集成分期、文档同步与不可逆决策门禁、ADR 草稿与写入、人工触发的 Git merge 与合并后回归、合并失败升级与回滚、改修票诊断/计划门禁、失败 2 次自动升级与重拆、合并前验证门禁、项目知识/模块契约、契约越界护栏、集成/playtest ticket、真实项目 dogfood、数据导出/导入恢复、Claude Code / Codex CLI 执行器、项目包导出/导入、切换 DSH 页面后保持 Studio 导航位置)。
它是什么
Studio 把 DSH 从「一个会话」扩展成「一间工作室」:
- 公司仪表盘:跨项目的项目组合、老板收件箱、角色负载、风险雷达和交付流;token 消耗来自 DSH meter,金额成本等报价接入后再显示。
- Agent 分析派单:在 Task Room 把任务派给负责人角色,DSH Agent 读取任务/契约后返回
summary / evidence / artifacts / decisions / contract_deltas / rejected_options / blockers结构化回执。 - 决策台:Agent 的项目级决策建议自动进入待裁决;Owner 在独立页面批准/拒绝并记录结论与理由。Agent 不能替 Owner 拍板。
- 支线/契约冲突:每次派单自动登记支线;Agent 回执里的
contractDeltas写入契约变更。两条支线改同一契约且内容不同时,自动升级为待裁决决策。 - worktree 代码执行:项目绑定 git 仓库后,每个任务自动创建
.worktrees/<taskId>和studio/<taskId>分支;Agent 在 worktree 内改代码,Run 记录 diff;主工作区不被直接修改。 - Host 独立验证:Task Room 的验证命令由 Studio Host 在 worktree 内执行,记录退出码/输出并写 evidence;不依赖 Agent 会话,也不会自动通过验收。
- 工作流护栏:Task 记录模块/契约/票类型;连续失败 2 次自动 blocked 并升级决策;代码项目没有通过的验证时不能提交合并提案。
- 项目知识层:绑定 PRD / INVARIANTS / MODULES 路径,只读查看仓库原文;Module 契约卡记录职责、接口摘要、允许/禁止路径与依赖,派单时自动加载对应模块契约。
- 契约护栏:代码 Run 改动模块契约文件、禁止路径,或越出允许的
src//test/路径时,任务自动 blocked 并生成「契约越界」决策,不静默接受。 - 集成/重拆闭环:Task 可标记为集成/playtest ticket;连续失败 2 次自动生成 Architect 重拆 ticket(backlog),而不是只留一个决策。
- 独立 AI 评审:验收人角色另开 Agent 会话,只读 diff 和 Host 验证输出,给出 pass/fail 与具体发现;代码任务没有通过的评审不能 done。
- 自动集成分期:每完成 3 个任务自动生成一张 backlog 集成/playtest ticket(打包可玩 + 人玩 10 分钟),不会自动派单。
- 文档同步门禁:项目绑定 PRD/INVARIANTS/MODULES 时,任务 done 前必须勾选“文档已同步”。
- 不可逆决策:Decision 可标记不可逆;批准时必须写结论和理由。
- ADR 草稿:不可逆决策批准后自动生成 Markdown ADR 草稿(标题/背景/决策/理由/建议),保存于决策记录,不自动写文件。
- 评审同族提示:评审模型与实现模型相同时,Task Room 显示共享盲点警告。
- 人工触发 Git merge:已批准提案可在 Task Room 执行真实
git merge --no-ff;要求当前在 base、工作区干净、分支存在;冲突自动 abort,不自动 push。 - 合并后回归:merge 成功后自动在 repo 执行任务验证命令,记录 pass/fail 和输出;失败不会自动回滚。
- 合并失败升级:post-merge 回归失败时自动生成「合并后回归失败」决策,附 merge commit、回滚命令和修复选项。
- ADR 落盘:人工确认后将 ADR 草稿写入
docs/adr/,自动取下一个四位编号;幂等,不覆盖已有路径。 - 合并回滚:回归失败的 merge 可人工触发
git revert --no-edit <mergeCommit>,记录 rollback commit;不 reset、不 push。 - 改修票工序:
kind=fix的任务必须有 diagnosis 和 plan 才能派单;新建型不受影响。 - 1.9.1 修复:回滚改用
git revert -m 1处理 merge commit;新增真实 merge 失败 → 回滚 E2E 测试。 - 2.0 自动提交:Agent 成功后,Host 自动把 worktree 内所有改动(含未跟踪文件)提交到任务分支。
- 2.0 Git 身份预检:merge 前检查 repo 的
user.name/user.email,缺失时给出明确错误。 - 2.0 真实 dogfood:在外部真实仓库完成派单、Host 验证(5/5)、独立评审 pass、merge 和 post-merge 回归(5/5)。
- 2.1 数据导出:右上角「导出」下载完整
studio.json备份(含 schema/版本/时间);/studio-api/export需要 Bearer token。 - 2.2 数据导入:右上角「导入」选择导出文件恢复;Host 先把原文件备份为
studio.json.pre-import-*,校验 schema 后替换。 - 2.4 外部执行器:角色可以选择 DSH Agent、Claude Code 或 Codex CLI;Claude/Codex 必须在对应机器上先登录,Host 在 worktree 内以 headless 模式运行并归一化回执。
- 2.5 项目包:设置页「导出项目包」生成 tar.gz(
studio.json+project.bundle+manifest.json+ 迁移说明 + SHA-256),「导入项目包」校验后 clone 并重绑;不含 API Key。 - 2.5.1 导航保持:切到 DSH 对话再回 Studio,保留上次的页签和打开的任务,不再跳回初始页。
- 2.6 阶段门禁:新项目从
discovery开始,Owner 完成检查项/产物后依次进入architecture → prototype → development;已有项目保持development。代码项目未进入持续开发不能派单。 - 2.7 触发收件箱:外部事件先进入 Trigger Inbox;同一
threadKey归入 Thread,后续事件可关联到已有任务;由人确认转任务,不自动派单或合并。 - 2.8 研讨会:记录各角色的独立意见、反对、风险和推荐;2.8.1 增加「AI 独立评审」,每个参与角色独立调用 DSH Agent,形成汇总与 Owner 决策;不自动合并。
- 2.9 原型 Demo 门禁:从原型验证进入持续开发前,必须登记
demo产物(路径、URL 或 playtest 记录),或写 Owner 豁免理由。 - 2.10 Provider Profiles:角色可以绑定命名执行配置(DSH / Claude Code / Codex + provider + model),派单、独立评审和 Workshop 共用同一解析。
- 2.11 Provider 健康度:按 Profile 聚合成功/失败、token、最近错误;运行失败会把状态标为
degraded,不自动切换。 - 2.12 Provider 诊断:显示失败率、失败原因分布、最近 5 次运行;对
degradedProfile 给出备用建议,不自动切换。 - 2.13 人工备用切换:确认后把绑定降级 Profile 的角色改绑到建议 Profile;不自动 failover,改绑留审计事件。
- 2.14 Run 执行快照:每次 Run 记录 providerProfileId / executor / provider / model;后续改绑不会改变历史归属。
- 2.15 Provider 实时探测:检查 DSH provider/model 是否存在、外部 CLI 是否可执行;结果只展示,不自动切换。
- 2.16 Trigger Webhook:GitHub/CI/IM 通过 HMAC 签名进入收件箱;repo/label/author/mention 规则过滤,人工确认转任务。
- 2.17 手动 Demo 记录:记录入口、启动命令、验证步骤、结果、截图和备注;不执行命令,不自动截图。
- 2.18 Workshop AI 汇总草稿:生成共识、分歧、未决问题、候选方案;不覆盖原始意见,不写 Owner 决策。
- 2.19 入门引导与项目模板:新手清单;Web / 游戏 / CLI 工具模板自动创建角色和首批任务;PWA 暂缓。
- 3.0 公司级组合治理:组合预算、跨项目优先级、角色覆盖聚合;只从项目状态派生。
- 3.0.1 客户端拆分(一):抽出
lib/format、components/ui、views/Company|Boardroom|Knowledge|Team。 - 3.0.2 客户端拆分(二):抽出
views/MissionView、components/TaskPanels、components/Forms、components/RecentEvents;StudioPage降到 2,186 行。 - 3.0.3 Store 拆分(一):抽出
store/read-model、store/validation、store/migration;store.ts降到 4,797 行。 - 3.0.4 Store 拆分(二):抽出
store/inputs、store/seed、store/errors,并拆出 Tasks/Merge/Settings/States;store.ts4,272 行,StudioPage1,528 行。 - 3.0.5 Store 拆分(三):抽出
store/templates、store/lookups;store.ts降到 3,993 行。 - 3.0.6 有状态域拆分(一):Provider Profile 域抽成 service;
store.ts降到 3,878 行。 - 3.0.7 有状态域拆分(二):Merge 域抽成 service;
store.ts降到 3,598 行。 - 3.0.8 有状态域拆分(三):Trigger / Webhook / Thread 域抽成 service;
store.ts降到 3,277 行。 - 3.0.9 有状态域拆分(四):Task 域抽成 service;
store.ts降到 2,969 行。 - 3.1.0 质量门禁拆分:评审与 Host 验证抽成 service;
store.ts降到 2,815 行。 - 3.1.1 Run 生命周期拆分:Run / 失败升级 / 契约护栏抽成 service;
store.ts降到 2,112 行。 - 3.1.2 Workshop / Demo 拆分:Workshop 与手动 Demo 抽成 service;
store.ts降到 1,817 行。 - 3.1.3 微型文件收敛:context / errors / ids 合并为
store/core.ts;Store 文件数 18 → 16。 - 3.1.4 Mission 视图拆分:Trigger / Stage / Workshop / Demo 独立;MissionView 1,740 → 568 行。
- 3.1.5 任务组件拆分:TaskPanels 拆成 Board / Drawer / RunPanels / MergePanel。
- 3.1.6 表单拆分:Forms 拆成 Task / Role / Project / Decision 和 ModalShell。
- 3.1.7 决策域拆分:Decision / ADR / 合并后决策抽成 service;
store.ts降到 1,577 行。 - 3.1.8 项目/阶段/目录域拆分:Project、Stage Gat
…(truncated)
以上内容来自 npm 上的 README,我们只做格式化,不改内容。
版本
npm 上共发布:3,最后更新 2026-11-04