project-initlisted
Install: claude install-skill zkylek1212-k/Project-init-skill
# Project Init(開場一次性設定)
## 啟用規則(最高優先)
- **只由使用者執行**:唯一合法觸發是使用者輸入 `/project-init`。其他情況一律不啟用,
即使對話提到新專案、初始化、implement.md、memory、agent-hub 也一樣。
- **每個專案只跑一次**:起手先檢查哨兵檔 `.project-init.done`。存在就**立刻停止**,
回一句「此專案已初始化(見 .project-init.done),如需重跑請先刪除該檔」,不做任何修改。
- 全程在**當前專案根目錄**操作,不動其他專案。
## 起手:哨兵檢查
```bash
test -f .project-init.done && cat .project-init.done
```
有輸出 → 停止(見上)。沒有 → 往下跑步驟 1。
---
## 步驟 1:掛上 agent-hub(永遠執行)
1. 讀本 skill 目錄下的 `agent-squad.md`,那是**派工模型名單的唯一真相來源**
(與 multi-agent-dispatch skill 內文若有出入,以 `agent-squad.md` 為準)。
2. 確認 hub 活著:載入並呼叫 `get_active_workers`
(工具若是 deferred,先 `ToolSearch` query `select:mcp__plugin_multi-agent-hub_agent-hub__get_active_workers`)。
- 回傳 worker 名單 → 記下實際可用的 worker 名稱。
- 連不上/空名單 → **不要卡住**,標記「agent-hub 目前不可用,本專案先以 solo 模式進行」,繼續步驟 2。
3. 把名單落地到專案:若專案根目錄沒有 `agent-squad.md`,複製本 skill 的那份過去
(已存在就不覆蓋)。這樣之後的 session 不必再問。
4. 回報一張表:檔位 / worker / model / 適用,並標注哪些 worker 這次真的在線。
> 派工 SOP 本身不在這裡重寫——真要派工時走 `multi-agent-dispatch` skill(含 solo-first triage)。
---
## 步驟 2:讀 implement.md(條件執行)
```bash
ls implement.md IMPLEMENT.md docs/implement.md 2>/dev/null
```
- **找不到** → 跳過步驟 2、3,直接進步驟 4,並在最後回報寫明「無 implement.md,略過優化」。
- **找到** → 完整讀完(不要只讀開頭),再進步驟 3。
---
## 步驟 3:優化 implement.md(只在步驟 2 有讀到時)
先備份:`cp implement.md implement.md.bak`(已有 .bak 就加時間戳)。
用這份檢查表逐條掃,**只改真的有問題的地方**,不要重寫整份、不要為了顯得有做事而加篇幅:
| # | 檢查項 | 不合格的樣子 | 怎麼改 |
|---|---|---|---|
| 1 | 目標可驗收 | 「優化效能」「改善體驗」 | 換成可測的完成條件(數字、指令、預期輸出) |
| 2 | 任務顆粒度 | 一條任務橫跨多個模組 | 拆成單一責任的子