角色 (Role)
Roles
把常用的 AI 启动参数(技能、提示词、模型)保存为“角色”。
Save your favorite agent settings (skills, prompts, models) as Roles.
告别单兵写代码与人肉切终端。一个 AI 总管统领全屏小队,持续交付不卡死。
Built on Ghostty. A local agentic workspace where one AI Supervisor directs an entire squad of coding agents across your screen.
73 秒演示视频:给你的 AI 找个总管。
The 80-second film: give your AI agents a supervisor.
同时开好几个 Claude Code 或 Codex 窗口,非常难以管理。
Running multiple Claude Code or Codex windows at the same time is hard to manage.
这些 AI“打工人”经常在长任务中途停摆。
Sub-agents often stop working halfway through a long task.
通宵干活,往往两三个小时后就卡在某个需要确认的提示前发呆。
An overnight job gets stuck after a few hours, waiting for input.
它可以是 Claude Code、Codex、OpenCode 或任意 AI CLI,Polter 赋予了它统领其他标签页的全局视角与调度工具。
It can be Claude Code, Codex, OpenCode, or any AI CLI — Polter equips it with full orchestration tools to govern peer tabs.
总管可以读取任何标签页屏幕上的纯文本——是真正的文字,不是截图识别。
The supervisor agent can read the text on any tab — real text, not screenshots.
能在任意标签页里输入指令。
It types commands into any tab.
还能新建标签页启动新的打工人。
And it opens new tabs to start new agents.
Polter 会计算每个屏幕有多久没动静了,一旦卡死,立刻通报给总管。
Polter tracks how long each screen has been inactive and tells the supervisor if a worker is stuck.
worker 停在权限确认上,由总管处理:能判断的自己回答,判断不了的提到你面前并发系统通知。不想让它答,可以在那个标签页关掉(Agent → 允许总管在此回答提示)、把标签页护起来,或者对全部关掉(poltergeist-may-authorise = false)。
A worker stopped on a permission prompt is the supervisor's to deal with: it answers the ones it can judge and brings the rest to you, with a system notification. To say no, switch it off on that tab (Agents → Let a Supervisor Answer Prompts Here), shield the tab, or switch it off for all of them (poltergeist-may-authorise = false).
团队管理:这个任务面板就算你重启终端也依然在。
Team Management: this task panel survives a terminal restart.
任务面板仅仅记录谁在干什么,以及干完了没有。
The panel merely holds who is on what, and whether it's done.
打开总控台的「群聊」页签(或运行 polter +chat)看它们的聊天记录。按 tab 或 shift+tab 可切换对话、任务看板和统计视图。
Open the control room's chat tab (or run polter +chat) to see what they discussed. Press tab or shift+tab to cycle views: the conversation, the task panel, and the night's stats.
把常用的 AI 启动参数(技能、提示词、模型)保存为“角色”。
Save your favorite agent settings (skills, prompts, models) as Roles.
通过“项目”功能可以保存当前所有的标签页、目录和历史记录,下次一键恢复(支持 macOS 和 Windows)。
Save your workspace (tabs, directories, history) as Projects and load them later (macOS and Windows only).
由角色启动的智能体(Claude Code、Codex、OpenCode、Antigravity)在一轮对话结束时,会主动告诉 Polter 它说了什么。总管直接收到通知,不必等待屏幕静止。
An agent started from a Role (Claude Code, Codex, OpenCode, Antigravity) tells Polter when its turn ends and what it said. The supervisor is notified directly, without waiting for a still screen.
内置 resource_overview 引擎,毫秒级常驻监控 Polter 自身、各 Worker 进程、MCP 边车、Swap 交换分区与磁盘余量。
Built-in resource_overview engine continuously monitors Polter, worker processes, MCP sidecars, swap usage, and free disk headroom.
核心层支持按群组终端聚合工作目录,识别工作树归属并浏览项目文本文件,带过宽路径保护。
The core aggregates working directories per group, tracking worktree associations and project files with excessive-path guards.
开箱支持按角色精准关联指定 AI CLI(包括 OpenCode v1/v2、Codex、Claude Code、Antigravity),启动菜单自适应裁剪。
Bind specific agent CLIs to roles (including OpenCode v1/v2, Codex, Claude Code, Antigravity) with adaptive launch filtering.
角色、项目、插件和配置文件全部在一个设置窗口中集中管理。
Roles, projects, plugins, and configs are managed in one place (Settings…).
菜单和窗口会自动跟随系统语言,也可以在 Language 中手动切换。
UI supports English and Chinese (follows your system setting or the Language menu).
Polter 内置的截图工具,最大的特点是标注是可读的数据。
Polter comes with a built-in screenshot tool specifically designed for AI workflows.
每张图旁边都有一个 .json 文件,记录了你写的字、框的位置和编号。粘给 AI 时,标注文字随图片一起以纯文本送达,AI 不需要再从图里“肉眼认字”。
The text you write and the boxes you draw are saved as readable data. A .json file is created next to every screenshot. When you paste the image to the AI, your annotations are sent alongside it as pure text, meaning the AI doesn't need to guess or use OCR to read your handwriting.
快捷键(Mac ⌘⇧0,Windows Ctrl+Shift+0)。
Press ⌘⇧0 (Mac) or Ctrl+Shift+0 (Windows). Works globally.
注意:在 Windows 上,该热键极易与系统的“切换输入语言”快捷键冲突,特别是安装了多个中文输入法时。
Note: on Windows, if you have multiple Chinese input methods, this shortcut might be occupied by the system's “switch input language” hotkey.
按住 ⌘⇧ (Mac) 或 Ctrl+Shift (Windows) 单击鼠标。
Hold ⌘⇧ (Mac) or Ctrl+Shift (Windows) and click your mouse.
注意:这是系统级拦截。在 Windows 上该点击会被 Polter 吞掉;但在 Mac 上点击会穿透到底层应用,比如在浏览器里可能会误点开链接。你可以在设置里通过 screenshot-mouse-trigger 修改或设为 none。
Note: this is a system-wide hook. On Windows, Polter swallows the click. On macOS, the click passes through to the app below, which might open links. You can change this behavior or disable it via the screenshot-mouse-trigger setting.
自动吸附窗口或自由框选。点击“长截图”,程序会自动向下滚动拼接长网页或代码。
Auto-selects windows or free-drags. Click “Long Screenshot” to automatically scroll and stitch a long webpage or code file.
矩形、箭头、文字、编号,以及不可还原的马赛克(原图只留在内存,绝不写进硬盘或剪贴板)。
Add text, arrows, numbers, or boxes. Includes an irreversible mosaic blur (the unblurred original is only in memory, never written to disk or clipboard).
总管可以通过 MCP 工具列出窗口、静默截图、截长图或自行画标注。
Your Supervisor agent can use MCP tools to list windows, take screenshots, capture long pages, or draw annotations.
如果你注重隐私,可以通过 screenshot-agent-access 设置关闭它,默认是允许的。
If you want strict privacy, you can disable this via the screenshot-agent-access setting; it is allowed by default.
macOS 需要同时授予「屏幕录制」和「辅助功能」权限。辅助功能用于自动滚动和 agent 的 screenshot_long 工具;不授权的话,长截图会自动退化为手动滚动,且 agent 请求长截图会直接报错。Windows 版不需要任何权限。
macOS requires both “Screen Recording” and “Accessibility” permissions. Accessibility is needed for auto-scrolling and the agent's screenshot_long tool. Without it, scrolling falls back to manual, and agent long captures will fail. Windows requires no permissions.
每次启动时,截图目录里超过 7 天且符合截图命名规则的文件(包含粘贴进来的剪贴板图片)会被自动清理。
Every time Polter starts, screenshots older than 7 days that match the naming convention (including pasted clipboard images) are automatically deleted from the screenshot folder.
terminal_send 只通过粘贴通道发送纯文本,控制字节会被转成空格。它无法强迫 AI 去做被禁止的操作。
terminal_send sends text only, down the paste path, with control bytes turned into spaces. It cannot force an agent to bypass its own permissions.
默认是所有没被护住的标签页,包括「以后不再询问」。在标签页上关掉开关、把它护起来,或者设 poltergeist-may-authorise = false,那些确认就等你来答;这三样没有任何工具能撤销。
By default that is every tab that is not shielded, "don't ask again" included. Switch it off on a tab, shield it, or set poltergeist-may-authorise = false, and those prompts wait for you; no tool can undo any of the three.
终端画面的锁定 (hold) 和防护 (shield) 只能由你设置和解除,AI 无法解锁。
The terminal UI hold and shield are yours to set and yours to lift. An agent cannot unlock them.
任务面板仅仅记录谁在干什么,以及干完了没有。
The panel merely holds who is on what, and whether it's done.
Polter 不会自动发送任何信息到云端。你可以把它当成普通的 shell 历史记录对待。所有文件都在 $XDG_STATE_HOME/polter/ 目录下:
Nothing is redacted or sent to the cloud by Polter. Think of it like your normal shell history. Files land in $XDG_STATE_HOME/polter/:
chat/terminals/tasks/stats/Settings… menu. Some useful ones:poltergeist-watch
是否允许屏幕采样。默认关闭;总管可针对单个终端打开。
Allows screen sampling (off by default; supervisor turns it on with set_watch).
poltergeist-quiescence-after
屏幕发呆多久后才会通知总管(这是一个时长配置,例如默认 3 分钟)。
A duration (e.g., 3 minutes by default) for how long a screen stays still before notifying the supervisor.
poltergeist-register-mcp
是否在启动时注册 MCP 服务(默认开启)。
Whether to register the MCP server at startup (on by default).
screenshot-directory
截图的保存目录。如果你的 agent 被限制只能读取工作区内的文件,可以把截图路径指向你的项目目录。
Where screenshots are saved. Extremely useful to point into your project directory if your agent cannot read files outside its workspace.
screenshot-agent-access
是否允许 agent 使用 MCP 截图工具。
Whether agents are allowed to use screenshot MCP tools.
clipboard-paste-image
粘贴图片时,是否将其转换为文件路径交由 CLI 读取。
Whether pasting an image into the terminal turns it into a file path for the CLI to read.
前置条件:你需要有一个智能体 CLI(命令行工具)在你的系统 PATH 环境变量中,且在 Polter 启动的那一刻就存在。目前仅针对 Claude Code 进行了深度测试。
Prerequisites: an agent CLI, on your PATH, and on it at the moment Polter starts. Only tested deeply with Claude Code.
打开一个 Polter 标签页,cd 到你的代码目录,启动 Claude Code。
Open a tab in Polter, cd to your project folder, and start Claude Code.
点击菜单栏:Agent → 设当前终端为总管。
Go to the menu: Agents → Make This Terminal a Supervisor.
直接告诉总管你想做什么项目。接下来它会自己建群、开标签页、分配任务。
Tell the supervisor what you want to build. It will handle opening tabs and assigning tasks on its own.
把它挂在后台。之后你可以打开总控台的「群聊」页签(或运行 polter +chat)看它们的聊天记录。按 tab 或 shift+tab 可切换对话、任务看板和统计视图。
Let it work. Later, open the control room's chat tab (or run polter +chat) to see what they discussed. Press tab or shift+tab to cycle views: the conversation, the task panel, and the night's stats.
以下其他列的数据来源于对应项目官方文档,读于 2026-10-04。
Data read on 2026-10-04, based on each project's official docs.
| 对比项Feature | Polter | tmux | Claude Code (子智能体)(Sub-agents) | Claude Squad | cmux |
|---|---|---|---|---|---|
| 它是啥?What is it? | Polter面向多 Agent 的 Vibe Studio (基于 Ghostty)Agentic Vibe Studio (built on Ghostty) | tmux终端复用器Terminal multiplexer | Claude CodeClaude Code 会话内部功能Feature inside one Claude Code session | Claude Squad基于 tmux 和 git 工作区的 TUITUI using tmux and git worktrees | cmux基于 Ghostty 的 macOS 终端Ghostty-based macOS terminal |
| 谁来监督 AI?Who watches agents? | Polter另一个 AI (总管)Another AI (Supervisor) | tmux你自己You | Claude Code父级会话The parent AI session | Claude Squad你,在同一个窗口里You, in one window | cmux你 (通过通知提示音)You (via notifications) |
| 工作节点是啥?What is a worker? | Polter终端里的独立会话Independent session in a terminal tab | tmux你在窗格里启动的任何东西Whatever runs in a pane | Claude Code父会话的子智能体A sub-agent of the parent session | Claude Squad自己工作区里的独立会话Independent session in a git worktree | cmux你在窗格里启动的任何东西Whatever runs in a pane |
| 画面不动时?If it stops moving? | Polter总管会被告知它发呆了多久Supervisor is told how long it’s been idle | tmux状态栏高亮并响铃 (需配置)Bell rings (if configured) | Claude Code— | Claude Squad— | cmux响铃 (当 agent 发信号时)Notification rings |
| 文件隔离?File isolation? | Polter无 (共享当前代码库)None (they share your checkout) | tmux无None | Claude Code父目录 (或按要求新建工作区)Parent directory (or worktree if asked) | Claude Squad每个智能体有独立的 git 工作区Separate git worktree and branch each | cmux无None |
| 支持平台Platforms | PoltermacOS, Windows | tmux类 Unix 系统Unix-like systems | Claude Code能跑 Claude Code 的地方Wherever Claude Code runs | Claude Squad需要 tmux 和 ghRequires tmux and gh |
cmuxmacOS |
Polter 没有的功能:它不会为工作节点提供独立的 worktree,也没有 cmux 那样的浏览器面板。如果你非常需要基于任务的文件隔离,Claude Squad 的架构是专门为你打造的。
What Polter does not have: it gives workers no worktree of their own, and it has no browser pane (which cmux has). If isolation per task is what you need, Claude Squad's model is the one built for it.
Polter-*-macos-universal.zip
原生支持 Apple 芯片和 Intel。
Apple Silicon and Intel supported.
Polter-*-windows-x64.zip
x64。解压即用,无需安装,也不需要任何权限。
x64. Unzip and run, no installer and no permissions needed.
无现成安装包。需从源码编译。(截图功能此版本暂未实现)。
No pre-built binary. You must build from source. (Screenshot feature not yet available).
目前的安装包没有签名,会被苹果 Gatekeeper 拦截。请打开终端,输入以下命令解除隔离:
The builds are currently unsigned, so Apple's Gatekeeper will block it. Run this in your terminal to allow it:
unzip Polter-*-macos-universal.zip xattr -dr com.apple.quarantine Polter.app mv Polter.app /Applications/
重要提示:请从“访达 (Finder)”或“程序坞 (Dock)”中双击打开 Polter,不要通过终端命令启动,以确保它能正确读取你 PATH 中的 AI 工具环境变量。
Important: open Polter from your Finder or Dock, not from the terminal, so it can correctly find your agent tools on your PATH.
解压后直接运行 polter-host.exe,请把其他文件(DLL 和 share 文件夹)跟它放在同一个目录下。
Unzip the folder and run polter-host.exe. Keep all other files (like DLLs and share/) in the same folder.
如果遇到 Windows SmartScreen 拦截,点击“详细信息 → 仍要运行”即可。
If Windows SmartScreen warns you, click “Run anyway”.
三种可能:插件被禁用了;Polter 启动时 claude 命令不在 PATH 中;或者你在设置里把 poltergeist-register-mcp 关了。注册表指向的是最后一次启动的构建版本。
Three causes: the plugin is off, claude wasn't on your PATH when Polter started, or poltergeist-register-mcp is off. The registration points at whichever build started last.
服务端用的是标准 MCP 协议,任何 MCP 客户端都能接进来,自带了 7 个配置插件。但目前只针对 Claude Code 做了深度测试,其它工具请当作未测试对待。
The server uses standard MCP, so any MCP client can run it, and 7 provisioning plugins ship with it. However, we have only tested it deeply with Claude Code. Treat the rest as untested.
不是。tmux 只是帮你分屏,盯着屏幕的活儿还得你干。Polter 的作用是把其它节点的发呆时间汇报给某一个智能体,并允许它读取别的屏幕和敲键盘。
No. tmux arranges panes and leaves the watching to you. Polter tells one agent how long each of the others has been still and lets it read their screens and type into them.
如果你只是想在一个会话内拆分任务,确实不需要。子智能体从属于父会话;但 Polter 的工作节点是完全独立的终端会话,总管可以跨终端管理它们。
Not if all you want is to split one job up inside one session. A sub-agent belongs to its parent session. A Polter worker is an independent session in its own terminal, and the supervisor can read its screen and is told how long it has been still.
它并不知道。它只测量一件事——屏幕有多久没有发生变化——且不解析任何 CLI 的输出。到底是卡住了还是在思考,由总管自己来判断。
It doesn't. It measures one thing—how long a screen has been unchanged—and parses no CLI's output. Whether that means it's stuck or just thinking is the supervisor's call.
没有。steipete/poltergeist 是一个文件监视器和构建工具,它的命令也叫 polter。这两个项目除了共用“幽灵”主题外毫无关联,这里的 poltergeist-* 仅仅是本项目的设置项前缀。
No. steipete/poltergeist is a file watcher and build tool, and its wrapper command is also called polter. The two projects share a ghost theme and nothing else; poltergeist-* here is only the prefix of this project's settings.
一个目录、一个 plugin.json,外加一个可执行文件。20 行 shell 脚本就能写一个完整的插件。
A directory, a plugin.json, and an executable. Twenty lines of shell is a complete plugin.