DwGuard-Dsh-Hmos: DSH-Side HarmonyOS Dual Agent Orchestration and External Audit

前言

在 DSH 里让执行 Agent 自己写代码、自己跑构建、自己说「完成了」,编排侧往往缺少可执行的验收闸门:任务边界模糊、派发前没有结构化质询、交付后仍采信执行者的自述。HarmonyOS 场景下常见协作是 DSH 编排加 DevEco Code 落地,若仍只靠一份提示词文档串联,很难把「做完」的定义、派发前审查和独立取证固化成工程动作。

下面介绍的 DwGuard-Dsh-Hmos(npm 包名 dwguard-dsh-hmos)由社区维护者 Dogwind221 发布,在 SkillHub 社区目录中归类为工作流插件。它把上述协作收成一组有闸门的步骤:任务包冻结、对抗预审、Goal 派发、四维外部审计、返工与知识沉淀。核心主张在 README 里写得很直接:交付物必须自己证明自己,DSH 不采信执行者的自述结论。

这是什么

DwGuard-Dsh-Hmos 是跑在 DeepSeek Harness(DSH)侧的插件,面向 DSH 编排 + DevEco Code 执行 的双 Agent 鸿蒙开发闭环。它不是替代 DevEco 写 ArkTS,而是在 DSH 里注册工具、Skill 与可选 UI(右侧栏 DshHoms 看板),用产物目录(如 .shared/、artifacts/)推导当前阶段,而不是口头报阶段。

核心功能

资料中的架构可以概括为「规划 → 执行 → 验收」三条线,并与文档里的四个增量一一对应。

任务包冻结(dwguard_spec)

先把「做完」写清楚:功能、审美、性能、无障碍四维判据,每条需可证伪、有独立验证方式;写不出来则不允许进入派发。对应流程里的 冻结任务包 节点。

派发前对抗预审(dwguard_prereview)

从性能、生命周期、并发、API 兼容四个视角质询任务包;阻断项必须经历一次反驳(rebuttal),未关闭不得派发。预审不通过会回到任务包生成。

Goal 模式派发(dwguard_dispatch)

预审通过后生成 Goal 简报,交给 DevEco 侧执行闭环:理解任务包 → 编码 → 构建 → 推设备 → 自验。

自评与澄清闸门

DevEco 自评达标只是声明,不是交付。双方无异议才进入外部审计;实现层分歧回到编码实现(返工单 tasks/rework-n.md);任务包层分歧停线改包、升版本并重跑预审,执行者重新理解任务包。增量② 影子审查在编码期只读巡检,结构性风险先落到该闸门再决定回哪一层。

四维外部审计(dwguard_audit)

不采信自验:截图、布局树、日志、测量值等,一条判据一段证据;四维须覆盖,must 判据缺证据则闸门不开。README 说明四维各派一个子代理并行取证,进度可反映在 artifacts/audit-progress.json。

返工、验收与沉淀

审计未通过走返工再进执行环;通过后产出 artifacts/acceptance-report.md 验收报告,再由 dwguard_knowledge 按主题归档经验。dwguard_status 汇总阶段、未读交付与下一步。

装好后新会话会拿到 15 个工具、3 个 skill 及策略提示词;对 DSH 说「给鸿蒙做个 XX 页面」时会加载 dwguard-hmos skill(以 README 描述为准)。

安装与启用

环境要求(来自 package.json / README):

  • DSH:>=0.2.1-rc.0 且 <0.3.0
  • Node:>=20
  • 插件以 bundle 形式安装并向 profile 注册 host;不要用 npm install 代替 DSH 插件安装器(那样只会进 node_modules,不会注册 profile)。

profile 与入口(两种装法不要混用):

启动方式 profile 安装入口
桌面应用(默认) desktop 侧栏 插件 → 添加插件(命令行无法改 desktop profile)
CLI:dsh web / tui / headless 等 web / tui / … dsh plugin --profile <name> add …

从 npm 安装(推荐)

