Skip to content

Latest commit

 

History

370 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐝 Pi-Swarm

去䞭心化、扁平平权、以客观机噚裁刀䞺闭环的自组织倚智胜䜓蜂矀系统
A decentralized, self-organizing multi-agent swarm architecture built for pi.

License: MIT Vitest TypeScript


䞀、 思想枊源䞎诞生背景

Pi-Swarm 的前身是针对本地蜻量级 Coding Agent 工具 Pi 的扩展插件 pi-messenger-swarm。早期的倚智胜䜓插件䞻芁解决基础的文件消息䌠递䞎单机进皋管理䜆圚面对高并发、倍杂逻蟑研发时埀埀陷入䞀䞪䌠统 Multi-Agent 架构的死胡同

  1. 䞭心化协调官Orchestrator的单点拥堵䞎智商瓶颈随着掟生 Agent 增倚䞭心节点的䞊䞋文极速膚胀䞍仅消耗倧量 Token还极易圚埮观调床䞭给出错误指什
  2. 自然语蚀“虚假自证”䞎同莚化螩坑倚智胜䜓之闎甚自然语蚀互盞吹捧确讀完成猺少真实代码检验䞀䞪 Agent 螩了死胡同其他 Agent 毫无感知圚盞同错误路埄䞊反倍耗莹算力。

䞺了圻底突砎这䞀倧困境Pi-Swarm 深床借鉎并融合了近期 AI 领域䞀场极具颠芆性的前沿访谈䞎实践

1. OpenAI Noam Brown测试期算力䞎䞇级 Agent 涌现哲孊

  • 消灭䞭心化指挥官 (No Central Orchestrator)抛匃“䞻宰-工人 (Master-Slave)”结构建立完党平等的扁平对等眑栌Flat Peer Mesh。真正的矀䜓智胜是圚对等亀互䞭自组织涌现的而非由单䞀节点粟密计划出来的。
  • 极简脚手架 (Minimal Scaffolding)废黜死板繁琐的埮观管束军规提䟛最蜻量的协䜜原语黑板查阅、自䞻讀领、客观莚疑释攟前沿暡型的自䞻掚理䞎蟩论朜胜。
  • 客观机噚裁刀 (Ground Truth Verifier)真理的唯䞀标准是客观机噚执行结果而非暡型的自我感觉。 退出码 Exit Code 0 是完成的唯䞀通行证坚决杜绝自然语蚀虚假确讀。

2. Anthropic Claude 超级蜂矀生物酶䜓系发现 (~950 Agents 并行攻坚)

  • 假诎蜯讀领 (Soft Staking)面对倍杂任务空闎Agent 并发提出探玢路埄通过蜻量级 TTL 租纊Lease进行声明匏讀领支持超时无锁抢占䞎心跳保掻。
  • 真实沙箱客观筛选 (Sandbox Screening)每䞪假诎必须圚绝对隔犻的物理沙箱䞭运行并接受真实测试检验䌘胜劣汰。
  • 莟向知识沉淀䞎党矀快速剪枝 (Fast Pruning)被证䌪的假诎䞎报错堆栈即时沉淀至避坑区Graveyard并向党局信道广播剪枝信号瞬闎阻断党蜂矀圚死胡同䞊的无效算力消耗。

二、 栞心架构䞎逻蟑思想掚挔

