Claude Code 逆引きコマンド大全【第1章:基礎編】起動・セッション・ショートカット完全ガイド

Claude Code 逆引きコマンド大全 AI
この記事は約31分で読めます。
  1. はじめに
    1. 本記事の対象読者
    2. 動作確認環境
  2. 1. 基本操作・起動
    1. 1.1 Claude Codeを起動したい
    2. 1.2 初期プロンプト付きで起動したい
    3. 1.3 Claude Codeのバージョンを確認したい
    4. 1.4 Claude Codeを最新版にアップデートしたい
    5. 1.5 非対話モード(Print Mode)で使いたい
    6. 1.6 パイプでファイル内容を渡したい
    7. 1.7 複数のディレクトリをワーキングディレクトリに追加したい
    8. 1.8 特定のモデルを指定して起動したい
    9. 1.9 JSON形式で出力したい(自動化向け)
    10. 1.10 詳細なログを表示しながら実行したい
  3. 2. 会話・セッション管理
    1. 2.1 前回の会話を続けたい(最新の会話)
    2. 2.2 過去の特定の会話を選んで再開したい
    3. 2.3 会話履歴を全てクリアしたい
    4. 2.4 会話を任意の位置まで巻き戻したい
    5. 2.5 コンテキストを圧縮して会話を続けたい
    6. 2.6 会話をファイルにエクスポートしたい
    7. 2.7 セッションをフォーク(分岐)したい
    8. 2.8 コンテキスト使用量を確認したい
  4. 3. 入力・編集操作
    1. 3.1 改行を入力したい
    2. 3.2 Vimモードを有効にしたい
    3. 3.3 大きなファイルやテキストを入力したい
    4. 3.4 コマンド履歴を操作したい
    5. 3.5 シェルコマンドを直接実行したい
  5. 4. キーボードショートカット完全ガイド
    1. 4.1 基本操作
    2. 4.2 入力編集(Bash/Emacs互換)
    3. 4.3 履歴操作
    4. 4.4 モード切り替え
    5. 4.5 画像・ファイル操作
    6. 4.6 バックグラウンドタスク
  6. 5. スラッシュコマンド一覧
    1. 5.1 基本コマンド
    2. 5.2 モデル・出力設定
    3. 5.3 セッション管理
    4. 5.4 プロジェクト設定
    5. 5.5 ツール・連携
    6. 5.6 ユーティリティ
    7. 5.7 MCPスラッシュコマンド
  7. 6. CLIフラグ・オプション詳解
    1. 6.1 セッション管理フラグ
    2. 6.2 モデル・出力設定フラグ
    3. 6.3 権限・ツール設定フラグ
    4. 6.4 システムプロンプトフラグ
    5. 6.5 MCP設定フラグ
    6. 6.6 その他のフラグ
  8. 7. 設定・権限管理
    1. 7.1 設定画面を開きたい
    2. 7.2 権限設定を管理したい
    3. 7.3 よくある権限設定例
    4. 7.4 設定ファイルで一括設定したい
    5. 7.5 設定をチーム全体で共有したい
    6. 7.6 権限確認を全てスキップしたい(危険)
    7. 7.7 Verbose出力を有効にしたい
  9. 8. ファイル・画像の扱い
    1. 8.1 ファイルを参照して質問したい
    2. 8.2 画像を見せたい
    3. 8.3 Macでのスクリーンショット操作
    4. 8.4 画像の活用例
    5. 8.5 大きなファイルの扱い
    6. 8.6 バイナリファイルの扱い
  10. 第1章のまとめ

はじめに

Claude Codeは、Anthropicが開発したターミナルベースのAIコーディングアシスタントです。VS CodeやCursorのようなGUIベースのツールとは異なり、コマンドラインインターフェース(CLI)で動作することで、より柔軟で強力な操作が可能になっています。

本記事は「○○したいときどうする?」という逆引き形式で、Claude Codeの機能を網羅的にまとめた決定版リファレンスです。第1章では基本操作から設定まで、日常的に使用する機能を詳しく解説します。

本記事の対象読者

  • Claude Codeをインストールしたばかりで、基本操作を学びたい方
  • Claude Codeを使っているが、もっと効率的に使いこなしたい方
  • コマンドを忘れたときにサッと調べたい方

動作確認環境

本記事の内容は2025年時点での情報に基づいています。Claude Codeは頻繁にアップデートされるため、最新の情報は公式ドキュメントや /help コマンドで確認してください。


1. 基本操作・起動

1.1 Claude Codeを起動したい

最もシンプルな起動方法は、ターミナルで以下のコマンドを実行することです:

claude

これにより、インタラクティブなREPL(Read-Eval-Print Loop)セッションが開始されます。Claude Codeはカレントディレクトリをワーキングディレクトリとして認識し、そのディレクトリ以下のファイルにアクセスできるようになります。

VS Code / Cursorからの起動

