ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

手机跑AI编程踩坑记:Termux+SSH配TaoToken的9个避坑清单

手机跑AI编程踩坑记:Termux+SSH配TaoToken的9个避坑清单 1. 手机跑 AI 编程这件事到底卡在哪先说结论安卓手机用 Termux 搭 AI 编程环境技术上完全可行但坑集中在三个地方——ARM64 的包生态、SSH 密钥与终端复用器的交互、以及移动端输入法对 TUI 程序的适配。这三个问题任何一个没处理好你都会觉得手机编程就是个玩具。我这套配置的目标很明确手机通过 SSH 连到家里那台 24 小时开机的 Linux 机器在远端跑 Kimi CLI 和 Claude Code手机只负责显示和输入。这样手机的性能、电量、网络波动都不影响后台任务断线重连后进度还在。适合谁适合手头有闲置 Linux 主机工控机、旧笔记本、迷你主机都行、想随时随地让 AI 帮忙改代码的人。整条链路是Termux → SSH → 远端 shell → Zellij 会话 → Claude Code / Kimi CLI → TaoToken 提供的模型接口。下面按踩坑顺序拆开讲每个坑都给出可复制的命令和验证动作。2. 前置准备TaoToken 的 Key 和接入信息在动手配手机之前先把服务端的东西准备好否则后面调试时分不清是网络问题还是鉴权问题。TaoToken 是一个模型 API 聚合入口兼容 OpenAI 和 Anthropic 两种调用格式。Claude Code 走的是 Anthropic 协议Kimi CLI 一般走 OpenAI 兼容协议两者都能对接。你需要先拿到 API Key然后记下两个地址官网入口https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_contentAPI 基址https://taotoken.net/api拿 Key 的路径是进控制台在 API Keys 页面创建一个新 Key。建议给手机这套环境单独建一个 Key方便日后按用途吊销。创建后立刻复制保存页面刷新后就看不到了。注意Key 只存在远端主机的配置文件里不要写进手机 Termux 的明文脚本手机丢了等于 Key 泄露。如果你还没决定用哪个模型可以先去模型对话页面测一下响应速度和效果确认可用再往 CLI 里配。长期跑编码任务的话Coding Plan 的额度模型更适合高频调用这个后面 CTA 部分再说。3. Termux 初始化与 SSH 隧道配置3.1 Termux 基础环境Termux 从 F-Droid 或 GitHub Release 装别用某些应用商店的旧版本旧版的包源经常 404。装完先换源并升级pkg update pkg upgrade -y pkg install -y openssh git curl nano zellij这里直接装 zellij不装 tmux。原因后面第 5 节讲。装完验证ssh -V zellij --version两条都能输出版本号说明基础环境 OK。3.2 SSH 密钥与 ssh-agent手机上没有物理键盘每次连 SSH 都输 Passphrase 是折磨。正确做法是用 ssh-agent 托管密钥配合AddKeysToAgent yes整个 Termux 生命周期内只输一次。先生成密钥如果远端已有公钥可跳过ssh-keygen -t ed25519 -C phone-termux把公钥推到远端主机ssh-copy-id -i ~/.ssh/id_ed25519.pub useryour-host-ip然后编辑~/.ssh/configHost home HostName your-host-ip User your-user Port 22 IdentityFile ~/.ssh/id_ed25519 AddKeysToAgent yes ServerAliveInterval 30 ServerAliveCountMax 3ServerAliveInterval 30很关键手机切后台、锁屏时 TCP 连接容易被回收这个心跳能大幅降低断线率。启动 agent 并加载密钥eval $(ssh-agent -s) ssh-add ~/.ssh/id_ed25519输一次 Passphrase之后ssh home就直接进去了。3.3 远端 settings.json 与 config.toml 骨架Claude Code 的配置放在远端~/.claude/settings.json核心是把 API 地址指向 TaoToken{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-你的Key } }Kimi CLI 如果用 OpenAI 兼容模式配置在~/.config/kimi/config.toml或对应位置骨架类似[api] base_url https://taotoken.net/api api_key sk-你的Key model kimi-k2具体字段名以你装的 CLI 版本为准用kimi --help确认。配完先别急着跑下一节验证。4. 逐项验证从 SSH 到模型响应配置写完必须逐层验证不然出问题不知道卡在哪一层。第一层SSH 通不通ssh home echo connected输出connected说明隧道没问题。第二层远端能不能访问 APIssh home curl -s -o /dev/null -w %{http_code} https://taotoken.net/api返回 200 或 401 都说明网络可达401 是没带 Key正常。如果超时检查远端主机的出网策略。第三层Claude Code 能不能拿到模型响应。在远端跑claude -p 用一句话说明什么是递归能返回内容就说明 Key、地址、模型三者都对上了。如果报鉴权错误回头检查settings.json里的 Key 有没有多余空格。第四层Zellij 会话。在远端执行zellij attach -c work进去后跑claude正常进入交互界面。这时按手机返回键或切后台再ssh home回来执行zellij attach work会话和进度都还在。5. 九个坑的排查清单5.1 Kimi CLI 在 Termux 本地装不上官方没给 Android ARM64 的预编译包用 proot 套 x86 环境会依赖爆炸。解法不要在手机本地装全部装到远端 Linux 主机上。手机只做终端。这一条直接决定了整套架构是手机跑还是手机连。5.2 Termux 默认配色看不清默认深色主题在户外强光下几乎瞎。进 Termux 设置把配色改成 Light或者装termux-styling后自定义。这个纯体验问题但影响很大。5.3 Passphrase 反复输入见 3.2 节用 ssh-agent AddKeysToAgent。别图省事生成无密码密钥手机丢失风险太高。5.4 tmux 在手机上翻车tmux 的滚屏和手机触摸手势冲突手指一滑就翻历史Claude Code 在 tmux 里光标乱跳。换 Zellij。它的键位设计和 TUI 程序兼容性明显更好。5.5 Zellij 安装卡 Rust 版本用cargo install zellij会卡在 Rust 工具链版本上。直接下预编译二进制从 GitHub Release 拿对应架构的包解压到~/.local/bin即可。5.6 Zellij 会话误退出在 Zellij 里别用quit那会杀掉整个会话。直接关窗口或断开 SSH会话保留在后台下次zellij attach work连上Claude Code 的进度一点不丢。5.7 Claude Code 调不出软键盘这是最烦的。TUI 程序有时不触发 Android 输入法。解法在 Termux 的额外按键行加一个键盘切换键一键强制唤起输入法。Termux 设置里有Extra keys配置把 KEYBOARD 键加进去。5.8 特殊键位缺失ESC、CTRL、ALT、方向键在手机上没法按。同样在 Extra keys 里把这些全排进去再补上|、~、/这些常用符号。排好之后操作效率接近物理键盘。5.9 输入效率低打字慢是硬伤。用语音输入。豆包输入法等支持语音转文字的输入法对着手机说帮我把这个函数改成异步的识别后直接进 Claude Code 输入框。实测下来语音发指令比戳屏幕快好几倍。6. 把环境用起来CTA 与后续环境搭好后日常流程就是手机ssh home→zellij attach work→ 语音发指令 → AI 在远端干活。手机没电、SSH 断线都不影响后台 Agent 继续跑。几个入口按需取用还没拿 Key 的去控制台创建https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewrite需要单独管理 Key 的走 API Keys 页面https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewrite接入参数和协议细节看文档https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewrite想先测模型效果用模型对话https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewrite长期高频跑编码任务看 Coding Planhttps://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewrite用 Claude Code 的参考 Anthropic 接入说明https://taotoken.net/claude-code-anthropic?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewrite最后补一句实操经验远端主机建议设成不休眠Zellij 会话命名固定成work手机端写个 aliasalias wssh home -t zellij attach work一条命令直达工作现场。这套配下来你确实不是在用手机编程而是在远程视察一个不休息的数字员工。
返回列表