起因
我用 Android 手机做开发,装的是 Termux。
想用 Claude Code 那种"AI 帮我写代码"的能力,但官方只有桌面端和 Web 端------手机上要么跑不了,要么体验很差。
后来想:Claude Code 的核心不就是「Agent 循环 + 工具调用」吗?那我用 Node.js 在 Termux 里自己实现一个,不就行了。
于是有了 Claude Code Mobile。
它是什么
一个跑在 Android/Termux 上的 AI 编程助手,纯 Node.js,不需要 root。
交互风格、Agent 架构、工具协议对齐 Claude Code,但是独立实现,与 Anthropic 无隶属关系。
核心是「给我一个 API 端点,我就能在手机上帮你干活」:
- 读写文件、跑命令、搜代码
- 联网搜索(19 个源)
- 多 Agent 并行干活
- 直接操作手机(看屏幕、点按、输入)
几个我觉得有意思的点
1. 手机操作(phone use)
这是桌面端做不了的------AI 能真的操作你的手机:
phone_snapshot 看当前界面(元素树,百毫秒级)
phone_click 点某个元素
phone_type 输入文字(支持中文)
phone_shell 在 Android 系统里跑 shell
底层走 Shizuku 或本机 adb,还能用虚拟副屏------AI 在副屏操作,不占用你的主屏。
举个实际场景:让它"打开音乐 App 搜一首歌并播放",它会自己看界面、点搜索框、输入歌名、点结果。
2. 三协议支持
不绑死某一家:
| 协议 | 端点 |
|---|---|
| OpenAI 兼容 | /chat/completions |
| Anthropic | /v1/messages |
| Responses | /responses |
中转站、官方 API、本地反代都能接,可以配多个 Provider 随时切。
3. 多 Agent 编排
主对话可以派子 Agent 并行干活:
- 每个子 Agent 独立上下文(不污染主对话)
- 可以递归(子 Agent 再派)
- 并发上限 24
- 可以后台跑,主对话继续做别的
配合 Task 工具组(持久化待办)、Team 工具组(团队协作),能组出挺复杂的流程。
4. 搜索:19 个源
一个 SearchInfo 调用,同时查:
- 通用:Bing / 百度 / 搜狗 / 360 / B站 / CSDN / 掘金 / V2EX / HackerNews / StackOverflow / GitHub / Mojeek
- 垂直:arXiv / OpenAlex / Crossref / PubMed(学术)、npm / PyPI / crates(包)、MDN(文档)、NVD(漏洞)、endoflife(生命周期)、HuggingFace(模型)、GitHub Releases(版本)
返回带权威度标注的资料卡,按可信度排序。
5. 60+ 工具
除了常规的文件读写、Shell、Git、搜索,还有一些不那么常见的:
- HashlineEdit:行锚点编辑(改前验证行内容没变,防止改错位置)
- ApplyPatch:原子性多文件 patch(任一失败全部回滚)
- ViewImage / ViewVideo:原生多模态,主模型直接看图
- Cron 工具组:定时任务(到点自动执行一段 prompt)
- Goal 工具组:完成契约(有明确终止条件的自动推进)
6. 会话与上下文管理
- 会话自动保存(每 30 秒)
/resume切会话、/branch分支、/rewind回退- 上下文压缩(手动
/compact,默认不自动压缩) - Prompt Cache 支持
技术上的几个细节
纯 Node.js,零编译
Termux 上 pkg install nodejs 就能跑,没有 native 依赖要编译。
虚拟副屏
用 app_process 起一个独立 display,AI 在里面操作 App,不占你的主屏。
帧缓存过期时会自动重启,元素树拿不到内容时可以切截图。
三协议抽象
core/api.mjs 把三种协议的差异收敛成统一接口,Agent 层不关心底下是什么协议。
工具 schema 归一化
不同 provider 对 JSON Schema 的容忍度不同(Gemini 会因 properties: null 直接拒整个请求),所以在序列化出口处统一兜底,而不是指望每个工具定义都写对。
安装
bash
# 1. 装依赖
pkg install nodejs git termux-api
# 2. 克隆
cd ~
git clone https://github.com/wzy-20130517/Claude-Code-Mobile.git claude-code-mobile
cd claude-code-mobile
# 3. 装 npm 依赖
npm install
# 4. 启动(首次进配置向导)
bash start.sh
首次启动会引导你填 API 地址、Key、模型名。
还带了 Web 端
同一套内核,也有浏览器界面(Vue 3 + Vite):
- 约 2.9 万行前端 + 3800 行后端
- 对话、Artifacts 面板、文档系统
- 与 CLI 共享配置和会话数据
- 手机跑服务,局域网内的电脑也能访问
最后
这个项目的出发点是「手机上能不能有个趁手的 AI 编程工具」。
做到现在,它已经不只是"编程"了------能操作手机、能联网查资料、能多 Agent 协作,更像一个跑在 Termux 里的通用助手。
如果你也在手机上折腾开发,欢迎试试,也欢迎提 issue。
项目地址 :github.com/wzy-2013051...
本文介绍的是开源项目 Claude Code Mobile,为独立实现,与 Anthropic 无隶属关系。