手机远程使用Claude Code:从Channels配置到SSH访问全指南

手机远程使用Claude Code:从Channels配置到SSH访问全指南 先聊点实在的。最近群里有好几个朋友都在问同一件事Claude Code能不能搬到手机上用我一开始也以为这是个伪需求直到我自己在通勤路上用手机连着跑了一个重构任务才发现这个场景比想象中实用得多。Claude Code本身是Anthropic出的官方命令行编程助手没有手机客户端但你可以让它跑在一台常开的机器上手机通过SSH连过去操作体验上跟坐在电脑前几乎没区别。这里面的核心就是把“Channels”这个概念理顺。在Claude Code的语境里Channels至少有三层意思一层是conda的软件源配置很多人在装环境时卡在这一步一层是模型接入渠道比如官方Claude、DeepSeek、Ollama本地模型还有一层是你从手机到主机之间的终端访问通道。这三层一旦打通你就能在任何设备上使用Claude Code不受地点限制。这篇文章我会从安装、模型渠道切换、手机SSH访问、高频报错排查这几个维度把整套玩法一次讲清楚适合想在手机上随时用AI编程助手、或者正在折腾Claude Code但被各种细节卡住的人。1. 先弄清楚Claude Code和Channels分别指什么1.1 Claude Code是干嘛的Claude Code跑在终端里你用自然语言描述任务它会自动读取项目文件、修改代码、执行命令、跑测试甚至帮你提交Git。说白了一个能自己动手干活的编程Agent不只是在对话框里给建议。它基于Claude系列模型常见的有Sonnet和Opus两种档位逻辑能力、代码理解能力和长上下文窗口是它的强项。有朋友总拿它跟OpenAI的Codex对比。两者的思路确实很像都是“终端里的编程智能体”但生态不一样。Claude Code对Anthropic自家模型的依赖更深处理超长文件和多步骤重构时表现更稳Codex则跟OpenAI的模型和生态绑定更紧。选哪个主要看你平时主力用哪家模型以及你的账号订阅在哪边。我个人的看法是工具没有绝对优劣能顺手解决问题的就是好工具。1.2 Channels的三层含义先说说那个在热词里反复出现的配置项channels: - defaults - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pr。这其实是conda的软件源配置日常作用是让Python包从国内镜像站下载速度会快很多。这里有个小坑网上流传的pkgs/pr大概率是笔误正常情况下应该是pkgs/main或pkgs/r如果你照抄导致conda找不到包记得检查一下。但今天要讲的Channels不光是conda配置。在Claude Code的场景里我更愿意把它拆成三层理解模型渠道Claude Code背后接什么模型可以是官方Claude也可以是DeepSeek这类兼容接口还可以是Ollama拉下来的本地模型。终端渠道你用什么终端去操作Claude Code电脑上的PowerShell、VS Code终端或者手机上的SSH客户端。配置渠道不同项目可能要用不同的模型组合这时候可以用CC Switch这类工具做配置切换。把这三层理顺标题“用手机访问Claude Code”的思路就清晰了手机只是终端渠道真正跑Claude Code的是你家里或云上的那台常驻机器模型渠道按需切换。这个架构一旦搭好不光是手机任何能装SSH客户端的设备都能变成你的编程入口。2. 安装Claude Code之前先把环境这关过了2.1 环境和版本要求Claude Code本质是一个npm全局包所以Node.js是必须的。官方要求Node.js 18以上我建议直接上20或22的LTS版本别用太老的版本否则后面装MCP相关依赖时会遇到各种兼容性问题。安装前先检查环境node -v npm -v如果还没装Node.js强烈建议用nvm或fnm管理版本别一股脑从官网装系统级版本。用nvm的好处是版本切换方便而且不会碰到权限问题。Windows用户还要注意默认PowerShell和cmd都行但如果你要用到bash脚本相关功能装一个WSL体验会好很多后面跑Claude Code的自动化脚本时能少踩不少坑。这里特别提醒conda用户conda的channels配置只影响Python包的安装源跟Claude Code的npm安装没有直接关系。很多人习惯先装Anaconda然后在base环境里直接执行npm install结果遇到奇怪的权限或路径报错。我的建议是node环境用nvm单独管理别跟conda base环境搅在一起。你要是已经在conda里装了node建议卸载干净再走nvm这条路。2.2 官方安装方式和PATH问题安装Claude Code最常规的方式是npm全局安装npm install -g anthropic-ai/claude-codemacOS和Linux也可以用官方提供的curl脚本安装Windows上一般就是npm方式。装完验证一下claude --version这里有个高频报错failed to run claude code: error: could not locate the claude cli on path。出现这个基本就是PATH环境变量里没包含npm的全局bin目录。Windows下npm全局包的路径一般在%APPDATA%\npm你把它加进系统PATH然后重新开一个终端再试。macOS/Linux下一般是/usr/local/bin或~/.nvm/.../bin用npm prefix -g可以查看。Windows PowerShell安装报错是另一个高频问题通常跟执行策略有关。解决方案Set-ExecutionPolicy -Scope CurrentUser RemoteSigned执行完重新开终端。还有一部分PowerShell报错来自npm缓存目录损坏可以先执行npm cache verify再重装。2.3 安装慢、下载失败怎么处理国内网络环境下npm装包慢是家常便饭。最简单的处理方式是用国内镜像源npm config set registry https://registry.npmmirror.com设置完再安装速度会明显提升。如果你之前也配了conda的清华channel就保持现状别动两者互不干扰npm配置只管npm包conda配置只管Python包。还有个容易忽略的点公司或学校网络可能有统一的npm源配置导致原始镜像被覆盖。用npm config get registry确认当前源发现不是预期地址再手动改回来就好。3. 配置不同模型渠道官方、DeepSeek、Ollama一个都不能少3.1 官方渠道订阅或API Key模型渠道是Claude Code使用体验的分水岭。最简单的是官方渠道如果你有Claude的Pro或Max订阅直接运行claude命令它会启动浏览器登录授权授权完成后直接使用不需要额外配置API Key。如果你是API用户那就设置一个环境变量export ANTHROPIC_API_KEY你的APIKeyWindows下用setx ANTHROPIC_API_KEY 你的APIKey。API按量计费适合用量不固定或需要精细控制成本的场景。订阅和API的区别简单类比就是自助餐和点菜订阅一次性搞定但可能有频率限制API用多少付多少更灵活。3.2 接入DeepSeek等OpenAI兼容渠道很多人没有Claude订阅但有DeepSeek或者其他兼容OpenAI接口的模型Key。Claude Code其实支持通过环境变量指向第三方兼容端点export ANTHROPIC_BASE_URLhttps://api.deepseek.com/anthropic export ANTHROPIC_AUTH_TOKEN你的DeepSeek_API_KEY export ANTHROPIC_MODELdeepseek-chat设置完再运行claude它就会把请求发到DeepSeek的Anthropic兼容接口上。这样做的好处是成本低坏处是模型能力跟Claude自家模型有明显差距。我自己实测DeepSeek做代码解释、单文件修改、写测试用例这类任务是可以的但面对跨多文件的大规模重构理解能力还是不够有时候改出来的代码逻辑能跑但设计得很别扭。这里要提醒填环境变量前先确认第三方接口确实支持Anthropic兼容格式别拿着OpenAI原生接口地址直接填不然会一直报连接失败。用的时候也要分清场景别把简单任务和复杂任务都交给同一个低配渠道灵活切换才是核心价值。3.3 本地Ollama渠道和CC Switch切换如果你在意隐私或token消耗本地Ollama是个不错的补充。Ollama可以把模型跑在本地Claude Code可以通过Ollama的OpenAI兼容接口访问export ANTHROPIC_BASE_URLhttp://localhost:11434/v1 export ANTHROPIC_AUTH_TOKENollama export ANTHROPIC_MODELqwen2.5-coder:14b先启动Ollama并拉取模型再运行Claude Code。实测下来本地7B或14B模型做注释补全、代码解释、简单脚本生成是够用的但别指望它能和云端大模型一较高下。它的价值在于零token消耗适合长时间挂机做批量任务时兜底。不过手动改环境变量来回切真的太麻烦这时候就到了CC Switch出场。它是个开源配置切换工具可以把你常用的渠道配置保存成Profile一键切换不用反复记环境变量。比如我本地常驻三个ProfileProfile名称模型渠道适用场景officialClaude官方API复杂重构、代码评审deepseekDeepSeek兼容接口日常增删改、跑测试local-ollamaOllama本地模型离线环境、隐私代码切换后新开的终端会话立即生效。这个工具解决的不是技术难题而是很实际的配置管理问题我强烈推荐给折腾多渠道的人。4. 手机上访问Claude Code的完整方案4.1 核心思路跑在常驻主机上手机只做终端先泼一盆冷水手机本地运行Claude Code不是个好主意。手机处理器再强面对大型Node工程和模型推理也是个半残状态更别说续航和散热限制。正确思路是让Claude Code跑在一台常开的机器上手机通过SSH连过去只当一个远程终端。这台常驻机器可以是家里一台不关机的电脑或迷你主机也可以是云主机。如果在你身边同一个局域网直接用内网IP连就行如果是云主机直接连它的公网IP。这里的安全底线要守住公网环境下绝对不要用密码登录一定要用SSH密钥这样即使端口被扫描也不会轻易被爆破。再说一遍连接方式和网络边界要提前想好别图省事把主机裸奔挂到公网上。为什么不推荐在手机上装一堆复杂的远程桌面方案因为Claude Code是终端交互工具你要看的是文字和diff不是图形界面。文字流量极小SSH是最轻量、最少依赖的通道手机和电脑上客户端都成熟出问题也好排查。4.2 手机端SSH工具和具体操作流程手机端SSH客户端选择不少iOS上我用过TermiusAndroid上用Termius和JuiceSSH都行。这些工具本质上就是手机上的终端模拟器操作逻辑跟电脑终端一样。新建连接时需要填这几个关键项主机IP、SSH端口默认22、用户名、认证方式。如果用的是密钥认证先把公钥放到主机~/.ssh/authorized_keys里然后在手机客户端导入私钥连接时选“Use Key”就行。连上之后你会看到一个正常的终端直接输入claude看到欢迎信息后就能用自然语言给Claude Code派活。比如在代码目录里输入“帮我看看这个模块的测试为什么失败”它会自动定位、分析并给出修复方案。手机终端的操作方式跟电脑一样按回车发送指令CtrlC中断任务方向键切换历史输入。这里有个小技巧手机横屏并把字体调大终端显示行数会舒服很多。如果在手机上只看任务进度、偶尔发几个指令这个体验完全够用。4.3 电脑端和手机端如何共用一套环境你可能会遇到这种情况白天在电脑上登录主机干活晚上回家路上手机又连上去两条路径操作的是同一台机器、同一个项目目录这会带来一个优势任务不中断。工作的电脑关了主机上挂着的Claude Code任务在继续跑晚上用手机连上去就能看结果。Claude Code本身默认保存对话历史进程中断后可以用claude --continue恢复上一次会话上下文还在不需要从头描述一遍需求。这对移动场景太重要了我经常在办公室开一个长任务下班路上打开手机先看跑完没没跑完就继续让它跑。如果你觉得手机纯终端操作有限也可以用VS Code的Remote-SSH功能在电脑或平板上打开同一台主机的项目图形化编辑文件和看diff会方便很多。手机则继续用SSH终端搞定快速指令两者不冲突。5. 高频问题排查乱码、历史、MCP与Skills5.1 终端乱码问题Windows上用PowerShell跑Claude Code时经常出现中文乱码原因基本是代码页和UTF-8编码不匹配。最简单的解决方法是先执行chcp 65001把当前代码页切到UTF-8然后再运行claude。或者直接用Windows Terminal它的默认编码就是UTF-8乱码概率会低很多。真遇到还乱码检查一下系统区域设置里有没有勾选“Beta版使用Unicode UTF-8提供全球语言支持”勾上重启就差不多了。macOS和Linux终端一般不会乱码但如果你通过SSH从手机连过去手机客户端本身也要确保使用UTF-8编码Termius等主流工具默认就是。5.2 对话历史与续接Claude Code的会话历史默认存在家目录下的.claude文件夹里按项目区分。想接着上次对话继续两个命令最常用claude --continue直接继续最近一次会话上下文完整保留。claude --resume列出历史会话让你选择适合同时在多个项目间切换的情况。我建议每次退出前先用--resume看一下会话列表确认当前在哪个项目避免接错上下文。清理历史也简单直接删.claude/projects下对应目录的文件就可以。5.3 MCP配置让Claude Code读取数据库MCPModel Context Protocol是Claude Code连接外部工具和数据源的标准协议通过它可以让Claude Code直接读取数据库schema、执行查询、分析数据而不只是回答你怎么写SQL。在项目根目录创建.mcp.json{ mcpServers: { sqlite: { command: uvx, args: [mcp-server-sqlite, --db-path, ./test.db] } } }配置好以后在Claude Code里问“这个库有哪些表帮我统计一下最近一个月的订单量”它会自动调MCP工具去查。MCP server跑在你常驻主机上所以手机通过SSH访问时这些能力依然可用这是整套方案里很加分的一环。唯一需要注意的.mcp.json里如果包含敏感连接信息千万别提交到Git仓库。5.4 登录报错和订阅限制热词里有条报错很典型your organization has disabled claude subscription access for claude code。这是Claude账号本身的问题说明你的Claude账号所在组织策略禁止CLI访问。处理路径无非两条找组织管理员开启CLI权限或者换用个人账号API Key方式。不要想什么歪门邪道去绕过合规使用才是长期之道。还有一个高频报错是failed to run claude code: error: could not locate the claude cli on path前面已经写过解决办法这里再提醒一句PATH配置修改后一定要重新打开终端命令行窗口不会自动刷新环境变量这是很多人反复踩坑的根源。5.5 Skills扩展能力最后说Skills。它相当于给Claude Code装“技能包”每个技能包通常包含一组专业prompt和脚本让它在特定场景下表现更专业。官方近期一直在推动Skills标准化社区里也能找到不少现成技能包比如批量生成PPT、规范Git提交信息、自动写发布日志等。我的建议是先看官方文档了解格式和加载规则再从社区模板改造出一套自己团队的技能包。技能不贪多够用就行。用得太多反而会拖慢响应速度因为Claude Code要在每次会话里加载技能描述。问题快速解决方案PATH找不到claude命令把npm全局bin目录加入PATH后重开终端PowerShell安装报错Set-ExecutionPolicy -Scope CurrentUser RemoteSigned中文乱码PowerShell执行chcp 65001或用Windows Terminal无法继续上次会话在项目目录执行claude --continueMCP连不上数据库检查.mcp.json配置、确认依赖已安装6. 我对这套玩法的几点个人体会折腾到现在我越来越觉得用手机访问Claude Code这件事真正的价值不在于“手机也能写代码”这个仪式感而在于把编程助手变成了一件随时在线的基础设施。白天在公司电脑上开着长任务下班路上用手机瞄一眼进度或者在现场排查问题时快速让Claude Code查一段日志这种体验是坐在电脑前给不了的。再分享一个小技巧手机SSH客户端一定要把字体换成等宽字体比如JetBrains Mono或Fira Code终端对齐效果会好很多。用横屏模式大字体连接变更频繁时可以保存多个会话Profile按项目一键切换。根据我个人的使用习惯手机端最适合做状态查看、任务启动和轻量问答真正的深度code review还是留到电脑上做效率更高。Channels这层概念想清楚以后其实整个方案就没有黑魔法了模型渠道解决“大脑”问题终端渠道解决“手脚”问题配置渠道解决“切换”问题。三层分离各自独立想怎么组合就怎么组合。这套玩法我已经稳定用了一段时间如果你也在研究Claude Code的远程使用方式照着上面的思路把环境配一遍应该能少走不少弯路。