Claude Code拡張機能がインストールされていれば、エディタの右上に表示されるAnthropicロゴ(Run Claude Code)ボタンをクリックして起動することもできます。この拡張機能は、初回の claude コマンド実行時に自動でインストールされるはずですが、インストールされていない場合は手動でインストールしてください。

起動時の注意点

  • Claude Codeは起動したディレクトリをプロジェクトのルートとして認識します
  • 大規模なプロジェクトでは、適切なサブディレクトリから起動することでコンテキストを絞り込めます
  • 複数のターミナルウィンドウで同時に起動することも可能です

1.2 初期プロンプト付きで起動したい

起動と同時に質問を投げたい場合は、引数としてプロンプトを渡します:

claude "このプロジェクトの構造を説明して"

この方法は、すぐに作業を開始したい場合に便利です。Claude Codeはプロジェクトの構造を分析し、回答を生成した後もインタラクティブモードで待機するため、続けて質問や指示を行えます。

実用的な使用例

# プロジェクト概要の把握
claude "このリポジトリの主要なコンポーネントと依存関係を説明して"

# 特定ファイルの解析
claude "src/auth/middleware.ts のコードを読んで、認証フローを説明して"

# 即座にタスクを開始
claude "package.jsonを見て、使用しているテストフレームワークを教えて"

1.3 Claude Codeのバージョンを確認したい

現在インストールされているClaude Codeのバージョンを確認するには:

claude --version
# または短縮形
claude -v

バージョン情報は、バグ報告や機能の互換性確認の際に重要です。特に新機能が動作しない場合は、まずバージョンを確認してみてください。

1.4 Claude Codeを最新版にアップデートしたい

Claude Codeは頻繁にアップデートされ、新機能やバグ修正が追加されます。最新版にアップデートするには:

claude update

このコマンドは、利用可能な最新バージョンをダウンロードしてインストールします。アップデート後は、ターミナルを再起動することをお勧めします。

アップデートのベストプラクティス

  • 重要な作業の前にはアップデートを避け、作業後にアップデートする
  • チームで使用している場合は、バージョンを揃えることを検討する
  • 大きなアップデート後は /help で新機能を確認する

1.5 非対話モード(Print Mode)で使いたい

スクリプトやCI/CDパイプラインでClaude Codeを使用する場合、非対話モード(Print Mode)が便利です:

claude -p "この関数の説明をして"
# または
claude --print "この関数の説明をして"

このモードでは、Claude Codeは質問に回答した後、すぐに終了します。インタラクティブな対話は行われません。

非対話モードの活用例

# コード分析の自動化
claude -p "src/ディレクトリのコードを分析して、改善点をリストアップして" > analysis.txt

# コミットメッセージの自動生成
git diff --staged | claude -p "この差分に対する適切なコミットメッセージを生成して"

# ドキュメント生成
claude -p "@src/api/routes.ts のAPIエンドポイントのドキュメントを生成して" > api-docs.md

# コードレビュー自動化
git diff HEAD~1 | claude -p "このコード変更をレビューして、問題点があれば指摘して"

注意点

非対話モードは便利ですが、複雑なタスクには向いていません。Claude Codeが内部で何を実行しているか見えにくく、エラーが発生した場合のデバッグも困難です。単純な質問や自動化タスクに限定して使用することをお勧めします。

1.6 パイプでファイル内容を渡したい

Unix/Linuxのパイプ機能を使って、他のコマンドの出力をClaude Codeに渡すことができます:

cat logs.txt | claude -p "このログを解析してエラーの原因を特定して"

この方法は、大量のデータや他のコマンドの出力をClaude Codeに処理させる場合に非常に便利です。

実践的なパイプ活用例

# ログ解析
tail -n 1000 /var/log/app.log | claude -p "このログからエラーパターンを抽出して"

# Git履歴の分析
git log --oneline -50 | claude -p "最近50件のコミット履歴を分析して、開発の傾向を教えて"

# 差分の説明
git diff main..feature-branch | claude -p "この差分を要約して、PRの説明文を作成して"

# プロセス情報の分析
ps aux | claude -p "リソースを多く使用しているプロセスを特定して"

# 依存関係の分析
npm ls --depth=0 | claude -p "このプロジェクトの主要な依存関係を説明して"

# 複数コマンドのパイプチェーン
git diff HEAD~5 | claude -p "変更を要約して" | claude -p "この要約を日本語に翻訳して"

1.7 複数のディレクトリをワーキングディレクトリに追加したい

モノレポや複数のプロジェクトを横断して作業する場合、追加のワーキングディレクトリを指定できます:

claude --add-dir ../apps ../lib ../tools

これにより、Claude Codeは指定したすべてのディレクトリにアクセスできるようになります。

モノレポでの活用例

# フロントエンドとバックエンドの両方にアクセス
claude --add-dir ../frontend ../backend

