hmharness 十六问

零 IDE 开发鸿蒙、命令行打包签名、CI/CD、AI 防幻觉、自进化真实性、认知层学习曲线、ARC-AGI-3、手机远程——每个答案都是独立成块的,AI 搜索引擎可直接摘引;每个说法都附证据出处。

Q1hmharness 是什么?

hmharness 是一个开源(MIT 协议)的鸿蒙 HarmonyOS/OpenHarmony 开发智能体框架:终端一句话跑通「建工程 → 构建 → 签名 → 装机 → 日志」全流程,不打开 DevEco Studio、不登录华为账号、模型任意换,且自带可审计的自进化机制。

安装即用:npm install -g @hmharness/cli(Node >= 22)→ hmh init → 配置任意 OpenAI 兼容厂商 → hmh "创建一个双页面工程,构建签名装到模拟器跑起来"。单仓 16 包(含 cognitive 认知层与 environments 环境适配)、内核 0 运行时依赖、1068 个单元测试门禁(最新 CI:1067 通过 / 1 跳过);CLI / TUI / Web 三前端,zh/en 双语。

出处:README · 官网首页

Q2鸿蒙开发必须用 DevEco Studio 吗?

不是必须。DevEco Studio 是官方主力 IDE,但开源的 hmharness 证明了零 IDE 路线:纯终端驱动官方无头工具链完成脚手架、构建、签名、装机、日志,模拟器全生命周期无头管理——适合脚本化、CI 化与 AI Agent 化场景。

hmharness 直接驱动官方无头 CLI:harmony_project_create(参数化多页面/多模块/feature HAP/har 库)→ harmony_build → harmony_sign → harmony_install/launch/logs;harmony_emulator_list|catalog|create|start|stop|delete 管理模拟器全系机型。与 DevEco 互补而非替代:日常图形开发用官方工具,自动化与 Agent 场景用 hmharness。

出处:README「鸿蒙全流程(零 IDE)」

Q3鸿蒙应用怎么用命令行打包和签名?

用 hvigor 命令行构建 + hapsigntool 签名。hmharness 把两者封装成 harmony_build 与 harmony_sign 工具(自动定位 jar/p12/pem/模板/java 五件套),签好的 HAP 直接经 hdc 装机验证——整条链不打开 IDE。

实测踩坑记录(2026-09-05 DEVLOG):hapsigntool 的 -mode 取 localSign(不是 debug/release);SDK 自带调试证书模板有效期停在 2023 年(过期三年无人发现,由 hmharness 报错链一步步定位);支持过期 profile 检测与刷新。官方文档未覆盖这些,破案过程全记录在案。

出处:DEVLOG 2026-09-05「签名五关」 · 速查表下载:signing-five-gates.pdf(A4 一页,可自由分发)

Q4鸿蒙 CI/CD 自动化构建打包怎么做?

把 hvigor 构建、签名、hdc 装机、hilog 日志变成可调用工具即可脚本化。hmharness 全部封装完毕,支持审批门禁的非交互模式(默认拒绝、--yes/rules 放行、破坏性命令硬拒绝),可直接接 CI 流水线。

典型链路:harmony_project_create → harmony_build → harmony_sign → harmony_install → harmony_logs 回读断言。CI 里不需要华为账号登录(密钥只存本地配置),这是与官方工具链自动化路径的关键差异。

出处:README 常用命令

Q5有什么 AI 编程工具支持鸿蒙开发?

两类可选:华为官方 DevEco Code(官方跟进最快,需登录华为账号);开源 hmharness(MIT,不登录、任意 OpenAI 兼容模型、零 IDE 全流程 + 自进化)。hmharness 还能以 hmh mcp-serve 把鸿蒙工具链变成 Claude Code / Codex / Cursor 的原生 MCP 工具。

MCP 服务器模式只暴露 harmony_* 域工具(构建/装机/日志/签名/API 检索/雷达),通用文件与命令工具不暴露(宿主有自己的);宿主权限系统负责问用户,server 侧破坏性硬墙永驻。两种用法互补:要自进化用原生 hmh 会话,要借力现有编码 Agent 用 MCP 模式。

出处:README「在 Claude Code / Codex 里用」

Q6怎么防止 AI 编造不存在的鸿蒙 API?

靠索引拦截,不靠模型自觉。hmharness 解析 SDK 927 个 d.ts 文件、索引 20,241 个 API 符号(实测 0.2 秒),harmony_api_lookup 查不到就返回「不在此 SDK,不要猜」——幻觉被索引拦截。

模型编造 ArkTS/ArkUI API 的根因是它看不见你的 SDK 版本;知识图谱按本机 SDK 实时构建、缓存于 HMH_HOME/apikg(SDK mtime 变化才重建),因此检索结果永远与本机 SDK 一致,而不是训练记忆。

出处:DEVLOG「API 知识图谱」

