ガイド一覧

アンチパターン集 — やってはいけないCLAUDE.md

よくある失敗パターンとその対策をまとめます。

1. Linterの仕事を書く

問題: ESLintやPrettierで強制できるルールをCLAUDE.mdに書くと、二重管理になり矛盾が生まれます。

<!-- NG -->
- インデントはスペース2つ
- セミコロンは必ずつける
- 末尾カンマを使う

対策: フォーマット系のルールはLinter設定に任せる。CLAUDE.mdにはLinterでカバーできない設計方針を書く。

2. 古いコードスニペットを貼る

問題: CLAUDE.mdにコード例を直接書くと、ソースコードの更新に追従できず、すぐに情報が古くなります。

対策: コードの代わりにファイルパスを示す。src/lib/errors.ts を参照 のように書けば常に最新を参照できる。

3. 曖昧な指示を書く

問題:

<!-- NG -->
- きれいなコードを書いて
- パフォーマンスに気をつけて
- セキュリティを意識して

対策: 具体的なルールに変換する。

<!-- OK -->
- 関数は30行以内。超える場合は分割する
- N+1クエリを避ける。一覧取得はeager loadingを使用
- ユーザー入力は必ずZodでバリデーションしてからDBに渡す

4. 全部CLAUDE.mdに詰め込む

問題: 500行超のCLAUDE.mdは、すべてのルールの優先度が等しくなり、重要な指示が埋もれます。コンテキストウィンドウも圧迫します。

対策: 200行以内に収める。詳細はrulesファイルや@インポートに分離する。

5. サブエージェントに複数の役割を持たせる

問題: 「リサーチして、分析して、記事も書いて」と一つのエージェントに詰め込むと、どの作業も中途半端になります。

対策: 1エージェント=1タスクの原則。リサーチエージェント、分析エージェント、執筆エージェントを分ける。

6. レビュー工程を省略する

問題: AIの出力をそのまま採用すると、事実誤認やコードのバグを見逃します。

対策: CLAUDE.mdにレビュー工程を明記する。成果物は必ずCodexでセカンドオピニオンを取得する のように。

各アンチパターンに共通するのは、具体性の欠如スコープの曖昧さです。CLAUDE.mdは「誰が読んでも同じ行動を取れる」レベルの具体性を目指しましょう。

検索

ガイドやテンプレートを検索...