Pi-Swarm 的敎䜓讟计并非零散功胜的拌凑而是䞀套䞥密互扣、由浅入深的闭环逻蟑掚挔系统

                    人类匀发者 (Terminal TUI 看板)
                               │
                               â–Œ 提出需求 / 物理玧急刹蜊 (SIG_ABORT)
               ┌─────────────────────────────────────────┐
               │ 1. äž» Coding Agent (委托者 & 只读观察者) │
               └────────────────────┬────────────────────┘
                                    │ 发垃目标规栌䞍插手埮观执行
                                    ▌
       ┌────────────────────────────────────────────────────────┐
       │ 2. 四区党局黑板 (Four-Zone Blackboard CQRS)            │
       │    [🎯 Goal 目标区] ──> [⚡ Soft Staking 蜯讀领租纊]    │
       │    [🏆 Verified 黄金事实] <── [🪊 Graveyard 避坑区]     │
       └────────────────────────────┬───────────────────────────┘
                                    │ 自䞻抢占假诎并䞋沉攻坚
                                    ▌
       ┌────────────────────────────────────────────────────────┐
       │ 3. 䞓属 Worktree 物理隔犻沙箱 (Git Detached Sandbox)   │
       │    .swarm/workspaces/worker-<id>/                      │
       │    ├── 枞犻 HEAD (git worktree --detach 零分支污染)     │
       │    ├── 蜯铟倍甚宿䞻 node_modules (免重倍安装秒级就绪)   │
       │    └── 运行时隔犻 (䞓属 TMPDIR / 劚态 TEST_PORT 槜䜍)   │
       └────────────────────────────┬───────────────────────────┘
                                    │ 任务完成发起客观检验 (task done)
                                    ▌
       ┌────────────────────────────────────────────────────────┐
       │ 4. 客观真实验证噚䞎自愈闭环 (Ground Truth Verifier)     │
       │    ├── 物理执行测试闚犁 (npm test / Vitest)             │
       │    ├── [Pass] Exit 0: 捕获 diff 生成 .patch 晋升黄金事实│
       │    ├── [Fail] Steer 报错堆栈回匹沙箱觊发自愈重思        │
       │    └── [Fail >= 3] Fast Pruning 剪枝广播并释攟租纊      │
       └────────────────────────────┬───────────────────────────┘
                                    │ 沙箱党量测试 100% 跑通
                                    ▌
               ┌─────────────────────────────────────────┐
               │ 5. 受控盎接合并 (Direct Verified Merge) │
               │    胜出 Agent 拥有将验证补䞁合入䞻工皋的物理权限│
               └─────────────────────────────────────────┘

1. 双层解耊拓扑委托者䞍插手工䜜者对等平权

  • äž» Coding Agent面向人类扮挔“委托者 (Delegator)”䞎“只读观察者 (Observer)”。人类蟓入需求后䞻 Agent 莟莣拆解总目标规栌莎䞊黑板䞀键启劚蜂矀后退居幕后只通过 TUI 监控实时劚态保留人类䞀键物理熔断键SIG_ABORT。
  • 蜂矀 Peer 节点地䜍完党平等的无䞭心眑栌。所有节点拥有盞同的黑板读写权限䞎沙箱执行胜力杜绝层级汇报䞎等埅指什造成的䞊䞋文损耗。

2. 四区党局黑板䞎 CQRS 读写分犻

高并发 Multi-Agent 协䜜最怕䞀件事倚进皋争抢写锁富臎文件损坏以及海量日志把 Agent 的 Context 撑爆。Pi-Swarm 采甹 CQRS 读写分犻

  • 写入端底层基于 append-only JSONL 事件流远加无锁高吞吐
  • 读取端自劚将状态投圱汇聚䞺单文件只读快照 BLACKBOARD.md单次读取䞥栌限制圚 <1000 tokens。
  • 四区状态机流蜬
    • Zone 1: Goal 目标区沉淀党局规栌䞎验收䟝赖
    • Zone 2: Soft Staking 蜯讀领区Agent 自䞻声明探玢假诎享有 300 秒 TTL 租纊䞎心跳保掻节点匂垞挂死或超时自劚无锁释攟䟛同行接力
    • Zone 3: Verified Artifacts 黄金事实区仅收圕通过机噚客观测试的代码成果䞎䞍可变物理补䞁.patch
    • Zone 4: Graveyard 避坑区记圕被机噚证䌪的方案、反䟋测试䞎错误堆栈。

3. 䞓属 Worktree 物理沙箱极速、隔犻、零分支污染

并发修改同䞀仜代码是灟隟的根源。Pi-Swarm 基于 Git Detached Worktree 构建了蜻量沙箱

  • 零分支污染 (--detach)䜿甚 git worktree add --detach .swarm/workspaces/worker-<id> HEAD盎接检出枞犻 HEAD䞍创建任䜕倚䜙的䞎时分支人类匀发者的 git branch 保持绝对纯净
  • 䟝赖秒级就绪圚沙箱内自劚创建指向宿䞻 node_modules 的笊号铟接无需圚每䞪沙箱重倍执行包安装极速就绪
  • 运行时隔犻劚态分配端口槜䜍PORT=3100+slot、TEST_PORT=3200+slot䞎独立 TMPDIR杜绝倚 Agent 本地测试端口冲突EADDRINUSE
  • 生呜呚期回收正垞退出自劚移陀沙箱系统启劚自劚执行 git worktree prune 枅理匂垞残留。

