1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【2026年3月最新】Claude Code実践Tips集 — 現場で使える設定・コマンド・プロンプト術

1
Posted at

はじめに

Claude Codeを「とりあえずインストールした」状態から、本番開発で毎日使いこなすレベルへ引き上げるためのTips集です。

公式ドキュメント(code.claude.com/docs)を一次情報として、実際に動作確認できている内容のみを掲載します。「なんとなく言われてること」は含みません。

本記事の情報基準: 2026年3月現在の公式ドキュメントに基づいています。動作未確認の情報には「※要確認」を付けています。


1. CLAUDE.md の書き方 — project指示とuser指示の使い分け

CLAUDE.mdファイルの配置場所と優先順位

Claude Codeは起動時に複数のCLAUDE.mdを自動で読み込みます。配置場所によってスコープが異なります。

スコープ パス 用途 チーム共有
Managed(組織) macOS: /Library/Application Support/ClaudeCode/CLAUDE.md 全社ポリシー・コーディング標準 IT部門が配布
Project ./CLAUDE.md または ./.claude/CLAUDE.md プロジェクト共通ルール gitで共有 ✅
User ~/.claude/CLAUDE.md 個人設定(全プロジェクト適用) 自分のみ

重要: より具体的な場所のファイルが優先されます(Project > User > Managed)。ただしManaged(組織管理)のファイルは除外不可です。

Project CLAUDE.md に書くべき内容 vs 書かない内容

公式ドキュメントのベストプラクティスを整理すると:

# CLAUDE.md の良い例

## ビルド・テスト
- テスト実行: `npm test`
- ビルド: `npm run build`
- リント: `npm run lint`

## コードスタイル
- インデント: 2スペース(タブ不可)
- import構文: ES modules(require禁止)
- 型: TypeScript strict mode

## アーキテクチャ
- API handlers: src/api/handlers/ に配置
- ViewModel: @Observable @MainActor final class で定義

## 注意事項
- .env ファイルはコミット禁止
- migration ファイルは直接編集しない

書いてはいけない(Claudeが既に知っていること):

# ❌ 不要な記述例
- コードをきれいに書く
- 変数名はわかりやすくする
- 標準的なRESTful設計に従う

公式の推奨: CLAUDE.mdは200行以内に収めること。長くなるほど遵守率が下がります。

User CLAUDE.md(個人設定)の活用

~/.claude/CLAUDE.md には全プロジェクトに適用したい個人設定を書きます:

# ~/.claude/CLAUDE.md

## 個人の作業スタイル
- 変更後は必ず型チェックを実行する
- テストは個別に実行する(全スイート不要)
- コミットメッセージは日本語で書く

## よく使うショートカット
- PRレビュー時はセキュリティ脆弱性を必ずチェック

@インポートで外部ファイルを参照

CLAUDE.md内で @path/to/file 構文を使うと外部ファイルを取り込めます:

# CLAUDE.md

プロジェクト概要は @README.md を参照。
利用可能なnpmコマンドは @package.json を参照。

## 追加指示
- Gitワークフロー: @docs/git-instructions.md
- 個人設定: @~/.claude/my-project-instructions.md

最大5段階の再帰インポートが可能です(循環参照は検出・無視)。

.claude/rules/ でルールをモジュール化

大きなプロジェクトでは、.claude/rules/ ディレクトリにテーマ別でルールファイルを分割できます:

.claude/
├── CLAUDE.md           # メイン指示
└── rules/
    ├── code-style.md   # コードスタイル
    ├── testing.md      # テスト規約
    └── security.md     # セキュリティ要件

さらに特定ファイルにのみ適用するパス指定ルールも書けます:

---
paths:
  - "src/api/**/*.ts"
---

# API開発ルール
- 全エンドポイントに入力バリデーション必須
- エラーレスポンスは共通フォーマットに従う

2. スラッシュコマンド実用一覧

/ と入力するとコマンドの補完が出ます。カテゴリ別に重要なものをまとめます。

セッション管理

