很多人以为上云是个开关:要么全在本地,要么整套搬走。 其实中间有一档:agent 还在你的笔记本上,但它跑的命令在远端执行。 这一档往往正是大多数人真正需要的那一档。
本文写什么这一档解决什么问题、七种沙箱后端的取舍、适合谁。 本文不写我们自己的远端机器、地址与配置。
一个常驻 agent 其实有两个部分,它们可以分开放:
| 部分 | 做什么 | 放在哪的考虑 |
|---|---|---|
| 大脑 | 和模型对话、决定下一步 | 放本地最方便:你的配置、你的记忆、你随手就能看 |
| 手 | 真正执行命令的那个环境 | 放哪儿都行,而且放远端有额外好处 |
把手挪到远端,你同时拿到三件事:
| 好处 | 说明 |
|---|---|
| 隔离 | 它把环境搞坏了,坏的是那台远端机器,不是你的笔记本 |
| 环境干净 | 远端是一台专门的机器,不受你本地那堆版本冲突影响 |
| 不改工作流 | 你还是在自己电脑上敲,什么都没变 |
以 Hermes 为例,执行后端有七种。按「隔离程度」和「成本」两个维度看:
| 后端 | 隔离 | 成本 | 适合 |
|---|---|---|---|
local | 无 | 零 | 只跑你完全信任的活 |
Docker | 进程/文件系统级 | 零(本机资源) | 本地隔离的首选,不用额外机器 |
SSH | 整机级 | 一台机器的钱 | 本文这一档——已有远端机器时最自然 |
Modal / Daytona | 整机级 | 闲置休眠,几乎不花钱 | 用得不频繁、又想要隔离 |
Singularity | 容器级 | 视环境 | 科研/HPC 环境常见 |
Vercel Sandbox | 托管沙箱 | 按用量 | 已在那个生态里的人 |
Modal 和 Daytona 这类的特点是:环境在你不用的时候休眠,几乎不产生费用, 要用的时候再唤醒,而且状态还在。
这解决了常驻 agent 的一个典型尴尬: 你需要「随时可用」,但并不需要「一直在跑」。 按传统方式这两件事只能二选一——要么开一台一直烧钱的机器,要么每次重新搭环境。
如果你的诉求只是「别让它搞坏我的电脑」, Docker 后端就够了,不用花钱开机器。
只有当你还需要「固定的出口 IP」「7×24 在线」「独立的网络位置」时, 才真的需要一台远端机器——那三条判据是下一篇的内容。
SSH 后端的一个实际便利是:它只需要一个能 SSH 进去的目标。 公司给的开发机、团队共享的构建机、云上的临时实例,都可以。
换句话说,你不一定要为这件事专门买一台机器。 先用手上已经有的,确认这个模式适合你,再考虑要不要买。
| 它不解决 | 为什么 |
|---|---|
| 你合上笔记本它就停 | 大脑还在本地。要 7×24,得整个搬走 |
| 定时任务 | 同上:你的机器睡了,定时器也就不响了 |
| 密钥暴露 | 远端机器上一样要放密钥。隔离的是环境,不是秘密——见第 22 篇 |
| 远端被搞坏 | 隔离让你的本机安全了,但那台远端机还是会被搞坏。所以它上面别放不可替代的东西 |
既然它的作用是「让 agent 随便折腾」,那它就必须是能随时重建的。 凡是「重建一次要花半天」的东西,都不该只存在于那台机器上。
怎么做到「一条命令重建」,见第 22 篇。