👾

Claude Code CLIを使いこなす!基本〜便利コマンド紹介編

に公開

はじめに

今回は、Anthropicが提供するAIコーディング支援ツール「Claude Code」の CLI (Command Line Interface) に焦点を当てて、その使い方を基本から応用まで徹底的に解説していきます。

CLIというと少し敷居が高く感じるかもしれませんが、一度使い方を覚えれば、コードに関する様々なタスクを効率的に、そして柔軟にこなせるようになります。この記事を読めば、今日からClaude Code CLIを開発ワークフローに取り入れ、作業を加速させることができるはずです!

この記事では以下の内容を学ぶことができます。

  • Claude Code CLIの2つの主要な使い方(インタラクティブモードとワンショットモード)
  • 作業効率を向上させる基本的なCLIコマンド
  • CLIの動作をカスタマイズする便利なフラグ
  • インタラクティブセッション中に役立つスラッシュコマンド
  • 知っておくと便利な特殊ショートカットやVimモード

さあ、一緒にClaude Code CLIの世界へ踏み出しましょう!🚀

Claude Code CLIとは?

Claude Codeは、コードの生成、デバッグ、レビュー、ドキュメント作成など、開発プロセスにおける様々なタスクをAIの力でサポートしてくれるツールです。その中でもCLI版は、ターミナルから直接Claude Codeと対話したり、スクリプトに組み込んで自動化したりできる強力なインターフェースです。

まずはここから!CLIの基本的な使い方

Claude Code CLIには、主に2つのインタラクションモードがあります。この2つを理解することが、CLI活用の第一歩です。

2つの主要なインタラクションモード

1. インタラクティブモード (Interactive mode)

これは、ターミナル上でClaudeと対話形式でやり取りするモードです。まるでチャットのように、連続して質問したり、指示を出したりできます。

インタラクティブモードを開始するには、単純に claude コマンドを実行します。

claude

特定のタスクから始めたい場合は、初期のクエリ(質問や指示)を指定して開始することも可能です。

claude "explain this project"

このコマンドを実行すると、"explain this project" というクエリから対話が開始されます。

2. ワンショットモード (One-shot mode)

ワンショットモードは、単一のクエリを実行して結果を出力し、すぐに終了するモードです。スクリプトでの利用や、サクッと質問して答えを得たい場合に非常に便利です。

ワンショットモードを使うには、claude コマンドに -p または --print フラグとクエリを指定します。

claude -p "what does this function do?"

このコマンドは、指定した関数の説明をClaudeに求め、その結果を出力して終了します。

また、ファイルの内容などをパイプ(|)を使って入力として渡し、それをClaudeに処理させることも可能です。例えば、ログファイルの内容を分析させたい場合などに有効です。

cat logs.txt | claude -p "analyze these errors"

基本コマンド一覧

ソースで紹介されている基本的なCLIコマンドをいくつか見てみましょう。

  • claude: インタラクティブREPL (Read-Eval-Print Loop) セッションを開始します。REPLとは、入力(Read)、評価(Eval)、出力(Print)、繰り返し(Loop)を行う対話型環境のことです。
  • claude "query": 初期プロンプトを指定してインタラクティブREPLセッションを開始します。
  • claude -p "query": ワンオフのクエリを実行し、その後終了します。
  • cat file | claude -p "query": パイプで渡されたコンテンツを処理します。
  • claude -c: 現在のディレクトリで最も新しい会話を継続します。作業を中断して再開したい場合に便利です。
  • claude -c -p "query": 最新の会話を継続しつつ、ワンショットモードで指定したクエリを実行します。
  • claude -r "<session-id>" "query": 指定したセッションIDの会話を再開します。特定の過去の会話に戻りたい場合に利用します。
  • claude config: 設定(configuration)を構成します。例えば、テーマをダークモードにするなど、設定を変更できます (claude config set --global theme dark)。
  • claude update: Claude Codeを最新バージョンにアップデートします。
  • claude mcp: モデルコンテキストプロトコルサーバーを設定します。

