Node.js Paperclip 编排AI智能体团队的虚拟公司操作系统
如果你曾经同时打开过五个以上的 Claude Code 终端窗口,一边写代码一边担心某个 Agent 陷入死循环把 API 额度烧光,那你一定理解这种感受:管理一群 AI 智能体,比管理真人团队还要累。单个 Agent 能力再强,一旦数量上去,任务归属、上下文传递、成本控制、质量把关全部变成一团乱麻。Paperclip 解决的正是这个问题。它不生产 Agent,而是给 Agent 建了一家公司——有组织架构、有预算约束、有审批流程,让一群各自为战的智能体真正像一个团队那样运转。
项目基本信息
| 信息项 | 详情 |
|---|---|
| 项目名称 | paperclip |
| GitHub地址 | https://github.com/paperclipai/paperclip |
| 项目描述 | The open-source app everyone uses to manage agents at work |
| 作者 | paperclipai |
| 开源协议 | MIT License |
| 开源状态 | 公开状态 |
| Languages | TypeScript |
| 支持平台 | Web / Windows / macOS / Linux |
| 最后更新 | 2026-10-28 |
一、项目介绍
Paperclip 是一个开源的 AI 智能体编排平台,用一句话概括它的定位:如果 Claude Code 或 OpenClaw 是员工,那 Paperclip 就是公司本身。
它的核心构成并不复杂:一个 Node.js 服务端加上 React 前端界面,底层使用 PostgreSQL(本地运行时自动嵌入),通过适配器连接各种 Agent 运行时(Claude Code、Codex、Gemini CLI、Kimi 等),再由一套任务系统和心跳调度机制驱动整个“公司”运转。你不需要改变 Agent 本身的任何工作方式,Paperclip 管理的是它们协作的那一层。
很多人第一次看到 Paperclip 的界面会以为它是个任务管理器。表面上看确实如此:左侧有组织架构,中间是任务看板,右侧有活动流和成本面板。但真正让它区别于普通项目管理工具的地方在于,任务不是给人看的,是给 Agent 执行的。一个任务从公司使命逐层拆解到项目、再到具体工单,Agent 被唤醒后读取的是完整的上下文链,知道自己在为什么目标服务,而不是只看到一个孤立的标题。
Paperclip 的另一个关键设计是心跳机制。Agent 不会一直空转烧钱,而是在被分配任务或到达预定心跳时间时才会“醒来”,检查待办工作,执行,然后停止。这意味着你可以让一个 Agent 团队在夜间自动推进项目,早上起来看结果和账单,而不是整夜盯着终端。
二、核心优势
自带 Agent,不锁定运行时
Paperclip 最务实的设计是“Bring Your Own Agent”。你不需要放弃已经在用的 Claude Code、Codex 或 Cursor。只要对应的运行时能接收 Paperclip 的调用,就可以被“雇佣”进组织架构中,获得一个岗位、一条汇报线和一个预算额度。对于已经在某个 Agent 上建立了工作流的开发者来说,迁移成本几乎为零。
成本控制是硬约束,不是事后统计
这是 Paperclip 真正让重度 Agent 用户安心的地方。你可以给每个 Agent、每个项目甚至整个公司设置预算上限。当记录的成本达到阈值时,Paperclip 会硬性停止该 Agent 的新运行,而不是发一封警告邮件了事。虽然官方文档也坦承由于计费延迟和进行中的工作,可能存在少量超支,但“停下来”这个动作本身,足以避免那种一觉醒来发现额度被烧光的噩梦场景。
治理机制:你是董事会,不是旁观者
Paperclip 把人类放在了一个明确的位置:董事会。你可以批准或拒绝 Agent 的“聘用”,设置任务完成前的审批阶段,随时暂停或终止任何一个 Agent,并且所有操作都有不可篡改的审计日志。Agent 不能悄悄花钱、不能绕过审批发布结果、不能在你不知情的情况下改变策略。这种治理深度是大多数 Agent 工具不具备的。
真正的多公司隔离
一次部署可以运行多个“公司”,彼此之间的数据、Agent、预算和审计记录完全隔离。如果你同时管理几个不同方向的项目,或者为客户运行独立的自动化流程,这个特性省去了维护多套实例的麻烦。
三、适用场景
场景一:同时驱动多个编码 Agent。 你手上有三个项目,分别用 Claude Code 和 Codex 在推进,每个项目都需要前端、后端和测试的配合。Paperclip 让你在一个仪表盘里看到谁在做什么、花了多少、卡在哪里。
场景二:需要 7×24 自动运行但不敢放任不管。 客服回复、内容摘要、日报生成这类规律性工作,可以交给心跳调度。你设定好预算和审批规则,Agent 按时唤醒执行,异常时停下来等你介入。
场景三:构建“零人员”业务原型。 如果你对完全由 AI 驱动的小型业务感兴趣,Paperclip 提供了现成的组织模板和导出导入机制,可以快速复制一套配置到另一台机器上。
不适用的情况也很明确:如果你只有一个 Agent,或者你需要的只是简单的定时脚本,Paperclip 的组织架构和治理开销会让你觉得笨重。官方文档自己就说得很直白:“如果你只有一个 Agent,你大概不需要 Paperclip。如果你有二十个——你肯定需要。”
四、安装教程
系统要求
根据 Paperclip 官方文档和社区实践,运行 Paperclip 需要以下环境:
| 工具 | 用途 | 版本要求 |
|---|---|---|
| Node.js | 运行环境 | 24.11.0 或以上 |
| pnpm | 包管理器 | 9.15 或以上 |
| Git | 克隆项目 | 最新版本即可 |
需要留意的是,Node.js 的版本要求是 24+,而不是常见的 18 或 20。这可能会让一些习惯于旧版本的用户感到意外,但 Paperclip 的现代依赖栈确实需要较新的运行时支持。
最快启动方式:一行命令
Paperclip 提供了一条命令完成初始化的方式:
npx paperclipai onboard --yes--yes 会接受所有默认设置:本地信任模式(无需登录)、嵌入式 PostgreSQL、本地磁盘存储。命令执行完毕后,浏览器会自动打开 http://localhost:3100。整个过程不需要手动创建数据库或配置文件。
如果你希望从源码启动或进行二次开发,手动方式如下:
git clone https://github.com/paperclipai/paperclip.git
cd paperclip
pnpm install
pnpm dev启动后 API 和 UI 都会运行在 3100 端口,嵌入的 PostgreSQL 会自动创建。
安装中可能遇到的问题
npx 命令返回 E404 错误。 这通常发生在你配置了私有 npm 注册表的情况下。npx 会优先从私有源解析 paperclipai 包,自然找不到。解决方案是强制指定公共源:
npx --registry https://registry.npmjs.org paperclipai@latest onboard --yesNode.js 版本不够。 如果终端提示引擎版本不匹配,检查 node --version 的输出。低于 24.11.0 的话,从 Node.js 官网下载 LTS 版本覆盖安装即可。
首次启动后不知道下一步做什么。 浏览器打开后你会进入创建第一个“公司”的引导流程。先给公司起个名字,然后创建一个 Agent(最简单的只需填一个名称),就可以开始分配任务了。
五、使用示例
示例:组建一个最小可用的开发团队
假设你要构建一个简单的数据看板项目,但不想自己从头写每一行代码。你可以用 Paperclip 组织三个 Agent 来协作。
第一步:创建公司和目标
在 Paperclip 中创建一个公司,使命设定为“在两周内交付一个可用的销售数据看板”。这个使命会作为上下文传递给每一个后续任务。
第二步:创建 Agent 并设置角色
创建两个 Agent:一个命名为“Builder”,使用 Claude Code 适配器;另一个命名为“Reviewer”,同样使用 Claude Code,但职责不同。在 Agent 设置中,给 Builder 设置每月 20 美元的预算上限,Reviewer 设置 5 美元。Reviewer 的预算更低,因为它只做代码审查,不执行长时间生成。
第三步:创建任务并分配
创建一个工单:“实现销售数据看板的首页和图表组件”。将其分配给 Builder。再创建一个关联工单:“审查看板页面的代码质量和边界情况”,分配给 Reviewer,并将第一个工单设为它的阻塞依赖。这意味着 Reviewer 的任务在 Builder 完成之前不会唤醒。
第四步:监控和审批
当 Builder 的心跳触发时,它会读取任务上下文(包括公司使命和项目目标),开始编码。你可以在活动流中看到它的工具调用和成本累积。当 Builder 将任务标记为完成后,Reviewer 会被唤醒,检查代码并给出意见。如果你在 Paperclip 中开启了任务审批,Builder 的产出需要你点击“批准”才会进入下一步。
这个流程的价值不在于“AI 写代码”——Claude Code 本身就能做到。价值在于:你知道 Builder 花了多少钱、Reviewer 看了哪些文件、任务在哪个环节卡了多久,以及如果预算耗尽,两个 Agent 都会自动停下来。
导出和复用公司配置
当你调好了一套好用的团队配置,可以通过公司导出功能生成一个 bundle,在另一台机器或另一个实例上导入。导出的内容包含 Agent 定义、技能配置、项目结构和任务模板,但不会携带密钥等敏感信息。
六、常见问题
Paperclip 支持 Windows 吗?
支持。Paperclip 本身是 Node.js 服务端加 Web 界面,Windows 上安装 Node.js 24+ 后即可运行。不过部分 Agent 适配器(如 Claude Code 的本地订阅登录)可能需要在主机上安装对应的 CLI 工具。
数据存在哪里?模型调用会把数据发到哪里?
公司记录存在你配置的存储中(默认是本地磁盘和嵌入式 PostgreSQL)。但 Agent 执行任务时,上下文会发送给你选择的模型提供商。Paperclip 官方文档对这个问题的回答很诚实:“公司记录存在你的服务器上,而 Agent 读到的任何内容都会随其模型调用一起发送给你选择的提供商。”如果你在意数据流向,选择自托管模型或可控的 API 提供商即可。
预算硬停之后,Agent 会怎样?
达到预算上限时,该 Agent 的新运行会被阻止,队列中的相关工作也会被取消。你可以在仪表盘上看到预算触发记录,调整上限或等到下个周期后,Agent 可以恢复正常运行。但要注意,已经发出但尚未计费的 API 调用可能造成少量超支,这是所有基于记录成本的预算系统共有的局限。
我可以只用一个 Agent 吗?
技术上可以,但体验上没有必要。Paperclip 的开销在于组织架构和治理配置,单个 Agent 用 Claude Code 或 Codex 直接操作更轻快。Paperclip 的设计目标从一开始就是“团队”,而不是“个人助手”。
和直接给 Agent 写 system prompt 有什么区别?
System prompt 控制的是“一个 Agent 怎么做事”。Paperclip 控制的是“多个 Agent 之间怎么协作、谁向谁汇报、花了多少钱、谁有权批准”。前者是个人能力,后者是组织能力。两者不冲突,可以叠加使用。
七、总结
Paperclip 代表了一类正在出现的工具形态:Agent 编排层。它不试图取代 Claude Code 或任何具体的执行引擎,而是解决当 Agent 数量超过个位数之后必然出现的协作和治理问题。MIT 协议、自托管、不锁定运行时、硬预算控制,这些选择都指向同一个用户群体:认真地把 AI Agent 当作生产力来用、而不是当作玩具来试的人。
它的学习曲线不算平缓。你需要理解组织架构、心跳、适配器这些概念,需要配置 Agent 和预算,需要适应“公司”而非“聊天”的交互模式。但如果你已经在日常工作中同时运行多个 Agent,并且感受到了管理的混乱和成本的不可控,Paperclip 提供的这套框架值得花一个下午来搭建和体验。毕竟,管理二十个 Agent 的混乱,比学会一个新工具要痛苦得多。
终于有人把多Agent管理的痛点说清楚了。我之前同时开四个Claude Code窗口,一个在改前端一个在跑测试,结果两个改同一个文件冲突了,查了半天才发现。Paperclip的工单锁机制看起来能解决这个问题,周末试试。
安装那部分挺实用的,npx那个E404的坑我就踩过,当时以为是包名错了。
预算硬停这个功能是刚需。上个月跑一个自动重构任务,Agent陷入循环改了删删了改,第二天看账单烧了四十多刀。如果有硬停至少能止损。
写得比较客观,没有吹成万能工具。确实,只有一个Agent的话用Paperclip纯属折腾。
请问导出公司配置之后,导入到另一台机器上,Agent的预算设置也会一起带过去吗?还是需要重新配?
TypeScript写的,怪不得前端用React。不过Node 24的要求有点激进啊,好多CI环境默认还是20。
“你是董事会”这个比喻很到位。用Agent最怕的就是它悄悄做事你不知道,审计日志能追溯每个决策太重要了。
我没太理解心跳和普通cron job的区别。是Agent自己检查有没有活干,还是Paperclip推任务给它?
文章说“管理二十个Agent比学会新工具痛苦”,太真实了。我目前管三个已经有点乱了,正在评估要不要上编排层。
支持Windows这点不错,很多类似工具默认只考虑macOS和Linux。
多公司隔离那个功能,对小工作室接不同客户项目应该很好用。数据互不串。
有人试过接Kimi的适配器吗?文档里提了一句Kimi Code是一等适配器,不知道实际跑起来稳不稳。
预算那个“可能少量超支”的说明很诚实。任何基于计费延迟的预算系统都这样,AWS的预算告警也经常滞后。
我比较关心嵌入的PostgreSQL在生产环境够不够用。文章说生产可以指向自己的Postgres,这个切换麻烦吗?
看完了,感觉适合我这种同时推进两三个副业项目的人。每个项目一个Agent,各自有预算,省得月底看API账单心惊肉跳。
“如果你只有一个Agent,你大概不需要Paperclip” ——官方能写这句话说明团队很清楚自己的定位。
心跳机制按计划唤醒Agent,那如果Agent正在跑一个长任务还没完成,心跳又来了会怎样?是跳过还是排队?
审计日志不可篡改这个,在合规场景下挺有价值的。虽然个人用户可能不太在意,但企业用的话是硬需求。
教程里那个三Agent看板项目的例子挺接地气的,比只讲概念清楚多了。能不能再出一篇具体配置的?
pnpm 9.15+ 和 Node 24,这个组合在Ubuntu 22.04的默认源里好像都装不了,得手动加源。建议文章补一句。
导出公司模板这个功能,如果能分享给社区,是不是意味着以后可以下载别人调好的“公司配置”直接用?有点像docker compose的分享模式。
我用了两周了,最大的感受是:以前每个Agent是散兵游勇,现在至少知道谁在干什么。但UI偶尔有点卡,希望后续优化。
“管理真人比管理AI累”这个说法我不完全同意。真人会主动沟通,AI不会,你得主动去查。Paperclip至少给了你查的地方。
想问一下,Reviewer Agent和Builder Agent用同一个模型适配器,预算分开算,那它们的上下文是共享的吗?还是完全隔离的?
从源码装的话pnpm dev起来之后,前端热更新正常吗?之前有些类似项目开发模式体验很差。
文章里关于数据去向的说明很负责。很多人用Agent工具根本不看自己的代码会被发到哪里去。
MIT协议做编排层,这个选择很聪明。执行引擎各家竞争,编排层开源反而容易形成生态。
心跳和cron的区别我研究了一下:cron是固定时间触发,心跳是Agent被唤醒后自己检查待办队列,有活就干没活就睡。这样不会在没任务的时候空转烧token。
多公司功能对我们这种接外包的小团队很实用。每个客户一个公司,数据隔离,预算分开,给客户看报表也方便。
Windows上装Claude Code再配Paperclip,那个路径问题搞了我半小时。建议教程里补一句Windows下HOME和USERPROFILE的区别。
“零人员公司”这个概念有点激进,但实际上现在很多流程自动化已经在往这个方向走了。Paperclip是把这个想法工程化了。
看完最大的收获是理解了“编排层”和“执行层”的分离。以前总觉得Agent工具越多越好,其实缺少的是中间那层管理。
预算设置是按月重置还是可以自定义周期?如果是按项目走的话,按月可能不太合适。
文章长度刚好,信息密度不错。比那些只贴README的教程强多了。
我试了一下npx启动,嵌入的Postgres自动建库确实方便。但默认绑定localhost,如果要局域网访问得改配置,文档里要翻一下才有。
治理和审批这个功能,对小团队可能有点重,但对“让Agent自动跑但我不想完全放手”的场景,刚刚好。