GitHub Copilot CLI,从你的手机驱动
Copilot 命令行智能体,运行在你自己的电脑或你自己的构建机上,会话装在你的口袋里。
How Happier runs GitHub Copilot CLI
Copilot 是那个值得在开始之前先问问身份的智能体,而这是关于那台电脑的问题,不是关于 Happier 的问题。这个 CLI 会解析出那台机器已有的 GitHub 身份——几个月前某人做过的 gh auth login,或者为 CI 导出的 token——而智能体触碰仓库时用的就是那个身份。Happier 不为它保存自家的 GitHub 身份,也不替换一个进去。
这不是猜测,而是这项检查的实现方式。Happier 先读 COPILOT_GITHUB_TOKEN,再读 GH_TOKEN,再读 GITHUB_TOKEN,如果都没有设置,就向 GitHub CLI 要 token——所以供应商页面上的答案,就是 Copilot 将拿到的答案。它刻意按电脑区分,原因来自 GitHub 自家的文档:在你的笔记本上登录并不会让你在构建机上也登录,而页面会说明它讲的是其中哪一台。GitHub 还把有效的 Copilot 订阅列入这个 CLI 的前置条件,所以如果智能体因为订阅错误停下来,那是供应商的门槛,不是我们的。
容易被忽略、又值得放在手机上的,是你的技能会跟着走。仓库里 .github/skills 下和那台电脑上 ~/.copilot/skills 下的 SKILL.md 包会作为提示词资源被发现,所以你在工位上为 Copilot 写下的指令,在你从火车上开始的会话里同样生效。工具的方向则相反——Copilot 不直接接受 MCP 服务器,所以你在 Happier 里定义的那些会通过 happier tools shell 桥到达它,形式是命令而不是工具清单,而应用会在会话开始前告诉你它拿到的是哪种界面。
What GitHub Copilot CLI does, and what Happier adds
GitHub 提供了命令行的 Copilot 智能体,它处理仓库的方式和这里其他 CLI 相同,用的是你已有的 Copilot 权益。happier copilot 会以你的 GitHub 身份运行那个可执行文件。
因为它是终端程序,运行它的电脑不必是你正看着的那一台。Happier 让这个会话在手机、浏览器标签页或桌面应用上都可以读取和回复,同时仓库原地不动。
happier copilotRead, approve and answer GitHub Copilot CLI from any device
iOS 和 Android 应用、面向 macOS、Windows 和 Linux 的桌面应用,以及 app.happier.dev,都是通向运行在你电脑上的 GitHub Copilot CLI 进程的客户端 —— 而不是只读的镜像。回应一个权限请求、发送下一条指令、浏览仓库、阅读 diff。会话记录在离开你的电脑之前就已端到端加密,所以承载它的服务器持有的是密文。
Happier can install GitHub Copilot CLI for you
Happier 安装在已经存放着你仓库的那台电脑上,而 happier copilot 会在那里把 GitHub Copilot CLI 作为一个普通子进程启动,在你指定的目录里,用你自己登录好的身份。智能体和 GitHub 之间没有网关,你的源码在别处也没有任何副本。
Happier 会先在你的 PATH 上找 copilot,运行你装的那份。如果没有,它可以把 @github/copilot 安装到 ~/.happier/tools/providers/copilot/ — 那是它自己的目录,不是你全局的 npm prefix。你自己管理的那份,永远不会在你不知情的情况下被替换或升级。
GitHub 自己介绍 GitHub Copilot CLI 的页面在 docs.github.com/en/copilot/how-tos/set-up/install-copilot-cli。Happier 不会镜像一份,因为把别人的安装说明抄一份过来,抄的就是一份会过期的东西。
Happier 这一侧的配置参考 —— Happier 文档中的 GitHub Copilot CLI。
One app for GitHub Copilot CLI and 12 other agents
GitHub Copilot CLI 是 Happier 运行的 13 个命令行编码智能体之一,它们共用一份会话列表、一个权限收件箱、一套键盘快捷键和一份 MCP 配置。
You define an MCP server once, and because GitHub Copilot CLI does not consume MCP directly, Happier hands the same tool surface to it through the happier tools shell bridge instead — the same tools, delivered as commands it can run. The app previews the effective tool surface before a session starts, so which one you got is visible rather than inferred.
这在你同时跑不止一个的日子里最要紧:不同厂商的会话并排摆着,点一下通知打开的是发出该请求的那个会话,而不是应用的首页。完整名单在这里。
The same GitHub Copilot CLI session in your terminal and in the app
在终端里输入 happier copilot,会话就在你站着的地方启动,而同一个会话同时也在应用里。你在那个 shell 里读到的是 Happier 自己对会话的呈现 —— 会话记录、权限提示、工具输出 —— 而不是 GitHub Copilot CLI 的界面。没有人需要为了拿到一个手机客户端而放弃终端。
没有交接到 GitHub Copilot CLI 自己 TUI 这回事。那是 Claude Code、Codex 和 OpenCode 才有的;用 GitHub Copilot CLI 时,会话两端都还是 Happier 的。happier attach <session-id> 会列出那台电脑上的会话,并标记它无法重新接上的那些,而不是等你选了之后才失败。
attach 指南列出了具体适用的情形,而不是把所有情形都许诺下来。
关于通过 Happier 运行 GitHub Copilot CLI 的问题
- Happier 会替我安装 Copilot CLI 吗?
- 可以。如果
copilot不在你的 PATH 上,Happier 会把@github/copilot包安装到~/.happier/下自己的目录里。如果在 PATH 上,那份优先,Happier 不去动它。 - 它以哪个 GitHub 身份行动?
- 以这个 CLI 在那台电脑上解析出的那一个。在已经运行过
gh auth login、或者为 CI 导出了 GitHub token 的服务器上,那就是智能体所使用的身份——在把它指向生产仓库之前值得先确认。 - 我可以在服务器上运行它,然后从笔记本上使用吗?
- 可以。在存放仓库的那台电脑上安装 Happier CLI,在那里开始会话,然后从任何已登录的设备打开它。远端不需要图形界面。
- 我需要移动应用吗?
- 不需要。app.happier.dev 是浏览器里的完整客户端,桌面应用覆盖 macOS、Windows 和 Linux。移动应用是给你手里拿的不是浏览器的时候用的。
- Happier 是 GitHub 的产品吗?
- 不是。Happier 是独立的、采用 MIT 许可的开源项目,它在你的电脑上把 GitHub 的 CLI 作为子进程运行。它与 GitHub 没有隶属关系,也不转售 Copilot。
Get GitHub Copilot CLI onto your phone in two commands
在存放你代码的那台电脑上执行一条命令,然后在你想工作的仓库里执行 happier copilot。
curl -fsSL https://happier.dev/install | bash分步说明在指南里。这一切都是 MIT 许可的,而 relay 是你可以自己运行的。