これらのコマンドを覚えるだけで、Claude Code CLIを使った基本的な操作ができるようになります。

さらに便利に!知っておきたいCLIフラグ

コマンドにフラグ(--flag-f の形式)を付けることで、Claude Code CLIの動作をより細かくカスタマイズできます。いくつか重要なフラグを見てみましょう。

フラグ名 説明
--print , -p レスポンスをインタラクティブモードではなく、標準出力に直接表示します(ワンショットモード)。 claude -p "query"
--output-format ワンショットモード(-p)での出力形式を指定します。オプションは text, json, stream-json です。json 形式はスクリプトや自動化に特に有用です。 claude -p "query" --output-format json
--verbose 詳細なログ(ターンごとの詳細出力など)を有効化します。インタラクティブモード、ワンショットモードどちらでも利用でき、デバッグに役立ちます。 claude --verbose
--max-turns 非インタラクティブモード(ワンショットモードなど)でのエージェントの思考ターン数を制限します。長すぎる応答を防ぎたい場合に利用できます。 claude -p --max-turns 3 "query"
--model 現在のセッションで使用するAIモデルを指定します。最新モデルのエイリアス (sonnetopus) またはモデルのフルネームを指定できます。 claude --model claude-sonnet-4-20250514
--resume 指定したセッションIDで会話を再開します。インタラクティブモードでセッションを選択して再開することも可能です。 claude --resume abc123 "query"
--continue 現在のディレクトリの最も新しい会話をロードします。-c コマンドと同じ機能です。 claude --continue
--dangerously-skip-permissions 権限プロンプトをスキップします。⚠️ 使用には十分な注意が必要です。 claude --dangerously-skip-permissions

これらのフラグを組み合わせることで、CLIの柔軟性が大きく向上します。例えば、JSON形式で結果を取得して後続の処理に渡す、特定のモデルで応答を得る、詳細な実行ログを確認するなど、様々なシナリオに対応できます。

インタラクティブモードを使いこなすスラッシュコマンド

インタラクティブモード(claude コマンドで開始されるセッション)では、/ で始まる特殊なコマンド(スラッシュコマンド)を使って、セッションの途中で様々な制御を行うことができます。

いくつかの便利なスラッシュコマンドを紹介します。

  • /clear: 現在の会話履歴をクリアします。新しいトピックについて話したい場合などに使います。
  • /config: 設定を表示したり変更したりできます。claude config コマンドと同じ機能ですが、セッション中に実行できます。
  • /cost: 現在のセッションやアカウントのトークン使用量統計を表示します。コスト管理に役立ちます。
  • /help: Claude Code CLIの使い方のヘルプを表示します。困ったときにすぐに参照できます。
  • /model: セッション中に使用するAIモデルを選択したり変更したりできます。タスクに応じて最適なモデルに切り替えたい場合に便利です。
  • /review: コードレビューをリクエストします。コードベース全体または特定の部分のレビューをClaudeに依頼できます。
  • /status: アカウントやシステムのステータスを表示します。接続状況やログイン状態などを確認できます。
  • /vim: Vimモードを有効にします。後述します。

これらのスラッシュコマンドは、インタラクティブセッションをより効率的に、よりコントロール可能にするための重要なツールです。対話中に / を入力して候補を見てみるのも良いでしょう。

開発効率を上げる特殊ショートカット

Claude Code CLIには、さらに作業をスムーズにするための特別なショートカット機能があります。

