鸿蒙PC日常编码agent推荐,deveco code竟查无此人

鸿蒙PC到手也有31622400秒了,日常写代码,总得有个能干活的 coding agent。华为自家的 DevEco 里那个 AI 编码功能,基本属于查无此人,指望不上,最后还是得自己折腾第三方 CLI。这篇文章就把我在鸿蒙上实测过的 8 个 coding agent 挨个盘一遍,哪些能用、哪些有坑、哪些纯属浪费时间,全给你说明白。
先交代鸿鸿的蒙环境的三条基本事实,后面每个工具的坑都跟这三条有关:
- node 至上
npm i -g只要没native依赖就是通关,bun打包的不好意思真不熟,上游随便弄点libgcc_s这种垃圾就用不了 /tmp不可写,/dev/shm可写不可建目录,不可放IPC socket。所有IPC socket都要放应用沙箱目录- rust/go 二进制能运行,但是使用不支持的syscall就再见👋了(点名keyctl)
- 建议npm config把全局安装目录放到~下面(默认是沙箱目录,换app会找不到)
- toybox残血环境,一定要干死他增加的虚假命令,否则agent会无语的
下面逐个说,按推荐程度排序。
pi:版本答案,hacker’s choice
npm i -g @earendil-works/pi-coding-agent
只要设置 TMPDIR=/data/storage/el2/base/haps/entry/cache,就是完美运行
它最大的价值是后端随便接:OpenAI、Anthropic、Google、OpenRouter,或者任何自定义 base_url 的 API,都能塞进去。所以 pi 的正确用法是当壳——把各家免费送的、买来的 API 全部接进 pi,一个壳用所有模型。
kimi:接近完美
同样是 npm i -g @moonshot-ai/kimi-code 就行,能登 kimi code oauth
有一个bug,用kimi web他会报密码文件的权限不是600,这种自作多情的东西真的很烦啊,搜索TooPermissive,手动编辑掉
codex:开箱即用,非 GPT 慎用
需要设置一下CA证书环境变量,否则必报网络错误。Responses API支持实在有限,对非openAI用户来说查无此人。实际用下来,如果你不是 GPT 重度用户,codex 基本就是个摆设——模型选择少、响应慢,而且 CA 证书那个坑对鸿蒙新手很不友好。
qodercli:Qwen3.8-max 能干活
node 系,能跑——但要先hack:它的 qodercli.js 里把临时目录写死成了 /tmp,你不修改就不能bash。方法是vim //tmp,看到那个win32,替换成openharmony
依赖安装 wasm32 就能运行。一定要进设置,关闭自动更新,否则偷偷npm install
有一些小问题:远程命令如 /claim-ultimate 无法加载,PostToolUse钩子不认识harmonyos,但是功能不影响
mimocode:竟敢移除免费模型
opencode 魔改(bun打包的)。竟然删除 opencode 的免费模型
干活还可以,奈何上游是神人啊,右上角通知是人类吗,你看看人家pi是怎么做通知的,为什么通知宁愿进对话也不要消失。不要为了 TUI 而 TUI
atomcode:正版受害者
rust 写的能运行。但前面说了,编译型二进制的问题是改不动:JS bundle 有毛病,vim 一下原地复活;rust 有毛病,你要么整套 cargo 编译,要么等官方发版。用起来就是纯正版受害者。
开发者很有想法,并且会非常认真地去执行一些离谱到家的设计:为了对齐 Claude Code,加了一大堆他认为必须、但实际上一点用都没有的反模式。
好处API不要钱还很快,用他的 deepseek-v4-flash。他们后端应该是昇腾的卡,跑的都是量化模型,GLM-5.2是量化的,效果不一定有原版好。
claude code:不在服务区
它本来就不是给非 claude 订阅用户用的,更别说在这样一个神奇的环境中。让它能运行需要:
- 修补指令,将 libc.syscall(436) 改为返回 -ENOSYS,这样会回退
- .bun 等打包段不能移动(你知道吗,这是ET_EXEC,地址是不能改的)
deveco{,code}
恭喜你发现了华为隐藏款奶龙 https://gitcode.com/openharmony-sig/deveco-code
Bonus: bun打包的东西要怎么运行呢
先npm pack把牢A的克牢的code aarch64-musl二进制下载下来(claude)
应用那几处patch(让close_range返回不支持),这时候就已经能运行了。
对于bun打包的东西,比如mimocode,先用普通bun(1.3.14)打包一份aarch64-musl的,验证产物没有libstdc++和gnu的库。再把打包出来的.bun段复制到克牢的code二进制里,如果有多余空间,把多余空间消掉
这些步骤不用手动运行的,让kimi之类的代办
总结:怎么选?
| Agent | 功能可用度 | 用户尊重度 | 综合评分 |
|---|---|---|---|
| pi | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| kimi | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ |
| codex | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐ |
| qodercli | ⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
| mimocode | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐ |
| atomcode | ⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
| claude code | ⭐⭐⭐⭐ | adversary | ⭐⭐ |
| deveco code | ⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐ |
更多推荐


所有评论(0)