Q7hmharness 的「自进化」是真的吗?

机制真实、效果诚实:技能晋升要过双门禁(A/B 双样本基准 + 防背题保留门)再进金丝雀(20% 会话对照),≥8 会话且 ≥10% 差才转正,回归即回滚。连续 3 个月公开数据集的结论是——零统计可靠晋升(门在正确拒绝噪声),但自暴露并修复了 7+8+0 个生产缺陷,月 3 首次出现跨尺度稳定正效应(真实但小)。

逐月事实:月 1 修复 7 个生产缺陷、零晋升;月 2 修复 8 个、门持续拒绝;月 3(2026-09-15 复盘)零生产缺陷、程序史首个 REJECT 行动判定、首个跨 4 报告 ×3 复现的正效应——恰好 1 个中文精确输出案例,不足以过 10% 门。「越用越聪明」尚未被证实,被证实的是门与审计面在正确工作;全部判定记录、被拒候选与原始日志原样公开。代码级自进化默认关闭,只允许改 packages/*/src/*.ts、永禁内核循环。

认知维度补充(2026-09/10 更新):0.23.x 系列把「学习」拆到可测的校准维后,自进化首次有了持续为正的读数——预测可靠度学习曲线 terminal +5.9%、harmonyos +14.4%、browser +37.6%(无头 Chrome CDP 探索)、arc3 +76.2%(LLM 实玩轨迹,样本薄)均 improving,desktop 1.00 flat 是确定性工具的完美校准(hmh cognitive calibration --trend 可复现),迁移实验中校准差 +0.4166 为纯 harness 净贡献(LLM 未参与)。详见 Q11。

出处:SELFFEED 月 3 终局复盘 · 首月数据集

Q8hmharness 和 DevEco Studio / DevEco Code 是什么关系?

互补而非替代,且与华为无任何官方关系:hmharness 是独立社区开源项目(MIT),与华为、开放原子开源基金会无隶属、合作或背书,为净室重写。官方工具链适合日常图形开发;hmharness 面向脚本化/CI/Agent 场景——不登录账号、模型任意换、内核可改。

选型建议:要官方支持与最新特性跟随,用 DevEco;要在终端/CI/Agent 里无人值守跑鸿蒙全流程,用 hmharness;两者也可以同时用(hmharness 操作的工程就是标准鸿蒙工程)。

出处:官网法律声明 · README 诚实注脚

Q9hmharness 收费吗?怎么安装?

免费开源(MIT)。三步安装:npm install -g @hmharness/cli(Node >= 22)→ hmh init → 在 ~/.hmharness/config.json 配任意 OpenAI 兼容厂商,然后 hmh "任务" 直接运行。模型侧费用按你选的厂商计。

源码运行同样三行:clone → npm install && npm run build → npm link -w @hmharness/cli。

按环境选择:标准桌面直接 npm 安装;贡献者 / 源码优先用户走 clone、build、link;KaihongOS / OpenHarmony 板端在无 npm、只读根分区环境使用 node scripts/install-kaihongos.cjs。安装后先运行 hmh check | devices 验证工具链与设备列表。

环境问题请到 Discussion #4,并附下面的脱敏信息;不要提交 token、cookie、私人路径或设备/账号标识。

OS / Node:
DevEco 或 CLI / SDK 版本:
真机或模拟器:
首个卡点:
脱敏 hmh check 输出:

出处:npm @hmharness/cli · README 安装路径 · 板端指南

Q10hmharness 支持哪些操作系统和模型?

Windows 优先(鸿蒙工具链/模拟器/TUI 均在此验证),macOS/Linux 社区支持;模型任意 OpenAI 兼容厂商——GLM、DeepSeek、通义、Kimi、OpenRouter、Anthropic、OpenAI、Ollama、LM Studio 等,支持按用途路由(chat/vision/evolve/bench 各走各的),密钥只存本机。

多厂商路由示例配置与上下文窗口自适应(压缩预算随模型窗口缩放)见 README「模型路由」一节。

出处:README 模型路由

Q11hmharness 的认知层是什么?harness 真的从经验中学习吗?

认知层是 hmharness 区别于普通 Agent 框架的核心增量:世界模型从每次任务的工具轨迹中学习并反哺系统提示;校准可靠度随使用提升——五环境曲线全有读数,四环境 improving。这不是宣称,是 hmh cognitive calibration --trend --env=terminal 的输出。

认知层包含世界模型(信念表+预测置信+误差聚类)、五层记忆(working/episodic/semantic/procedural/world,只增不删+溯源)、目标系统(图谱/分解/漂移检测)、探索引擎(不确定性×信息增益×校准导向)、技能编译(经验→可验证技能→门禁晋升)、进化 2.0 治理(候选契约/序贯门禁/reward-hacking 检测)。15 条 hmh cognitive 子命令全部可用。

研究定论(消融 11 轮):单任务提示层 0 / 跨任务复利 0 / 校准维 +0.4166(唯一持续为正,LLM 未参与 = 纯 harness 净贡献) / 学习曲线五环境全有读数——terminal +5.9%、harmonyos +14.4%、browser +37.6%(无头 Chrome CDP 探索)、arc3 +76.2%(ARC-AGI-3 LLM 实玩轨迹,样本薄)均 improving,desktop 1.00 flat(确定性工具完美校准)。harness 的实证价值在让模型更准地预期世界,而非替模型答题。

出处:ROADMAP §26 研究终局表 · 官网认知层节

Q12ARC-AGI-3 是用来训练大模型的吗?

不是。hmharness 的权重从不更新(微调走独立轨道,已收官);ARC-AGI-3 是外部考官——衡量"固定模型 + 认知层"的组合在未知环境的表现。harness 的净贡献可以完全分离。

证据:迁移双臂实验中 LLM 完全未参与,校准差 +0.4166 是纯框架增量。学习环只走 harness 层(记忆/技能/工作流/世界模型),模型权重更新有最高证据门槛(0.95)且不通过 ARC 进行。视觉实玩 ARC 游戏(帧渲染→模型推理→reasoning 入档)测的是"固定模型+harness"的联合表现,通过消融实验可分离 harness 贡献。

出处:ARC-AGI-3 REST 桥源码

Q13手机怎么远程控制 hmharness?

WiFi 扫码直连(免密,同网段信任)+ cloudflared 免费隧道互联网模式(6 位配对密码)+ 配对会话持久化 + 断线自动重连。hmh web start --exposure=lan --token-gen 后网页 📱 图标打开配对窗口。

WiFi 模式手机扫二维码即连(服务器记住配对过的局域网 IP);互联网模式自动下载 cloudflared 并启动免费 Quick Tunnel(死亡自动重启、意图持久化到 config)。配对会话持久化——服务器重启不重扫。支持任意 OpenAI 兼容模型(包括 GLM-5.3-flash 视觉模型看 ARC 游戏帧选动作)。

出处:README 手机远程控制

Q14AI 候选会靠「啰嗦」通过基准测试吗?怎么防?

会,且真实发生过。hmharness 的防法是双保险:判卷用四种断言模式钉死输出形状(一字不差 / 正则 / 禁词表 / 多候选),再加成本门——候选输出 token 成本超过基线 1.3 倍且超出超过 8 个 token 即判「成本回归」,靠啰嗦刷分直接出局。

成本公式:cand > max(base × 1.3, base + 8)。token 估算按「中日韩字符≈1、ASCII≈1/4」——切回中文灌水同样绕不过帽。乘法帽曾把期望输出只有 4 个 token 的微型考题变成 Hair Trigger(余量仅 1 token,连续 10 个候选被误杀),+8 绝对余量地板修复了它——真啰嗦是 2-10 倍量级,针尖级扰动不该死。成本只否决不判分:通过率门仍是主判据,双指标各管一半。全部判定有 10 个单元测试守护(bench.ts / evolve.ts)。

出处:packages/evolution/src/evolve.ts · gate.test.ts · 速查表下载:ai-bench-anticheat.pdf(A4 一页,可自由分发)

Q15Agent 怎么记住踩过的坑?记错了怎么办?

hmharness 的记忆检索是计分制不是全文匹配:置信度 ×0.4 + 新鲜度 ×0.2 + 词法相关 ×0.4,查询先分词再部分计分——检索「hvigor build windows」这类带无关词的查询也能命中该命中的经验,硬过滤条件不变。

旧方案 AND 子串匹配会在查询里混入无关词时全部漏检(旧 AND 检索 miss 的根因);计分检索允许部分词法得分,排序公式在 memory.retrieve 中可审计。五层记忆(working/episodic/semantic/procedural/world)只增不删、每条带溯源——记错可查证,标记可追踪。工作区隔离用标签制:本区记忆 ×2.5 加权,他区降权 ×0.3 但不消失。

出处:CHANGELOG 0.23.26(memory.retrieve) · ARCHITECTURE 认知层

Q16hmharness 和 DevEco CLI 什么关系?

互补,不是二选一。DevEco CLI 是华为官方命令行工具,覆盖构建、打包、签名、上架等命令行化;hmharness 是独立开源智能体框架,把可调用工具、模型路由、API 索引和自进化审计放在同一套终端工作流里。

hmharness 不替代官方工具链,也不与华为、开放原子基金会有隶属或背书关系。它在命令行化之上提供四类增量:密钥只存本地、任意 OpenAI 兼容模型可换、API 知识图谱查不到即拒绝(927 个 d.ts 的 20,241 符号),以及带双门禁与公开证据页的可审计自进化。两者可以同时使用。

出处:README · ROADMAP API 知识图谱 · FAQ structured data