我把 coding agent 搬进了手机,合盖它接着跑
上一篇让几个 Claude 账号自己换着用,人还是拴在电脑前。这一篇把最后一根绳也剪了: agent 全跑在一台常开的机器上,手机随时连上去看和指挥,合盖、出门、躺床上,它照跑不误。 三个开源件各管一段——herdr 管会话、hcom 管通讯、Moshi 管手机——外加账号自动轮换兜底, 凑成我目前跑得最顺的移动端 vibe coding 方案。这篇讲怎么搭,也讲踩过的坑。
上一篇让几个 Claude 账号自己换着用,人还是拴在电脑前。这一篇把最后一根绳也剪了: agent 全跑在一台常开的机器上,手机随时连上去看和指挥,合盖、出门、躺床上,它照跑不误。 三个开源件各管一段——herdr 管会话、hcom 管通讯、Moshi 管手机——外加账号自动轮换兜底, 凑成我目前跑得最顺的移动端 vibe coding 方案。这篇讲怎么搭,也讲踩过的坑。
Last time I taught a few Claude accounts to rotate themselves — but I was still chained to my laptop. This time I cut the last cord: the agents live on an always-on box, and my phone connects in to watch and steer them. Close the lid, leave the house, lie in bed — they keep running. Three open-source pieces each own one layer — herdr the sessions, hcom the messaging, Moshi the phone — plus account auto-rotation as the safety net. The mobile vibe-coding setup that currently runs smoothest for me: how to build it, and the traps I hit.
模型越强,你说不清楚想要什么的代价越大。从地图与疆域讲到四种空白,拆一套我自己验证过的和模型打交道的方法,最后讲怎么让每个坑只交一次学费。
Agent 干错事,大多数人的反射是往 CLAUDE.md 加一句话。它错在两个方向:指令文件是上下文不是强制,规则在压力下根本不绑得住;而文件越长,越污染那个让 agent 可靠的上下文本身。承重的规则该进 hook、lint、CI,散文应该越写越短。
The reflex when an agent misbehaves is to add a sentence to CLAUDE.md. It's wrong in two directions: instruction files are context, not enforcement, so the rule won't bind under pressure — and the longer the file gets, the more it pollutes the context that makes the agent reliable. Load-bearing rules belong in hooks, lint, and CI. The prose should get shorter.
Agent 能完美遵守一条它看得见的契约,也能毫无知觉地破坏一条它看不见的。能熬过 agent 时代的边界,是那些写进仓库、有类型、有测试、能被 import 的;会被弄坏的,是那些只活在团队记忆里的裸字符串约定。把每条边界都变成契约,是手里杠杆最高的一招。
An agent is excellent at honoring a contract it can see and terrible at preserving one it can't. The boundaries that survive the agentic era are the ones written into the repo as typed, tested, importable things — and the ones that break are the stringly-typed promises that lived only in a team's shared memory.
Agent 最危险的产出不是烂代码,是"我搞定了"这几个字。纯核心、一条命令的验证、一个独立的判官、一份证据账本,全部加起来就为了一件事:把"做完"的裁决权从作者手里拿走,让它变成被证明出来的,而不是被感觉出来的。这是前三篇一直在铺垫的底座。
An agent's most dangerous output isn't bad code — it's the word "done." The whole point of a pure core, a one-command verify, a separate verifier, and an evidence ledger is to take the verdict out of the author's hands and make "done" a thing that's proven rather than felt. This is the substrate the rest of the series was building toward.
落进我仓库的改动,现在大部分是 agent 敲的。真正变了的不是效率,是代码的读者换了人——一个每次会话都失忆、只能从文件里重新拼出理解的东西。一旦接受这点,仓库就不再是文档,它变成了 agent 编程时要对着写的接口:目录是导航 API,契约是约束 API,验证是校验 API。
The maintainer of your repository quietly changed from a human who remembers to an agent that re-derives everything from the files each session. Once you accept that, the repository stops being documentation and becomes an interface. Directory layout is the navigation API, contracts are the constraint API, and verification is the validation API.
朋友给我一份用拉丁学名的 omakase 认鱼课,可板前点菜时,菜单写的是 Hamachi、是 Sea Bream。我想要一个标美式菜单常用名的版本,于是指挥一队 agent 搭了出来:九个并行调研 agent 上网核实菜单名、gpt-image-2 出约 150 张写实图、一段确定性代码拼成 PDF。73 种鱼、92 页,外带两个踩坑故事和一份免费下载。
I wanted a sushi-counter field guide that used the names you actually order by in a US restaurant — not Latin binomials. So I pointed a team of agents at it: parallel research workflows verifying English menu names with web search, gpt-image-2 for ~150 photoreal neta shots, and a deterministic HTML→PDF assembler. 73 fish, 92 pages, two debugging war stories, and a free download.
硅谷101 这期 AI-First 播客的听后感。多数人把 AI 当工具,跟 24 小时较劲,提速到头也就 10 倍;少数人把它当系统,重构整条工作流,人往后退到只做两件事——给意图、审产出。但我想说的是,审产出这道关,正在被自己淹没。
Reactions to a podcast on AI-first org architecture. Use AI as a tool and you're racing the clock — 10x at best. Use it as a system and you rebuild the whole workflow, retreating to just two jobs: give intent, review output. But the review gate is drowning, and that's the part nobody wants to say out loud.
我用 TypeScript 写过几个 web 游戏,但总觉得天花板太低。想认真做一个、让 AI 写大部分代码,到底该选 Godot、Unity 还是虚幻?查了一圈才明白:AI 最擅长的引擎,不是训练数据最多的那个,而是它能整个读进眼里、自己跑起来、自己看着改的那个。
I built a few TypeScript web games but always felt the ceiling was too low. If I wanted to build a proper game and let AI write most of the code, should I pick Godot, Unity, or Unreal? After a lot of digging the answer surprised me: the engine AI is best at isn't the one with the most training data — it's the one AI can read entirely as text, run headless, watch, and fix on its own.
The code for my games? Agents handle it, faster and more correctly than I would. The thing that stopped me cold was the story. I'm not a writer, so I did the only thing I know how to do — turned "how do you write a game story" into a research problem, tore the craft apart, and built a skill that walks you from a blurry idea to a scene you can actually stage. This is the process, and the genuinely useful craft I dug up. AX Skill Workshop, part 2.
Took the three Eastern divination engines from PanPanMao and packaged them into a single agent-portable skill — algorithm engine + knowledge base + persona prompt, three folders deep. The pattern transfers to any product with real domain knowledge.
先是裸跑 Claude Code。再是 GSD 多 agent 仪式。再是 superpowers 的 skill 库。最后在上面包了一个自己的 orchestrator。每一版崩盘都来自一个具体 session。最后我才想明白:solo dev 的 harness 跟团队的不是一个物种,而且真正的答案不是选一个默认引擎——是按工作形状路由。
© Xingfan Xia 2024 - 2026 · CC BY-NC 4.0