桌面版:

  1. 左侧 插件 → 添加插件
  2. 包名填 dwguard-dsh-hmos 或固定版本 dwguard-dsh-hmos@0.6.6
  3. 安装后按提示重启(含托盘退出)

命令行 profile(示例为 web):

dsh plugin --profile web add dwguard-dsh-hmos@0.6.6

机器上没有 dsh 命令时:

npx @deepseek-ai/dsh@0.2.1-rc.5 plugin --profile web add dwguard-dsh-hmos@0.6.6

CLI 也可从 GitHub 或本地目录安装(仅命令行 profile):

dsh plugin --profile web add https://github.com/Dogwind221/dwguard-dsh-hmos

确认安装

  • 桌面版:插件页出现 DwGuard-Dsh-Hmos
  • CLI:dsh --profile web --dump-config 中可见 # == dwguard-dsh-hmos

可选预设:仓库内 preset/dwguard-hmos.cordis.yml 可在新会话选择器增加「DwGuard 鸿蒙双代理」入口;不装预设时工具仍可用。

卸载:桌面版在已安装插件中移除;CLI 执行 dsh plugin --profile web remove dwguard-dsh-hmos(profile 名换成你的实际 profile)。

典型用法

  1. 按上文装好插件并新开一个会话(旧会话可能未热加载工具表)。
  2. 用自然语言提出鸿蒙界面或能力需求,例如让 DSH「给鸿蒙做个 XX 页面」——会走 dwguard-hmos skill 所描述的多阶段流程,而不是单次对话里直接宣称完成。
  3. 在桌面 Web 客户端打开侧栏 DshHoms(位于「插件」与「自动化任务」之间):右侧栏标签页展示规划 / 执行 / 验收流程图;阶段由 .shared/ 等产物推导。README 注明需先跑一次任意 DwGuard 工具,看板的工作区列表才会写入 ~/.dsh/dwguard/workspaces.json 并可选。
  4. DevEco 侧按派发的 Goal 与任务包实现;自评与澄清通过后,等待 DSH 侧 dwguard_audit 独立取证;未过则按返工单修改后重跑执行与审计环。
  5. 需要只看编排与取证、少碰实现类工具时,可选用 preset/dwguard-hmos.cordis.yml 叠加启动或写入 cordis.patch.yml(详见 README)。

只读看板数据来自同源接口 GET /dwguard/board(无写入、cache-control: no-store)。

适用场景与注意

适合谁

  • 已在用 DSH 做需求编排、用 DevEco Code 写 HarmonyOS / ArkTS,并希望把任务包、预审、四维验收写成可重复工程动作的团队或个人。
  • 需要「外部审计不采信自验」、返工与验收报告落盘到 artifacts/ 的流程控场场景。

使用前请注意

  • 插件在当前 DSH 进程的权限下运行,会读写工作区与 ~/.dsh/dwguard/ 等路径;安装前请自行审阅 GitHub 源码 与 MIT 许可证。
  • DSH 生态是「一切皆插件」;SkillHub 为社区目录,与 DeepSeek / 幻方无官方从属关系,本文不构成安全或合规背书。
  • 依赖 DSH 0.2.1-rc.x 与文档中的 peer 版本;升级 DSH 或插件前对照 README / CHANGELOG。
  • 两个回环不要混:实现层问题回编码;任务包层问题改 Spec 并重跑预审。

结尾

DwGuard-Dsh-Hmos 把鸿蒙双 Agent 协作从「提示词约定」推进到「任务包冻结 → 对抗预审 → Goal 派发 → 四维取证审计 → 返工 / 验收报告 → 知识沉淀」的可执行闭环,并在 DshHoms 看板里用产物驱动阶段展示。若你要在 DSH 里系统化管住 DevEco 交付质量,可从 npm 包 dwguard-dsh-hmos@0.6.6 或社区目录页安装,并对照仓库 README 与英文版 README.en.md 继续跟版本。

  • 目录页:https://www.skillhub.cn/plugins/Dogwind221/dwguard-dsh-hmos
  • GitHub:https://github.com/Dogwind221/dwguard-dsh-hmos
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye