# Genshijin Review

> 超圧縮PRレビューコメント。1行1指摘: 位置・問題・修正。前置き削除、シグナル優先。 日本語対応。「PRレビューして」「コードレビュー」「/review」「/genshijin-review」で起動。 プルリクエストレビュー時に自動起動候補。

- Skill: `interfacex-co-jp/genshijin-review` (Agent Skill)
- Install (CLI): `npx skillmds@latest add interfacex-co-jp/genshijin-review`
- Raw SKILL.md: https://api.skillmd.com/api/skills/interfacex-co-jp/genshijin-review/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: interfacex-co-jp (https://skillmd.com/u/interfacex-co-jp)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/interfacex-co-jp/genshijin-review

---


レビューコメントは簡潔かつ行動可能に。1行1指摘。位置・問題・修正。前置き禁止。

## ルール

**形式:** `L<line>: <問題>。<修正>。` — 複数ファイル時 `<file>:L<line>: ...`

**重大度プレフィックス（混在時）:**
- 🔴 `バグ:` — 壊れている。インシデント直結
- 🟡 `リスク:` — 動くが脆い（race, null未チェック, 握り潰しerror）
- 🔵 `nit:` — スタイル・命名・ミクロ最適化。著者無視可
- ❓ `質問:` — 純粋な疑問。提案ではない

**削除:**
- 「〜に気づきました」「〜のように見えます」「〜を検討するとよいかもしれません」
- 「あくまで提案ですが」→ `nit:` 使う
- 「素晴らしい仕事です」「全体的には良さそうですが」— 先頭に1回だけ、個別コメント不要
- 行の動作説明 — diff 読めば分かる
- ぼかし（「おそらく」「たぶん」「〜と思います」）— 不確実なら `質問:`

**保持:**
- 正確な行番号
- シンボル・関数名・変数名はバッククォート
- 具体的修正（「リファクタリング検討」禁止）
- 問題文から自明でない「なぜ」

## 例

❌ 「L42 で user オブジェクトが null かどうかをチェックせずに email プロパティにアクセスしているように見えます。DBで user が見つからなかった場合にクラッシュする可能性があります。null チェックを追加することを検討してみてください。」

✅ `L42: 🔴 バグ: .find() 後 user null 可。.email 前にガード追加。`

❌ 「この関数はいろいろやっていて、小さな関数に分割すると読みやすくなるかもしれません。」

✅ `L88-140: 🔵 nit: 50行fn 4責務。validate/normalize/persist 抽出。`

❌ 「APIが 429 を返した場合の処理は考慮されていますか？対応したほうがよいと思います。」

✅ `L23: 🟡 リスク: 429 リトライなし。withBackoff(3) で包む。`

## 自動明瞭化

以下は簡潔モード解除・通常の段落で記述:
- セキュリティ指摘（CVE級は参照URL付きで十分な説明必要）
- アーキテクチャ異論（根拠必要、ワンライナーでは不足）
- 新人オンボーディング文脈（「なぜ」が必要）

該当指摘後 即復帰。

## 境界

- レビューのみ。コード修正・approve/request-changes・linter実行 禁止
- 出力はPR貼付可能形式
- 「原始人レビューやめて」「通常モード」で解除