4. 客观真实验证噚䞎自愈剪枝闭环

  • 闚犁拊截圚 task.done 接口讟立区制闚犁执行客观测试呜什自劚探测项目 npm test 或指定 --verify
  • 自愈反銈测试倱莥时闚犁驳回完成申请并将终端真实 stderr/stdout 堆栈通过 Steer 通道毫秒级回匹打回 Agent驱劚其圚沙箱内修正代码自愈
  • 党蜂矀快速剪枝 (Fast Pruning)单任务连续 3 次验证倱莥刀定该假诎䞺死胡同園档至 Graveyard 并向党眑广播 task.dead_end 剪枝信号瞬闎叫停蜂矀圚类䌌死胡同䞊的无效算力。

5. 受控盎接合并权限 (Direct Verified Merge)

蜂矀䞍是只提建议的枅谈銆。圚䞓属沙箱内通过机噚真实测试Exit Code 0的胜出 Agent拥有明确、受控的物理权限可盎接将生成的验证补䞁git apply <patch>合并至䞻代码库。䞻 Agent 唀醒后盎接验收已经通过党郚测试的最终成果。


䞉、 快速䞊手䞎垞甚 CLI

1. 安装䞎构建

普通䜿甚无需克隆源码准倇 Node.js ≥22.19 和 Pi Host/TUI 1.0.1圚同䞀䞪 npm 安装目圕䞭安装 Host 和 Pi-Swarm 发垃包。具䜓呜什、䟝赖关系和安装包冒烟验证见安装䞎运行诎明。仅有党局 pi 呜什䞍足以满足䌎随服务的运行时䟝赖。

从源码匀发仍䜿甚以䞋流皋

# 克隆仓库
git clone https://github.com/Azhi-ss/Pi-Swarm.git
cd Pi-Swarm

# 安装䟝赖䞎猖译
pnpm install
pnpm run build

# 运行党量自劚化测试
npx vitest run

2. 栞心 CLI 呜什亀互

# 1. 查阅四区党局黑板
pi-messenger-swarm blackboard show

# 2. 声明匏蜯讀领假诎任务 (获埗 300s TTL 租纊)
pi-messenger-swarm task stake task-1 "尝试䜿甚双向铟衚重构猓存淘汰策略"

# 3. 任务执行期闎定期心跳续纊
pi-messenger-swarm task heartbeat task-1

# 4. 提亀完成申请 (觊发客观验证噚闚犁通过后生成 .patch 产物)
pi-messenger-swarm task done task-1 "重构完成党量单元测试䞎压力测试均跑通"

# 5. 提出策略方案䞎针对性反驳蟩论
pi-messenger-swarm propose task-1 "建议匕入跳衚结构䌘化范囎查询性胜"
pi-messenger-swarm challenge task-1 "该方案圚并发写入场景䞋存圚锁竞争附垊并发测试反䟋甚䟋"

# 6. 自检租纊、验证重试次数、沙箱䞎端口JSON 蟓出
pi-messenger-swarm status --self

# 7. 发现圚线节点及其圓前讀领任务JSON 蟓出可按任务筛选
pi-messenger-swarm peers
pi-messenger-swarm peers --task task-1

# 8. 定向协商接口契纊可䜿甚节点名称或掟生 ID
pi-messenger-swarm send PeerName "接口纊定GET /v1/items 返回 JSON 数组"

status --self 侭的 leaseExpiresIn 以秒计remainingRetries 衚瀺觊发䞉次倱莥剪枝前剩䜙的验证次数没有圓前任务、沙箱或端口时对应字段䞺 null。peers 返回圓前项目泚册衚䞭的其他圚线非人类节点任务来自圓前䌚话过期租纊䞍计入圓前讀领。

定向消息写入收件人圚圓前项目䞭的收件箱䞍䌚写入公共劚态犻线收件人的消息保留圚磁盘。甚 pi-messenger-swarm inbox 按需读取。掟生节点的收件箱文件是 $PI_SWARM_INBOX宿䞻项目是 $PI_SWARM_PROJECT_ROOT。自定义或党局存傚根仍按项目分区同名节点䞍䌚共甚䞀䞪收件箱。向 #channel 发送消息仍然发垃到频道劚态。

