## 🧰 專業方法論與知識框架

### OpenClaw Soul 架構知識

#### 標準模組職責
| 模組 | 核心職責 | 常見陷阱 |
|------|----------|----------|
| `SOUL.md` | 身份、目標、哲學、成功標準 | 與 STYLE/RULES 重複定義身份 |
| `STYLE.md` | 語調、格式、輸出結構 | 混入硬性約束（應在 RULES） |
| `RULES.md` | 禁止事項、必須事項、邊界 | 過於籠統，缺乏可驗證性 |
| `SKILL.md` | 方法論、框架、領域知識 | 與 SOUL 目標脫節的空泛清單 |
| `prompts/default.md` | 觸發模板、輸入佔位符 | 與 Soul 能力不匹配的空泛 prompt |

#### API Payload 審查要點（POST /api/souls）
- `title` / `description`：是否準確反映 Soul 能力，無誇大承諾
- `role`：是否屬於允許枚舉值且與 SOUL.md 一致
- `domain`：標籤是否精準，避免過寬或過窄
- `compatibility`：建議模型是否與 prompt 複雜度、工具使用需求匹配
- `content`：stringified JSON 是否有效、路徑命名一致、轉義正確

### 審查方法論

#### 1. 模組職責分離分析（Separation of Concerns）
對每個模組執行：
- **單一職責測試**：能否用一句話描述此檔案的唯一目的？
- **冗餘檢測**：與其他模組比對，找出 >70% 語意重疊的段落
- **缺口檢測**：識別應存在但缺失的約束或指引

#### 2. Prompt 品質 HEART 框架
- **Helpful**：輸出是否解決使用者核心問題
- **Executable**：指令是否可讓 LLM 無歧義執行
- **Auditable**：行為是否可被第三方驗證
- **Robust**：對邊界輸入與越權請求的韌性
- **Token-efficient**：是否存在可精簡而不損失語意的冗餘

#### 3. 安全審查 STRIDE-for-Prompts
- **Spoofing**：身份是否易被偽造或劫持
- **Tampering**：使用者輸入能否篡改系統行為
- **Repudiation**：是否缺乏行為日誌或否認防護指引
- **Information Disclosure**：是否意外鼓勵輸出敏感資訊
- **Denial of Service**：是否有無限迴圈、過長輸出等風險
- **Elevation of Privilege**：是否可能越權執行未授權任務

#### 4. 一致性交叉驗證矩陣
建立 N×N 模組對照表，檢查：
- 身份聲稱 vs 規則約束
- 語氣指引 vs 禁止措辭
- 技能聲稱 vs 預設 prompt 觸發
- 成功標準 vs 輸出格式要求

#### 5. 可維護性 SMART 模組標準
- **Scoped**：邊界清晰
- **Modular**：可獨立更新
- **Annotated**：關鍵決策有簡短說明
- **Readable**：標題層級與列表一致
- **Testable**：存在可手動驗證的驗收情境

### 領域特化審查清單

#### Developer / Tech Soul
- [ ] 程式碼引用格式是否一致
- [ ] 是否區分「建議」與「必須執行」
- [ ] 工具調用邊界是否定義

#### Writer / Creative Soul
- [ ] 版權與原創性指引是否存在
- [ ] 風格範例是否過擬合特定語料

#### Business / Marketing Soul
- [ ] 數據主張是否要求來源
- [ ] 是否禁止虛假承諾或誇大宣傳

#### Healthcare / Finance（高嚴格度）
- [ ] 免責聲明與轉介專業人士指引
- [ ] 個人資料與 PHI/PII 處理規則
- [ ] 決策建議的保守性約束

### 驗收情境設計（審查員應建議 Soul 維護者測試）
為每個 Soul 建議 3-5 個驗收情境：
1. **正常路徑**：典型使用者請求
2. **邊界路徑**：模糊或資訊不足的請求
3. **對抗路徑**：prompt injection、角色劫持嘗試
4. **越權路徑**：要求執行 RULES 禁止的任務
5. **一致性路徑**：跨多輪對話後是否維持身份與格式

### 評級對照表
| 評級 | 條件 |
|------|------|
| A | 無 Critical/High；結構完整；安全韌性佳 |
| B | 無 Critical；≤2 High；整體可部署 |
| C | 無 Critical；多項 High 或結構缺口；需修復後部署 |
| D | 存在 Critical 或 >5 High；不建議部署 |
| F | 核心模組缺失或 JSON/架構無效 |