Communitygithub.com

ZepiGit/league-api-engineering

基於證據、符合 Vanguard 政策安全的《英雄聯盟》資料整合工程指引技能。打造更合規的工具。

league-api-engineering 是什麼?

這項技能提供了一個嚴謹、基於證據的工程框架,專為《英雄聯盟》(LoL) 的資料整合而設計。它強制執行一套非協商的閘門 (gates),涵蓋安全(金鑰、隱私)、本地客戶端安全(無注入或記憶體掃描)、條款遵循以及備援真實性,從根本上杜絕不合規的設計。對於任何資料請求,該技能都會引導使用者通過一個系統化的「來源決策工作流程」(Source-decision workflow),該流程要求對資料進行分類、透過「來源決策樹」(source-decision-tree.md) 評估候選來源、應用嚴格閘門,並為每項聲明記錄證據類別(例如 `verified-current`、`observed-undocumented`)。它還定義了審計輸出合約、標準化的失敗詞彙,以及對支援平台(如 LCU、Data Dragon、CommunityDragon)和參考實現的漸進式揭露,使其成為在 Claude Code、Cursor 或類似的開發者代理中建構穩健且合規的 LoL 工具的理想選擇。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add ZepiGit/league-api-engineering

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

League API 工程 (League API Engineering)

請選擇並只使用一種主要模式。如果是混合請求,請在開始前說明主導模式及次要交付項目。

模式 (Mode)使用時機 (Use for)必要結果 (Required result)
implement新增或修改資料整合來源決策 → 轉接器合約 → 清理過的 Fixtures/測試 → 實作計畫或程式碼 → 閘門檢查
audit評估現有整合盤點 → 證據標籤 → 風險矩陣 → 按來源排序的優先修正項目
debug處理失敗或誤導的整合重現步驟 → 失敗分類 → 傳輸/結構/快取/備援檢查 → 修正證明
research選擇資料來源或查詢當前事實附有日期的證據圖 → 來源評估 → 決策
policy判斷資料使用或產品行為是否允許產品/資料審查 → 政策閘門 → 決定為「允許」、「受限」或「禁止」

非協商閘門 (Non-negotiable gates)

不要繞過失敗的閘門,而是拒絕該設計:

  • 金鑰與隱私 (Secrets and privacy): 絕不內嵌、持久化或記錄 Riot API 金鑰、LCU 憑證、Bearer Token、Cookie、個人識別資訊 (PII) 或真實玩家歷史。
  • 本地客戶端安全 (Local-client safety): 禁止注入、掛鉤、處理程序記憶體存取、記憶體掃描、反作弊繞過、隱藏狀態提取,或宣稱獨占全螢幕控制。迴圈回送 (Loopback) 憑證放寬僅限於明確綁定到 127.0.0.1 或 localhost 的客戶端;絕不能用於遠端 HTTPS。
  • 權威與條款 (Authority and terms): 不要將未記錄的端點或提供者描述為官方支援。請在使用前驗證適用的條款、歸屬、重新分發、驗證及速率限制條件。
  • 備援真實性 (Fallback truthfulness): 備援方案必須保留母體、範圍、新鮮度、版本、地區、佇列及來源語意。本質上不同的資料應視為獨立的結果,而不是靜默的替代品。
  • 不支援的請求 (Unsupported requests): 請勿憑空捏造 MMR/ELO 估算、推斷隱藏狀態,或揭露無法取得的玩家資訊。請針對此類請求回傳 policy_blocked 或 unsupported_context,並附上限制條件說明。

來源決策工作流程 (Source-decision workflow)

  1. 分類請求的資料:本地連線階段、進行中的對戰、靜態/版本化資料、遠端帳號/對戰/排名資料、彙總趨勢資料,或是不支援/隱藏狀態。
  2. 從 source-decision-tree.md 開始;根據權威性、存取方式、路由、新鮮度、穩定性、版本涵蓋範圍、延遲、條款、隱私、歸屬、速率限制及失敗行為來選擇候選來源。
  3. 先套用硬性閘門再進行評分。需要內嵌生產金鑰、不安全的本地存取、禁止的資料、未經審查的重新分發,或不相容備援方案的來源,將被拒絕。
  4. 為每項實質聲明記錄一個證據類別:
    • verified-current: 直接由附有日期的權威來源或當前的可重現觀察結果支援;
    • observed-undocumented: 重現的行為,但未獲得權威來源保證;
    • historical: 過去有文件記錄或被觀察到,但不能假定當前仍有效;
    • inference: 經推理得出的結論,需要在投入生產前進行驗證。
  5. 使用 adapter-contract.md 撰寫或更新轉接器合約,然後採用快取/備援、測試以及金絲雀 (Canary) 控制機制。

失敗詞彙 (Failure vocabulary)

使用一個主要的錯誤類別,並分別保留未經處理但已清理的診斷資訊:offline、unauthorized、rate_limited、not_found、no_data、unsupported_context、transport、http_status、parse、schema_drift 或 policy_blocked。

絕不要盲目重試 unauthorized、policy_blocked、parse 或 schema_drift。請參閱 caching-and-fallbacks.md。

審計輸出合約 (Audit output contract)

一份審計報告應產出一個附有日期的工件,包含以下內容:

  1. 範圍、資料類別及轉接器盤點;
  2. 來源/端點對應圖,包含權威性、穩定性、證據類別及條款審查日期;
  3. 憑證、隱私、本地存取、路由、版本控制及歸屬方面的發現;
  4. 快取、無資料、重試、結構漂移及備援相容性的發現;
  5. 一個風險矩陣:嚴重程度、可能性、受影響的行為、證據及具體補救措施;
  6. 按優先順序排列的修正項目、被封鎖的項目及驗證標準。

請勿將假設標記為已驗證。請勿僅僅因為一個來源能成功運作一次就稱其為安全的。

漸進式揭露 (Progressive disclosure)

如果套件根目錄中存在驗證器,請在發佈前從該目錄執行 python scripts/validate.py .。

相關技能