command-postlisted
Install: claude install-skill HsuanYuLee/polaris
# 指揮官模式 — 圖、下令、交棒、往上請示
多個 session 同時活著的時候,**沒有人知道全貌**。忘記關掉的吃著整台機器;兩個對同一棵樹
動手害彼此重跑;發號施令的那一個不知道別人手上有什麼,於是重複開單。
這支 skill 做四件事:**畫地圖**、**指揮**(一對一派工,或指派幾個 session 互審)、
**交棒**、**問人的時候問得清楚**。
**指揮官是一個角色,不是一個 session。** 狀態全部住在檔案裡——session 登錄、每個 session
自己寫的宣告、單樹的輪次狀態、板子上唯一手寫的那一格。任何讀了那幾份檔的 session 都接得
起來,所以換一個不需要交接會議,只需要照〈五、交棒〉那一節走。
**目錄名與腳本檔名仍然是 `command-post`。** 它是識別字:`POLARIS-ACTOR-IDENTITY` 那一行
指著那條路徑,改名會讓每一張單的 `holders[]` 從下一次寫入起推不出是誰。名字給人讀,路徑
給機器讀,兩者不必是同一個字。
## 一、地圖
```bash
python3 .claude/skills/command-post/scripts/command-post.py
python3 .claude/skills/command-post/scripts/command-post.py --json
```
**它不問任何人。** 答案全部讀得出來——`~/.claude/sessions/{pid}.json` 是完整的登錄,
每一份帶著 `name`、`pid`、`cwd`、`sessionId`、`messagingSocketPath`。逐個問一輪要花掉每個
peer 一輪 context,而那一輪的答案還不一定比它自己剛寫下的話新。
**「它在做什麼」是那個 session 自己寫下的宣告**,不是它 transcript 裡最後一則說的話,
也不從名字、路徑或進程資訊推一句——**推出來的那一句長得跟讀到的一模一樣**,而它會在最需要
真話的時候是錯的。
每個 session 自己寫自己的那一行,只寫自己的:
```bash
python3 .claude/skills/command-post/scripts/command-post.py --declare \
--session-id <自己的 sessionId> \
--holding '接的是什麼' --blocked-on '現在卡在哪;沒卡就寫「沒有」' \
--tickets-opened '開了哪幾張單給誰'
```
### 為什麼是宣告,不是最後一則話
兩個理由,第二個才是真正的那一個。
一、最後一則話是「它剛好講到哪」,不是「它在做什麼」。
二、**讀不完,而且差的是數量級。** 2026-08-29 量到:
| 想讀進來的東西 | 量 | 換成 200k 視窗 |
|---|---|---|
| 8 個活著的 session 的 transcript | 220.5 MB(最大一份 92.4 MB/45,135 筆),約 5,780 萬 token | **289 倍** |
| `.claude/skills` 底下 184 份 `.md` | 933 KB,約 239k token | **1.2 倍**(載進去就沒有空間工作了) |
| `issues/` 底下 1,932 份單的正文 | 15.7 MB,約 410 萬 t