人在外面,怎么继续家里电脑上的 Cursor / Codex?我做了一个本地 AI Agent Gateway

发布于

最近做了一个开源项目,叫 **PocketPilot**。
- GitHub:[https://github.com/gong0019/pocket-pilot](https://github.com/gong0019/pocket-pilot)
- 在线体验:[https://pp.95ym.cn/](https://pp.95ym.cn/)

它的定位是一个 **本地 AI Agent Gateway**:让运行在自己电脑上的 Cursor Agent CLI 、Codex CLI 、Claude CLI 等工具,可以通过手机或浏览器访问。

先说明一下:它不是远程桌面,也不是把开发环境搬到云端。

PocketPilot 主要做的是,在本地 AI Agent 和 Web 之间增加一层连接、会话恢复与多 Agent 管理能力。

---

## 为什么会做这个项目
最近使用 AI Coding Agent 的频率越来越高。
Cursor 、Codex 、Claude Code 这类工具已经不只是补全几行代码了。很多时候,我会让 Agent 在本地项目里持续执行任务,例如:
- 阅读项目代码;
- 修改多个文件;
- 运行测试;
- 排查报错;
- 继续之前没有完成的任务。
但是这些 Agent 通常依赖本地电脑上的代码、终端、依赖环境和登录状态。
于是就有了一个很具体的问题:
**Agent 在家里或办公室的电脑上运行,但人一离开电脑,就很难查看进度、回复问题,或者继续之前的 Session 。**
我遇到过几种情况:
- 出门之后,想看 Agent 是否已经执行完成;
- Agent 中途提出问题,但没法及时回复;
- 想在手机上恢复之前的 Session ;
- 想让 Agent 接着处理一个任务;
- 只想操作 Agent ,并不想远程控制整台电脑。
远程桌面当然可以解决一部分问题,但对这个场景来说有些重。
手机上操作完整桌面并不方便,而且为了查看一个 Agent 会话而开放整台电脑的桌面,也不是我想要的使用方式。
所以开始做 PocketPilot 。
![浏览器中继续本地 Cursor Agent 会话]
> 浏览器中继续一个运行在本地电脑上的 Cursor Agent Session 。Web 端负责交互,实际 Agent 和项目环境仍然在本机。

---

## 它不是远程桌面
PocketPilot 不传输整个桌面,也不尝试在浏览器里复刻完整 IDE 。
它只关注 AI Agent 这一层:
- 哪些电脑节点在线;
- 本机有哪些可用 Agent ;
- 当前有哪些历史 Session ;
- 能否恢复某个 Session ;
- 能否继续与本地 Agent 交互。
AI Agent 本身仍然运行在用户自己的电脑上。
代码、项目文件、依赖环境和命令行工具也仍然保留在本地,不需要为了远程访问而把整个开发环境上传到第三方在线 IDE 。
我希望它最终更像一层面向本地 AI Agent 的基础设施,而不是另一个远程控制工具。

---

## 整体架构
目前的结构可以简化为:
```
手机 / 浏览器

PocketPilot Web

云端 Gateway

本地 Gateway

本地 AI Agent CLI
```
本地 Gateway 运行在用户自己的电脑上,并主动连接 Gateway 服务。
这样设计主要有几个考虑。

### 1. 不需要开放本地端口
用户不需要给家里的电脑配置公网 IP ,也不需要把某个本地服务端口直接暴露到互联网。
连接由本地 Gateway 主动发起。

### 2. Agent 和开发环境仍在本地
PocketPilot 不负责托管代码环境。
Cursor 、Codex 或 Claude CLI 仍然使用本机的代码、Git 配置、依赖、终端环境和工具链。

### 3. Web 侧只处理 Agent 相关操作
浏览器中主要呈现节点、Agent 、Session 和对话交互,而不是整台电脑的桌面。
这样在手机上使用时会比远程桌面更直接。

### 4. 为不同 Agent 提供统一入口
不同 AI Coding Agent 的命令行行为、会话管理方式并不完全相同。
PocketPilot 会在本地 Gateway 这一层做适配,对 Web 提供相对统一的节点和 Session 操作方式。
![Node Control Center]
> Node Control Center:查看本地 Gateway 是否在线,以及该节点上可以使用的 Agent 。目前同一节点可以发现和管理多个 Agent CLI 。

---

## 目前支持的 Agent
当前版本支持:
- Cursor Agent CLI
- Codex CLI
- Claude CLI
- Antigravity CLI
后续希望继续适配更多本地 Agent ,例如 Gemini CLI ,以及其他能够在终端中持续运行的 Coding Agent 。
这里的目标不是替代这些工具,而是给它们增加统一的远程访问和 Session 管理入口。

---

## 目前 Web 端可以做什么
现在已经实现的功能主要包括:
- 查看本地节点是否在线;
- 查看节点操作系统和 Gateway 状态;
- 查看节点上可用的 AI Agent ;
- 查看历史 Session ;
- 选择并恢复之前的 Session ;
- 在浏览器中继续与本地 AI Agent 交互;
- 管理多个本地节点和多个 Agent 。
例如,我可以让家里的电脑运行 Cursor Agent ,离开电脑后再通过手机浏览器打开 PocketPilot ,查看之前的 Session ,并继续回复 Agent 。
整个过程中,实际执行代码和命令的仍然是家里的电脑。
![历史 Session 与恢复入口]
> 历史 Session 列表:可以查看之前的 Agent 会话,并选择某个 Session 继续交互。

---

## 为什么做成 Gateway ,而不是 Web Terminal
单纯做一个 Web Terminal 会更直接,但它也会把更底层、更通用的终端能力暴露给远端。
PocketPilot 更希望围绕 Agent 建立一层边界:
- Web 端看到的是 Agent 和 Session ;
- 本地端负责与具体 CLI 交互;
- Gateway 负责节点连接和消息转发;
- 不把完整桌面或通用 Shell 作为主要操作入口。
这种抽象目前还比较早期。不同 Agent 对 Session 恢复、上下文延续和进程状态的处理方式也有差异,这部分是接下来准备继续完善的重点。

---

## 自行部署和在线体验
项目已经开源:
[https://github.com/gong0019/pocket-pilot](https://github.com/gong0019/pocket-pilot)
同时放了一个在线入口,方便先看 Web 端的整体交互:
[https://pp.95ym.cn/](https://pp.95ym.cn/)
也支持自行部署 Gateway 和 Web 服务。
项目目前还在持续迭代,Agent 适配、认证方式、权限边界和移动端交互都还有继续完善的空间。

---

## 想听听大家的意见
这个项目最初来自我自己的使用需求,但不确定大家是否也遇到过类似问题。
比较想听听大家对这些方向的看法:
1. 使用 AI Coding Agent 时,是否有远程查看或继续 Session 的需求?
2. 除了 Cursor 、Codex 和 Claude Code ,最希望优先支持哪个本地 Agent ?
3. 对这种 Gateway 架构,最关心的是认证、数据边界,还是自行部署体验?
4. 多台开发机同时在线时,怎样的节点和 Session 管理方式更合理?
5. 更倾向于纯自托管,还是托管 Gateway 、本地 Agent 运行的混合方式?
欢迎体验、提 Issue ,或者直接指出设计里不合理的地方。
GitHub:[https://github.com/gong0019/pocket-pilot](https://github.com/gong0019/pocket-pilot)
在线体验:[https://pp.95ym.cn/](https://pp.95ym.cn/)

---

原文链接:[点击查看](https://www.v2ex.com/t/1226717)

评论(7)

Codex 和 Claude CLI 现在不是已经能直接用手机远程操控了吗?

· 0 个赞

回复

目前 Cursor 和 Antigravity 应该还不行吧?

· 0 个赞

说句实在的,多平台支持其实不算啥核心卖点,毕竟大家平时主要也就主用一两个 AI 工具。另外 AI 时代造轮子太容易了,万一哪天官方自己把这个功能做了,个人项目估计直接就被降维打击了。

· 0 个赞

巧了,我也做了一个类似的项目,目前打磨度大概到 90% 了,有兴趣可以看下截图。

· 0 个赞

回复

看楼上的截图真不错啊,有点好奇,不同的 Agent 会话竟然还能互相通信?这是怎么实现的?

· 0 个赞

回复

楼上老哥做得真不错啊,完成度很高!

· 0 个赞

蹲一下,想了解下楼主这个和现有的 Paseo 相比有什么区别?感觉目前 Paseo 已经挺完善了,不知道这个优势在哪。

· 0 个赞