コマンド 説明 実用ポイント
/clear 会話履歴をリセット エイリアス: /reset, /new。無関係なタスクの前に実行
/compact [指示] 会話を圧縮 /compact APIの変更に集中 のように焦点を指定可能
/resume [セッション] 過去のセッションを再開 エイリアス: /continue
/rename [名前] セッションに名前をつける 例: oauth-migration
/fork [名前] 現在のセッションを分岐 実験的な変更を試すときに便利
/rewind 以前のチェックポイントに戻す エイリアス: /checkpoint。コードのみ・会話のみ・両方を選択可

コンテキスト・情報確認

コマンド 説明 実用ポイント
/context コンテキスト使用量を可視化 色付きグリッドで残量確認
/cost トークン使用統計を表示 コスト管理に
/memory CLAUDE.mdとauto-memoryを管理 ロードされているファイル一覧確認にも
/status バージョン・モデル・アカウント確認 エイリアス: /settings の Status タブ
/diff 未コミット変更をインタラクティブに表示 ターン別の差分も閲覧可能
/btw <質問> 会話履歴に残さない即時質問 タスク中断なしに素早く確認

モード切替

コマンド 説明
/plan プランモードに移行(ファイル変更なし)
/fast [on|off] ファストモードのオン/オフ切替
/vim Vim編集モードのトグル
/sandbox サンドボックスモードのトグル
/permissions 許可ツールの確認・更新(エイリアス: /allowed-tools

スキル(カスタムコマンド)

コマンド 説明
/skills 利用可能なスキル一覧
/init プロジェクトのCLAUDE.mdを自動生成

バンドルスキル(Claude Code組み込み)

以下は Claude Code に同梱されているスキルで、/ から呼び出せます:

コマンド 説明
/simplify 最近変更したファイルのコード品質・効率を改善。3つのレビューエージェントを並列実行して改善点を適用
/batch <指示> コードベース全体への大規模変更を並列実行。5〜30の独立ユニットに分解してgit worktreeで並列処理
/debug [説明] 現在のClaude Codeセッションのデバッグログを読んでトラブルシューティング
/loop [間隔] <プロンプト> 指定間隔でプロンプトを繰り返し実行。例: /loop 5m デプロイが完了したか確認して
/claude-api Claude APIリファレンスをプロジェクトの言語向けに読み込む

注意: /review は廃止済みです(deprecated)。代わりに claude plugin install code-review@claude-code-marketplace でプラグインをインストールしてください。

その他実用コマンド

コマンド 説明
/export [ファイル名] 会話をプレーンテキストで書き出し
/security-review 現在ブランチの変更をセキュリティ観点でレビュー
/pr-comments [PR] GitHubのPRコメントを取得(gh CLI必要)
/insights セッション分析レポートを生成
/doctor インストールと設定の診断
/copy 直前のアシスタント応答をクリップボードにコピー。コードブロックが複数ある場合は選択ピッカーを表示

3. settings.json でできること

設定ファイルには4つのスコープがあり、優先順位が異なります。

設定ファイルの場所と優先順位(高→低)

  1. Managed(システムレベル)
  2. コマンドライン引数
  3. Local (.claude/settings.local.json) — gitignore推奨
  4. Project (.claude/settings.json) — gitで共有
  5. User (~/.claude/settings.json)

主要な設定項目

{
  "$schema": "https://json.schemastore.org/claude-code-settings.json",

  // モデル設定
  "model": "claude-sonnet-4-6",

  // 出力スタイル
  "outputStyle": "Explanatory",
  "language": "japanese",
  "showTurnDuration": true,

  // パーミッション
  "permissions": {
    "allow": [
      "Bash(npm run lint)",
      "Bash(npm run test *)",
      "Bash(git commit *)",
      "Read(~/.zshrc)"
    ],
    "ask": [
      "Bash(git push *)"
    ],
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "WebFetch"
    ],
    "additionalDirectories": ["../docs/"],
    "defaultMode": "acceptEdits"
  },

  // auto-memory
  "autoMemoryEnabled": true,

  // セッション設定
  "cleanupPeriodDays": 30
}

