Polter 多终端智能体监督器
让一个 Claude Code 会话监督其他终端中的独立智能体。
- Star 数
- ★ 11
- 最近更新
- 今天
- License
- MIT
- 主语言
- Zig
- FA 评分
- 80/100 · 表现良好
30 秒速览
- 可在哪里用
- 兼容但需适配Claude CodeCodex(部分支持)
- 开始前需要
- 典型场景
- 同时运行多个 Claude Code 会话的开发者,可指定一个会话分派任务并汇总各终端的报告。
- 主要局限
- 只有 Claude Code 得到明确测试;Codex 虽在使用场景中被提及,其他 MCP 客户端和七个 provisioning 插件均应视为未经验证。
- 源码审查
- 80/100 · 表现良好
这个 Agent 能做什么,适合哪些场景?
Polter 是 Ghostty 的分支,把终端模拟器与多智能体监督能力组合在同一个桌面应用中。它将一个普通的 Claude Code 终端标记为 supervisor,使该会话能通过 MCP 读取其他标签页的文本、向其中输入内容、创建新标签页并启动独立智能体。协作记录由聊天 TUI 和任务面板呈现,终端转录、任务变更、聊天及每小时统计均保存到 `$XDG_STATE_HOME/polter/`。工作会话彼此独立,而不是某个模型会话内部的子智能体,因此每个工作者产生的文件修改会直接写入共享磁盘。Polter 本身不需要账户或 API 密钥,除非用户主动检查更新,否则不会自行发起网络请求;但它仍要求启动时 `PATH` 中存在可用的智能体 CLI。目前只有 Claude Code 经过测试,macOS 和 Windows 提供下载包,Linux 需要从源码构建。
用户先在一个终端标签页中启动 Claude Code,再通过 Agents → Make This Terminal a Supervisor 将其设为监督者;Polter 会向该标签页输入提示,要求会话读取 supervising skill。监督会话可调用 MCP 工具读取任意标签页屏幕上的文本、通过粘贴路径向标签页发送文本、打开新标签页并在其中启动智能体。它还能建立持久化群聊、分配任务、接收报告,并根据屏幕保持不变的时间发送静止提醒;它不会解析 CLI 输出,也不会自行判定智能体究竟是卡住还是正在思考。Agents → Terminal Conversations 或 polter +chat 打开聊天界面,tab 和 shift+tab 可在会话、任务面板及运行统计三个视图之间切换。src/poltergeist/、MCP 工具层、聊天 TUI、终端转录和插件宿主是 Polter 在 Ghostty 基础上增加的主要组件。运行数据分别写入 $XDG_STATE_HOME/polter/chat/、terminals/、tasks/ 和 stats/,且不会自动脱敏。
- 同时运行多个 Claude Code 会话的开发者,可指定一个会话分派任务并汇总各终端的报告。
- 执行长时间或通宵编码任务的用户,可根据终端画面静止时长发现可能已停止推进的会话。
- 需要让多个独立会话直接协作同一工作目录的团队,可保留每个终端的逐行转录并在次日使用
grep检查。 - 希望在终端内部保留轻量任务归属和完成状态的用户,可使用持久化群聊与任务面板,而无需引入完整项目管理系统。
- 开发 MCP 客户端或智能体 CLI 集成的工程师,可利用其标准 MCP 服务和随附的七个 provisioning 插件进行试验,但 Claude Code 之外的客户端需自行验证。
如何安装或部署这个 Agent?
先确保一个智能体 CLI 在 PATH 中,并且在 Polter 启动时仍可找到。该项目仅明确测试过 Claude Code;Polter 自身不需要账户或 API 密钥,而智能体 CLI 的认证方式未在给定资料中说明。
macOS 13 或更高版本应从 Latest release 下载 Polter-*-macos-universal.zip,然后执行:
unzip Polter-*-macos-universal.zip
xattr -dr com.apple.quarantine Polter.app
mv Polter.app /Applications/之后必须从 Finder 或 Dock 打开 Polter;从终端启动时 PATH 可能不同,provisioning 插件可能找不到智能体 CLI。
Windows 10 或更高版本应下载并解压 Polter-*-windows-x64.zip,运行 polter-host.exe,并将两个 DLL 和 share/ 保留在可执行文件旁。遇到 SmartScreen 时选择“Run anyway”。资料称 Windows 已实现核心 76 个动作中的 70 个,另有 4 个明确拒绝、2 个尚未实现。
Linux 没有预编译二进制,需要从源码构建。给定资料只指出构建说明位于 dev-docs/preview-manual.md,未提供可复制的 Linux 构建命令。
如何使用这个 Agent?
- 打开一个 Polter 标签页,进入目标工作目录并启动 Claude Code。
- 选择
Agents → Make This Terminal a Supervisor。Polter 会提示该会话读取supervisingskill。 - 在监督会话中输入以下验证请求:
Call the `me` tool and tell me what it says.如果返回终端 ID,说明 MCP 工具已可用;如果没有 me 工具,应检查插件是否关闭、Polter 启动时 claude 是否在 PATH 中,以及 poltergeist-register-mcp 是否被关闭。
- 直接告诉监督会话要完成的工作,无需手动提供终端 ID 或工具名称;监督者可自行建立群组、打开标签页、认领终端并跟踪时间。
- 使用
Agents → Terminal Conversations或以下命令查看协作记录:
polter +chat在聊天 TUI 中用 tab 和 shift+tab 切换会话、任务面板和统计视图。默认设置可直接运行;poltergeist-watch 控制屏幕采样,poltergeist-quiescence-after 控制静止多久后提醒,poltergeist-register-mcp 控制启动时是否注册 MCP 服务。
这个 Agent 有哪些优点和局限?
- 监督者可以读取和操作独立终端会话,而工作者并非易在长任务中中断的会话内子智能体。
- 采用纯文本屏幕读取和标准 MCP 接口;Polter 自身无需账户或 API 密钥,日常监督也不需要其自行联网。
- 群聊、任务变更、终端转录和小时统计均持久化到本地,应用重启后仍可检查工作过程。
- 基于 Ghostty 保留其渲染器、VT 实现、字体栈和原生 UI,同时增加 MCP 工具层、聊天 TUI 与插件宿主。
- 对权限边界采取保守设计:不会代替智能体回答权限提示,也不能让智能体解除用户设置的锁定或保护。
- 只有 Claude Code 得到明确测试;Codex 虽在使用场景中被提及,其他 MCP 客户端和七个 provisioning 插件均应视为未经验证。
- 所有聊天和终端记录都不会脱敏,采用前必须把
$XDG_STATE_HOME/polter/当作包含敏感 shell 历史的数据目录管理。 - 静止检测只测量屏幕多久未变化,不解析 CLI 状态,因此无法可靠区分卡死和长时间思考。
- 不能处理智能体权限提示,也不能绕过智能体自身权限,长时间无人值守任务仍可能等待人工介入。
- Windows 的核心动作尚未全部实现;Linux 没有发布二进制,必须自行构建。
- 任务面板仅记录任务归属和完成状态,项目明确不打算把它扩展成完整任务管理系统。
这个 Agent 与同类方案有什么区别?
与 tmux 相比,Polter 不只是复用终端:它增加了 MCP 控制、跨标签页文本读取与输入、静止时长提醒、持久化群聊和任务面板。与 Ghostty 的关系不是竞争或重写;Polter 直接分叉 Ghostty,沿用其终端渲染、VT、字体和原生 UI,并在其上增加 src/poltergeist/、MCP 工具层、聊天 TUI、转录与插件宿主。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|
| Polter 多终端智能体监督器 当前 | 80 · 表现良好 | ★ 11 | 今天 | Zig | Claude Code |
| MassGen 多智能体协作系统 | 51 · 缺口较多 | ★ 1.1k | 3 个月前 | Python | Codex · Claude Code · OpenAI API · Claude API |
| Spring AI Alibaba | 53 · 缺口较多 | ★ 11k | 8 天前 | Java | — |
| tRPC-Agent-Go | 53 · 缺口较多 | ★ 1.8k | 2 天前 | Go | OpenAI API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
权限模型有逐终端令牌、监督者角色、目标端 shield/watch 标记、插件调用白名单、禁止代答权限提示及用户主动检查更新等控制;网络、日志和凭据流向也披露得非常具体。扣分点是未标记终端属于开放情形、同一用户进程不构成隔离边界、发送文本没有逐次人工确认、日志默认开启且不脱敏/不清理、Windows 日志权限未经验证,插件设置权限收紧失败也只是警告。依赖安全仅见固定 Zig 版本和固定主版本的 CI actions,未提供依赖审计、漏洞扫描或关键依赖缓解证据。终端输入和建新标签会产生实质外部效果,但范围与防护已有说明;对已发送命令或代理造成的文件改动没有通用回滚。Ghostty 来源、分叉关系、作者版权和非隶属关系归属清楚。
README、SECURITY、CI 和跨平台适配器比较脚本在功能边界及平台差异上高度一致;比较脚本还明确验证退出码、JSON 字节和允许的规范化差异,因此自洽性证据充分。依赖与环境要求有说明,CI 覆盖 macOS 构建测试和 Linux 核心构建,但只实测 Claude Code,Linux 监督会话未验证,Windows 行为多来自代码阅读。FAQ、显式拒绝、解析失败及测试脚本错误信息较具体,但材料未展示所有运行时故障路径的统一诊断体验。
材料清楚面向同时管理多个 Claude Code/Codex 终端、夜间任务和人工查看记录等场景,并详细区分终端、监督者、工作者、任务面板与普通子代理。能力边界和非目标写得很完整,包括不判断“卡住”、不代答权限提示、不绕过代理权限及不成为完整任务系统。触发条件总体明确,但静止时间只是信号,卡住与思考仍依赖模型判断,屏幕内容也可能诱发提示注入。macOS、Windows、Linux 的安装与差异有说明,不过 Linux 无二进制且未验证,Windows 少数动作欠缺,非 Claude CLI 仅属未测试兼容。
README 的下载、快速开始、设置、FAQ、上游关系和设计文档入口组织良好;安装前提、平台步骤、示例验证问题和故障排查足够具体。已明确披露无日志保留、无脱敏、提示注入、缺少安全审计/模糊测试、平台验证不足等限制。MIT 文本完整且同时归属上游与分叉贡献者。命名仍混用 Polter、poltergeist 和 GHOSTTY_POLTER_*,虽可理解但稳定性略受影响。材料指向 latest release 和更新检查,却没有提供版本政策或变更日志证据。维护边界、私密漏洞报告渠道和单一作者现状明确,但没有响应时限或更完整的维护承诺。
产品输出包括可重启保存的群聊、任务面板、统计视图、终端文本记录与静止时长,对多终端监督具有直接可用性;相较普通终端复用工具,其监督视图、跨标签读取/输入和代理协调形成明显增量价值。扣分在于它需要运行一个大型 Ghostty 分叉、额外监督会话及本地持久日志,并引入提示注入和终端控制风险;除静态描述外,也没有用户研究或量化收益证据。
SECURITY 将大多数机械性主张追溯到具体文件、函数和行号,并明确声明代码冲突时以代码为准。README、许可证、CI 配置和适配器比较脚本对平台状态、来源、测试范围及功能边界形成多源交叉支持。事实、设计决定、观察、未验证事项和未执行的安全工作被清楚区分,尤其没有把代码阅读说成审计或实机验证,因此三项均有充分静态证据。
- 终端日志和聊天记录默认开启、无脱敏且没有保留期限;其中可能包含 API 密钥、令牌、路径和命令输出,尤其应先核实 Windows 上的实际文件权限。
- 监督者会把工作终端显示的文本纳入模型上下文,当前没有可信边界或注入标记;让工作者处理网页、构建输出、提交消息等不可信内容时,可能诱导监督者执行操作。
- 未标记终端可被任何持有有效终端令牌的调用者访问,同一用户身份下的其他进程也不在隔离边界内;应主动使用 watch/shield,并把插件视为本机可执行程序。
- 项目没有安全审计、RPC 模糊测试或对 Linux 监督会话的实机验证;Windows 日志权限与大部分行为也未获实测确认。
- 发布的 macOS 构建未签名,安装说明要求移除 quarantine;在执行前应独立核验下载物、提交来源和校验信息。
常见问题
使用 Polter 是否需要额外账户、API 密钥或网络连接?
为什么监督会话找不到 Polter 工具?
claude 不在 PATH 中,或 poltergeist-register-mcp 被关闭。MCP 注册会指向最后启动的构建。