前言¶
在 DSH 里做 HarmonyOS 开发,常见需求不只是读文档或改代码,还要查设备、截屏、看 UI 树、构建、部署、抓日志、跑 Lint、生成签名材料。dsh-plugin-devecocli 是一个 DeepSeek Harness 插件,用 @deveco/deveco-cli 提供这些操作,并在 DSH 中注册 13 个 harmony_* 模型工具。
这是什么¶
dsh-plugin-devecocli 的定位是把 HarmonyOS 开发常用 CLI 能力接进 DSH,让智能体可以直接调用设备、模拟器、UI、构建、部署、日志、Lint、签名和文档检索相关操作。
已核实资料中的仓库地址指向 frankq007/dsh-plugin-devecocli,许可证为 MIT。资料未提供 stars 或 category;目录页地址也未出现。
核心功能¶
该插件注册以下 13 个工具:
harmony_device_list:列出连接中的设备/模拟器harmony_emulator_list:列出模拟器实例与状态harmony_emulator_control:执行start/stop/shake/power/rotate/volume/battery/geolocation/sensor/scene/foldharmony_screenshot:截取设备屏幕为 PNGharmony_ui_dump:导出当前屏幕 UI 节点树harmony_ui_interact:执行click/doubleclick/longclick/swipe/fling/drag/textharmony_log:获取设备应用日志,支持level/bundle/keyword/crashharmony_build:构建项目,可选先 cleanharmony_deploy:部署到设备,默认--skip-build快速安装harmony_signature:生成签名材料到项目harmony_check_lint:运行 DevEco Code Linter,可选--fixharmony_docs:离线 HarmonyOS 文档搜索harmony_exec:在受白名单限制下执行其他devecocli子命令
安装与启用¶
前置要求¶
- DeepSeek Harness(
dsh)任意 profile devecocli在PATH中- 需要设备工具时,连接 HarmonyOS 设备或模拟器
- 需要执行设备/SDK 命令时,使用 Full-access session
先确认 devecocli 可用。可以通过 DevEco Studio 安装,也可以使用 npm:
npm i -g @deveco/deveco-cli
然后把插件加入指定的 DSH profile:
dsh plugin --profile <name> add dsh-plugin-devecocli
安装完成后,重启你的 DSH profile,13 个 harmony_* 工具会出现在该 profile 中。
如果使用 git 安装,并且 pnpm >=10,还需要授权 prepare script:把 pnpm 输出的 package key 写入该 profile 的 pnpm-workspace.yaml 的 allowBuilds,然后重新执行 add。
动态注册¶
也可以动态注册插件,步骤如下:
- 调用
cordis_inspect_list,再调用cordis_inspect_query - 调用
cordis_define,其中code.host使用code.host.js的正文 - 调用
cordis_run
Bundle 工具注册在 profile 层;creator-mode 动态副本可以与其并存,不冲突。
移除¶
移除插件:
dsh plugin --profile <name> remove dsh-plugin-devecocli
典型用法¶
下面这些操作适合在安装后做基础验证:
- 调用
harmony_device_list,查看连接的设备或模拟器 - 调用
harmony_screenshot,截取设备屏幕为 PNG - 调用
harmony_ui_dump,获取当前屏幕 UI 节点树 - 调用
harmony_exec并传["--version"],已核实返回1.2.2 - 调用
harmony_docs搜索arkts,已核实返回 3 个 JSON 结果
使用 harmony_ui_dump 时,UI 节点树完整输出可能达到数百 KB;工具会返回截断后的 64KB 尾部加 JSON summary。
使用 harmony_build 时,构建可能较长;单次执行有超时,并返回尾部输出。
如果未登录 Huawei Developer account,harmony_signature 会失败;按提示运行交互式命令:
devecocli auth login
交互式命令,例如 auth login、emulator license,不适合直接通过工具执行。
权限与沙箱注意¶
插件会在 DSH 会话中执行 devecocli,实际能力取决于当前 dsh 进程权限和会话权限。
- Restricted sandbox:
devecocli的 version、auth、docs 类命令可以工作;device/SDK 命令会被拒绝,原因是可执行文件未数字签名(hdc.exe)。插件会检测到并返回提示。 - Full-access session:device/SDK 命令可以工作。
因为插件会执行外部 CLI,安装前应检查源码和许可证。本插件许可证为 MIT。
开发检查¶
如果你要本地改动或检查插件源码,可以运行:
node --check index.js
npm run check
结尾¶
dsh-plugin-devecocli 的价值在于把 HarmonyOS 日常开发命令收敛成 DSH 可以直接调用的工具:设备/模拟器管理、截图与 UI 自动化、构建部署、日志、Lint、签名和离线文档检索。
资料中未提供目录页 URL;GitHub 仓库地址为:
- https://github.com/frankq007/dsh-plugin-devecocli