# 在手机上用 Pi coding agent：SSH、社区客户端和 BotBus 怎么选

> Pi coding agent 官方没有手机 app。这篇讲清 SSH、社区客户端和 BotBus 三种在手机上看 Pi 会话、续聊、新建和中断的办法，各自适合谁、卡在哪。

Canonical: https://botbus.io/blog/pi-coding-agent-on-your-phone  
Published: 2026-11-03

## 先说结论

截至 2026-11-03 核对，[Pi](https://pi.dev/)（Earendil 维护的开源 coding agent，npm 包 `@earendil-works/pi-coding-agent`）官方只提供终端里的交互界面，以及给脚本和程序用的 print / JSON、RPC 和 SDK 四种用法，没有官方的 iOS 或 Android app，也没有官方的网页端。所以在手机上用 Pi，常见的办法是 SSH 回电脑、装一款社区做的客户端，或者用 [BotBus](https://botbus.io/) 这类通用工具：它在电脑上只读 Pi 的会话文件，经端到端加密的中转同步到手机和 Apple Watch，在手机上看对话、续聊、新建任务和停掉手机发起的那一轮。

下面先把 Pi 自己的情况和几条现成的路说清楚，再讲 BotBus 具体能做什么、做不到什么。

## Pi 官方现在有哪些端

以下是 2026-11-03 在 pi.dev 和官方 GitHub 仓库里核对到的情况：

- **交互界面（TUI）**：在终端里运行 `pi`，这是最主要的用法。安装可以用官网的一行脚本，也可以 `npm install -g @earendil-works/pi-coding-agent`，Windows 有 PowerShell 安装脚本。
- **print / JSON**：`pi -p "…"` 跑一次就退出，适合脚本；`--mode json` 把整轮输出成事件流。
- **RPC**：经 stdin / stdout 走 JSON 协议，给不用 Node 的程序集成。
- **SDK**：把 Pi 嵌进自己的应用。
- **手机和网页**：官方没有。仓库里的包是 LLM 接口、agent 运行时、终端 UI 库和 coding agent 命令行本身，没有手机客户端。

Pi 还有两个特点会直接影响“在手机上用”这件事。一是**没有内置的权限确认**：官网明说没有权限弹窗，想要确认流程得自己用扩展写，所以 Pi 的会话不会停下来等你批准。二是**会话是一棵树**：`/tree` 可以回到前面任何一步换个方向接着聊，所有分支都存在同一个文件里。

## 几条现成的路，各适合谁

**SSH + tmux。** 在电脑上用 tmux 开着 Pi，手机用 SSH 客户端经 Tailscale 之类连回去，`tmux attach` 就能看到原来那个界面。好处是完全免费、看到的就是电脑上的 Pi，扩展、`/tree`、切模型都在。它卡在手机屏幕上：TUI 在小屏上读长输出、选文字、打长句子都不顺手；手机切到后台连接常会断；Pi 跑完了也不会通知你，得自己隔一阵连上去看一眼。适合偶尔需要、本来就习惯终端的人。

**社区客户端。** 因为 Pi 有 RPC 和 SDK，社区做了不少手机端。比如 App Store 上的 Pi in Pocket（独立开发者发布，商店页没有说明与 Pi 官方的关系），需要在 Mac 上跑配套的 pi-bridge，经局域网或 Tailscale 连接；商店页列出的功能有实时看 agent 输出、一轮跑到一半插话调整方向、切换模型和思考强度、压缩上下文、任务结束推送等。GitHub 上也有经 Tailscale 连 pi-rpc 的 Android 客户端和适配手机屏幕的网页端。这类客户端专做 Pi，对 Pi 的功能覆盖往往比通用工具深，**如果你只用 Pi、电脑是 Mac、愿意自己维护 Tailscale，它们值得先试**。要留意的是它们大多要另跑一个桥接服务，入口的安全由你自己负责，换电脑或换 agent 时也要另找工具。

**BotBus。** 适合的情况是：除了 Pi 你还在用 Codex、Claude Code 之类，想在一个列表里管；有不止一台电脑；想用 Apple Watch；或者不想自己开 Tailscale 或隧道。代价是它对 Pi 只做通用的那几件事，Pi 特有的功能（中途插话、切模型、`/tree` 换分支）在手机上没有。

## BotBus 怎么接 Pi

前提先说清楚：Pi 装在跑 BotBus 的那台电脑上，并已经在 Pi 里配好了模型的 API key 或登录；电脑要开着、联网。BotBus 电脑端有 Mac 版（菜单栏应用，需要 macOS 26 或更新）、Linux 版（见[安装说明](https://botbus.io/docs/install-linux)）和 Windows 版，装最新版即可。

Pi 是 BotBus 内置支持的 agent，不用写配置。它分两部分工作：

- **看见**：BotBus 只读地扫 Pi 的会话目录 `~/.pi/agent/sessions`，列出最近 7 天写过的会话（最多 200 条），按会话记录里的工作目录归到项目下。会话是树的时候，BotBus 只取当前分支，也就是从最后一条沿着上一条往回走的那条路，被你 `/tree` 丢下的分支不算这个会话的现状。电脑上终端里开的 Pi 会话也会出现，不需要换一个命令启动。
- **动手**：手机上新建或续聊时，BotBus 在电脑上起一个 `pi --mode json` 子进程跑这一轮，续聊用 `--session` 指向原来的会话文件，跑完进程就退出，结果写回同一个文件。电脑上找不到 `pi` 命令时只能只读展示。

![BotBus 手机上的电脑任务列表](https://botbus.io/shots/zh/phone-machine.webp)

## 在手机上能做什么

**看会话和对话记录。** Pi 的会话和别的 agent 的任务一起按电脑、项目排好，点进去读完整对话。电脑上那些会话没有“正在跑”的标记，状态是推断出来的：最后一条还在等模型回应、而且文件两分钟内被写过，才算“运行中”；停在那里超过两分钟没动静，多半是进程没了，记成“已中断”。所以状态会有几秒到两分钟的滞后。

**收推送。** 任务跑完或者失败时手机会收到通知（前提是手机开了通知权限）。Pi 没有审批，所以不会有“等你批准”这一类推送。推送的整体机制见[agent 推送通知](https://botbus.io/blog/coding-agent-push-notifications)。

**续聊。** 一轮结束后想补一句，在手机上打开会话直接发，BotBus 在会话原来的工作目录里接着跑。续聊的通用做法见[手机续聊 agent 会话](https://botbus.io/blog/continue-agent-session-on-phone)。

**新建任务。** 在手机上选电脑、项目和 Pi，写一句需求就开工。BotBus 会经 `--append-system-prompt` 把 `botbus` 命令行工具的用法交给这一轮的 Pi，方便它把截图、文件和链接发回手机；它会不会用，取决于 Pi 和你选的模型。

![BotBus 手机上新建任务](https://botbus.io/shots/zh/phone-newtask.webp)

**中断。** 手机发起的那一轮跑偏了，在手机上点停止，BotBus 给子进程发中断信号，这一轮记成“已中断”。各 agent 中断的差异见[远程停止 AI agent](https://botbus.io/blog/stop-ai-agent-remotely)。

**回到电脑接着做（Mac 版）。** 菜单栏里 Pi 那一行会列出从手机发起的会话，点“继续聊”会打开“终端”，先进入会话的工作目录，再用 `pi --session <记录文件>` 接上，你就回到了熟悉的 TUI。这一轮还在跑时按钮不可用，免得两个进程同时写一个文件。详见[手机上开的会话回到电脑接着做](https://botbus.io/blog/resume-phone-session-on-desktop)。

## 限制与边界

- **没有审批。** Pi 本身没有权限确认，手机上不会出现 Pi 的审批卡片，工具调用会直接执行。你在 Pi 里用扩展做的确认流程，BotBus 也接不到。手机发起的任务一样不经确认就跑，所以写需求时把范围说清楚，别在重要目录里让它随便动手。
- **电脑上正在跑的会话管不了。** 你在终端里开着、正在跑的 Pi 会话，手机上不能续聊，因为再起一个进程会和它抢着写同一个文件；也不能中断，因为那不是 BotBus 起的进程，只能在电脑上停。等它停下再续聊。
- **同一个会话不能并行。** 手机发起的那一轮还在跑时，再发续聊会被拒绝，等这一轮结束再发。
- **Pi 特有的功能手机上没有。** 不能一轮跑到一半插话，不能在手机上换模型或思考强度，不能开自动批准，不能删会话，也不能在树上切分支；这些在电脑的 TUI 里做。
- **手机发图不支持。** 带图的消息会直接报“这个 Agent 暂不支持发图”，不会只把文字发过去。
- **只列最近 7 天。** 更早的会话不在手机上出现。
- **电脑睡了就停。** 电脑睡着或断网时，手机上能看已经同步过的会话，但续聊、新建和中断都要等电脑回来。
- **内容加密，元数据不加密。** 对话、命令和结果在设备上加密后才经过中转服务器，服务器看不到内容，但看得到设备编号、在线状态、更新时间和数据大小；开发预览不在端到端加密范围内。详见[端到端加密说明](https://botbus.io/docs/security)。
- **手机端。** iPhone 和 Apple Watch 版已在 [App Store](https://apps.apple.com/app/id6815751066) 上架，需要 iOS 26 / watchOS 26 或更新；Android 版需要 Android 8.0 或更新，在官网下载区下载安装包。

## 常见问题

### Pi coding agent 有官方手机 app 吗？

截至 2026-11-03 核对没有。官方提供终端里的交互界面和 print / JSON、RPC、SDK 几种集成方式；能找到的手机客户端都是社区项目，要连你自己电脑上跑的 Pi。

### 已经在用 Pi in Pocket 之类的社区客户端，还需要 BotBus 吗？

不一定。只用 Pi、需要中途插话或在手机上切模型的，专做 Pi 的客户端更合适。BotBus 适合你同时还在用别的 agent、有多台电脑、想用手表，或者不想自己维护 Tailscale。两者可以一起装，BotBus 只读会话文件，不影响别的客户端。

### Pi 没有审批，手机上发任务安全吗？

Pi 在手机发起的任务里和在电脑上一样，工具调用不会停下来等确认，这是 Pi 自己的设计。BotBus 不会替它加一道审批。需要确认流程的话，按 Pi 官方的扩展示例在 Pi 里做，或者把需要审批的活交给支持审批的 agent。

### 手机上开的 Pi 会话，回到电脑能接着用 TUI 吗？

能。会话就写在 Pi 自己的会话目录里，Mac 版菜单栏的“继续聊”会用 `pi --session` 在终端里打开它；Linux 和 Windows 上也可以自己在会话的工作目录里用同样的参数接上。

### 怎么开始？

在电脑上装好并配好 Pi，再到[下载区](https://botbus.io/#download)装 BotBus 电脑端，用手机扫配对二维码即可。Pi 会自动出现在 agent 列表里。
