Happy Coder 完全指南:用手机远程操控你的 Claude Code 编程助手

作为一个每天都离不开 Claude Code 的开发者,我相信你一定遇到过这些尴尬时刻:

  • 出门前让 Claude 跑一个大重构,地铁上想看看进度却只能干着急
  • 吃饭的时候 AI 弹出了工具调用确认,等你回来它已经超时了
  • 半夜线上出了个小问题,不得不从床上爬起来开电脑改一行代码
  • 出差带了轻薄本,却想调用家里高性能开发机上的本地环境

今天要介绍的 Happy Coder 就是专门解决这些痛点的工具。它能让你用手机随时随地控制电脑上的 Claude Code(也支持 Codex),查看进度、发消息、批准工具调用,甚至远程新建会话。而且它是 MIT 开源的,完全免费,还支持端到端加密。

image-20260516142101385

一、5 分钟搞定安装配置(Claude服务器配置手册)

Happy Coder 的安装非常简单,整个过程不超过 5 分钟。

前置条件

  • Node.js 20 或以上版本
  • 已经安装并登录了 Claude Code(npm install -g @anthropic-ai/claude-code

安装步骤

  1. 电脑端安装 CLI

    npm install -g happy-coder
    
  2. 手机端安装 App

    • iOS:App Store 搜索 “Happy Coder”
    • Android:Google Play 搜索 “Happy Coder”(也可以在其它三方下载安装)
    • 也可以直接使用网页版(需要手机扫码登录):https://app.happy.engineering
  3. 环境检查 安装完成后先跑一下体检命令,确保一切正常:

    happy doctor
    

    这个命令会检查 Claude Code 是否安装、token 是否有效、守护进程状态等,出问题先看它的输出。

  4. 第一次配对

    happy auth login
    

选择手机配对,终端会显示一个二维码,用手机 App 扫描即可完成绑定。

配对完成后,建议保存一下备份码,万一丢了手机可以在新设备上恢复:

happy auth show-backup

日常使用

最常用的用法:在任何项目目录里直接敲 happy,效果和 claude 完全一样,区别是手机 App 里会立刻出现这个会话。

happy

所有 Claude 的参数都可以透传:

happy -m opus              # 指定模型
happy -p plan              # 权限模式:auto/default/plan
happy --claude-arg "--resume"  # 透传参数给 Claude
happy --claude-env GH_TOKEN=xxx  # 设置环境变量

远程新建会话:如果想让手机在电脑锁屏时也能新建会话,需要启动守护进程:

happy daemon start    # 启动守护进程
happy daemon status   # 查看状态
happy daemon list     # 查看当前活跃会话
happy daemon stop     # 停止守护进程

注意:Windows 上守护进程不会开机自启,需要自己写个计划任务挂上去。

其他实用命令

happy codex           # 运行 OpenAI Codex 而不是 Claude
happy notify -p "测试通过" -t "构建完成"  # 给手机推送通知

完全卸载

如果不想用了,可以这样彻底清理:

happy daemon stop
happy auth logout
happy doctor clean
npm uninstall -g happy-coder

然后手动删除 ~/.happy 目录即可。

二、客户端使用教程

App(Android/IOS)

下面以Android为例讲解

下载App

手机端去 App Store 或 Google Play 搜 “Happy Coder” 装好。

对于Google Play访问的,可以通过https://download.csdn.net/download/ShyanZh/92877682下载最新的apk。

连接服务器

在上一小节的安装步骤中,第一次配对后,会显示一个二维码,这时按下面操作连接你的Claude:

  • 手机端打开设置页面
  • 扫码二维码认证
  • 稍等片刻将显示设备列表

image-20260516143112844

手机中体验Claude

和Claude一样,HappyCoder通过打开不同的文件夹访问启动不同的会话,手机可以连接不同的会话进行不同的任务。

  • **打开会话:**安装好Happy后,我们直接在要操作的文件夹中打开命令行窗口,然后执行happy命令就启动会话了。
  • 连接会话:这时,手机会接收到会话列表

image-20260516144855256

  • **进行AI对话:**进入对话后,可以进行简单设置并操作AI,和客户端无太大区别了。

在这里插入图片描述

  • **app开启新会话:**在设置页面的设置列表中,选择要操作的设备(服务器),然后可以看到设备信息,其中填入目录就可以新建会话了

    image-20260516145618807

浏览器(PC客户端)

想在电脑上操作,直接在浏览器打开https://app.happy.engineering/进行授权就行了。

image-20260516145849425

点击使用移动应用登录按钮,通过手机扫码,具体页面如下图所示(不是设置页面,而是设置-->Account页面):

Claude

接着就会进入操作页面,和App操作内容大致相同:

image-20260516150244235

三、同类产品对比:怎么选最适合你的方案

Happy Coder 不是唯一的远程 AI 编程方案,市面上常见的有这么几种思路:

方案一:SSH + tmux + 手机 SSH 客户端

这是最老派也最可靠的做法。家里电脑跑 tmux new -s claude,里面启动 Claude。手机装 Termius 或 Blink Shell,配 Tailscale 进内网,tmux attach 就能看到会话。

✅ 优点:完全自己掌控,零中继,纯密钥认证,零费用 ❌ 缺点:小屏终端体验差,权限弹窗只能用方向键选 yes/no

方案二:VS Code Remote Tunnel

电脑上跑 code tunnel,手机浏览器打开 vscode.dev/tunnel,里面装 Claude Code 插件。

✅ 优点:真 IDE 体验,能看 diff、改文件树 ❌ 缺点:手机浏览器编辑代码体验糟糕,鉴权走微软账号

方案三:云端 Agent

Cursor Background Agents、Devin、Replit Agent 都属于这一类。完全在云容器里跑,手机直接派任务。

✅ 优点:开机就在,不需要电脑联网 ❌ 缺点:用不到本地环境(.npmrc、Docker、本地数据库都没有),需要付费

方案四:远程桌面

RDP、Sunshine+Moonlight、Parsec 等,直接远程控制电脑桌面。

✅ 优点:什么都能干,完整桌面体验 ❌ 缺点:流量大、延迟高,不专注于 AI 工作流

详细对比表

维度 Happy Coder SSH+tmux VS Code Tunnel 云端 Agent
跑在你的电脑上
原生手机 App 第三方 浏览器
端到端加密 NaCl 真 E2E SSH TLS TLS
不靠第三方中继 微软 各家自己
手机冷启动会话 是(要 daemon) 要先开 tmux 不行
工具调用弹窗顺手 不顺手 一般 不适用
免费 / 开源 付费
真本地环境

选择建议

  • 只在乎随时随地丢任务,代码跑在哪不重要:选云端 Agent(Cursor BG 或 Devin)
  • 代码必须在本地跑,想要原生 App 体验和推送:选 Happy Coder
  • 极度注重隐私,不想信任任何第三方:选 SSH + tmux + Tailscale
  • 主要诉求是看 diff 和改代码:选 VS Code Tunnel + Claude Code 插件
  • 公司有合规要求:可以自己部署 Happy 中继服务器,设置 HAPPY_SERVER_URL 环境变量指向你的服务器

四、深入原理:它到底是怎么工作的

作为一个技术人,光会用还不够,我们来拆一下 Happy Coder 的源码,看看它背后的实现原理。我用的是 happy-coder@0.12.0 版本,所有路径和行号都来自 Windows 实测。

happy 时发生了什么

整个调用链非常清晰:

  1. PowerShell shim(C:\nvm4w\nodejs\happy.ps1)找到 node.exe,执行 bin/happy.mjs
  2. bin/happy.mjs 为了屏蔽 Node 的警告信息,会 fork 一个新进程:node --no-warnings --no-deprecation dist/index.mjs
  3. dist/index.mjs 是主程序入口,包含 CLI 解析、socket.io 连接、本地 HTTP 服务、TUI 界面等
  4. 启动 Claude Code 时,会通过 scripts/claude_local_launcher.cjs 脚本包裹:
    • 禁用自动更新
    • 替换 global.fetch,拦截所有请求来显示"思考中"状态
    • 按优先级搜索 Claude Code 的安装位置(npm 全局、Homebrew、原生安装器等)
    • 如果是 JS 版本的 Claude,直接 import 并注入拦截器;如果是二进制版本,就 spawn 子进程

一句话总结:happy 本质上是用一个带网络同步和手机控制功能的壳子,包裹了原生的 Claude Code 进程。

三层架构设计

Happy Coder 采用了非常清晰的三层架构:

第一层:配对(一次性)

配对过程基于 NaCl 加密算法,全程端到端加密,云端看不到任何明文:

  1. 电脑生成一对 NaCl 密钥对
  2. 公钥上传到中继服务器
  3. 手机扫码获取公钥,用自己的私钥做 ECDH 密钥交换
  4. 生成的共享密钥加密后回传给电脑
  5. 电脑用自己的私钥解密得到共享密钥
  6. 双方后续所有通信都用这个共享密钥加密

云端从头到尾只转发密文,根本解不开内容。

第二层:会话通道

每个 Claude 会话对应一个独立的 ApiSessionClient

  • 通过 socket.io 连接中继服务器,路径是 /v1/updates
  • Claude 的每条输出加密后上传到服务器,再转发给手机
  • 手机发来的消息加密后下发,解密后喂给 Claude
  • 工具调用请求通过 RPC 转发到手机,用户批准后才会执行
  • 定期发送心跳包,同步会话状态和 token 使用量
第三层:机器通道

守护进程(daemon)负责处理手机的远程控制请求:

  • 启动后向服务器注册自己,获得一个唯一的 machine ID
  • 保持长连接,每 20 秒发送一次心跳
  • 实现三个核心 RPC 接口:
    • spawn-happy-session:在指定目录新建一个 Claude 会话
    • stop-session:终止指定会话
    • stop-daemon:停止守护进程

完整链路:手机点"新建会话"发生了什么

手机 App
   ↓ HTTPS(带用户 JWT)
api.cluster-fluster.com
   ↓ socket.io 推送 RPC 请求
电脑 happy daemon
   ↓ 调用 spawnSession 方法
spawn "happy claude --happy-starting-mode remote ..."
   ↓ 子进程启动 ApiSessionClient
   ↓ import Claude Code CLI(fetch 被 hook)
新会话上线 → 加密消息转发给手机 → 手机出现新对话窗

之后所有的交互都走这条链路,全程加密,云端只做转发。

五、几个需要注意的坑

Happy Coder 很好用,但也不是完美的,有几个坑需要提前知道:

  1. 云中继单点问题:默认走 api.cluster-fluster.com,这是一个第三方服务。如果是要紧业务,建议要么自托管中继服务器,要么留个备用方案。

  2. 守护进程不自启:Windows 上每次重启电脑都要手动跑 happy daemon start,或者自己写个计划任务。

  3. 手机端不是 IDE:小屏看大段 diff 还是很费劲,复杂的代码 review 还是得回电脑。

  4. happy connect 不安全:这个命令会把你的厂商 API key 上传到服务器,而且不是端到端加密。介意的话绝对不要用。

  5. 团队规模小:开发团队规模不大,万一哪天停服或者换域名,需要自己重新配置服务器地址。

六、总结

Happy Coder 本质上是 Claude Code 的一个"移动遥控器"。它没有改变 AI 编程的本质,只是把 AI 编程会话从"只能在电脑前使用"变成了"随时可控"。

对于每天都要和 Claude Code 打交道的开发者来说,这是一个轻量但价值极高的工具链补强。它解决了碎片化时间利用和应急处理的痛点,让你真正做到"人在哪里,生产力就在哪里"。

而且它是完全开源的,你可以审计代码,甚至自己部署中继服务器,最大程度保证数据安全。

如果你也经常遇到离开电脑但 AI 还在干活的情况,强烈推荐试试 Happy Coder。它可能不会让你的编程效率提升十倍,但一定会让你的工作生活平衡得更好。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