在任何地方开始写代码。在所有地方继续。
在笔记本上启动一个会话。用手机、平板、浏览器或桌面实时跟进、发送消息、批准权限 —— 不丢上下文。

在你自己的电脑上运行它们,用你自己的订阅或 API 密钥。开源。端到端 加密。可自建部署。
curl -fsSL https://happier.dev/install | bash滚动浏览
一条命令。支持 macOS、Linux 和 Windows。已签名并经校验和验证。
curl -fsSL https://happier.dev/install | bash将 CLI 连接到你的 Happier 账户。你可以在已登录的设备上确认——应用或网页均可。
happier auth loginhappier auth login 会打印一个二维码。用应用扫描它,或用任意浏览器打开它打印的网址。
通过 Happier 启动 13 种智能体中的任何一种,它就会同时活在你每一台已登录的设备上。
happier claudeHappier 是你已经在用的 AI 编码智能体的移动端原生控制层。它镜像你的终端,同步每一个会话,并把 CLI 给不了你的东西还给你:在场感、批准、语音,以及承载这一切的一个收件箱。
在笔记本上启动一个会话。用手机、平板、浏览器或桌面实时跟进、发送消息、批准权限 —— 不丢上下文。

打开你机器上正在运行的任何 Claude Code、Codex 或 OpenCode 会话 —— 实时的,从任意设备。没有东西要迁移,没有东西要学。

继续在原生 TUI 里运行 Claude Code、Codex 或 OpenCode。Happier 把它们镜像到每一台设备,这样你可以在任何地方跟进、发送消息、批准权限 —— 并随时在终端和 Happier 之间切换。

聊天、文件、Git 和一个实时终端,各占一个标签页。打开文件阅读或编辑、查看 diff、管理分支、开一个拉取请求 —— 都在你口袋里完成。

一个会话可以启动另一个会话、给它发消息、读它的会话记录 —— 于是一个 Claude 会话和一个 Codex 会话可以把活儿分着干。每一个仍然运行自己的子智能体,用你选择的任意后端:Claude、Codex,或任何兼容 ACP 的 CLI。

在智能体干活时把消息排进队列 —— 重新排序、编辑,或者现在就发。在不打断的情况下引导正在进行的一轮,或者回退到之前任意一条消息,换一条路径走。
等待决定的会话会升到列表顶部的“需要关注”分组;正在运行的都聚在“工作中”下面。同时跑十几个智能体,也不会丢掉线索。

浏览智能体的改动。标出你想处理的确切行。挑选要发送的备注,直接交回去 —— 同一个会话,或者一个新的。

对话进行到一半也能换引擎,同一个会话继续往下走。最近的对话会带过去,新智能体还会拿到读取其余部分的工具 —— 如果上一个智能体自己留有记录,那份记录也一并交接。之后再切回来,它会接着自己的那条线,只收到它错过的部分。

在底部栏上滑动就能在会话之间切换 —— 一个手势继续滑下去可以连跳好几个,经过时每个都会显示名字。用键盘时,Alt+↑/↓ 沿列表走,Ctrl+Tab 走最近用过的会话。所有快捷键都可以重新绑定。

语音助手看着每一个运行中的会话。构思下一处改动、批准一个权限,或者发一条消息 —— 都不用拿起手机。

