首页 时政热点 科技头条 智能AI 安全攻防 数码硬件 开发者生态 汽车 游戏 社会热点 开源推荐 医疗健康 归档 标签 关于

为移动代理提供支持的虚拟机(Instinct、Claude Code)

2026-09-08 1 阅读 约10分钟阅读 RohanAdwankar
分享:
字号:
一项令人惊叹的产品演变是代理(Claude Code、Instinct、Poke 等)正在从我们的本地计算机上移走,以便我们可以在手机上使用它们。最终这对客户来说是件好事,因为这意味着代理公司为我们提供了虚拟机供他们运行!以下是基于 ws-term 的一些关于主要平台如何工作的注释。手机上的 Claude Code Claude Code 的盒子是它自己的 Firecracker microVM ,一个具有自己内核的 KVM 来宾,直接启动到用 Rust 编写的 init: $ cat /proc/cmdline ... rdinit=/process_api ... --listen-vsock-port 2024 $ uname -r 6.18.5-fc-v20 # -fc- = Firecracker;定制的客户内核 $ ps -o comm -p 1 process_api # PID 1 不是 systemd;它是一个 Rust/Tokio 二进制 process_api ,PID 为 1,主机的控制代理位于虚拟机内部:它安装磁盘,然后侦听 vsock 端口 2024,以便主机可以从外部驱动会话。这是平台的定义特征:操作员位于您的租户空间内,并且需要进行大量工程来将其密封(PID 1 是不可转储的,即使使用 CAP_SYS_PTRACE , /proc/1/mem 也会被拒绝,您的 shell 缺少 CAP_SYS_RESOURCE )。磁盘干净地分为您的(可写、持久)和他们的(只读、共享): $ lsblk -o NAME,SIZE,RO,MOUNTPOINT vda 256G 0 / # yours: writable,survivs reclaim vdc 341M 1 /opt/claude-code # 他们的:324 MB `claude`线束 (Bun) vdd 45.6M 1 /opt/env-runner # 他们的:任务启动器 vde/vdf ... 1 /mnt/skills/... # 他们的:技能 该工具是运行您的工具调用的东西,是只读磁盘上的 324 MB 已编译的 Bun 二进制文件。该模型在其他地方运行;推理作为服务器通过 HTTPS/2(不是 WebSocket)发送到 /v1/messages 的事件,通过仅 443 和 MITM 的出口网关( CN = Egress Gateway ...(生产)),并将 api.anthropic.com 固定在 /etc/hosts 中。根本没有入站( 192.0.2.2 ,RFC-5737 测试地址)。 Auth 是主机生成的 OAuth 令牌,仅在磁盘上缓存 root 并在每次启动时轮换。生命周期由主机驱动并从内部测量:初始化约 430 毫秒,利用过程约 6.4 秒。旋转由入站消息触发(主机通过 vsock 唤醒虚拟机并运行 --session-moderesume ); spin-down是由主机决定的空闲回收。当它被回收时,进程会终止,但 vda 会完好无损地分离并在下一次冷启动时重新连接,这就是为什么即使计算被破坏,对话也会感觉连续的。流程图 TB user(["你的击键"]) -->|http post|入口["会话入口"] 入口 --> pa hostctl(["主机控制平面"]) -->|vsock 端口 2024| pa subgraph vm["Firecracker microVM"] pa["process_api, pid 1, Rust"] -->harness["claude, 324 MB Bunharness"] vda[("vda (rw), yours, persists")] ---harness ro[("vdc/vdd/vde/vdf (ro), Theirs")] ---harness 结束harness -->|SSE 上的推理| gw["egress gateway, 443, mitm, api.anthropic.com"] Instinct Instinct 是一家最近推出的新初创公司,它在内存方面做了一些非常好的事情,给人一种真正的助手而不是聊天机器人的感觉。 $ hostname e2b.local $ cat /.e2b n038afjvewg7jnc9pwdz e2b.local 表示 Instinct 不运行自己的 VM 队列;它租用 E2B 沙箱(“沙箱即服务”),这是一个一次性的 Ubuntu 盒子,您交给代理,这样它就有一台计算机:Ubuntu 22.04.5、2 个 vCPU、1.9 GB RAM、29 GB 磁盘,最多约 30 分钟、用户沙箱(uid 1001) 让我们看看引擎盖下的情况... $ systemd-detect-virt → kvm $ cat /proc/cmdline pci=off virtio_mmio.device=4K@... i8042.noaux i8042.nokbd restart=kpanic=1clocksource=kvm-clock root=/dev/vda ip=169.254.0.21::...:eth0:off:tap0 $ cat /sys/class/dmi/id/product_name → (empty) # 根本没有 SMBIOS $ ps -o comm -p 1 → systemd # init=/sbin/init,又不是自定义的 PID 1 Firecracker! pci=off + virtio-over-MMIO + 空 DMI + tap0 网络是 Firecracker 签名:没有 PCI 总线,没有 SMBIOS,最少的设备。所以这两个应用程序都位于同一个 microVM 上;区别在于谁在管理舰队以及舰队内的靴子是什么。 Claude Code 启动一个剥离的自定义 init(process_api 作为 PID 1),E2B 启动一个带有 systemd 的完整 Ubuntu 和整个 XFCE 桌面: $ systemd-analyze Startup finish in 265ms (kernel) + 992ms (userspace) = 1.258s Graphical.target after 977ms ~1.26 s达到冷启动一直到图形桌面。来宾操作员也存在于此,但它只是 E2B 的 envd 作为普通 systemd 服务运行,而不是密封的 PID 1。E2B 沙箱也是可配置的(您可以选择 vCPU、RAM、磁盘和空闲超时,以及该沙箱是否可以从内存快照暂停和恢复,而不是冷启动); Instinct 运行一个适度的 2 vCPU / 1.9 GB 桌面模板。那么,如果盒子是一次性的,特工的记忆在哪里呢?在名为 /memory 的目录中,这是平台的定义思想: $ cat /memory/README.md [[rohan-adwankar]] 的持久内存 $ ls /memoryEntity/comms/timeline/workst
这篇文章对您有帮助吗?

订阅66必读

每日精选科技资讯,直达你的邮箱