194 lines
5.2 KiB
Markdown
194 lines
5.2 KiB
Markdown
|
|
---
|
|||
|
|
name: evolve
|
|||
|
|
description: 將相關的直覺 (Instincts) 聚類為技能 (Skills)、指令 (Commands) 或 Agent (Agents)
|
|||
|
|
command: true
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 演進指令 (Evolve Command)
|
|||
|
|
|
|||
|
|
## 實作方式
|
|||
|
|
|
|||
|
|
使用外掛程式根路徑執行直覺 CLI:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
python3 "${CLAUDE_PLUGIN_ROOT}/skills/continuous-learning-v2/scripts/instinct-cli.py" evolve [--generate]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
或者,如果未設定 `CLAUDE_PLUGIN_ROOT` (手動安裝):
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
python3 ~/claude/skills/continuous-learning-v2/scripts/instinct-cli.py evolve [--generate]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
此指令會分析直覺,並將相關聯的直覺聚類為更高層級的結構:
|
|||
|
|
- **指令 (Commands)**:當直覺描述了使用者呼叫的動作時。
|
|||
|
|
- **技能 (Skills)**:當直覺描述了自動觸發的行為時。
|
|||
|
|
- **Agent (Agents)**:當直覺描述了複雜的多步驟流程時。
|
|||
|
|
|
|||
|
|
## 使用方式
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
/evolve # 分析所有直覺並建議演進方向
|
|||
|
|
/evolve --domain testing # 僅對測試領域的直覺進行演進
|
|||
|
|
/evolve --dry-run # 顯示將會建立的內容,而不實際建立
|
|||
|
|
/evolve --threshold 5 # 需要 5 個以上相關直覺才進行聚類
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 演進規則
|
|||
|
|
|
|||
|
|
### → 指令 (使用者呼叫)
|
|||
|
|
當直覺描述了使用者明確要求的動作時:
|
|||
|
|
- 多則關於「當使用者要求...」的直覺。
|
|||
|
|
- 具有「當建立新的 X 時」等觸發條件的直覺。
|
|||
|
|
- 遵循可重複序列的直覺。
|
|||
|
|
|
|||
|
|
範例:
|
|||
|
|
- `new-table-step1`:「新增資料庫表格時,建立 migration」
|
|||
|
|
- `new-table-step2`:「新增資料庫表格時,更新 schema」
|
|||
|
|
- `new-table-step3`:「新增資料庫表格時,重新生成型別」
|
|||
|
|
|
|||
|
|
→ 演進為:**new-table** 指令
|
|||
|
|
|
|||
|
|
### → 技能 (自動觸發)
|
|||
|
|
當直覺描述了應自動發生的行為時:
|
|||
|
|
- 模式匹配觸發器 (Pattern-matching triggers)。
|
|||
|
|
- 錯誤處理回應。
|
|||
|
|
- 程式碼風格強制執行。
|
|||
|
|
|
|||
|
|
範例:
|
|||
|
|
- `prefer-functional`:「撰寫函式時,優先使用函式式風格」
|
|||
|
|
- `use-immutable`:「修改狀態時,使用不可變模式」
|
|||
|
|
- `avoid-classes`:「設計模組時,避免使用類別導向設計」
|
|||
|
|
|
|||
|
|
→ 演進為:`functional-patterns` 技能
|
|||
|
|
|
|||
|
|
### → Agent (需要深度/隔離)
|
|||
|
|
當直覺描述了受益於隔離的複雜多步驟流程時:
|
|||
|
|
- 偵錯工作流。
|
|||
|
|
- 重構序列。
|
|||
|
|
- 研究任務。
|
|||
|
|
|
|||
|
|
範例:
|
|||
|
|
- `debug-step1`:「偵錯時,先檢查日誌」
|
|||
|
|
- `debug-step2`:「偵錯時,隔離故障元件」
|
|||
|
|
- `debug-step3`:「偵錯時,建立最小重現範例」
|
|||
|
|
- `debug-step4`:「偵錯時,透過測試驗證修復」
|
|||
|
|
|
|||
|
|
→ 演進為:**debugger** Agent
|
|||
|
|
|
|||
|
|
## 操作步驟
|
|||
|
|
|
|||
|
|
1. 從 `~/.claude/homunculus/instincts/` 讀取所有直覺。
|
|||
|
|
2. 依據以下條件將直覺分組:
|
|||
|
|
- 領域相似性。
|
|||
|
|
- 觸發模式重疊。
|
|||
|
|
- 動作序列關聯。
|
|||
|
|
3. 針對每個由 3 個以上相關直覺組成的群聚:
|
|||
|
|
- 確定演進類型 (指令/技能/Agent)。
|
|||
|
|
- 生成對應檔案。
|
|||
|
|
- 儲存至 `~/.claude/homunculus/evolved/{commands,skills,agents}/`。
|
|||
|
|
4. 將演進後的結構連結回來源直覺。
|
|||
|
|
|
|||
|
|
## 輸出格式
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
🧬 演進分析 (Evolve Analysis)
|
|||
|
|
==================
|
|||
|
|
|
|||
|
|
發現 3 個準備好演進的群聚:
|
|||
|
|
|
|||
|
|
## 群聚 1:資料庫遷移工作流 (Database Migration Workflow)
|
|||
|
|
直覺:new-table-migration, update-schema, regenerate-types
|
|||
|
|
類型:指令 (Command)
|
|||
|
|
置信度:85% (基於 12 次觀察)
|
|||
|
|
|
|||
|
|
將建立:/new-table 指令
|
|||
|
|
檔案:
|
|||
|
|
- ~/.claude/homunculus/evolved/commands/new-table.md
|
|||
|
|
|
|||
|
|
## 群聚 2:函式式程式碼風格 (Functional Code Style)
|
|||
|
|
直覺:prefer-functional, use-immutable, avoid-classes, pure-functions
|
|||
|
|
類型:技能 (Skill)
|
|||
|
|
置信度:78% (基於 8 次觀察)
|
|||
|
|
|
|||
|
|
將建立:functional-patterns 技能
|
|||
|
|
檔案:
|
|||
|
|
- ~/.claude/homunculus/evolved/skills/functional-patterns.md
|
|||
|
|
|
|||
|
|
## 群聚 3:偵錯流程 (Debugging Process)
|
|||
|
|
直覺:debug-check-logs, debug-isolate, debug-reproduce, debug-verify
|
|||
|
|
類型:Agent
|
|||
|
|
置信度:72% (基於 6 次觀察)
|
|||
|
|
|
|||
|
|
將建立:debugger Agent
|
|||
|
|
檔案:
|
|||
|
|
- ~/.claude/homunculus/evolved/agents/debugger.md
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
執行 `/evolve --execute` 以建立這些檔案。
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 旗標 (Flags)
|
|||
|
|
|
|||
|
|
- `--execute`:實際建立演進後的結構 (預設為預覽)
|
|||
|
|
- `--dry-run`:預覽而不實際建立
|
|||
|
|
- `--domain <name>`:僅對指定領域的直覺進行演進
|
|||
|
|
- `--threshold <n>`:形成群聚所需的最小直覺數量 (預設為 3)
|
|||
|
|
- `--type <command|skill|agent>`:僅建立指定類型
|
|||
|
|
|
|||
|
|
## 生成檔案格式
|
|||
|
|
|
|||
|
|
### 指令 (Command)
|
|||
|
|
```markdown
|
|||
|
|
---
|
|||
|
|
name: new-table
|
|||
|
|
description: 透過 migration、schema 更新與型別生成來建立新的資料庫表格
|
|||
|
|
command: /new-table
|
|||
|
|
evolved_from:
|
|||
|
|
- new-table-migration
|
|||
|
|
- update-schema
|
|||
|
|
- regenerate-types
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# New Table 指令
|
|||
|
|
|
|||
|
|
[基於聚類直覺生成的內容]
|
|||
|
|
|
|||
|
|
## 步驟
|
|||
|
|
1. ...
|
|||
|
|
2. ...
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 技能 (Skill)
|
|||
|
|
```markdown
|
|||
|
|
---
|
|||
|
|
name: functional-patterns
|
|||
|
|
description: 強制執行函式式程式設計模式
|
|||
|
|
evolved_from:
|
|||
|
|
- prefer-functional
|
|||
|
|
- use-immutable
|
|||
|
|
- avoid-classes
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 函式式模式技能 (Functional Patterns Skill)
|
|||
|
|
|
|||
|
|
[基於聚類直覺生成的內容]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Agent
|
|||
|
|
```markdown
|
|||
|
|
---
|
|||
|
|
name: debugger
|
|||
|
|
description: 系統性偵錯 Agent
|
|||
|
|
model: sonnet
|
|||
|
|
evolved_from:
|
|||
|
|
- debug-check-logs
|
|||
|
|
- debug-isolate
|
|||
|
|
- debug-reproduce
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 偵錯 Agent (Debugger Agent)
|
|||
|
|
|
|||
|
|
[基於聚類直覺生成的內容]
|
|||
|
|
```
|