连接你的笔记本、台式机、一台 VPS 或一台开发机,然后选择每个会话由哪一台运行。选择器会标出哪些在线,并在这些机器上启动会话。也可以从应用或 CLI 通过 SSH 再添一台。
Happier 能执行的每一个操作 —— 创建会话、给它发消息、设置模型、启动一次评审 —— 都只定义一次,在同一个注册表里。应用、斜杠命令、语音、会话内的智能体、CLI,以及一个外部 MCP 宿主,调用的都是同一份定义;而对每个操作,你可以选择这些入口里哪些能直接执行、哪些必须先问你。
happier mcp serve
happier session list --json
happier session send <id> "rerun the failing test"
happier session actions list
happier session actions execute <id> session.spawn_new每个会话都可以在自己的 Git worktree 中启动——真实的 checkout、独立的分支、同一个仓库。选择任意本地或远程分支,Happier 会创建 worktree、建议名称,并在已有 worktree 时提议复用而不是重复创建。也可以直接在当前文件夹中开始:这是每个会话的选择,而不是需要开启的模式。
把 Claude Code 或 OpenCode 会话交给台式机、VPS 或开发机,从中断处继续。需要的话可以带上工作区——完整快照,或仅传变更。Happier 会在旁边写入副本而不是覆盖,除非你明确指定,否则不会带走被 git 忽略的文件,并且在你开启之前整个传输都保持关闭。
把你的 MCP 服务器定义一次。Happier 让它们在每一个后端上都可用 —— 包括那些没有原生 MCP 支持的 —— 并且在你连接的每一台机器上都可用。不用按服务方、按设备重新安装。

Happier 复用你现有 CLI 已经在用的订阅和登录 —— Claude、Codex、Cursor、Gemini、OpenCode。没有新账单。不会重复计费。

把每个服务方下的多个账号链接成一个池,并在应用里查看它们每一个的用量和配额重置时间。在你建立一个池之前,什么都不会切换 —— 建好之后,Claude Code 和 Codex 会话可以不停下来就更换账号,切到剩余配额最多的那个成员,每轮最多一次,并且绝不会越过服务方已公布的重置时间。

按会话设置模式、模型和权限。工具时间线的详略级别。通知路由。可以构建、导入和分享的自定义主题。把 Happier 调成你工作的样子。
你的代码、提示词和会话内容在到达任何服务器之前,就已在你的设备上加密。设计上私密。默认开放。一条命令即可自托管。
把会话分享给队友,管理谁能查看、谁能操作,实时协作。
对 Codex 目标和 Claude 任务清单的一等支持 —— 目标、进度和预算一眼看清。
创建拉取请求、管理分支、推送到远端、暂存并评审变更过的文件 —— 在手机上完成全套版本控制。
用拖放把会话归进文件夹和子文件夹,一次只专注一个文件夹。
可复用的提示词、技能、模板和注册表 —— 定义一次,处处使用。
跨会话的语义记忆搜索 —— 你的智能体搜索上下文,你搜索自己的全部历史。
选中消息并在会话之间发送;智能体和会话在你的工作区里互相协调。
通过 Happier 的操作规范,智能体可以创建和管理会话、在你的工作区里导航 —— 要紧的地方需要批准。
多选会话并批量操作 —— 一次点击归档、移入文件夹或标记为已读。
会话记录里是丰富、增量流式渲染的 markdown —— 表格、代码块、从不跳动的排版 —— 还可以为 markdown 文件启用一个 Notion 风格的编辑器。
构建、导入和分享自定义配色主题。克隆一个预设,边改边实时预览。
会生成图片的智能体会把图片直接渲染在对话里,不管你在哪里读。
按固定节奏运行会话,用来盯拉取请求、跟踪 issue,或自动重复任何任务。
智能通知把点击带到确切的会话和服务器 —— 直接在提醒上批准或回答。
iOS 和 Android 的原生应用、覆盖各个操作系统的桌面应用,以及一个网页应用 —— 全部保持同步。