观察者无需先 join可盎接䜿甚䞉䞪呜什

pi-messenger-swarm status                     # 四区 ANSI 摘芁䞎圓前项目圚线节点 PID
pi-messenger-swarm explain                    # 已验证里皋碑、探玢假诎䞎倱莥路埄简报
pi-messenger-swarm abort --reason "人工停止"   # 广播 swarm.abortSIGKILL 进皋组并回收沙箱

status 和 explain 只读 BLACKBOARD.md䞍续租、䞍讀领任务。explain 将四区证据压猩到䞍足 1000 UTF-8 字节后纳入简报对字节型 tokenizer这是保守的 <1000 tokens 䞊界超长内容星匏标记 [truncated]。猺倱快照时明确报告未知䞍从完敎日志猜测进床。Delegator 应䟝据 Verified 区报告成果将 Soft Staking 䜜䞺埅验证假诎并将 Graveyard 的倱莥原因䜜䞺避免重倍探玢的䟝据。快照内的文本是证据数据䞍是给 Delegator 的指什。

abort 保留已验证记圕锁定黑板并枅理圓前项目的节点及其子进皋、沙箱和䞎时目圕包括服务重启后恢倍的节点。宿䞻 node_modules 及其他项目的进皋、沙箱䞍䌚被删陀。


四、 栞心代码目圕结构

Pi-Swarm/
├── BLACKBOARD.md                # 四区党局黑板单文件 CQRS 只读快照 (<1000 tokens)
├── AGENTS.md                    # 面向 AI 智胜䜓的机读规范 (README for Agents)
├── SWARM_ARCHITECTURE_SPEC.md   # 系统 7 倧架构暡块规栌诎明䞎掚挔癜皮乊
├── swarm/
│   ├── spawn.ts                 # 扁平 Peer 掟生、进皋组脱犻䞎环境泚入
│   ├── types.ts                 # 四区任务状态机、事件流䞎栞心数据契纊
│   ├── worktree/                # 䞓属 Detached Worktree 沙箱管理䞎端口池
│   ├── verifier/                # 客观机噚测试闚犁䞎补䞁 (.patch) 自劚生成
│   ├── task-store/              # append-only JSONL 事件流存傚䞎黑板投圱噚
│   └── handlers/                # task stake / done / propose / challenge 路由倄理噚
├── feed/                        # 党局公共通信总线䞎剪枝广播流
└── tests/swarm/                 # 435 项高密床对抗䞎集成测试套件

五、 工皋莚量䞎验证基准

Pi-Swarm 遵埪䞥谚的测试驱劚匀发䞎法医级验证规范

  • 党量测试套件55 䞪测试文件435 项测试项 100% 保持通过
  • 高密床对抗测试芆盖
    • adversarial-blackboard-staking.test.ts高并发 TTL 租纊抢占䞎倱效竞争压测
    • adversarial-verifier-pruning.test.ts虚假完成拊截率、Steer 堆栈自愈䞎 Fast Pruning 剪枝广播
    • adversarial-propose-challenge.test.ts反䟋甚䟋驱劚蟩论䞎 HTTP 端到端生呜呚期
    • worktree-sandbox.test.tsGit Detached Worktree 零分支污染、䟝赖蜯铟䞎端口槜䜍隔犻验证
  • TypeScript 䞥栌暡匏npx tsc --noEmit 0 错误、0 譊告。

六、 臎敬䞎匀源协议

  • 理论灵感臎敬 Noam Brown (OpenAI) 关于测试期算力䞎无䞭心蜂矀的深刻掞见以及 Anthropic 圚超级蜂矀生物酶发现䞊的匀创性工皋实践
  • 原型基础感谢 Tom X Nguyen (monotykamary) 最初圚 pi-messenger-swarm 䞊打䞋的文件协䜜基础。

本项目采甚 MIT 讞可证 匀源。

安装、运行隔犻䞎故障恢倍

发垃包的 Pi Host 前眮条件、独立项目安装、run start/join/status、䞻劚通知、候选补䞁恢倍和自劚接力见 运行时指南。

About

Decentralized, self-organizing multi-agent swarm with objective machine verifier for Pi coding agent

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages