返回

文章详情

LayerFS:AI 编码代理的文件系统

Hacker News2026年10月21日 12:34

短暂性:将多代理开发的规模扩展到超出想象的程度 短暂工作空间。持久共享历史。LayerFS 是您的代理的基础。每个代理在共享的已提交历史上挂载一个完整的可写工作空间,进行工作,提交所更改的内容,然后离开。短暂工作空间 持久结果 大规模并行性 LayerFS 和 DSH LayerFS 和 Pi 不久之后 为什么选择 LayerFS 十个想法,一个文件系统。六个核心 · 四个支持 Compute 仅在命令运行时存在。fs · 原子写入 → 存储写入编辑沙箱 · 每个 bash 的工作空间挂载执行提交卸载挂载执行提交卸载挂载执行提交卸载挂载执行提交卸载挂载执行提交卸载>_ mkdir out>_ cat log.txt>_ python train.py>_ node build.js最新存储C41C42C43C44C45C46 计算:代理大约 80% 的时间用于思考,约 10% 的时间用于 Bash。FS:每个文件工具调用是一个原子存储操作。沙箱:每个 Bash 工具调用挂载一个短暂工作空间,然后提交。不同计算机上的代理共享一个无服务器存储。store.dbC41C42C43C44C45C46C47计算机 1计算机 2计算机 3计算机 4 共享存储:每个代理提交到一个存储,无需数据库服务器。分布式计算:每个代理在自己的计算机上运行。一个项目,多个分支。一个分支,多个代理。mainauthuilogin.tsapi.tssession.tsapp.tsxtoken.tsapp.tsxnav.tsx冲突:app.tsxapp.tsx · 合并标记<<<<<<< head C44 <Cart />======= <Search />>>>>>>> workspaceblame app.tsxC12import NavC44<Header />C44<Cart />C46<Search />L3 · publishL4 · publish 提交:每个工具调用都是在其分支上的提交。冲突:同一文件的冲突会被拒绝,出现冲突。责任:每行名称都指明其编写步骤。递归分叉任何提交,任意深度。publish0.620.480.210.400.780.660.300.710.910.69已修剪已修剪已修剪已修剪已修剪★ 最佳 0.91探险者 ×3探险者 ×3探险者 ×4探险者 ×3探险者 ×1分叉:无文件复制 零成本:分叉是元数据,不复制任何文件。递归:一个针对 RSI 代理的文件系统和用于 RL 训练的递归探索。10 个副本压缩为 0.31 份。提交1 · 去重12 块13 块14 块15 块11 匹配 · +1 新11 匹配 · +1 新11 匹配 · +1 新去重 → ≈1.05 副本→2 · 压缩≈0.31 副本说明 · store.stats 去重:每个内容块只存储一次。压缩:存储的块进一步缩小。比例:10 个副本 → 1.05 去重 → 0.31 压缩 这是什么??? 依赖项会随每个挂载而来。不浪费时间重新安装。1 · git / 其他 AgentFS 没有 .gitignore 文件哎呀!src/package.json.git/node_modules/node_modules/.cache/.cache/$ npm test✗ 错误:找不到模块 'react'$ npm install$ npm test✓ 通过⏱ 0:05⏱ 0:20⏱ 1:00⏱ 2:00⏱ 3:00⏱ 4:00⏱ 5:00⏱ ≈5 分钟的首次运行克隆 + 安装,典型⚠ 浪费时间 · 等待安装⌛2 · LayerFSnpm install 仅提交一次,以前(C12)src/package.json.git/node_modules/.cache/$ mount → 工作空间准备好$ npm test✓ 通过瞬时 · 无需安装⚡ mount 0.05 s测量挂载:5–20 ms⚡⚡ 挂载时的瞬时准备 Git / 其他 AgentFS:丢弃忽略的文件;重新安装。LayerFS:忽略的文件保留在每次提交中。比较:安装约 5 分钟与挂载 0.05 秒。四个支持想法 自动检查点 代理所采取的每一步都是返回的检查点。每次调用:每个文件调用都是一次提交;每个 Bash 调用在结束时提交。没有噪音:一个不发生变化的调用不会提交。倒带:从任何检查点分叉并读取任何文件,如此之前。仅附加对象 保存的对象从不被重写。存储只会增长。内容寻址:一个对象的命名由其字节的哈希值决定。密封:已书写的包不会被更新或删除。安全分享:分支共享对象;读者从不等待写入者。冲突规则(.lww) 命名不应冲突的文件。最新的编辑获胜。/.lww:位于树根的 Gitignore 风格规则。较新的获胜:匹配的文件在双方均已更改时采用较新的编辑。对于:锁文件、构建输出和缓存。大文件,小编辑 一个编辑的成本为编辑的大小,而不是文件的大小。覆盖:写入仅保留写入的字节。提交:仅重建编辑的范围及其树路径。存储:文件的其余部分与其旧版本共享。代理工具调用及其历史 历史 主要 @ L0 0 提交 · 0 活的主要是绿色中间的树枝;每个发布都增加一层层的层 次 · 一层在主要的提交 · 一片叶子 分支 · 一根树枝 合并 · 重新嫁接 发布 · 添加一层 停止 · 光秃的树枝 点击名称标签以聚焦其分支 store.stats 主要 · 只读 去重 1.5× 压缩 3.32× 存储 9.4 MB 文件 10.0 MB 逻辑 48.0 MB · 规范 31.2 MB · 元数据 420 KB · 自由 180 KB · 0 提交 · 1 层次 orchestrator project · branch

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

☕请我喝杯咖啡