パーミッションルールの構文

記法 意味
Bash 全Bashコマンドを許可/拒否
Bash(npm run *) npm run で始まるコマンド
Bash(git commit *) git commit を含むコマンド
Read(./.env) 特定ファイルの読み込み
Edit(./src/**) src/ 配下のファイル編集
WebFetch(domain:example.com) 特定ドメインへのフェッチのみ
MCP 全MCPサーバー

CLAUDE.mdの除外設定(モノレポ向け)

大規模モノレポで他チームのCLAUDE.mdが混入する場合は .claude/settings.local.json に除外設定を追加:

{
  "claudeMdExcludes": [
    "**/other-team/CLAUDE.md",
    "/home/user/monorepo/legacy/.claude/rules/**"
  ]
}

4. パーミッションモードの使い分け

3つのモード

モード 説明 使いどころ
askPermissions 各操作前に確認を求める(デフォルト) 本番コード・重要なリポジトリ
acceptEdits ファイル編集は自動、コマンドは確認 通常の開発作業
bypassPermissions 全操作を自動実行 CI/CDパイプライン、完全に管理された環境のみ

settings.jsonで設定:

{
  "permissions": {
    "defaultMode": "acceptEdits"
  }
}

キーボードショートカットで即切替: Shift+Tab でAuto-Acceptモード、プランモード、通常モードを循環切替できます。

サンドボックスモードとの組み合わせ

/sandbox でOSレベルのサンドボックスを有効にすると、bypassPermissions と組み合わせても安全な自律動作が可能になります。ネットワークアクセスやファイルシステムを制限した状態でClaudeを動かせます。


5. Auto Memory(自動メモリ)の活用

仕組み

Claudeは作業を通じて学んだことを自動的に ~/.claude/projects/<project>/memory/ に保存します:

  • ビルドコマンド
  • デバッグで発見した知見
  • アーキテクチャの決定事項
  • コードスタイルの好み

MEMORY.md の最初の200行が毎セッション読み込まれます(200行を超えた内容は別ファイルに分割されます)。

確認・編集

/memory

このコマンドで現在ロードされているCLAUDE.mdとauto-memoryファイルを一覧表示し、そこから直接編集できます。

無効化

{
  "autoMemoryEnabled": false
}

または環境変数 CLAUDE_CODE_DISABLE_AUTO_MEMORY=1 で無効化。


6. カスタムスキルの作り方

スラッシュコマンドとして呼び出せる独自ワークフローを作成できます。

基本構造

~/.claude/skills/review-pr/SKILL.md   # 個人スキル(全プロジェクト)
.claude/skills/deploy/SKILL.md         # プロジェクトスキル

SKILL.md の例(PRレビュー):

---
name: review-pr
description: PRの変更をレビューしてセキュリティ・品質チェックを行う
disable-model-invocation: true
allowed-tools: Bash(gh *), Read, Grep
---

GitHub PR $ARGUMENTS のレビューを実施する。

1. `gh pr diff` で差分を確認
2. セキュリティ脆弱性(SQLインジェクション、XSS、認証欠陥)をチェック
3. 既存パターンとの整合性を確認
4. 改善点をリストアップして報告

/review-pr 456 のように呼び出せます。

重要なフロントマター

フィールド 説明
name スラッシュコマンド名
description Claudeが自動で使うかどうかを判断する説明
disable-model-invocation: true ユーザーが明示的に呼び出したときのみ実行(デプロイ等の副作用があるもの)
user-invocable: false メニューに表示せず、Claudeが自律的に使う背景知識として機能
allowed-tools このスキル実行時に許可するツール
context: fork 独立したサブエージェントコンテキストで実行

7. 実際に効果があったプロンプトパターン

公式ドキュメントのベストプラクティスから、特に有効なパターンを厳選しました。

パターン1: 検証基準を先に与える

# ❌ 曖昧
「emailバリデーション関数を実装して」