# 共有ライブラリも含めてアクセス
claude --add-dir ../packages/shared ../packages/ui ../apps/web

注意点

  • 追加するディレクトリが実際に存在することを確認してください
  • あまりにも多くのディレクトリを追加すると、コンテキストが散漫になる可能性があります
  • 関連性の高いディレクトリのみを追加することをお勧めします

1.8 特定のモデルを指定して起動したい

Claude Codeでは、使用するAIモデルを指定できます:

# エイリアスで指定(推奨)
claude --model sonnet
claude --model opus

# 正式なモデル名で指定
claude --model claude-sonnet-4-5-20250929
claude --model claude-opus-4-5-20251101

モデルの選び方

モデル 特徴 推奨用途
Opus 最高の推論能力、複雑なタスクに強い アーキテクチャ設計、複雑なバグ修正、難解なコードの理解
Sonnet バランスが良く高速、コスト効率が良い 日常的なコーディング、リファクタリング、テスト作成

デフォルトの動作

Pro/Maxプランでは、デフォルトで使用制限の半分までOpusを使用し、その後Sonnetに切り替わります。常にOpusを使いたい場合は明示的に指定するか、 /model コマンドで設定を変更してください。

1.9 JSON形式で出力したい(自動化向け)

スクリプトでClaude Codeの出力をプログラム的に処理する場合、JSON形式での出力が便利です:

claude -p "コードを分析して" --output-format json

出力形式のオプション

オプション 説明 用途
text プレーンテキスト(デフォルト) 人間が読む場合
json JSON形式 プログラムでパース
stream-json ストリーミングJSON リアルタイム処理

JSON出力の活用例

# 分析結果をJSONで取得してjqで処理
claude -p "package.jsonの依存関係を分析して" --output-format json | jq '.content'

# セッションIDを取得して後で再開
SESSION_ID=$(claude -p "分析を開始" --output-format json | jq -r '.session_id')
claude -r "$SESSION_ID" "続きをお願い"

1.10 詳細なログを表示しながら実行したい

Claude Codeの内部動作を確認したい場合、verbose(詳細)モードを使用します:

# 詳細ログを表示
claude --verbose

# デバッグモード(カテゴリ指定可能)
claude --debug
claude --debug "api,mcp"
claude --debug "!statsig,!file"  # 特定カテゴリを除外

verboseモードで確認できること

  • ファイル編集のdiff
  • 実行されるコマンドの詳細
  • APIリクエスト/レスポンスの概要
  • MCPサーバーとの通信

デバッグカテゴリの例

カテゴリ 内容
api APIリクエスト関連
mcp MCPサーバー通信
hooks フックの実行
file ファイル操作

2. 会話・セッション管理

2.1 前回の会話を続けたい(最新の会話)

Claude Codeを閉じてしまった後でも、最新の会話を再開できます:

claude -c
# または
claude --continue

このコマンドは、現在のディレクトリで最後に行われた会話を自動的に読み込み、続きから再開します。

重要な注意点

  • 会話履歴はローカルマシンに保存されます
  • 別のマシンからは同じ会話を継続できません
  • 長期間経過した会話は、コンテキストが古くなっている可能性があります

活用シーン

  • ターミナルを誤って閉じてしまった場合
  • 休憩後に作業を再開する場合
  • システムがクラッシュした後の復旧

2.2 過去の特定の会話を選んで再開したい

数日前の会話や、複数の会話から特定のものを選んで再開したい場合:

claude -r
# または
claude --resume

このコマンドを実行すると、過去の会話一覧が表示され、対話的に選択できます。

インタラクティブモードからの再開

Claude Codeを起動した後からでも再開できます:

/resume

特定のセッションIDで再開

セッションIDがわかっている場合は、直接指定できます:

claude -r "abc123" "続きをお願い"
claude --resume abc123 "このPRを完成させて"

2.3 会話履歴を全てクリアしたい

新しいタスクを始める際や、コンテキストがごちゃごちゃになった場合:

/clear

クリアすべきタイミング

  • 新しい機能の実装を始めるとき
  • 前の会話が現在のタスクと無関係になったとき
  • Claude Codeが混乱した回答をし始めたとき
  • トークン消費を抑えたいとき

プロのTips

頻繁に /clear を使うことが推奨されています。古い会話履歴を引きずると、以下の問題が発生します:

  1. トークン消費が増加する
  2. Claude Codeがコンテキスト圧縮に時間を使う
  3. 古い情報に基づいた回答が混じる可能性がある

2.4 会話を任意の位置まで巻き戻したい

Claude Codeが予期しない変更を行った場合や、別のアプローチを試したい場合:

ESC キーを2回連打

これにより、会話履歴から戻りたい位置を選択できるインターフェースが表示されます。

重要な注意点

  • 会話は巻き戻りますが、ファイル編集は巻き戻りません
  • Gitでこまめにコミットしておくことが重要です
  • CursorのAgentにあるようなcheckpoint機能は現時点では未実装です

