AI開発ツール活用 2025年4月8日

Claude Code完全ガイド:セットアップから実践まで

Claude Codeは、Anthropic社が提供するターミナルネイティブのAIコーディングアシスタントです。 **特徴:** プロジェクト固有のコンテキストをClaudeに提供する設定ファイルです。

川西智也

合同会社ロイヤルピース 代表

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 配置場所

階層的に読み込まれます:

  1. ~/.claude/CLAUDE.md - 全プロジェクト共通
  2. プロジェクトルート - チーム共有
  3. サブディレクトリ - モノレポ対応

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. 各ステップでテスト実行

今日から実践できるアクション

  1. CLAUDE.mdを作成: プロジェクトルートに配置
  2. Plan Modeを試す: 次のタスクで計画を先に
  3. カスタムコマンドを作成: よく使う操作を登録

まとめ:重要ポイントの振り返り

  • CLAUDE.md: プロジェクトコンテキストの提供
  • /init: 初期化とCLAUDE.md生成
  • Plan Mode: 計画を先に(Shift+Tab×2)
  • コンテキスト管理: /clear, /compact, —resume
  • カスタムコマンド: .claude/commands/
  • スクラッチパッド: 計画の可視化
  • 教訓:設定を育てて、効率を最大化

実践的なスキルを習得しませんか?

ブログで学んだ知識を、研修で実践に変えましょう。