Pizza Docs
Pizza Docs · v1.0.0

把多个 Agent,
组织成一支团队。

Pizza 是一个本地优先的多智能体协作工作台。一般模式直接使用 Claude、Codex、DSH 等单 Agent 能力;团队模式由指挥者按能力目录调度成员,完成头脑风暴、软件开发与科研讨论。

本地优先 · SQLite 存储 macOS · Windows · Linux Apache-2.0 开源
Pizza 团队会话界面:指挥者分派任务,成员回传结果
一次团队回合:指挥者分派任务,成员回传结果,最终收敛为工作区产出物。
Overview

一个本地优先的 Agent 工作台

Pizza 把模型、Agent 和团队组织放在同一个桌面应用里。它不替你选择唯一的最优模型,而是让你把不同能力、不同成本的 Agent 组合起来,由指挥者根据任务决定谁上场。

能力差异

同一个模型,不同 Agent

工具、提示词与运行方式不同,最终效果也不同。Pizza 让 Agent 成为可配置、可复用的执行单元。

领域差异

不同模型各有长短

把擅长规划的模型放在指挥位,把擅长代码、检索或写作的模型放进团队,按任务匹配。

成本分层

能力与价格成正比

能力强的模型担任领导者,能力一般的模型担任参与者,用组织结构控制成本。

两种工作模式

一般模式

与一个 Agent 直接对话

适合明确、连续的任务。流式输出、工具调用、停止、重试与运行轨迹都在同一个会话里。

团队模式

让指挥者组织多个 Agent

适合需要拆解、并行探索或交叉验证的任务。指挥者按能力目录 @ 成员,并把结果收敛成产出物。

核心能力

  • 单智能体与团队双模式会话
  • 指挥者动态下发角色指令
  • Claude Code、Codex、DSH 等多运行时
  • Skill 导入、MCP 配置与工具审批
  • 本机 SQLite 保存会话、运行与产出物
  • 流式输出、停止、重试与并发上限
  • 工作区文件自动索引与 Markdown 预览
  • 浅色 / 深色主题与中英文界面
Pizza 首页:选择智能体或团队开始新会话
从首页选择单智能体或团队;团队会话由指挥者接管后续编排。
Quick start

安装与首次启动

安装包不包含模型运行时,也不会自动下载模型。请先按运行时官方文档完成安装与登录。

系统要求

  • macOS 13 或更高版本
  • Windows 10 或更高版本
  • 主流 x64 Linux 发行版(AppImage / deb)
  • 至少一个本地 Agent 运行时,或一个可用的通用 ACP / CLI 运行时
  • 可写的数据目录,默认 ~/.pizza
macOS

dmg

打开 Pizza-<version>-arm64.dmg,把 Pizza 拖入「应用程序」。首次打开若提示来源未知,请在「隐私与安全性」中允许。

Windows

Setup / zip

运行 Pizza-Setup-<version>.exe,或解压 zip 后运行。SmartScreen 提示时选择「更多信息 → 仍要运行」。

Linux

AppImage / deb

AppImage 添加执行权限后直接运行;deb 使用系统包管理器安装。

第一次打开

  1. 检测本机运行时

    点击「开始检测」。Pizza 只执行 which/where 与 --version,不会执行未知脚本。

  2. 选择并导入

    勾选已安装的运行时,点击「导入所选运行时」。Pizza 会逐个测试连接,并注册测试通过的运行时。

  3. 创建第一个智能体

    导入成功后可直接创建「通用助手」,也可以进入首页后再配置模型、思考强度与并发。

数据留在本机。 会话、运行、消息与产出物默认保存在 ~/.pizza。你可以在设置中迁移数据目录,或用 PIZZA_DATA_DIR 指定其他位置。
Runtimes

支持的运行时

运行时是 Pizza 执行任务的入口。它可以是 Claude Code、Codex 这类 CLI,也可以是实现了 ACP 协议的本地服务。不同运行时可以绑定不同模型与能力。

运行时 接入方式 说明
Claude CodeCLI · stream-json支持流式输出、工具调用、会话恢复与模型发现
CodexCLI · app-server复用线程,支持 turn/interrupt 与结构化事件
PiCLI · 会话文件按会话文件恢复上下文,适合本地模型工作流
Oh My PiCLI · Pi 协议族复用 Pi 协议与 OMP 原生会话文件
DeepSeek HarnessACP · dsh默认使用 ACP profile;自定义 JSONL profile 可切换为 CLI
HermesACP · stdio通过 ACP stdio 连接 Hermes Agent
OpenCodeACP · stdio通过 opencode acp 接入
Qoder CNCLI · stream-json兼容 Claude Code 事件协议,使用 Qoder 的会话与模型参数
Gemini CLIACP · stdio通过 gemini --acp 接入
Kimi CodeCLI · stream-json解析 Kimi Code 的助手文本、工具调用与恢复提示
通用 ACP / Custom CLIACP / CLI手动填写命令或地址,适合其他本地运行时

自动检测与手动接入

  • 首次启动会扫描常见安装目录,包括 Homebrew、nvm、fnm、bun、pnpm、~/.local/bin、~/.opencode/bin、~/.qoder-cn/entry 与 ~/.kimi-code/bin。
  • 检测到已安装项后,可多选并一键导入。Pizza 会为每个运行时执行真实连接测试,测试通过的才会注册。
  • 需要自定义命令、参数、环境变量或超时,可在「设置 → 运行时 → 添加运行时」中手动配置。