代替手段:明示的なundo依頼

さっきの変更を元に戻して
src/auth/login.ts への変更をundoして

2.5 コンテキストを圧縮して会話を続けたい

長い会話でコンテキストウィンドウがいっぱいになりそうな場合:

/compact

このコマンドは、会話履歴を要約して圧縮し、重要な情報を保持しながらトークン消費を削減します。

カスタム指示を付けた圧縮

特定の情報を確実に保持したい場合:

/compact 認証実装の詳細とデータベーススキーマの決定事項は必ず保持して

compactを使うべきタイミング

  • 長時間の作業で会話が長くなったとき
  • /context で使用量が高くなっているとき
  • レスポンスが遅くなってきたとき
  • 新しいサブタスクに移行するとき

2.6 会話をファイルにエクスポートしたい

会話内容を保存したい場合:

/export filename.md

エクスポートされたファイルは、ドキュメンテーションやチームとの共有に活用できます。

2.7 セッションをフォーク(分岐)したい

現在の会話を維持しながら、別のアプローチを試したい場合:

claude --resume abc123 --fork-session

これにより、元のセッションを変更せずに、新しいセッションとして会話を続けられます。

活用シーン

  • 2つの異なるアプローチを比較したい
  • 実験的な変更を試したい
  • チームメンバーと異なる方向性を探りたい

2.8 コンテキスト使用量を確認したい

現在どれくらいのコンテキストを使用しているか確認:

/context

カラーグリッドでコンテキスト使用量が視覚的に表示されます。これは「燃料計」のようなもので、満タンに近づくとレスポンスが遅くなったり、品質が低下したりする可能性があります。


3. 入力・編集操作

3.1 改行を入力したい

Claude Codeで複数行の入力を行う方法はいくつかあります:

方法 説明 対応環境
\ + Enter バックスラッシュの後にEnter 全環境
Ctrl+J 標準的な改行キー 全環境
Option+Enter macOS向け macOS
Shift+Enter 直感的だが設定が必要 /terminal-setup 実行後

Shift+Enter を有効にする方法

/terminal-setup

このコマンドを実行後、ターミナルを再起動すると Shift+Enter で改行できるようになります。iTerm2やVS Codeのターミナルで動作します。

CursorやVS Codeのターミナルについて

Cursorのキーバインディングには Shift+Enter がデフォルトで設定されているため、特別な設定なしで使える場合があります。

3.2 Vimモードを有効にしたい

Vimに慣れている方は、Vimスタイルの編集モードを有効にできます:

/vim

恒久的に設定する方法

/config

で設定画面を開き、Vimモードを有効にします。

Vimモードでできること

  • Esc でノーマルモードに切り替え
  • i でインサートモードに切り替え
  • 0 で行頭に移動
  • $ で行末に移動
  • d$ で行末まで削除
  • dd で行全体を削除

3.3 大きなファイルやテキストを入力したい

大量のテキストを直接貼り付けるとClaude Codeがフリーズすることがあります。以下の方法を推奨します:

方法1: ファイルに保存して参照

# テキストをファイルに保存
echo "長いテキスト..." > content.txt

# Claude Codeで参照
@content.txt を分析して

方法2: パイプで渡す

cat large-file.txt | claude

方法3: ファイルパスを指定

Claude Codeに直接ファイル名を伝えるだけでも、多くの場合は適切に処理してくれます:

large-file.txt を読んで内容を要約して

3.4 コマンド履歴を操作したい

履歴のナビゲーション

  • キー: 前のコマンドに戻る
  • キー: 次のコマンドに進む

履歴の検索

Ctrl+R

検索モードに入り、キーワードを入力します。再度 Ctrl+R を押すと次のマッチに移動します。Backspace で検索をキャンセルできます。

検索結果では、検索キーワードがハイライト表示されるため、目的のコマンドを見つけやすくなっています。

3.5 シェルコマンドを直接実行したい

Claude Codeを介さずにシェルコマンドを実行するには、! を先頭につけます:

!cd src
!git status
!npm test
!ls -la

なぜ ! を使うのか?

Claude Codeに「npm testを実行して」と依頼することもできますが、その場合:

  1. Claude Codeがコマンドを解釈する時間がかかる
  2. 余分なトークンを消費する
  3. 確認ダイアログが表示される場合がある

! を使うと、これらをバイパスして直接実行できます。

活用例

!git status          # 現在の状態を確認
!npm run lint        # リンターを実行
!docker ps           # コンテナ状態を確認
!cat package.json    # ファイル内容を確認

4. キーボードショートカット完全ガイド

Claude Codeを効率的に使いこなすには、キーボードショートカットの習得が不可欠です。ここでは全てのショートカットを体系的に解説します。

4.1 基本操作