在你自己的基础设施上运行 Happier 的 relay 服务器。你的数据永远不会离开你的网络。
用一条命令安装 relay 服务器。Docker 或裸机都行。
一个受管理的服务,用 happier relay host status 启动、停止和检查。主机上没有任何东西会自己更新 — 要更新,就在你决定的时候重新运行安装命令。
从任何地方访问你的会话。SSH 隧道、Tailscale,或直接用 HTTPS。
一个应用,管住 Claude Code、Codex、OpenCode、Pi 以及另外 9 个 —— 在你自己的电脑上,用你自己的账号。
Claude Code 的远程控制在 claude.ai/code 或 Claude 应用里打开。Codex 通过 ChatGPT 应用连到你的手机。每家厂商的远程控制都落在自家产品内部,这在你只用其中一家时没问题。Happier 换成了一个收件箱:所有会话、所有智能体、你连接过的所有电脑,都在一个列表里 —— 在同一个地方回应它们全都等着的权限提示。
一个 Codex 会话可以把界面部分的工作交给运行在 Claude 上的委派任务,同时一个 Pi 会话在翻堆栈跟踪,而你可以在其中任何一个运行到一半时介入引导。Happier 的评审、计划和委派运行接受一份服务方目标列表 —— 而不是你恰好所在的那个服务方。某一家厂商做的远程控制驱动的是这家厂商的智能体;按它自己的文档,Remote Control 是 Claude Code 的一项功能。
每项服务可以连接不止一个配置档 —— 一个个人 Codex 订阅和一个工作用的、一个 Claude setup-token、一个 Anthropic API 密钥 —— 并在启动会话的那一刻选择它运行在哪一个上。Codex、Claude 和 Gemini 配置档的配额快照会以徽标形式显示在认证选择器里,这样你在把一段长时间运行交给它之前就能看到还剩多少。在你有意建立一个池之前,什么都不会切换;建立之后,对于正在运行的会话确实能够切过去的那些账号,自动回退默认是开着的,如果你更想手动切换,池上有一个开关。
在手机上从应用里启动一个会话,然后在那台电脑上运行 `happier attach`,你就在一个 shell 里进入了同一个会话,历史记录已经在那里 —— Claude Code 和 Codex 是在 tmux 里,OpenCode 通过它自己的 attach,这三种情况下你进的都是智能体真正的 TUI。或者在终端里启动,再到应用里接手。它会重连到已经存在的那个会话,而不是再建一个,所以没人需要在任务开始时先选边站。
会话是针对某台机器创建的,所以你人在笔记本前时,Codex 会话可以在 VPS 上启动,而笔记本上的 Claude 会话可以给它发消息并等它完成。活动会话也可以在机器之间迁移 —— 同一个会话 id,换一台电脑 —— 并带着它的服务方状态和项目目录,这在 Claude Code 和 OpenCode 上可用,在 Codex 上是实验性的。
打开一个文件或一份 diff —— 变更文件的评审视图,或者智能体刚写进会话记录的那份 diff —— 在确切的那一行上留下评论。Happier 会保存路径、行号、一段片段和该行内容的哈希,所以在文件在底下挪动之后,这条备注仍能找到它对应的代码。挑出要发送的评论,它们会作为结构化的评审上下文送进去:回到同一个会话,或者进入另一个智能体上的新会话,因为这些评论是挂在工作区上的,你在那里打开的任何会话都会发现它们在等着。
已经在用 Claude Code Remote Control?把它和 Happier 比一比。
免费。完全免费。CLI、移动应用、桌面应用、网页应用和 relay 都是免费的,采用 MIT 许可 —— 没有席位数,没有试用期,没有功能门槛。
它在你自己的电脑上运行你已经有的那个 CLI —— Claude Code、Codex、OpenCode —— 用的是你本来就在付费的 Claude 或 ChatGPT 订阅,或者 API 密钥。那张账单还在原来的地方,而且是整幅画面里唯一的一张。
开源 —— 全部采用 MIT 许可:CLI、各个应用和 relay 服务器。github.com/happier-dev/happier。
不会。你的智能体直接与它自己的服务方通信:Claude Code、Codex、Gemini 以及其余的都在你的电脑上运行,用它们自己的认证和自己的运行框架,和它们在你终端里的表现完全一样。Happier 是围绕它们的客户端,所以一次提示的花费和以前一样。
Happier 确实会加入少量自己的指令,其中有两部分归你决定,可以在 设置 → 会话 → 提示词个性化 里关掉。“会话标题更新”请智能体给会话命名,你可以把它设为从不、仅在会话开始时,或在任务变化时再次更新。“请智能体给出回复选项”请它在向你提问时给出可点选的答案,这是一个单独的开关。两个都关掉之后,剩下的是两小段说明,告诉智能体文件附件和 `@path` 引用是怎么送到它那里的。
确实有一项功能会花掉它自己的 token:记忆功能会用你已经连接的某个凭据,在空闲时为你的会话做摘要,每小时最多 12 次。在你打开它之前,它是关闭的。
Happier 运行一个会话时,会在你自己的电脑上启动服务方自己的 CLI,并且用的是你自己登录好的身份。从 Anthropic 或 OpenAI 那一侧看,这是同一个 CLI、同一台电脑、你自己的账号 —— 也就是这个工具受支持的普通用法。变的只是谁敲了启动命令:`claude`、`codex` 或 `opencode`,由 Happier 启动而不是由你启动。
我们不是律师,我们不提供任何保证,而且服务方的条款会变。请自己读一遍。如果你的组织和某个服务方有协议,在连接工作账号之前先核对它。
你的代码留在你的电脑上。智能体在本地读写文件;同步的是对话,以及在另一台设备上显示同一个会话所需要的会话状态。
这份同步默认是端到端加密的:内容在你的设备上加密,服务器存的是它读不了的密文。消息 id、时间戳、设备 id 和会话 id 属于元数据,不加密。此外还有一个明确的明文模式,给希望内容对服务器可读的人用 —— 需要主动选择,有明确标注,而且不是默认。
如果你不想让任何一部分落在别人的硬件上,`happier relay host install` 会把 relay 装在你自己的电脑上,整条路径就变成你的设备 → 你的 relay → 你的电脑。
除非你把链接给他们,否则不能。在默认的端到端加密模式下,relay 持有的是它没有密钥的密文;它能看到的是路由元数据 —— 账号 id、时间戳、消息大小 —— 而看不到你或智能体说过的任何内容。
分享是一个有意为之的动作,有三种形态:以只读方式把会话分享给朋友,以可编辑方式分享让对方能在同一份会话记录里输入,或者发布一个只读的公开链接。不会因为一个会话存在就把它分享出去,而被分享的会话会在列表里归入它们自己的分组,不会混进你的会话中。
许可是 MIT,relay 可以自托管,所以失败的形态是“你自己运行它”,而不是“你丢了你的工作”。无论如何,你的会话都在你自己的电脑上 —— Happier 是它们之上的一个客户端。
不需要。在运行你代码的那台电脑上安装 CLI,用二维码配对一台设备,就完成了 —— 剩下的由 Happier 托管的 relay 免费完成。
运行自己的 relay 是一个选项,不是要求。`happier relay host install` 会把它设置为一个受管理的服务;此外还有一个 Docker 镜像和一个 runner。你可以把它绑定到 localhost、你的局域网或公网,并通过 Tailscale、SSH 隧道或直接的 HTTPS 访问它。
有 13 个作为内置项提供:Claude Code、Codex、OpenCode、Cursor、Gemini、Copilot、Qwen、Kimi、Auggie、Kilo、Kiro、Pi 和 Grok。除此之外,Custom ACP 后端接受任何讲 Agent Client Protocol 的 CLI,定义好之后,它会和内置项并排出现在智能体选择器里。
Happier 不打包这些智能体的 CLI。它会检测你选定的电脑上装了什么,并把其余的告诉你 —— 每个智能体的设置页会报告检测状态,如果你需要,也可以在那台电脑上运行一个尽力而为的安装程序。而且不是每个智能体都支持 Happier 的每一项功能;比如会话交接,目前是 Claude 和 OpenCode,在 Codex 上是实验性的。
可以。Happier 用的是你的 CLI 已经有的登录,所以 Claude Pro 或 Max 订阅、通过 Codex CLI 使用的 ChatGPT 订阅,或者 Gemini 登录,都会像现在这样继续工作。没有第二张账单,不用重新输入密钥,中间没有代理。
API 密钥也可以用,替代端点同样可以 —— DeepSeek、Z.AI、MiniMax、Azure OpenAI、Vertex AI,或者你自己的网关,通过后端配置档按会话选择。Anthropic 自己的 Remote Control 文档在它那一侧排除了这条路:“不支持 API 密钥”;并且自 Claude Code v2.1.196 起,Remote Control 会“在 `ANTHROPIC_BASE_URL` 指向 `api.anthropic.com` 以外的主机时被禁用,例如指向某个 LLM 网关或代理”。
能,而真正要紧的区别是它在哪里运行:Claude Code 运行在你的电脑上,你的手机是那扇窗。安装一次 CLI,让后台服务保持运行,你就可以从应用里启动会话 —— 你电脑上的运行时收到请求,并在本地、在你的仓库里,带着你的 MCP 服务器和你的配置启动 `claude`。
你已经在终端里启动的会话也能连上。直连会话让你不必先导入,就能浏览并跟进那台电脑上已经存在的 Claude Code、Codex 和 OpenCode 会话,想引导时也可以从手机接管其中一个。
可以。Happier 的会话并不属于最先打开它的那个客户端 —— 它存在于运行智能体的那台电脑上,而会话记录会同步到登录了同一账号的每一台设备。笔记本、手机和一个浏览器标签页可以同时停在同一个会话上,从其中一处发出的消息会出现在其他几处。
反过来也行:`happier attach <session-id>` 会把你放回你从应用里启动的那个会话,就在拥有它的那台电脑上。对 Claude Code、Codex 和 OpenCode 来说,这次交接会把你带进智能体自己的 TUI;对其余的,终端显示的是 Happier 对会话的视图,而不是厂商的。
可以,而且这就是它的正常用法。你的电脑和配额能撑住多少会话,就跑多少,同时横跨不同的智能体。等待决定的会话会升到列表顶部的“需要关注”分组,仍在运行的都聚在“工作中”下面,这就是十几个同时开着还读得下去、而不是一团乱的原因。
在一个会话内部,你还可以启动子智能体,并为每一个选择后端 —— 内置智能体或者 Custom ACP 后端。选中多个不同的后端会为每个后端各启动一次运行,所以评审可以交给 Codex,而计划运行交给 Claude。
通常可以。运行中的会话在它的输入设置里有一个模型选择器,列出智能体自己的模型,加上来自你已启用的每一个服务方连接、并且该智能体确实用得上的模型。还有一个“使用 CLI 设置”选项,它告诉 Happier 完全不做覆盖,让 CLI 按自己的配置决定。
这个改动能否在会话进行途中生效,取决于智能体的运行时:有的会应用到下一次提示,有的需要重启或分叉。Happier 会告诉你是哪一种,并让你留在你选定的连接上。
你想批多少就批多少。有四种权限模式:默认,保持服务方按需询问的正常行为不变;只读,智能体可以查看,但写入类操作会被拒绝;Safe YOLO,自动允许读取,写入前仍然询问;以及 YOLO,在服务方允许的范围内跳过批准。可以按会话设置,可以在会话运行中更改,也可以在 设置 → 服务方 里为每个智能体设一个默认值,让新的 Claude 会话以只读开始,而新的 Codex 会话不这样。
有两点值得知道。不是每个服务方都支持每种模式 —— 遇到不支持的,Happier 会退回到最接近的受支持行为,并把它最终落到的生效策略显示给你。另外,Plan 是一种会话模式,不是权限模式:处于 Plan 并不意味着自动批准,你仍然可能收到提示。
当一个会话确实需要你时,它会移入“需要关注”分组,并推送一条你可以直接在通知上回应的提醒,所以批准是一次点击,而不是跑回笔记本前一趟。
能,对于公布这项数据的服务方而言 —— 目前是通过“已连接服务”连接的 Codex、Claude 订阅和 Gemini 账号。每个配置档会显示一个配额计量条和重置时间,这些计量条在新建会话的认证选择器里会再次出现,输入框在你工作时也带着一个用量标记,这样你能看到限额正在逼近,而不是在一轮进行到一半时才发现。
每一个公布配额的服务方都有这个计量条,也只有这些服务方有。
诚实的答案是会话不再往前推进,因为智能体是你电脑上的一个进程,Happier 不会假装不是。当运行某个会话的电脑离线时,应用会把那台机器 —— 机器是 Happier 对你已连接的电脑的称呼 —— 标记为不可达,并在它回来之前禁用它那些会话上的输入。
Happier 做的,是让恢复变得廉价。会话闲置期间,会话记录保持完好;电脑回来之后,你可以用手边任意一台设备从原来的位置接着往下走。
如果你想让工作在合上盖子之后继续,就把它放在一直醒着的地方运行 —— 一台台式机、一台 VPS、一台一直插着电的机器 —— 并安装后台服务,这样那台电脑不用开着终端也能随时启动会话。
什么都不会停。智能体在后台服务下运行在你的电脑上,而不是在手机应用里,所以退出应用是关上一扇看向会话的窗,而不是结束它。之后再打开 —— 或者在别处打开 —— 你会拿到同一份会话记录,从它进行到的地方继续。
你也不必一直去看。一轮结束时、需要权限时、以及某个操作需要人来回答时,Happier 都会推送通知,而通知会直接把你带回发出它的那个会话。
如果 tmux 对你好用,就继续用 —— Happier 不会把它拿走。从应用里启动一个会话,`happier attach` 会在你自己的终端里把你重新接回那个活动的 tmux 会话,用的是服务方原生的 TUI,之后你还可以回到应用里继续同一个会话。
区别在于你不在键盘前的时候会发生什么。SSH 给你的是手机屏幕上的一个终端;Happier 给你的是权限在等待时的一条推送通知、一次点击就批准、智能体改了什么的可读 diff、文件和 Git 界面,以及一个覆盖你连接过的每台电脑上每个会话的列表。在笔记本上,两者相差不大。在公交站台用手机时,就不是了。
能。CLI 可以装在 macOS、Linux 和 Windows 上 —— `curl -fsSL https://happier.dev/install | bash`,Windows 上则是 `iwr https://happier.dev/install.ps1 -useb | iex`。还有原生的 iOS 和 Android 应用、一个桌面应用,以及 app.happier.dev 上的网页应用。
Windows 有自己的一套会话托管方式:从应用启动的会话可以隐藏运行、在 Windows Terminal 里运行,或者在控制台宿主里运行,而 `happier attach` 会把那个宿主带回前台。有些智能体 CLI 在 Unix 上的支持好于 Windows —— 那是 CLI 厂商的覆盖范围,不是 Happier 的,应用会告诉你在你选定的电脑上哪些可用。
不需要。app.happier.dev 就是浏览器标签页里的完整应用,如果你更想要一个窗口而不是一个标签页,macOS、Windows 和 Linux 上还有桌面版。有不少人完全在会话运行的那同一台电脑上使用 Happier,图的是 diff 评审和会话列表,而不是移动性。
如果你确实想在手机上用:iOS 在 App Store 上。Android 是从 GitHub releases 直接下载 APK —— 目前还没有公开的 Play 商店条目,只有一个需要被加入才能进的封闭测试轨道。
能。iOS 应用是带平板支持构建的,所以它从同一个 App Store 条目安装,并作为原生 iPad 应用运行,而不是被拉伸的手机应用。如果你不想安装任何东西,Safari 里的网页应用也能用。
平板布局是其中有用的部分:在平板尺寸的屏幕上,内嵌终端默认是停靠在底部的面板,和网页端一样,而不是手机上那种单一焦点的呈现。一台 iPad 加一个键盘,确实是个评审 diff 和引导会话的合理位置。
技术上很容易:它是 MIT 许可的源码,你可以在运行之前先读;会话内容默认端到端加密;`happier relay host install` 会把 relay 放进你自己的网络,所以不会有会话内容经过你无法控制的基础设施。这覆盖了安全评审所问问题的大部分。
在组织层面上,先问一声。你的雇主可能对终端设备上能运行什么有规定,你的服务方协议可能对把工作账号连接到第三方工具有规定。这两件事都不是一个营销页面能替你回答的 —— 在连接工作账号之前核对它们,而不是之后。
把它跑在运行你代码的那台电脑上。保留你自己的订阅和密钥。自托管 relay,或者用我们的。MIT 许可,端到端加密。
curl -fsSL https://happier.dev/install | bash