forkd 快照 Hub 指南一行 forkd pull 拉取预热 AI 沙箱跳过全部 rootfs 构建【免费下载链接】forkd高性能Agent沙箱预热虚拟机可以在约 100 毫秒内派生出 100 个独立实例运行过程中约 150 毫秒“分叉”出一个新的运行环境。底层使用 KVM 隔离并利用快照写时复制降低资源开销。项目地址: https://gitcode.com/deeplethe/forkdforkd 快照 Hub是 forkd 项目自带的预构建沙箱注册表一条forkd pull命令即可下载别人提前烘焙好的预热虚拟机快照自动完成 sha256 校验与 rootfs 落盘让你完全跳过从 Docker 镜像构建 rootfs、启动、预热、暂停快照这一整套繁琐流程几秒后就能fork出毫秒级响应的 AI Agent 沙箱。什么是 forkd 快照 Hubforkd 的核心玩法是「一个预热父 VM N 个写时复制子 VM」父虚拟机提前把 Python 解释器、依赖库、Jupyter 内核甚至 PostgreSQL 进程全部加载进内存后暂停成快照之后的每个子沙箱都只是mmap一份父内存镜像派生成本接近fork(2)而不是冷启动虚拟机。问题在于——谁来构建这个预热父快照传统做法需要自己拉 Docker 镜像、烤 ext4、启动、预热、暂停动辄 2~3 分钟且对硬件有要求。快照 Hub 把这个 10 步流程压缩成了一行命令。它的架构刻意做到极简没有中心服务、没有账号、没有费用只有三块仓库根目录的 registry.json把owner/name映射到下载 URL sha256 包大小.forkd-snapshot.tar.zst快照包zstd 压缩的 tar 包内含内存镜像、Firecracker vmstate 和 TOML 清单forkd pull命令解析注册表 → 下载 → 校验 → 解压到$XDG_DATA_HOME/forkd/snapshots/tag/还会自动补齐 rootfs 旁路文件sidecar保证快照在任何主机上都能恢复。注册表与包格式的细节可参考官方文档 docs/HUB.md。一行命令拉取预热快照forkd pull 快速上手前提是一台 x86_64 LinuxUbuntu 22.04带 KVM并按官方安装方式装好 forkd 二进制。然后只需两行# 拉取 14.5 MiB 的 LangGraph 预热快照Python 3.12 requests forkd pull deeplethe/langgraph-react # 从中 fork 出 3 个共享父内存的子沙箱每个约 10 ms sudo -E forkd fork --tag langgraph -n 3 --per-child-netnsforkd pull支持三种目标格式写法说明deeplethe/python-numpy短名形式自动解析latest版本deeplethe/python-numpyv1锁定具体版本适合可复现构建https://.../pyagent.forkd-snapshot.tar.zst直接指定任意 HTTPS 包 URL拉取过程中的每一步都有回显下载进度MiB/s、sha256 校验、解压落盘。校验失败会直接中止而不是静默解压——这是 crates/forkd-cli/src/hub.rs 中完整性校验的核心行为。拉取后如何确认快照已就绪forkd images # 列出本地所有快照tag、大小、内存占用、创建时间 forkd where # 打印快照存储根目录免 rootfs 构建拉取即用的关键机制forkd pull之所以能「跳过全部 rootfs 构建」靠的是一个内容寻址的 rootfs 旁路文件issue #242 引入父快照的 vmstate 里固化了 rootfs 的绝对路径恢复时 Firecracker 必须原样重开该路径因此 rootfs 必须随包一起分发pack时 rootfs 被单独压缩成sha256.rootfs.zst旁路文件与快照包放在同一发布目录pull时自动从包 URL 的同级位置拉取它解压回 vmstate 记录的原始路径若本机已有相同 sha 的缓存则直接跳过下载——一串共享同一 base rootfs 的快照包只需下载一次磁盘镜像。落盘位置还经过安全校验只允许写入 forkd 管理的目录树恶意包无法借机把文件写到/etc之类的路径。当前 Hub 上有哪些预热快照目前注册表里发布了 9 个官方包覆盖最常见的 AI Agent 场景数据来自 docs/HUB.md名称内容内存包大小deeplethe/python-numpyPython 3.12 numpyREADME 快速上手默认目标1536 MiB15.8 MiBdeeplethe/playwright-browserNode.js Playwright 已预热 Chromium单例 fork 约 56 ms冷启动容器需 2~3 s2048 MiB105.5 MiBdeeplethe/postgres-fixturePostgreSQL 16 已完成 initdb 且 postmaster 预启动每测试 fork 约 10 ms1024 MiB38.0 MiBdeeplethe/coding-agentPython git gh CLI pytestSWE-bench 式并行评测1024 MiB15.2 MiBdeeplethe/e2b-codeinterpreterE2B 代码解释器镜像Python SDK 可直接替代 E2B2048 MiB21.6 MiBdeeplethe/jupyter-kernelJupyter 科学计算镜像IPython numpy scipy pandas 已预导入2048 MiB15.5 MiBdeeplethe/nodejsNode.js 22 slim 运行时通用 JS 工作负载基座512 MiB10.5 MiBdeeplethe/langgraph-reactLangGraph ReAct Agent 分支扇出演示513 MiB14.5 MiBdeeplethe/coding-agent-fork预置工作区 50 MiB 二进制状态演示 CoW 逐字节分发513 MiB67.6 MiB想深入某个场景仓库里每个包都配有可运行的示例配方比如 recipes/postgres-fixture/每测试一库的隔离模式和 recipes/e2b-codeinterpreter/。如何验证部署环境forkd doctor 一键体检拉取和 fork 之前建议先跑一次forkd doctor——它执行 17 项检查KVM、cgroup v2、tap 设备、netns、Firecracker 版本、快照目录与磁盘空间、uffd_wp 等每一项失败都会给出具体修复提示环境就绪后还可以用forkd bench --tag tag --n 5在你自己的硬件上实测 spawn / exec / branch / fanout 各阶段耗时。官方在标准测试机上测得forkd 派生 100 个「已导入 numpy」的沙箱仅需101 ms而 Docker 需要 335 s、gVisor 需要 288 s差距达三个数量级进阶搭建私有快照 Hub 与版本锁定企业内网或私有分发场景下Hub 客户端不关心数据来自哪里只需一个能返回registry.json的 HTTP 端点# 单次指定 forkd pull yourorg/myagent --hub https://registry.example.com/registry.json # 或全局环境变量 export FORKD_HUB_URLhttps://registry.example.com/registry.json发布自己的包流程也很轻本地sudo forkd snapshot建快照 →sudo forkd pack --tag mything --out /tmp/pk/打包自动附带 rootfs 旁路文件→ 上传发布目录 → 往registry.json加一条记录并提交 PR 审核。合并后你的包就可以被任何同事forkd pull yourorg/mything拉取。完整六步发布清单见 docs/HUB.md 的 Publishing 一节。安全模型速览公开只读注册表里列出的任何包都能 pull无需鉴权推送走 PR 审核维护者人工核对 URL、sha256 与构建配方sha256 是完整性保证而非签名v0.x 阶段信任模型等价于「你运行了这个发布者的容器镜像」v1.0 计划引入 Sigstore/cosign 签名。总结从冷启动到预热沙箱的最短路径步骤命令耗时量级1. 拉取预热快照forkd pull deeplethe/python-numpy十几秒下载2. 体检环境forkd doctor秒级3. 派生子沙箱sudo -E forkd fork --tag numpy -n 100约 100 ms / 100 个相比自己从 Docker 镜像构建 rootfs 预热 快照的全流程分钟级、依赖 Docker快照 Hub 把「得到一个可用的预热 AI 沙箱」压缩到了一条命令。配合写时复制的内存共享单个 512 MiB 的 Python 父快照可以同时支撑数十个空闲 Agent 实例——内存几乎不构成扇出瓶颈。更多设计细节可阅读 docs/design/branching.md 与 DESIGN-v0.5-diff-snapshot-chains.md。【免费下载链接】forkd高性能Agent沙箱预热虚拟机可以在约 100 毫秒内派生出 100 个独立实例运行过程中约 150 毫秒“分叉”出一个新的运行环境。底层使用 KVM 隔离并利用快照写时复制降低资源开销。项目地址: https://gitcode.com/deeplethe/forkd创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考