ショートカット 動作 詳細説明
Ctrl+C キャンセル 現在の入力または生成をキャンセル
Ctrl+C × 2回 強制終了 完全にClaude Codeを終了
Ctrl+D 終了 セッションを正常終了
Ctrl+L 画面クリア ターミナル画面をクリア(会話は保持)
ESC 停止 実行中の処理を停止
ESC × 2回 巻き戻し 会話履歴を選択して巻き戻し
? ヘルプ 利用可能なショートカット一覧を表示

4.2 入力編集(Bash/Emacs互換)

ショートカット 動作
Ctrl+A 行頭へ移動
Ctrl+E 行末へ移動
Ctrl+B 1文字後方へ移動(または
Ctrl+F 1文字前方へ移動(または
Option+B 1単語後方へ移動(macOS)
Option+F 1単語前方へ移動(macOS)
Ctrl+W 前の単語を削除
Ctrl+K カーソルから行末まで削除
Ctrl+U カーソルから行頭まで削除
Ctrl+Y 削除したテキストを貼り付け

実践的な使い方

音声入力を使っている場合や、長いプロンプトを編集する場合に特に便利です。例えば:

  1. Ctrl+E で行末に移動
  2. Ctrl+W で単語を削除
  3. 正しい単語を入力

4.3 履歴操作

ショートカット 動作
/ Ctrl+P 前のコマンド
/ Ctrl+N 次のコマンド
Ctrl+R 履歴を後方検索
Tab オートコンプリート

4.4 モード切り替え

ショートカット 動作 説明
Shift+Tab モード切り替え Auto Edit / Plan / Default を切り替え
Ctrl+O Verbose切り替え 詳細出力のオン/オフ
Ctrl+R 結果展開 折りたたまれた実行結果を展開
Ctrl+B バックグラウンド実行 現在のコマンドをバックグラウンドで実行

モードの違い

  • Default: 通常モード。Claude Codeが判断して行動
  • Auto Edit: 確認なしでファイル編集を実行
  • Plan: コードを書かずに計画のみを立てる

4.5 画像・ファイル操作

操作 方法
画像貼り付け Ctrl+VCmd+V ではない)
ファイル参照 Shift+ドラッグ

重要: macOSでも画像の貼り付けは Ctrl+V です。Cmd+V ではないので注意してください。

4.6 バックグラウンドタスク

長時間かかるコマンドをバックグラウンドで実行できます:

Ctrl+B

tmuxユーザーへの注意

tmuxのプレフィックスキーが Ctrl+B の場合、Ctrl+B を2回押す必要があります。

バックグラウンドタスクの特徴

  • 固有のIDが割り当てられる
  • 出力はバッファリングされ、後で取得可能
  • Claude Codeは新しいプロンプトに応答可能
  • セッション終了時に自動クリーンアップ

活用例

# テストをバックグラウンドで実行
npm test を実行して → Ctrl+B

# その間に別の作業
コードのリファクタリングを進めて

# テスト結果を確認
バックグラウンドタスクの結果を教えて

5. スラッシュコマンド一覧

Claude Codeのインタラクティブモードでは、/ で始まるスラッシュコマンドを使用して様々な操作を行えます。

5.1 基本コマンド

コマンド 説明 使用例
/help 利用可能な全コマンド一覧を表示 /help
/exit セッションを終了 /exit
/quit セッションを終了(/exitと同じ) /quit
/clear 会話履歴を完全にクリア /clear
/status バージョン情報と接続状態を表示 /status

/help について

/help は最も重要なコマンドの一つです。以下の情報が表示されます:

  • 組み込みスラッシュコマンド
  • カスタムスラッシュコマンド(.claude/commands/~/.claude/commands/
  • MCPサーバーから提供されるコマンド

新機能が追加された際は、まず /help で確認することをお勧めします。

5.2 モデル・出力設定

コマンド 説明 使用例
/model 使用モデルの確認・変更 /model
/config 設定画面を開く /config
/theme カラーテーマを変更 /theme

/model の表示内容

  • 現在使用中のモデル
  • 利用可能なモデル一覧
  • 各モデルの使用状況(Maxプランの場合)

5.3 セッション管理

コマンド 説明 使用例
/resume 過去の会話を選択して再開 /resume
/compact コンテキストを圧縮 /compact 重要な決定事項を保持
/context コンテキスト使用量をグリッド表示 /context
/export 会話をファイルにエクスポート /export conversation.md

5.4 プロジェクト設定

コマンド 説明 使用例
/init CLAUDE.mdファイルを作成 /init 日本語で作って
/memory 参照中のメモリファイルを確認 /memory
/permissions 権限設定を管理 /permissions
/add-dir 追加のワーキングディレクトリを設定 /add-dir ../shared

/init について

/init は新しいプロジェクトでClaude Codeを使い始める際に最初に実行すべきコマンドです。プロジェクトの構造を分析し、適切なCLAUDE.mdファイルを生成してくれます。

5.5 ツール・連携

コマンド 説明 使用例
/mcp MCPサーバー一覧と状態を表示 /mcp
/install-github-app GitHub Actionsアプリをインストール /install-github-app
/hooks フックの設定画面を開く /hooks
/terminal-setup ターミナル設定をセットアップ /terminal-setup

/mcp の使い方

MCPサーバーが設定されている場合、/mcp で以下を確認できます:

  1. 接続されているサーバー一覧
  2. 各サーバーの状態(稼働中/停止など)
  3. 利用可能なツール一覧

View tools を選択すると、各ツールのコマンドと使用方法を確認できます。

5.6 ユーティリティ

コマンド 説明 使用例
/doctor インストール状態のヘルスチェック /doctor
/cost セッションのトークン使用量とコスト表示 /cost
/review コードレビューを依頼 /review
/vim Vimモードを有効化 /vim
/bug バグレポートを送信 /bug

/doctor について

Claude Codeが正常に動作しない場合、まず /doctor を実行してください。以下の問題を検出できます:

  • インストールの問題
  • 設定の問題
  • 接続の問題
  • 依存関係の問題

/cost について

トークン使用量とコストを確認できます。長いセッションで予算を管理したい場合に便利です。

5.7 MCPスラッシュコマンド

MCPサーバーが接続されている場合、そのサーバーが提供するコマンドも使用できます:

/mcp__github__list_prs
/mcp__github__pr_review 456
/mcp__jira__create_issue "バグタイトル" high

形式: /mcp__[サーバー名]__[コマンド名]


6. CLIフラグ・オプション詳解

Claude Codeは豊富なコマンドラインフラグをサポートしています。ここでは全てのフラグを用途別に解説します。

6.1 セッション管理フラグ

フラグ 説明
-c, --continue 最新の会話を継続 claude -c
-r, --resume 特定のセッションを再開 claude -r abc123
--fork-session セッションをフォークして再開 claude --resume abc123 --fork-session
--session-id 特定のセッションIDを使用(UUID形式) claude --session-id "550e8400-e29b-41d4-a716-446655440000"

--fork-session の活用

元のセッションを変更せずに実験的な変更を試したい場合に便利です:

# 元のセッションを保持しながら別のアプローチを試す
claude --resume abc123 --fork-session "別のアプローチで実装してみて"

6.2 モデル・出力設定フラグ

フラグ 説明
--model 使用モデルを指定 claude --model sonnet
-p, --print 非対話モードで実行 claude -p "query"
--output-format 出力形式を指定 claude -p --output-format json "query"
--input-format 入力形式を指定 claude -p --input-format stream-json
--verbose 詳細ログを表示 claude --verbose
--debug デバッグモード claude --debug "api,mcp"
--max-turns エージェントのターン数制限 claude -p --max-turns 3 "query"
--fallback-model フォールバックモデルを指定 claude -p --fallback-model sonnet "query"

--output-format の詳細

形式 説明 用途
text プレーンテキスト 人間が読む場合
json JSON形式 プログラムでパース
stream-json ストリーミングJSON リアルタイム処理

--max-turns について

非対話モードでClaude Codeが実行するターン数を制限します。無限ループを防いだり、コストを制御したりするのに有用です:

# 最大3ターンで完了させる
claude -p --max-turns 3 "簡単な分析をして"

6.3 権限・ツール設定フラグ

フラグ 説明
--allowedTools 許可するツールを指定 claude --allowedTools "Bash(git:*)" "Read"
--disallowedTools 禁止するツールを指定 claude --disallowedTools "Bash(rm:*)"
--dangerously-skip-permissions 全ての権限確認をスキップ claude --dangerously-skip-permissions
--permission-mode 権限モードを指定 claude --permission-mode plan
--permission-prompt-tool 権限プロンプト用MCPツールを指定 claude -p --permission-prompt-tool mcp_auth_tool "query"
--tools 利用可能ツールを指定 claude -p --tools "Bash,Edit,Read" "query"

--allowedTools--disallowedTools の書式

# 特定のgitコマンドを許可
claude --allowedTools "Bash(git log:*)" "Bash(git diff:*)" "Read"

# 危険なコマンドを禁止
claude --disallowedTools "Bash(rm -rf:*)" "Bash(sudo:*)"

--dangerously-skip-permissions について

このフラグは、すべての権限確認をスキップします。非常に便利ですが、以下の点に注意してください:

  • 信頼できる環境でのみ使用する
  • インターネットアクセスのないコンテナでの使用を推奨
  • 本番環境では使用しない

6.4 システムプロンプトフラグ

フラグ 説明 モード
--system-prompt システムプロンプトを完全に置き換え Interactive + Print
--append-system-prompt システムプロンプトに追記 Interactive + Print
--system-prompt-file ファイルからシステムプロンプトを読み込み Print only

使い分けの指針

用途 推奨フラグ
デフォルト機能を維持しつつカスタマイズ --append-system-prompt
完全にカスタムな動作が必要 --system-prompt
プロンプトをファイルで管理 --system-prompt-file

# デフォルト機能を維持しつつ、TypeScript使用を強制
claude --append-system-prompt "常にTypeScriptを使用し、JSDocコメントを含めること"

# 完全にカスタムなプロンプトで起動
claude --system-prompt "あなたはPythonの専門家です。型アノテーションを必ず使用してください。"

# ファイルからプロンプトを読み込み(チーム共有に便利)
claude -p --system-prompt-file ./prompts/code-review.txt "このPRをレビューして"

6.5 MCP設定フラグ

フラグ 説明
--mcp-config MCPサーバー設定を読み込み claude --mcp-config ./mcp.json
--strict-mcp-config 指定したMCP設定のみ使用 claude --strict-mcp-config --mcp-config ./mcp.json

6.6 その他のフラグ

フラグ 説明
--add-dir 追加のワーキングディレクトリ claude --add-dir ../apps ../lib
--ide IDE接続を自動化 claude --ide
--agents カスタムサブエージェントを定義 claude --agents '{...}'
--settings 設定ファイルを指定 claude --settings ./settings.json
--setting-sources 設定ソースを指定 claude --setting-sources user,project
--json-schema JSON Schemaで出力を検証 claude -p --json-schema '{"type":"object",...}' "query"

--agents フラグの詳細

JSON形式でサブエージェントを定義できます:

claude --agents '{
  "code-reviewer": {
    "description": "コードレビュー専門家",
    "prompt": "あなたはシニアコードレビュアーです。",
    "tools": ["Read", "Grep", "Glob", "Bash"],
    "model": "sonnet"
  }
}'

7. 設定・権限管理

7.1 設定画面を開きたい

Claude Codeの各種設定を変更するには:

/config

設定画面では以下の項目を変更できます:

  • Verbose output(詳細出力)
  • Vimモード
  • カラーテーマ
  • その他の動作設定

7.2 権限設定を管理したい

/permissions

権限設定画面では、Allow(許可)とDeny(拒否)のルールを設定できます。

権限ルールの書式

パターン 説明
Bash(command:*) 特定のBashコマンドを制御 Bash(git add:*)
Edit(path/*) 特定パスの編集を制御 Edit(src/*)
Read(path/*) 特定パスの読み取りを制御 Read(.env*)
WebFetch(domain:url) 特定ドメインへのアクセスを制御 WebFetch(domain:example.com)

7.3 よくある権限設定例

git add -A を禁止したい

/permissions

Deny に以下を追加:

Bash(git add -A:*)
Bash(git add --all:*)

特定ディレクトリの編集を禁止したい

Edit(docs/*)
Read(docs/*)  # 読み取りも禁止する場合

危険なコマンドを禁止したい

Bash(rm -rf:*)
Bash(sudo:*)
Bash(curl:*)

特定のウェブサイトへのアクセスを禁止したい

WebFetch(domain:malicious-site.com)

7.4 設定ファイルで一括設定したい

個別に /permissions で設定する代わりに、.claude/settings.json ファイルで一括設定できます:

{
  "permissions": {
    "allow": [
      "Bash(npm run lint)",
      "Bash(npm run test:*)",
      "Bash(git status)",
      "Bash(git diff:*)",
      "Bash(git log:*)",
      "Read(~/.zshrc)"
    ],
    "deny": [
      "Bash(curl:*)",
      "Bash(wget:*)",
      "Bash(rm -rf:*)",
      "Bash(sudo:*)",
      "Read(.env*)",
      "Edit(production.config.*)"
    ]
  }
}

設定ファイルの場所

場所 スコープ
~/.claude/settings.json ユーザー全体
.claude/settings.json プロジェクト固有

7.5 設定をチーム全体で共有したい

.claude/settings.json をリポジトリにコミットすることで、チーム全体で設定を共有できます:

git add .claude/settings.json
git commit -m "Add Claude Code settings for team"

チーム設定のベストプラクティス

{
  "permissions": {
    "allow": [
      "Bash(npm run:*)",
      "Bash(yarn:*)",
      "Bash(git status)",
      "Bash(git diff:*)",
      "Bash(git log:*)"
    ],
    "deny": [
      "Bash(rm -rf:*)",
      "Bash(sudo:*)",
      "Edit(.env*)",
      "Edit(**/secrets/**)"
    ]
  },
  "enableAllProjectMcpServers": true
}

7.6 権限確認を全てスキップしたい(危険)

開発やテスト目的で、全ての権限確認をスキップしたい場合:

claude --dangerously-skip-permissions

重要な警告

このフラグは以下の条件でのみ使用してください:

  • ✅ インターネットアクセスのないコンテナ内
  • ✅ 信頼できる環境
  • ✅ 破壊されても問題ないテスト環境
  • ❌ 本番環境では絶対に使用しない
  • ❌ 機密データがある環境では使用しない

7.7 Verbose出力を有効にしたい

Claude Codeの実行内容を詳細に確認したい場合:

一時的に有効化

claude --verbose

インタラクティブモード中に切り替え

Ctrl+O

恒久的に設定

/config

Verbose outputtrue に設定。

Verbose出力で確認できること

  • ファイル編集のdiff(差分)
  • 実行されるコマンドの詳細
  • APIリクエスト/レスポンスの概要
  • ツールの実行結果

8. ファイル・画像の扱い

8.1 ファイルを参照して質問したい

Claude Codeでファイルを参照する最も確実な方法は @ 記号を使用することです:

@src/main.ts を説明して
@package.json のdependenciesを確認して
@README.md の内容を日本語に翻訳して

複数ファイルの参照

@src/auth/login.ts と @src/auth/logout.ts を比較して

ディレクトリの参照

@src/components/ ディレクトリの構造を説明して

@ なしでも動作する場合

Claude Codeは賢いので、@ なしでファイル名を言っても多くの場合は正しく認識します:

package.json を見て
src/main.ts の中身を確認して

ただし、確実性を高めるために @ の使用をお勧めします。

8.2 画像を見せたい

Claude Codeに画像を渡す方法は複数あります:

方法1: クリップボードから貼り付け

スクリーンショットを撮った後に Ctrl+V(macOSでも Ctrl+VCmd+V ではない)

方法2: ファイルパスを指定

@images/screenshot.png を分析して
@designs/mockup.jpg に基づいてUIを実装して

方法3: ドラッグ&ドロップ

Shift を押しながらファイルをターミナルにドラッグすると、ファイル参照として追加されます。

方法4: MCPツール経由

Playwright MCPなどを使用して、Claude Codeにブラウザのスクリーンショットを撮らせることもできます。

8.3 Macでのスクリーンショット操作

コマンド 動作
Cmd+Shift+Ctrl+4 範囲指定でクリップボードにコピー
Cmd+Shift+Ctrl+3 画面全体をクリップボードにコピー
Cmd+Shift+4 範囲指定でファイルに保存
Cmd+Shift+3 画面全体をファイルに保存

クリップボードにコピーした後は Ctrl+V で Claude Code に貼り付けられます。

8.4 画像の活用例

UIデザインの実装

@designs/login-page.png このデザインに基づいてReactコンポーネントを実装して

バグの報告・分析

[Ctrl+V でスクリーンショットを貼り付け]
この画面で発生しているレイアウトの問題を修正して

エラー画面の分析

[Ctrl+V でエラー画面を貼り付け]
このエラーの原因と解決方法を教えて

8.5 大きなファイルの扱い

大量のテキストや巨大なファイルを扱う場合の注意点:

直接貼り付けは避ける

大きなテキストを直接貼り付けると、Claude Codeがフリーズする可能性があります。

推奨される方法

1. ファイルに保存して参照

echo "長いコンテンツ..." > content.txt
@content.txt を分析して

2. パイプで渡す

cat large-file.txt | claude -p "内容を要約して"

3. 必要な部分だけ抽出

head -n 100 large-file.txt | claude -p "最初の100行を分析して"
tail -n 100 large-file.txt | claude -p "最後の100行を分析して"
grep "ERROR" large-log.txt | claude -p "エラーパターンを分析して"

8.6 バイナリファイルの扱い

Claude Codeは以下のバイナリファイルを直接扱えます:

  • 画像: PNG, JPG, JPEG, GIF, WEBP
  • ドキュメント: PDF(一部のMCPツール経由)

その他のバイナリファイル(Excel、Word等)は、テキスト形式に変換してから渡すか、適切なMCPツールを使用してください。


第1章のまとめ

第1章では、Claude Codeの基礎的な操作方法について詳しく解説しました:

  1. 起動と基本操作 – 様々な起動方法と基本的なコマンド
  2. セッション管理 – 会話の継続、再開、クリア、圧縮
  3. 入力・編集 – 効率的な入力方法とVimモード
  4. キーボードショートカット – 生産性を上げる全てのショートカット
  5. スラッシュコマンド – インタラクティブモードで使える全コマンド
  6. CLIフラグ – 起動時オプションの完全リファレンス
  7. 設定・権限管理 – セキュリティと利便性のバランス
  8. ファイル・画像の扱い – コンテキストを効果的に渡す方法

次の第2章では、より高度な機能について解説します:

  • CLAUDE.mdとメモリ管理
  • Git操作の自動化
  • カスタムスラッシュコマンドの作成
  • MCPによる機能拡張
  • サブエージェントとHooks
  • 効率的なワークフローの構築
  • トラブルシューティング

→ 第2章:応用・実践編へ続く

コメント

タイトルとURLをコピーしました