技能用途
在進行複雜的功能重構時,普通 AI 助手往往「只看樹木,不見森林」,缺乏大局觀。它可能會在一個高性能要求的底層迴圈中注入大量的物件分配,導致 Garbage Collection (GC) 壓力暴增,或者是引進不必要的 Dependency 依賴,破壞模組的單一職責原則。
Apollo 是 OMO 的 全域設計與架構評審技能。它扮演「高級架構師」的角色:
- 在動工前,分析變更提案的複雜度,評估修改對整個系統依賴樹的衝擊。
- 自動撰寫架構決策記錄 (Architecture Decision Records, ADR)。
- 生成符合 SOLID 設計原則與 Clean Architecture 架構的高水準設計方案。
運作原理
- 依賴路徑分析:調用 Codegraph 與 Codebase Memory 圖譜,抓出核心調用鏈。
- SOLID 原則校驗:評估新增類別是否違背了介面隔離或單一職責原則。
- ADR 自動生成與歸檔:將設計共識轉化為 Markdown 文件,並保存至
docs/adr/目錄中。
實戰對話範例
範例:為重構 Redis 連線層生成 ADR
- You:
omo /spawn apollo "評估我們把 Cache 換成 Redis 的架構衝擊並記錄 ADR" - AI:
[OMO] Apollo Engaged: Architectural Decision Review
正在評估將 InMemoryCache 遷移至 Redis 的系統衝擊…
- 影響範圍:3 個業務服務(OrderService, PaymentService, BillingService)。
- 潛在風險:Redis 連線斷連時的降級策略(Fallback)。
我已在
docs/adr/0012-use-redis-cache.md中為您生成了 ADR:- Context:應對分散式多節點下的快取同步需求。
- Decision:採用 Redis,並封裝
SafeRedisHelper,在 Redis 連線異常時自動降級回本機記憶體快取。 - Consequence:引入了 StackExchange.Redis 依賴,但保證了系統的高可用性。
架構決策已成功歸檔。現在可以指派 Hephaestus 進行依賴配置了。