実際のリポジトリ向けにClaude Codeをカスタマイズする
- 新しいチェックアウトを約20分でチューニング済みのClaude Codeセットアップに変える
- 4つのカスタマイズ — CLAUDE.md、権限、フック、コマンド — がそれぞれなぜ価値を持つのかを理解する
- 安全なアクションでの中断を減らし、リスクのあるアクションは確実に止める権限ルールを書く
- 各要素が実際に機能していることを、思い込みではなく検証する
新しいチェックアウトを、あなたのプロジェクトを理解し、あなたのルールを尊重する Claude Code のセットアップに変えましょう — 所要時間は約20分です。各機能の根拠とともに、コア機能をつなぎ合わせていきます。
最終的な状態
ステップ1 — CLAUDE.mdを生成して整理する
/init を実行してCLAUDE.mdの下書きを作成し、それを事実だけに削り込みます: スタック、実行/テスト/リントの方法、実際の規約、そしてガードレール(「完了前にテストを実行する」「/generated には触れない」)。理由: これは最もレバレッジの高いカスタマイズです — Claude は毎セッションこれを読みます。
CLAUDE.md テンプレートから雛形を入手しましょう。
ステップ2 — 権限を設定する
安全で繰り返しの多いコマンドを事前に許可し、危険なものは拒否する .claude/settings.json(リファレンス)を追加します:
{
"permissions": {
"allow": ["Read", "Bash(npm run test:*)", "Bash(npm run lint)", "Bash(git diff:*)"],
"ask": ["Write", "Bash(npm install:*)"],
"deny": ["Read(./.env)", "Bash(git push --force:*)"]
}
}
理由: 安全なアクションでの中断が減り、リスクのあるアクションは確実に止まります。権限を参照してください。
ステップ3 — フォーマット用のフックを追加する
すべての編集後に自動フォーマットします(フック):
{ "hooks": { "PostToolUse": [ { "matcher": "Edit|Write",
"hooks": [ { "type": "command", "command": "f=$(jq -r '.tool_input.file_path'); npx prettier --write \"$f\" 2>/dev/null || true" } ] } ] } }
理由: 一貫したフォーマットが保証されます — 「忘れずにお願いします」ではありません。
ステップ4 — /commit コマンドを追加する
スラッシュコマンドライブラリの /commit レシピを .claude/commands/ に配置します。理由: 繰り返し行うワークフローを一言で呼び出せます。
ステップ5 — 最初の本番タスクにプランモードを使う
プランモードで実際の目標を与え、プランをレビューしてから実行させます。理由: 考えることと実行することを分離することで、信頼を築けます。
うまくいったか検証する
思い込みで済ませず、各要素を個別に確認しましょう。それぞれのテストは1つのカスタマイズだけを切り分けるので、失敗すればどのファイルを直すべきかがそのまま分かります。
Guided walkthrough1 of 4
- 新しいセッションを開始し、通常のタスクを与えます。Claude は、あなたが規約を貼り付けなくても、促されずにそれを参照するはずです。
- ファイルを編集し、Claude に書き込ませます。あなたが何も念押ししなくても、フォーマットされた状態で返ってくるはずです。
- リスクのあるコマンドを試します。Claude はそのまま実行するのではなく、確認するか、きっぱり拒否するはずです。
- /commit を実行します。一言で、きれいな Conventional Commit メッセージが得られるはずです。
最初の本番タスクをプランモードで始める
Add pagination to the users list endpoint. Plan it first — I want to review before you touch anything.
- CLAUDE.md が最もレバレッジの高いカスタマイズなのは、Claude が毎セッションこれを読むからです — /init で生成し、そのあと実際に事実である内容だけに削り込みましょう
- 権限は両面的なツールです: 安全で繰り返しの多いコマンドを事前許可して中断を減らし、危険なものは拒否して確実に止めます
- フックはフォーマットを「忘れずにお願いします」ではなく保証されたものにします — ハーネスによって強制される振る舞いは、プロンプトで依頼する振る舞いに勝ります
- スラッシュコマンドは、繰り返し行うワークフローを一言に変えます
- プランモードは考えることと実行することを分離します。これが、より多くの自律性を委ねる前に信頼を築く方法です
- 各カスタマイズを個別のテストで検証しましょう。そうすれば失敗が1つのファイルを指し示します