Communitygithub.com

ZepiGit/league-api-engineering

리그 오브 레전드 데이터 통합을 위한 증거 기반, Vanguard 정책 준수 엔지니어링 가이드입니다. 규정을 준수하는 더 나은 도구를 구축하세요.

league-api-engineering란 무엇인가요?

이 스킬은 리그 오브 레전드(League of Legends) 데이터 통합 작업을 수행하는 AI 에이전트를 위한 엔지니어링 가이드입니다. `implement`, `audit`, `debug`, `research`, `policy`의 5가지 운영 모드를 제공하여 각 상황에 맞는 체계적인 작업 흐름을 정의합니다. 특히 비협상 게이트(Non-negotiable gates)를 통해 보안, 개인정보 보호, 로컬 클라이언트 안전성, API 사용 약관, 폴백 데이터 정합성 등 엄격한 규칙을 준수하도록 강제하며, Vanguard 정책에 위배되는 행위를 금지합니다. 소스 결정 워크플로우는 데이터를 분류하고, 공식 소스와 비공식 소스를 평가하며, 각 주장에 대해 `verified-current`, `observed-undocumented`, `historical`, `inference` 등 증거 등급을 기록하도록 요구합니다. 또한 오류 분류 체계, 감사 출력 계약, 프로그레시브 디스클로저(Progressive Disclosure)를 통해 공식 Riot API, LCU, Data Dragon 등 다양한 데이터 소스에 대한 참조 문서를 단계적으로 제공합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add ZepiGit/league-api-engineering

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

League API Engineering

정확히 하나의 기본 모드를 선택하세요. 혼합 요청의 경우, 진행 전에 지배적인 모드와 2차 산출물을 명시하세요.

모드사용 목적필수 결과물
implement데이터 통합 추가 또는 변경소스 결정 → 어댑터 계약 → 정제된 픽스처/테스트 → 구현 계획 또는 코드 → 게이트
audit기존 통합 평가인벤토리 → 증거 레이블 → 위험 매트릭스 → 우선순위별, 소스별 수정
debug실패 또는 오해의 소지가 있는 통합재현 → 실패 분류 → 전송/스키마/캐시/폴백 검사 → 수정 증명
research소스 선택 또는 현재 사실 확인날짜가 포함된 증거 맵 → 소스 평가 → 결정
policy데이터 사용 또는 제품 동작의 허용 여부제품/데이터 검토 → 정책 게이트 → 허용, 제한, 또는 차단 결정

비협상 게이트

게이트를 통과하지 못한 설계는 우회하지 말고 거부하세요:

  • 비밀 및 개인정보: Riot 키, LCU 자격 증명, Bearer 토큰, 쿠키, 개인식별정보(PII), 실제 플레이어 기록을 임베드, 지속, 또는 로깅하지 마십시오.
  • 로컬 클라이언트 안전성: 인젝션, 훅, 프로세스 메모리 접근, 메모리 스캐닝, 안티치트 우회, 숨겨진 상태 추출, 독점 전체화면 제어 주장을 금지합니다. 루프백 인증서 완화는 127.0.0.1 또는 localhost에 명시적으로 바인딩된 클라이언트로 제한되며, 원격 HTTPS에 재사용될 수 없습니다.
  • 권한 및 이용약관: 문서화되지 않은 엔드포인트나 공급자를 공식 지원되는 것으로 표현하지 마십시오. 사용 전에 적용 가능한 약관, 저작자 표시, 재배포, 인증, 속도 제한 조건을 확인하세요.
  • 폴백 진실성: 폴백은 모집단, 범위, 최신성, 패치, 로케일, 큐, 출처 의미를 보존해야 합니다. 실질적으로 다른 데이터는 별도의 결과이지, 묵시적인 대체물이 아닙니다.
  • 지원되지 않는 요청: MMR/ELO 추정치를 만들거나, 숨겨진 상태를 추론하거나, 사용할 수 없는 플레이어 정보를 노출하지 마십시오. 제약 조건과 함께 policy_blocked 또는 unsupported_context를 반환하세요.

소스 결정 워크플로우

  1. 요청된 데이터를 분류하세요: 로컬 세션, 활성 매치, 정적/버전 관리 데이터, 원격 계정/매치/랭크 데이터, 집계 트렌드 데이터, 또는 지원되지 않는/숨겨진 상태.
  2. source-decision-tree.md로 시작하세요; 권한, 접근성, 라우팅, 최신성, 안정성, 패치 범위, 지연 시간, 이용약관, 개인정보, 저작자 표시, 속도 제한, 실패 동작을 기준으로 후보를 선택하세요.
  3. 점수 매기기 전에 하드 게이트를 적용하세요. 임베드된 프로덕션 키, 안전하지 않은 로컬 접근, 금지된 데이터, 검토되지 않은 재배포, 호환되지 않는 폴백이 필요한 소스는 거부됩니다.
  4. 각 실질적 주장에 대해 증거 등급을 기록하세요:
    • verified-current: 날짜가 있는 공식 소스 또는 현재 재현 가능한 관찰에 의해 직접 지원됨;
    • observed-undocumented: 공식적으로 보장되지는 않지만 재현된 동작;
    • historical: 과거에 문서화되었거나 관찰되었으며, 현재라고 가정하기 어려움;
    • inference: 프로덕션 전에 검증이 필요한 추론된 결론.
  5. adapter-contract.md를 사용하여 어댑터 계약을 작성하거나 업데이트한 후, 캐시/폴백, 테스트, 카나리 제어를 적용하세요.

오류 분류 어휘

하나의 기본 오류 클래스를 사용하고 원시 정제된 진단을 별도로 보관하세요: 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를 참조하세요.

감사 출력 계약

감사는 날짜가 포함된 산출물을 생성하며, 다음을 포함합니다:

  1. 범위, 데이터 클래스, 어댑터 인벤토리;
  2. 권한, 안정성, 증거 등급, 이용약관 검토 날짜가 포함된 소스/엔드포인트 맵;
  3. 자격 증명, 개인정보, 로컬 접근, 라우팅, 버전 관리, 저작자 표시 관련 발견;
  4. 캐시, 데이터 없음, 재시도, 드리프트, 폴백 호환성 관련 발견;
  5. 심각도, 가능성, 영향받는 동작, 증거, 구체적인 수정 사항이 포함된 위험 매트릭스;
  6. 우선순위별 수정 사항, 차단된 항목, 검증 기준.

가정을 검증된 것으로 표시하지 마십시오. 단순히 한 번 동작한다고 해서 소스를 안전하다고 부르지 마십시오.

프로그레시브 디스클로저

게시 전에 패키지 루트에서 python scripts/validate.py .를 실행하세요 (유효성 검사기가 있는 경우).

관련 스킬