说实话,我一开始以为这是个玩笑。

YC 开源?还是他们内部在跑的那套公司级 agent 系统?点进仓库,好家伙,真的。5.4k stars,555 forks,40 commits。等等,我昨天看的时候还是 3.9k。这涨得也太快了。

官宣当天直接冲上 HN 榜首。594 points,123 条评论。我盯着 star 数看了几秒:发布数小时 1.9k,然后 2.4k,然后 3.9k。不像刷的。

先说这是啥

项目描述只有一句话:multiplayer agent harness for work。

multiplayer。多玩家。

打开网易新闻 查看精彩图片

现在的 agent 基本都是单人游戏。你自己的 Claude Code,你的记忆、文件、密钥、权限,全是你的。一个人玩,很爽。

公司不是单人游戏。几十上百号人,每个人要自己的记忆、自己的文件、自己的权限。谁该看什么,谁不该看什么,哪个 agent 有资格跑哪个任务。凑在一起,就是一团乱麻。QM 团队 README 第一句话就说:让一个助理服务整个公司,很快就会复杂到失控。

所以他们换了个思路:每个员工一个隔离工作区,互不干扰;同时能在频道、群聊、项目里协作。每个 person、每个 room,都有自己独立的一套 scope。记忆、文件、密钥、权限、定时任务、沙箱,全部按 scope 隔离。相当于公司里每个人、每个项目组都有一台自己的 agent,互不串门。

这个概念拆开看,每一条都不算新。新鲜的是做成了公司级产品:Postgres 落库,多实例部署,可审计,可回滚。个人工具可以随意一点,公司基础设施不行。

硬核在哪

QM 里最打动我的,是 per-scope durable sandbox。说白了:每个 agent 有一台自己的持久电脑。工具装了不丢,会话登了不丢,上次跑一半的环境还在。用过 agent 的都懂那个痛。新开会话,环境重置。装过的依赖没了,配过的密钥没了,养熟的工具链也没了。QM 把这件事做成了基础设施,而不是让你自己折腾。

架构反而极简。一个 headless core,TypeScript 写的,跑在 Node 上。API、身份、策略、调度,全在这一层。下面 Postgres,会话、记忆、队列全部落库。蓝绿部署,多实例,禁止 RAM 存状态。再往下,每个 scope 一个隔离沙箱。agent loop 可插拔:Pi、OpenCode、Codex、Claude Code 都能驱动同一个 core。

这条值得单独说。QM 不绑定任何一家模型厂商。今天用 Claude Code,明天换 OpenCode,core 一行不用改。敢把 agent 当基础设施的公司,都不会想被单一厂商锁死。

安全绕不开。QM 给了三档 posture:Strict,每个工具调用都暂停等人批准;Auto,默认档,classifier 筛查带来源标签的外部数据;Dangerous,不筛查、不暂停。

有意思的是他们的 SECURITY.md。直接写:早期实验软件,不承诺不泄漏。然后弱点一条条列:命令策略可能被混淆绕过,浏览器动作部分在核心门禁之外,沙箱凭证明文使用中,能力链接是 bearer 授权,portal 会话有残留风险。

诚实得不像官方文档。

还有个细节我很喜欢:依赖冷却。npm 包必须发布满 7 天才能进 lockfile,防供应链投毒。min-release-age=7。版本号写死都没用,得等 7 天,让投毒窗口自己暴露。

部署也是奔着公司 IT 也能搞定去的。不用 clone 源码,一条命令:qm init,然后 check、doctor、sandbox build、plan、up。Docker 本地、Fly.io、AWS 三个目标。每个部署跑在你自己云账户里,仓库本身不带生产 CI。AWS 上 up 首次变更前自动 RDS 快照,rollback 只回滚代码配置。

最反直觉的是私有 fork 模式。定制全收进 deploy/layers//,core 跟上游保持 byte-identical,一次不改。上游更新时 merge 永远很小。用 plain clone 而不是 GitHub Fork,也是故意的:fork 没法私有化,提交按 SHA 还能被公开侧取到。公司内部的东西,一点都不想漏。配套两个 skill:update-qm 合并上游开 PR,upstream-pr 回馈上游、不泄露组织信息。

谁在用,跟我们有啥关系

QM 不是实验室作品。YC 内部 accounting、legal、events、engineering 都在用,甚至用 QM 开发 QM 自己,递归吃狗粮。eve_bouff 自称 YC #1 QM 重度用户,说看着 YC 合伙人和员工用它 1000x 自己,团队极其精简,产出却像一支军队。这话有营销味,但用 QM 写 QM 是实打实的压力测试:自己写的代码生成自己写的代码,bug 会被无限放大。

还有个出圈的插曲:他们仓库里带了个 anti-slop taste skill,禁止 em-dash(破折号),理由是这是 LLM 的标志性文体拐杖,生产测试里的第一号 AI 痕迹。网友开玩笑说:em dash 真的死了。

很多人会问:我有 Claude Code / Codex / OpenClaw / Hermes 了,还需要 QM 吗?

打开网易新闻 查看精彩图片

一句话:同族不同层。它们都是 agent harness,是套在模型外面的壳,但前面那些是个人档单兵,QM 是公司档多人协作层。

个人档怎么用,你应该熟:一个人用,多 channel 接入,记忆、文件、密钥都是你自己的,跑在自己机器上,终端里喊一声就行。

QM 不一样。它给整个公司用,每个员工、每个频道都有独立 scope,记忆、文件、密钥、权限、cron、持久沙箱各管各的,Postgres 落库,带 admin 控制和安全 posture。这些是个人工具没有的。

还有个关键点:QM 自己不带引擎,它是 harness 的 harness。agent loop 可插拔,Pi、OpenCode、Codex、Claude Code 都能驱动同一个 core,部署不绑定任何厂商。所以把个人 agent 换成市面任何一个,关系框架都不变:QM 永远是底座和编排层,市面 agent 永远是可换的引擎,都在 QM 下面当手。

个人 agent 解决我怎么更高效,公司级 agent 解决我们怎么不失控。

QM 开源这件事,真正的信号不是又多了一个 agent 项目,而是 agent 正在从个人工具变成公司基础设施。这个转变,比任何单一功能都值得关注。

至于个人和公司的分水岭到底划在哪,每家公司的答案可能都不一样。这是下一篇想聊的话题。