# ✅ 検証基準付き
「validateEmail 関数を実装して。
テストケース:
- user@example.com → true
- invalid → false
- user@.com → false
実装後にテストを実行して全件パスを確認して」

Claudeが自分でテストを実行して検証できるため、品質が大幅に向上します。

パターン2: 探索→計画→実装の分離

# ステップ1(/plan モードで)
「src/auth を読んで、セッションとログインの実装を理解して」

# ステップ2(/plan モードで)
「Google OAuthを追加したい。変更が必要なファイルと実装計画を作って」

# ステップ3(通常モードで)
「計画に沿って実装して。コールバックハンドラのテストを書いて実行して、失敗があれば修正して」

パターン3: Claudeにインタビューさせる

「[機能の簡単な説明]を作りたい。
AskUserQuestion ツールを使って詳細にインタビューして。
技術実装・UX・エッジケース・トレードオフについて聞いて。
全部把握できたら SPEC.md に完全な仕様書を書いて」

自分では気づかない考慮漏れを発見するのに非常に有効です。

パターン4: 既存パターンを明示的に指示

# ❌ 曖昧
「カレンダーウィジェットを追加して」

# ✅ 既存パターン参照付き
「home ページの既存ウィジェット実装を見てパターンを理解して。
HotDogWidget.php が良い例です。
そのパターンに従って、月を選択して前後の年に移動できる
カレンダーウィジェットを作って。
既存ライブラリ以外は使わないこと」

パターン5: サブエージェントで調査を分離

「サブエージェントを使って、認証システムのトークンリフレッシュ処理と
再利用できるOAuthユーティリティがないか調査して」

メインのコンテキストを汚さずに、大量のファイルを探索させられます。

パターン6: /btw でコンテキストを汚さない質問

/btw あのconfig ファイルの名前なんだっけ?

会話履歴に残らない即時質問。Claudeが作業中でも実行できます。


8. キーボードショートカット早見表

ショートカット 動作
Shift+Tab Auto-Accept / Plan / 通常モードを循環切替
Ctrl+C 現在の生成をキャンセル
Escape 生成を停止(コンテキスト保持)
Esc + Esc リワインドメニューを開く
Ctrl+G プロンプトをデフォルトエディタで編集
Ctrl+L ターミナル画面をクリア(会話履歴は保持)
Ctrl+O 詳細出力(ツール使用・実行内容)をトグル
Ctrl+B バックグラウンドタスクに移行
Ctrl+T タスクリストの表示/非表示
! + コマンド Bashモード(Claudeを経由せず直接実行)
@ + パス ファイルパス補完
Option+P (macOS) モデルを切り替え(プロンプトを保持)

9. CLIフラグと非インタラクティブ活用

# 一回限りのタスク
claude -p "このプロジェクトの概要を説明して"

# 構造化出力(スクリプト組み込み向け)
claude -p "APIエンドポイント一覧を出力" --output-format json

# ストリーミング出力
claude -p "このログファイルを分析して" --output-format stream-json

# 使用ツールを制限
claude -p "src/を React から Vue に移行して" --allowedTools "Edit,Bash(git commit *)"

# 最後のセッションを継続
claude --continue

# セッション選択して再開
claude --resume

CI/CDでの活用例

# PRごとにセキュリティレビュー
git diff main --name-only | claude -p "変更されたファイルをセキュリティ観点でレビューして"

# バルク変換
for file in $(cat files.txt); do
  claude -p "$file を Python 2 から Python 3 に変換して。OK か FAIL を返して" \
    --allowedTools "Edit,Bash(git commit *)"
done

まとめ

Claude Codeを使いこなす核心は次の3点です:

  1. CLAUDE.mdは200行以内で具体的に — Claudeがすでに知っていることは書かない
  2. コンテキストを積極的に管理する — 無関係なタスクの前に /clear、調査はサブエージェントに任せる
  3. 検証基準を必ず与える — テスト・スクリーンショット・期待出力を先に定義する

参考


@kotaro_ai_lab
AI活用や開発効率化について発信しています。フォローお気軽にどうぞ!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?