コンテンツにスキップ

CLAUDE.mdよりCODE_STANDARDS.mdを使え:AIレビュアーエージェントに渡す設計

概要

CLAUDE.md にコーディング規約を書くより、CODE_STANDARDS.md に分離してレビュアーエージェントに渡す設計を提案。

詳細

提案された設計

CLAUDE.md           → AI エージェントへの一般的な指示(作業手順、コンテキスト)
CODE_STANDARDS.md   → コーディング規約・ベストプラクティス
                      → レビュアーエージェントに明示的に渡す

なぜ分離するか

問題:
  CLAUDE.md に全てを詰め込む
  → コンテキストが膨らむ
  → AI が常に全部を考慮しようとして焦点が散漫になる
  → 規約の更新が一箇所に影響

解決:
  CODE_STANDARDS.md を独立したドキュメントにする
  → コーディング時は参照せず、レビュー時だけ使う
  → 役割ごとに異なるドキュメントを使い分ける

実践例

# CODE_STANDARDS.md

## Go コーディング規約

### エラーハンドリング
- エラーは必ずチェックすること(_ で無視しない)
- エラーメッセージは `fmt.Errorf("context: %w", err)` でラップする

### テスト
- テーブル駆動テストを使う
- モックは最小限に(統合テストを優先)

### 命名
- インターフェースは動詞+er(Reader, Writer, Storer)
# レビュアーエージェントに渡す(Claude Code の例)
claude "CODE_STANDARDS.md を参照して、このPRをレビューしてください" 

kawasima の観点との接続

kawasima が指摘するように、AI がコードを書く時代において人間の役割は「仕様・制約・受け入れ基準の設計」にシフトしている。CODE_STANDARDS.md はその「制約の明文化」の実践的な形。

なぜ重要か / いつ使うか

  • Claude Code や Cursor を使った AI ペア開発のワークフロー設計
  • チームの開発規約を AI に理解させたいとき
  • レビューの自動化を検討しているとき