从 Finder / Dock 启动时检测不到? macOS 图形应用继承的 PATH 可能很短。Pizza 已自动补全常见目录;如果仍缺失,请确认终端里 which claude 等命令可用,或在运行时页面手动填写绝对路径。
Agents

创建智能体

智能体是绑定运行时、Prompt 与能力边界的执行单元。打开「设置 → 智能体 → 新建智能体」,填写名称、描述、运行时与初始 Prompt,再按需选择模型、思考强度与并发上限。

描述就是能力说明

智能体描述会进入团队的能力目录,供指挥者判断谁适合当前任务。写清楚它擅长什么、输出什么、有什么限制,比堆砌关键词更有用。

两种指令来源

模式一

自带初始 Prompt

成员使用自己保存的角色、边界与输出格式。指挥者只描述任务,适合有稳定职责的成员。

模式二

指挥者动态下发

成员不预设角色 Prompt,每次由指挥者 @ 时下发完整角色指令与约束。适合按模型能力分层组队。

智能体编辑器中的指令来源配置
模式二下,初始 Prompt 变为可选的单智能体兜底;团队运行由指挥者动态下发。
Teams

团队协作:@ 指挥路由

团队模式不是把多个 Agent 拉进同一个聊天窗口,而是让指挥者成为唯一的调度中枢。参与者像 Skill 一样登记能力,指挥者按任务匹配度决定谁上场。

调度

一次只派一个单轮任务

每次 @ 都包含目标、输入与完成标准。成员完成后把结果交回指挥者,由指挥者决定继续派发还是收敛。

边界

成员之间不直连

成员之间的 @ 不产生新的运行,只作为建议随结果回到指挥者。这样可以避免跨成员循环与失控的并行。

消息如何流动

团队模式消息路由图:用户消息进入指挥者,指挥者分派给成员,成员结果回到指挥者并最终收敛

运行轨迹与收敛产出物

右侧「轨迹」记录本回合的参与者、每次分派、运行状态、等待用户与收敛事件。指挥者输出总结后,结构化结论会保存到工作区 .pizza/artifacts/,并出现在产出物面板。

Pizza 团队运行轨迹面板
每一次分派、运行状态与收敛事件都可追踪。
Pizza 团队收敛生成的工作区产出物
收敛结论、关键依据、分歧与未决问题、建议下一步,保存为工作区 Markdown。

用户如何介入

  • 在输入框中直接 @ 某位成员,可以把消息定向给该成员。
  • 指挥者 @我 时,回合进入等待用户状态,直到你回复。
  • 单回合跳数保护默认 64,只用于防止 @ 循环失控;是否继续辩论、何时收敛仍由指挥者决定。
Pizza 团队编辑器:指挥者、成员角色与能力目录
团队配置就是能力目录:成员卡片展示能力描述、团队职责与指令来源。
Daily use

日常使用

单智能体对话

回到首页,选择智能体,输入任务并发送。运行中可以查看流式输出与工具调用,也可以停止或重试。

团队对话

选择团队并发送任务。用户未 @ 时消息默认交给指挥者;指挥者根据参与者能力目录选择成员并下发单轮任务。需要介入时直接 @ 成员或回复指挥者的提问。

设置与数据

  • 「设置 → 语言与外观」切换主题与界面语言。
  • 「设置 → 运行时 / Skills / MCP」管理运行时与能力接入。
  • 「设置 → 已归档会话」恢复或永久删除会话。
  • 数据默认位于 ~/.pizza,可通过设置迁移或使用 PIZZA_DATA_DIR 指定。

快捷键

快捷键动作
⌘K打开命令面板
⌘N新建对话
⌘,打开设置
Development

从源码构建

环境要求:Node.js 22+、npm。

npm install
npm run dev            # 开发模式
npm run build          # 生产构建
npm run package:mac    # 生成 macOS dmg/zip
npm run package:win    # 生成 Windows nsis/zip
npm run package:linux  # 生成 Linux AppImage/deb

构建产物位于 release/。更完整的开发、测试与打包说明见仓库中的 docs/USAGE.md。

FAQ

常见问题

检测不到本机已安装的运行时?

确认终端里 which claude 等命令可用,然后重启 Pizza 或点击「重新检测」。如果仍缺失,可在「设置 → 运行时」中手动填写绝对路径。

连接测试通过,但对话失败?

检查该运行时是否需要单独登录,以及模型是否可用。不同 CLI 的参数并不完全兼容;Pizza 会为已知运行时使用对应的参数与事件解析。

为什么删除智能体被阻止?

智能体仍被活跃会话引用时不能永久删除。请先归档智能体,或删除 / 归档相关会话后再试。

团队什么时候结束?

由指挥者决定。当它不再 @ 新成员并输出总结时,回合自然结束,结构化总结写入工作区产出物。

数据保存在哪里?

默认在 ~/.pizza。会话、运行、消息和产出物都在本机,不会上传到 Pizza 的服务器。

License

开源协议

Pizza 采用 Apache License 2.0 发布。你可以自由使用、修改和分发本项目,但需要保留版权与许可声明,并在分发时附上许可证副本。