Automated summary
This skill performs a comprehensive code review of local changes or a GitHub Pull Request, covering quality, performance, security, and guideline compliance.
Strengths
- Interactively determines the review scope via user questions
- Runs multiple specialized sub-agents in parallel for multi-dimensional analysis
- Detects breaking changes (API, schema, configuration, dependencies)
- Outputs a structured report with scores and prioritized findings
Limitations
- Relies on GitHub CLI for PRs, requiring prior authentication
- Does not substitute for a human review, especially for business logic
- Can be time-consuming for large diffs due to parallel sub-agent execution
Before merging a branch, to get quick and systematic feedback on code quality.
For trivial changes (typos, comments) where the overhead outweighs the benefit.
Security analysis
SafeThe skill uses Bash only for safe, read-only git commands (git diff, gh pr view/diff). No destructive operations, data exfiltration, or safety bypasses are instructed. Although the PR number input from AskUserQuestion is inserted into shell commands without explicit sanitization, the user is the one providing the input in their own environment, so command injection risk is minimal and inherent to any interactive shell usage.
No concerns found
How this analysis is madeExamples
コードレビューして現在のPRをレビューしてname: code-review description: 現在のブランチをコードレビューする。「コードレビューして」「レビューして」「PRの前にチェック」「破壊的変更をチェック」といった依頼、またはマージ前の品質確認が必要な場合に使用する。 allowed-tools:
- Read
- Grep
- Glob
- Bash
- Task
- AskUserQuestion
コードレビュー
概要
目的: ローカルブランチまたは GitHub PR の変更内容をレビューし、品質・一貫性・潜在的な問題を検出する。
AskUserQuestion ツールを使ってレビュー条件をインタビューし、適切なサブエージェントでレビューを実行する。
フェーズ 1: レビュー対象の確認
AskUserQuestion ツールを使って質問する。
質問内容:
- question: "レビュー対象は?"
- header: "対象"
- options:
- label: "ローカルブランチ", description: "現在のブランチと main の差分をレビュー"
- label: "GitHub PR", description: "現在のブランチPRの差分をレビュー"
- label: "ローカル差分", description: "ローカルにある差分をレビュー"
- label: "ステージ済みのローカル差分", description: "ローカルにあるステージ済みの差分をレビュー"
フェーズ 2: 破壊的変更チェックの確認
AskUserQuestion ツールを使って質問する。
質問内容:
- question: "破壊的変更チェックは?"
- header: "破壊的変更"
- options:
- label: "行う", description: "API/スキーマ変更確認"
- label: "行わない", description: "通常レビューのみ"
フェーズ 3: 変更内容の取得
フェーズ 1 の回答に基づいて変更内容を取得する。
ローカルブランチの場合:
git diff main...HEAD
git diff --name-only main...HEAD
GitHub PR の場合:
AskUserQuestion ツールを使って PR 番号を確認する。
<rules> - **AskUserQuestion ツールを必ず使用** - 会話形式の質問は不可 </rules>その後:
gh pr view <PR番号> --json title,body,files,additions,deletions
gh pr diff <PR番号>
フェーズ 4: レビューの実行
全てのサブエージェントを並列で実行する。
サブエージェント
| サブエージェント | 専門領域 |
|------------------|----------|
| review-quality | コード品質(命名、SRP、複雑度、エラー処理) |
| review-performance | パフォーマンス(計算効率、メモリ、レンダリング) |
| review-security | セキュリティ(XSS、SQLi、入力検証) |
| review-guideline | ガイドライン準拠(TypeScript/React/テストルール) |
フェーズ 6: 破壊的変更のチェック
「行う」を選択した場合のみ実行する。
| カテゴリ | 例 | |----------|-----| | API 変更 | 関数の引数追加/削除、戻り値の型変更 | | スキーマ変更 | DB カラムの削除、型変更、NOT NULL 追加 | | 設定変更 | 環境変数の追加/削除、デフォルト値の変更 | | 依存関係 | メジャーバージョンアップ、パッケージの削除 |
フェーズ 7: 結果の出力
レビュー観点(サブエージェント別)
| サブエージェント | チェック内容 | |------------------|-------------| | review-quality | 命名規則、単一責任原則、関数複雑度、エラーハンドリング | | review-performance | 計算効率、メモリ管理、レンダリング最適化、N+1問題 | | review-security | XSS、SQLi、入力検証、認証・認可、OWASP Top 10 | | review-guideline | TypeScript/React/テストルール準拠、コードスタイル |
出力形式
## コードレビュー結果
### サマリー
- レビュー対象: ローカルブランチ / PR #XXX
- 変更ファイル数: X
- 追加行数: +XXX
- 削除行数: -XXX
### スコア一覧
| 観点 | スコア |
|------|--------|
| 品質 | A/B/C/D |
| パフォーマンス | A/B/C/D |
| テスト | A/B/C/D |
| ドキュメント | A/B/C/D |
| セキュリティ | A/B/C/D |
| ガイドライン | A/B/C/D |
| Design Doc | A/B/C/D(設計書ありの場合) |
### 破壊的変更
🔴 あり / 🟢 なし
### 発見事項
#### 🔴 Critical(修正必須)
- [ファイル名:行番号] 問題の説明
#### 🟡 Warning(推奨)
- [ファイル名:行番号] 改善提案
#### 🟢 Good(良い点)
- 良かった実装のポイント
### 総評
全体的な評価とコメント
重要な注意事項
- AskUserQuestion ツールを必ず使用 - 会話形式の質問は不可
- 各フェーズで必ず AskUserQuestion を呼び出してからユーザーの回答を待つ
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/code-review-mma3jruy/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/code-review-mma3jruy' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/code-review-mma3jruy/download' --output '.skill-downloads/code-review-mma3jruy/SKILL.md.part' && mv '.skill-downloads/code-review-mma3jruy/SKILL.md.part' '.skill-downloads/code-review-mma3jruy/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/code-review-mma3jruy/SKILL.md' && test -s '.skill-downloads/code-review-mma3jruy/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/code-review' && cp -R '.skill-downloads/code-review-mma3jruy' '.claude/skills/code-review'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/code-review-mma3jruy'openskills read 'code-review-mma3jruy'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/code-review-mma3jruy/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
React Hook Form Best Practices
Development
Master React Hook Form: avoid anti-patterns, manage subscriptions, and handle reset, dirty state, and controlled inputs correctly.
Emotion to Mantine Migration
Development
Migrate Emotion styled-components to Mantine components with style props and CSS modules. Use when converting .styled.tsx files or removing @emotion imports.
Scope Creep Detector
Development
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad PRs, and oversized changes, then suggests keep, split, or justify actions.