harmony-harness
中文 | English
终端优先的 HarmonyOS 开发智能体框架 —— 一句话创建鸿蒙应用、构建 HAP、装机运行,并具备自进化能力(跨会话记忆、技能沉淀、基准评测优化循环、增益归因)。
基于 DeepSeek Harness(MIT)"Everything is a Plugin" 架构构建的社区发行版,默认路由 GLM(智谱 Coding Plan);不 fork 上游,以"基座 + 鸿蒙插件包"组合,上游升级直接可用。
$ hm tui
✦ hm-tui
█ █ ▄▀▄ █▀▀▀▄ ▄▄▄▄▄ ▄▄▄▄▄ █ █ ▄▄▄▄▄ ← HARMONY HARNESS
glm-5.3 · Max effort
和声演进!
特性
| 能力 | 说明 |
|---|---|
| 🏗️ 工程脚手架 | harmony_project_create 生成完整 Stage 模型工程(AppScope/entry/hvigor/oh-package/测试,63 文件),自动收割装配 DevEco 调试签名 |
| 🔨 HAP 构建 | harmony_build_hap 走 DevEco 同款命令行链(ohpm + hvigorw) |
| 📲 装机运行 | harmony_run:签名检查 → hdc install → aa start → hilog 有界跟随(模拟器实测:install bundle successfully + start ability successfully) |
| 🛡️ 设备门禁 | deny-first:安装/卸载/清数据/重启类命令默认拒绝(exit 126 并转人工/正规流程),只读巡检放行 |
| 🧠 自进化 | 跨会话记忆(教训自动注入系统提示词)、技能草稿→静态审查→人工批准晋升、基准评测(git 快照 + 严格提升否则回滚)、SIP-Bench 式增益归因 |
| 📡 控制论事件域 | 感知(harmony_sense)→ 世界模型(harmony_world_model)→ 反馈(harmony_feedback)三环落地件,决策=模型、执行=工具 |
| 🎭 双模式 | hm(鸿蒙专注)/ hm-general(通用编码)两个 agent preset,工具层共用 |
| ✨ hm 品牌 | 独立图标、启动画面、智能体身份、静默启动器,与上游零混淆 |
模型路由(34 家厂商预置,对齐 opencode 目录)
hm model 管理一切:预置 34 家厂商模板(config/model-providers/,对齐 opencode 的 provider 目录覆盖),每份含端点/协议/模型表/密钥环境变量:
hm model list # 全部模板 + 当前默认路由
# 国内:glm-coding(推荐)/ glm-server / deepseek / qwen / kimi / siliconflow
# minimax / yi / stepfun / baichuan / hunyuan / spark / doubao / 302.ai / qwen-intl
# 海外:openrouter / anthropic / openai / xai / groq / together / fireworks
# cerebras / mistral / deepinfra / nebius / huggingface / nvidia / venice
# 本地:ollama / lmstudio / vllm / llamacpp # custom = 任意 OpenAI 兼容端点教学模板
hm model set groq # 任意一家一键切换(例)
切换 = 合并写入 ~/.dsh/settings.yaml 的受管块(自动迁移手写段、每次备份 .bak-hm、路由可并存随时切回);设好对应环境变量(如 GROQ_API_KEY)即可。模型无关是基座能力——custom 模板三行接入任何 OpenAI 兼容端点。切换实测:glm-coding → kimi → groq → glm-coding 多轮,TUI 路由与记忆注入均正常。模型 id 以各控制台实时为准(模板可编辑,doubao 需填方舟接入点)。
环境搭建(各环节官方直达)
| # | 组件 | 版本 | 用途 | 官方链接 | 一键安装(Windows) |
|---|---|---|---|---|---|
| 1 | Node.js | ≥ 22 | 运行时 + esbuild 打包 | nodejs.org | winget install OpenJS.NodeJS.LTS |
| 2 | pnpm | ≥ 11 | workspace 依赖 / profile 组装 | pnpm.io | npm i -g pnpm@11 |
| 3 | Git | 任意新版本 | 版本管理 | git-scm.com | winget install Git.Git |
| 4 | DeepSeek Harness (dsh) | rc | hm 的基座运行时 | GitHub | npm i -g @deepseek-ai/dsh |
| 5 | DevEco Studio | 最新 | 鸿蒙工具链:工程模板/SDK/hvigor/ohpm/hdc | 官方下载 | 图形安装(默认 C:\DevEco-Studio,非默认设 HM_DEVECO_HOME) |
| 6 | GLM Coding Plan | glm-5.3 | 推荐模型路由(预置 34 家厂商模板,hm model set 一键切换) | bigmodel.cn · 快速开始 | 平台订阅 → API Key |
| 7 | 华为开发者账号 | — | 调试签名(真机) | developer.huawei.com | 注册 + 实名 |
| 8 | 模拟器 / 真机 | — | 运行 HAP(模拟器可免签) | 模拟器 · 真机调试 · 签名 | DevEco → Tools → Device Manager |
| 9 | (可选)Windows Terminal | ≥ 1.22 | 最佳宿主(hm 图标标签) | aka.ms/terminal | winget install Microsoft.WindowsTerminal |
| 10 | (可选)仓颉工具链 | 1.1.0 | cjpm 工具(Cangjie 工程) | Cangjie | 设 HM_CANGJIE_HOME |
鸿蒙侧配置三步(详见 INSTALL.md §3-4):
# ① 模型路由(~/.dsh/settings.yaml,Coding Plan 专用端点,Key 走环境变量)
llm-pi-ai:
providers:
zai-coding-cn:
apiKeyEnv: ZAI_CODING_CN_API_KEY
api: openai-completions # 端点: https://open.bigmodel.cn/api/coding/paas/v4
agent-default-model: { provider: zai-coding-cn, model: glm-5.3, reasoningEffort: max }
agent-presets: { default: hm } # hm=鸿蒙专注 / hm-general=通用
② 签名(真机):DevEco 内登录华为账号(欢迎页右上角头像→Login)
→ File → Project Structure → Signing Configs → 勾 Automatically generate signature
→ 需一台在线设备(模拟器/真机)→ Successful 后本框架自动收割证书,新建工程即签
③ 设备:模拟器 = DevEco → Tools → Device Manager → ▶ 启动(免签可装);
真机 = 关于→连点版本号×7 → 开发者选项 → USB 调试 → 连接并信任
快速开始
git clone https://github.com/swsgbl/harmony-harness.git
cd harmony-harness
pwsh -NoProfile -ExecutionPolicy Bypass -File scripts/install.ps1 # 一键总装(幂等)
hm tui
安装器自动完成:前置检查 → 四包构建 → hvigorw 铺路(绕开 DevEco node/npm 冲突)→ profile 组装 → 双 preset → hm 命令 → 种子技能 → 品牌 patch。手动分步、GLM 配置细节、签名/设备完整走法、FAQ 9 条实测坑:见 docs/INSTALL.md。
对话示例:
"创建一个鸿蒙项目 my-app,构建并装到模拟器上跑起来"
模型将自主调用 harmony_project_create → harmony_build_hap → harmony_run 完成全链(实测见 docs/DEVELOPMENT_LOG.md)。
工具面(21 个)
| 包 | 工具 |
|---|---|
| harmony-tools(5) | cjpm_build · cjpm_test · hdc_devices · hdc_shell(门禁) · hilog_tail |
| harmony-scaffold(3) | project_create · build_hap · run |
| harmony-evolution(9) | remember · recall · skill_propose · skill_list · skill_promote · evo_git · bench_run · evo_report · evo_status |
| harmony-cybernetics(3) | sense · world_model · feedback |
文档
安装使用指导 · 架构 · 需求管理 · 路线图 · 变更日志 · 开发日志 · 自进化设计 · 技术借鉴 · P0 验证
合规声明
非官方声明 / Non-affiliation notice
- 本项目是独立社区开源项目,与华为(Huawei)、开放原子开源基金会(OpenAtom)、DeepSeek、智谱 AI 均无隶属、合作或背书关系。
- "HarmonyOS"、"华为鸿蒙"、"鸿蒙"、"OpenHarmony"、"开源鸿蒙"、"DevEco Studio" 等名称与标志归各自权利人所有;本项目仅在描述性合理使用范围内使用 "harmony"(取英文常用义:和声/和谐)表述"面向 HarmonyOS 生态的开发",不使用任何官方 Logo,中文语境不单独使用"鸿蒙"二字。
- 基于 MIT 许可的 deepseek-harness 与 Cordis 构建,遵循其许可证并保留上游版权声明(见 NOTICE);自进化设计参考 Penguin Harness、Darwin Gödel Machine 等公开机制思想(无代码复制),引用见 CREDITS。
- 本项目按 MIT 许可开源(见 LICENSE);当前为 alpha,API 与工具面可能变化。
状态
v0.2.0 —— 创建/构建/装机(模拟器实测)、自进化四件套(度量/快照/回滚/归因)、控制论事件域、双模式 preset 全部落地并经真实 TUI 端到端验证;真机签名链待 DevEco GUI 授权完成后即通(见路线图)。