クイックメモリで素早く記憶 (#)

Claude Codeは、プロジェクトに関する情報などを「メモリ」として保持し、会話の中で参照することができます。通常はメモリファイルを編集して情報を追加しますが、CLIでは 入力の先頭に # を付ける ことで、その入力を素早くメモリに追加できます。

# Always use descriptive variable names

このように入力すると、その内容(Always use descriptive variable names)をどのメモリファイルに保存するかをプロンプトで聞かれます。頻繁に参照するガイドラインやコードスニペットなどを即座に記憶させたい場合に便利です。

ターミナルでの複数行入力

ターミナルで長いコードや詳細な指示をClaudeに送りたいとき、複数行に分けて入力したい場合があります。Claude Code CLIでは、以下の方法で複数行入力が可能です。

  • クイックエスケープ: 行末に \ (バックスラッシュ) を入力してEnterキーを押すと、次の行に継続できます。
  • キーボードショートカット: Optionキー + Enterキー、または Shiftキー + Enterキーで改行を入力できます。

特にキーボードショートカットは直感的で便利ですが、ターミナルの設定が必要です。

改行ショートカットの設定方法

お使いのターミナルエミュレータに応じて設定方法が異なります。

  • Mac Terminal.app:
    1. Settings (設定) → Profiles (プロファイル) → Keyboard (キーボード) を開きます。
    2. 「Use Option as Meta Key (Optionキーをメタキーとして使用)」にチェックを入れます。
  • iTerm2 および VS Code terminal:
    1. Settings (設定) → Profiles (プロファイル) → Keys (キー) を開きます。
    2. General (一般) セクションで、Left/Right Option key (左/右Optionキー) の設定を “Esc+” に変更します。

また、iTerm2とVS Codeユーザー向けには、Claude Code内で /terminal-setup コマンドを実行することで、Shift+Enterによる改行を自動的に設定する機能も提供されています。これはより直感的な選択肢として推奨されています。

Vimモード (/vim)

Vimエディタに慣れているユーザー向けに、Claude Code CLIはVimモードをサポートしています。インタラクティブセッション中に /vim コマンドを実行するか、/config コマンドで設定することで有効にできます。

Vimモードでは、Vimの基本的なキーバインディングを使って入力やナビゲーションを行うことができます。ソースによると、以下の操作がサポートされています。

  • モード切り替え: Esc (NORMALモードへ), i/I, a/A, o/O (INSERTモードへ)
  • ナビゲーション: h/j/k/l (←/↓/↑/→), w/e/b (単語移動), 0/$ (行頭/行末), ^ (行頭の非空白文字), gg/G (ファイル先頭/末尾)
  • 編集: x (一文字削除), dw/de/db/dd/D (削除), cw/ce/cb/cc/C (変更), . (直前の操作を繰り返し)

これらのキーバインディングはVimユーザーにとって馴染み深く、CLIでの入力編集効率を高めることができます。

まとめ

この記事では、Claude Code CLIの主要な機能とその使い方を解説しました。

  • 基本: インタラクティブモードで対話、ワンショットモードで単発実行。
  • コマンド: claude を中心に、会話継続 (-c)、セッション再開 (-r)、設定 (config)、アップデート (update) など。
  • フラグ: ワンショットモードの指定 (-p)、出力形式 (--output-format json)、詳細ログ (--verbose)、モデル選択 (--model) など、動作をカスタマイズ。
  • スラッシュコマンド: インタラクティブセッション中の履歴クリア (/clear)、設定変更 (/config)、モデル変更 (/model)、コスト確認 (/cost) など、多様な制御。
  • ショートカット: # でクイックメモリ追加、\ や Option+Enter (/terminal-setup も) で複数行入力。
  • Vimモード: /vim でVimキーバインディングによる操作を有効化。

これらの機能を理解し活用することで、Claude Code CLIはあなたの開発ワークフローにおいて非常に強力なツールとなります。簡単な質問から、コードの自動生成、レビュー、デバッグ、ドキュメント作成まで、CLIを通じてClaude Codeの能力を最大限に引き出すことができるでしょう。

まずはターミナルを開いて claude と入力し、インタラクティブモードでClaudeと会話を始めてみてください。次に、-p フラグを使ったワンショットモードで手軽に試してみるのも良いでしょう。

もしCLIの操作で迷ったら、/help コマンドがいつでも助けてくれます。

ぜひ、この記事を参考に、Claude Code CLIを使いこなして開発効率を爆上げしてください!🚀✨

参照

https://docs.anthropic.com/en/docs/claude-code/cli-usage

Discussion