Borrowing it
Nothing to install: this file belongs to whchoi98/seoul-opendata-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/whchoi98/seoul-opendata-mcp/main/.claude/skills/code-review/SKILL.mdgit clone --depth 1 https://github.com/whchoi98/seoul-opendata-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/whchoi98/seoul-opendata-mcp/code-review)<a href="https://agentmods.dev/skills/whchoi98/seoul-opendata-mcp/code-review"><img src="https://agentmods.dev/badge/skills/whchoi98/seoul-opendata-mcp/code-review/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/whchoi98/seoul-opendata-mcp/code-review"><img src="https://agentmods.dev/badge/skills/whchoi98/seoul-opendata-mcp/code-review.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.00646 |
| Opus 5.5 | $0.00000 | $0.00258 |
| Sonnet 5.5 | $0.00000 | $0.00129 |
| Haiku 4.5 | $0.00000 | $0.00065 |
Grade A, and why
code-review scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Code Review Skill
변경된 코드를 신뢰도 기반 스코어링으로 검토하여 거짓 양성을 필터링합니다.
검토 범위
기본적으로 git diff의 미스테이징 변경사항을 검토합니다. 사용자가 다른 파일이나 범위를 지정할 수 있습니다.
검토 기준
프로젝트 가이드라인 준수
- 임포트 패턴 및 모듈 경계
- 프레임워크 관례 및 언어 스타일
- 함수 선언 및 에러 처리
- CLAUDE.md의 명명 규칙
프로젝트 특화 검토 (seoul-opendata-mcp)
- 픽스처 불변 원칙:
tests/fixtures/*.json파일은 절대 수정하면 안 됨 (실제 API 캡처본, 테스트 데이터 소스) - 매핑 동등성 테스트: 정규화 함수(normalize/*.ts)는 API 응답을 표준 포맷으로 변환하고, 역매핑 테스트가 있어야 함
- 봉투 응답 형식: 모든 MCP 도구 응답은
{ ok: true, data: ... }또는{ ok: false, error: ... }형식 - 키 마스킹: 코드/로그에서 API 키 노출 금지 (
SEOUL_API_KEY,SEOUL_SUBWAY_API_KEY등은 환경변수로만)
버그 감지
- 로직 오류 및 null/undefined 처리
- 경합 조건 및 메모리 누수
- 보안 취약점 (OWASP Top 10)
- 성능 문제
코드 품질
- 중복 코드 및 불필요한 복잡성
- 누락된 중요 에러 처리
- 테스트 커버리지 갭
- 프런트엔드 접근성 문제
신뢰도 스코어링
각 이슈를 0-100으로 평가합니다:
- 0-24: 거짓 양성 또는 기존 이슈 가능성. 보고하지 않음.
- 25-49: 실제일 수도 있지만 사소한 지적. 보고하지 않음.
- 50-74: 실제 이슈이지만 경미함. 중요한 경우만 보고.
- 75-89: 검증된 실제 이슈, 중요함. 수정 제안과 함께 보고.
- 90-100: 확인된 중요 이슈. 반드시 보고.
신뢰도 >= 75인 이슈만 보고합니다.
출력 형식
각 이슈별:
[CRITICAL|IMPORTANT] <이슈 제목> (신뢰도: XX)
파일: 경로/파일.확장자:줄번호
이슈: 문제의 명확한 설명
가이드: CLAUDE.md 규칙 또는 보안 표준 참조
수정: 구체적인 코드 제안
이슈가 없으면 코드가 표준을 충족함을 간략한 요약과 함께 확인하십시오.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 57 lines · 0 tokens per session scan A c2656bc4aa15
code-review is a skill published in the GitHub repository whchoi98/seoul-opendata-mcp (1 stars, last pushed 2mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 646 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
sync-bridge
Reviews and guides Chromium Sync Model API (DataTypeSyncBridge) implementations, including DataTypeStore persistence and forwards/backwards compatibility for sync specifics. Use when implementing or reviewing a DataTypeSyncBridge subclass, DataTypeStore usage, sync metadata persistence, conflict resolution, or…
sync-model-processor
Reviews changes to Chromium Sync model internals in components/sync/model/, including ClientTagBasedDataTypeProcessor, ClientTagBasedRemoteUpdateHandler, ProcessorEntity, ProcessorEntityMetadata, and ProcessorEntityTracker. Use when modifying or reviewing processor state transitions, entity metadata tracking, conflict…
adversarial-reviewer
Stress-test a code change for concrete correctness defects, unsafe assumptions, and failure modes. Use when the user explicitly asks for an adversarial review, a deep bug hunt, or to tear a change apart, or to check your own change before submitting it. Do not use for ordinary review, style feedback, or general…
gsd-ns-review
Invoke this Pi skill with /skill:gsd-ns-review.
gitnexus
A code-graph analysis add-on for examining an existing codebase, including symbols, call paths, execution flows, and effects across repositories. It can query GitNexus through its command-line or MCP interfaces.
issue
Use when starting a chain from a GitHub issue — turning an issue URL or number into a triaged, planned, dispatched, and reviewed pull request. Classifies the thread (bug → root-cause discipline, feature → plan chain, question → drafted reply), synthesizes a spec from the issue's own acceptance criteria, then runs the…