OpenFang 是什么?1.8万星的 Rust Agent OS,把定时器当成主入口(基础篇)

OpenFang 是什么?1.8万星的 Rust Agent OS,把定时器当成主入口(基础篇)

写在前面:我把 OpenFang 的仓库完整 clone 下来逐个 crate 翻了一遍,包括 README、bundled 目录、sandbox.rs 和 browser 的 HAND.toml。这篇文章里凡是带具体数字的,都是我自己在源码里对过的,不是抄它的宣传页。

一个把「定时器」当主入口的 Agent OS

过去两年我拆过几十个 Agent 框架,主流玩法都是一样的:打开终端,输入一句话,Agent 干活,干完你检查。OpenFang (https://github.com/RightNow-AI/openfang) 想改的就是这个入口——它把定时唤醒当成一等公民。

项目 2026 年 2 月 24 日建仓,到现在 18208 星、2288 fork、Apache-2.0 + MIT 双许可,主体语言 Rust。README 里写着 13.7 万行 Rust、14 个 crate、1767 个测试,整个系统编译成一个约 32MB 的单文件二进制。装法就是一条 curl:

curl -fsSL https://openfang.sh/install | sh
openfang init
openfang start
# 面板在 http://localhost:4200

它把这种预置的自主能力包叫作 Hands,用 HAND.toml 声明要用的工具、依赖、指标,再配一份 500 词以上的多阶段系统提示词。比如 Clip Hand 拿一个 YouTube 链接,用 FFmpeg + yt-dlp 剪成竖屏短片、烧字幕、生成封面,再推到 Telegram;Lead Hand 每天自己跑,按 ICP 找客户、调研、打 0-100 分、去重,出 CSV。关键点在于:这些 Hand 不需要你 prompt 它们,配好 schedule 就在那儿干活。

下面这张图是我照着源码画的运行链路:

OpenFang Agent OS 运行链路:定时器唤醒 Hands,交给 Agent 主循环,工具执行走 WASM 沙箱,涉及付费的动作挂起在审批闸门
OpenFang 的运行链路:定时器 → Hands → Agent 主循环 → 内核编排 / WASM 沙箱 → 面板与 40 个消息渠道(据 crates/ 源码整理)

源码里 crates/openfang-kernel/src/background.rs 第 164 行会往 prompt 里注入 [SCHEDULED TICK] You are running on a periodic schedule,这就是「闹钟响了它自己开工」的实现。沙箱那层是 crates/openfang-runtime/src/sandbox.rs,wasmtime 同时开 consume_fuel() 和 epoch_interruption(),一个管 CPU 指令预算,一个管墙钟超时,看门狗线程负责杀掉跑飞的代码。安全这块作者列了 16 套系统,包括 Merkle 哈希链审计、信息流污点追踪、提示注入扫描、路径穿越防护,Agent 身份用 Ed25519 签名。渠道侧 crates/openfang-channels/src/ 下有 44 个适配器模块,Telegram、飞书、Discord、Slack、WhatsApp 都在。

上手:门槛比宣传页高一点

openfang hand list
openfang hand activate researcher
openfang hand status researcher

真正会卡住你的是依赖。crates/openfang-hands/bundled/clip/HAND.toml 里,FFmpeg、FFprobe、yt-dlp 全是硬性 requirement_type = "binary",还贴心地给了 macOS/Windows/apt/dnf/pacman 各自的安装命令。不装就激活不了,这是设计如此,不是 bug。另外作者自己在 README 里写了一行警告:pre-1.0 阶段,小版本之间会有 breaking change,生产环境请锁 commit。

实话实说:星是虚的,坑是实的

三点必须讲清楚。

第一,README 数字对不上源码。 说 7 个 Hands,bundled/ 目录里实际躺着 9 个(多出 trader 和 infisical-sync);说 40 个渠道,源码里 44 个模块。对比表那栏「License」填的是 MIT,但仓库里同时存在 LICENSE-APACHE 和 LICENSE-MIT 两份文件。谁抄谁不重要,重要的是告诉你:这个项目的文档没跟上代码,别拿 README 当规格书。

第二,项目停更了。 最后一次 commit 是 2026 年 5 月 12 日的 v0.6.9,到今天整整五个月没动过。但 9 月以来还有 12 个 issue 和 PR 在进来,社区没跑,核心开发大概停了。这跟 MetaGPT 是一个套路——星涨得漂亮,人先走了。

第三,它有个更狠的同类。 README 里反复拿来对比的 ZeroClaw (zeroclaw-labs/zeroclaw),现在 32932 星、4953 fork、926 个未闭 issue,10 月 4 日还在提交。同样是 Rust、同样自称 Agent OS、同样对标 OpenClaw。有意思的是 ZeroClaw 专门发过防冒充声明,说有个 fork 抢了 zeroclaw.org 域名在骗捐——这个赛道现在连名字都在打架,说明火,也说明乱。

18K 星放哪儿?当技术参考读,尤其是 Rust 怎么在单二进制里同时装下调度、沙箱、审计和 44 个渠道适配器,这套 crate 拆分值得抄。要当生产依赖用,我建议再等等——一个五个月没提交的 pre-1.0 项目,锁 commit 也救不了 API 漂移。

顺带一句

如果你手上正好有台树莓派或者小主机,这玩意的单二进制 + Landlock/沙箱路线比 Docker 轻多了,32MB 丢进 NAS 里跑个每日情报汇总是够用的。我下篇文章准备把 OpenFang 和 ZeroClaw 这对 Rust 双胞胎放一起实测,看看 7.5MB 内存差的 ZeroClaw 到底能不能干同样的活。


by 数码罗记 · godsun.pro

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注