Claude Code実践ガイド
Claude Codeとは
Claude Codeは、Anthropic社が提供するターミナルネイティブのAIコーディングアシスタントです。
特徴:
- ターミナルで動作
- 高い推論能力(特にOpus/Sonnetモデル)
- シェルスクリプトやパイプラインとの統合
- プロジェクト全体のコンテキスト理解
CLAUDE.mdの活用
4.2.1 CLAUDE.mdとは
“CLAUDE.md is a special configuration file that lives in your repository and provides Claude with project-specific context.”
プロジェクト固有のコンテキストをClaudeに提供する設定ファイルです。
4.2.2 配置場所
階層的に読み込まれます:
~/.claude/CLAUDE.md- 全プロジェクト共通- プロジェクトルート - チーム共有
- サブディレクトリ - モノレポ対応
4.2.3 推奨フォーマット
# CLAUDE.md
## プロジェクト概要
Eコマースサイトのバックエンド API
## 推奨される技術スタックと構成
- 言語: TypeScript 5.0
- フレームワーク: Express.js 4.18
- データベース: PostgreSQL 15 + Prisma
- テスト: Jest + Supertest
- 認証: JWT (jsonwebtoken)
## ディレクトリ構造
src/
├── controllers/ # リクエストハンドラ
├── services/ # ビジネスロジック
├── models/ # Prismaモデル
├── middleware/ # Express ミドルウェア
├── utils/ # ユーティリティ
└── types/ # 型定義
## コーディング規約
- 関数名: camelCase
- クラス名: PascalCase
- ファイル名: kebab-case
- インデント: 2スペース
- セミコロン: なし
## コマンド
- `npm run dev` - 開発サーバー起動
- `npm test` - テスト実行
- `npm run lint` - ESLint実行
- `npm run build` - ビルド
## 避けるべきパターン
- any型の使用
- console.logのコミット
- 未処理のPromise
- try-catchなしのasync関数
## 必須のセキュリティ要件
- すべてのエンドポイントで認証必須
- ユーザー入力はzodでバリデーション
- SQLはPrisma経由(生SQLは禁止)
- シークレットは環境変数から取得
4.2.4 メンテナンス
“As you work with Claude Code, use the # key to add instructions you find yourself repeating.”
#キーで繰り返し伝える指示を追加- 定期的にレビューして簡潔に保つ
- プロジェクトの変化を反映
/init コマンド
4.3.1 初期化
# プロジェクトディレクトリで実行
cd your-project
claude
/init
Claudeがプロジェクトを分析し、CLAUDE.mdを自動生成します。
4.3.2 カスタマイズ
“Think of /init as a starting point, not a finished product.”
生成されたCLAUDE.mdは出発点として扱い、以下を追加:
- チーム固有のルール
- セキュリティ要件
- 避けるべきパターン
Plan Mode(計画モード)
4.4.1 有効化
Shift+Tab を2回押すとPlan Modeに入ります。
4.4.2 特徴
“In this mode, Claude becomes a research and analysis machine that can’t actually change any files.”
- ファイルを変更できない
- 分析と計画に専念
- 実装前の設計に最適
4.4.3 推奨ワークフロー
1. Plan Modeに入る(Shift+Tab × 2)
2. 「〇〇機能を実装する計画を立てて」
3. 計画をレビュー
4. 必要に応じて修正を依頼
5. Plan Modeを解除
6. 「その計画を実装して」
AI開発のコンテキスト情報管理
4.5.1 スコープの限定
# 良い: 1チャット1機能
「ユーザー認証機能を実装します」
# 悪い: 複数機能を混在
「認証と決済とメール送信を実装します」
4.5.2 /clear と /compact
| コマンド | 用途 |
|---|---|
/clear | 会話履歴を完全リセット(脱線した場合) |
/compact | コンテキストを圧縮(長い会話の継続) |
4.5.3 セッション管理
# 前回のセッションを再開
claude --resume
# 直前のセッションを継続
claude --continue
カスタムスラッシュコマンド
4.6.1 作成方法
.claude/commands/
├── review.md
├── test.md
└── refactor.md
4.6.2 例: レビューコマンド
# .claude/commands/review.md
セキュリティの観点から以下のコードをレビューしてください。
チェック項目:
1. SQLインジェクション
2. XSS
3. 認証・認可の不備
4. 機密情報の露出
対象: $ARGUMENTS
使用: /review src/controllers/user.ts
4.6.3 例: テストコマンド
# .claude/commands/test.md
以下のファイルのテストを生成してください。
要件:
- Jestを使用
- カバレッジ80%以上を目標
- エッジケースを含める
対象: $ARGUMENTS
使用: /test src/services/payment.ts
スクラッチパッドの活用
4.7.1 概要
計画や思考を記録するファイルです。
# SCRATCHPAD.md
## 現在のタスク
認証システムのリファクタリング
## 変更予定ファイル
- src/middleware/auth.ts
- src/services/auth.service.ts
- tests/auth.test.ts
## 考慮事項
- 既存のセッションを無効化しない
- 後方互換性を維持
- テストを先に書く
## 進捗
- [x] 現状分析
- [ ] テスト作成
- [ ] 実装
- [ ] レビュー
4.7.2 使い方
「SCRATCHPAD.mdに計画を書いてから実装を始めて」
TDD×AI開発の実践的ワークフロー
4.8.1 新機能開発
1. /init でCLAUDE.mdを確認/更新
2. Plan Modeで計画
3. 計画をレビュー
4. SCRATCHPAD.mdに記録
5. テストを先に生成
6. 実装を依頼
7. /review でセルフレビュー
8. 修正と完成
4.8.2 バグ修正
1. エラーメッセージとスタックトレースを共有
2. 「段階的に調査して」と依頼
3. 原因を特定
4. 修正案をレビュー
5. テストで確認
4.8.3 リファクタリング
1. Plan Modeで影響範囲を分析
2. 変更計画をレビュー
3. テストを確認/追加
4. 段階的に実装
5. 各ステップでテスト実行
今日から実践できるアクション
- CLAUDE.mdを作成: プロジェクトルートに配置
- Plan Modeを試す: 次のタスクで計画を先に
- カスタムコマンドを作成: よく使う操作を登録
まとめ:重要ポイントの振り返り
- CLAUDE.md: プロジェクトコンテキストの提供
- /init: 初期化とCLAUDE.md生成
- Plan Mode: 計画を先に(Shift+Tab×2)
- コンテキスト管理: /clear, /compact, —resume
- カスタムコマンド: .claude/commands/
- スクラッチパッド: 計画の可視化
- 教訓:設定を育てて、効率を最大化