Claude Code Commands使い方|日常業務を自動化する方法
Claude Codeを使い始めたものの、毎回同じ指示を手打ちしていませんか。「SEO記事を書いて」「この形式でレポートを作って」「このデータを集計して」。同じパターンの指示を繰り返しているなら、Commandsで自動化すべきタイミングです。
私はClaude Codeを業務のほぼ全範囲で使用しており、記事執筆・提案書作成・リサーチ・データ整理など、繰り返す業務はすべてCommand化しています。この記事では、Commandsの基本的な書き方から実践的な活用法まで、具体的に解説します。
Commandsとは何か
Commandsは、.claude/commands/ディレクトリにMarkdownファイルを置くことで作成できるユーザー起動型のワークフローです。/command-nameで呼び出し、Claude Codeに定型的な指示を実行させます。
重要な特徴は以下の3つです。
- 常にユーザーが明示的に呼び出す:Claude側が自動で呼び出すことはない
- コンテキストはメイン会話と共有:分離されない(Agentとの大きな違い)
- /メニューに常に表示:作成すれば自動的にスラッシュメニューに追加される
Boris Cherny氏が提唱する基準は非常に明快です。「1日2回以上やることはCommand化する」。この基準を採用してから、私のCommand作成の判断が格段に速くなりました。

Commandsの基本的な書き方
ファイル構成
Commandファイルは.claude/commands/ディレクトリに.md形式で配置します。ファイル名がそのままコマンド名になります。
基本的な構成は以下の通りです。
- YAMLフロントマター:設定情報(description、modelなど)
- 本文:Claude Codeへの指示内容
フロントマターで設定できる主要なフィールドは13個ありますが、最初はdescriptionだけで十分です。descriptionにコマンドの説明を書くと、/メニューでの表示時に内容が分かりやすくなります。
model指定でコストを最適化
フロントマターでmodelを指定すると、そのCommandの実行時に使うモデルを制御できます。例えば、オーケストレーション的な処理(Agent/Skillの呼び出し管理)はhaikuで十分です。重い処理はAgent/Skill側のモデル設定に任せ、Command自体は軽量モデルで実行するというパターンが効率的です。
引数処理($ARGUMENTS)の活用
Commandsの強力な機能の一つが$ARGUMENTSによる引数受け取りです。
例えば/generate-reportというCommandを作成し、本文に「$ARGUMENTSで指定されたトピックについてレポートを生成してください」と書いておけば、/generate-report AI市場動向と呼び出すだけでトピックに応じたレポートが生成されます。
さらに細かい引数の分割も可能です。
- $ARGUMENTS:引数全体を取得
- $0:最初の引数
- $1:2番目の引数
私の業務では、SEO記事生成のCommandに「キーワード」「記事ID」「テーマ」を引数で渡しています。同じCommandを異なるキーワードで何度も再利用できるため、記事1本あたりの指示出し時間がほぼゼロになりました。
動的コンテキスト注入(!`command`)
Commandsのもう一つの強力な機能が、!`command`による動的コンテキスト注入です。これはCommand/Skillだけが持つ機能で、Agentにはありません。
バッククォートで囲んだシェルコマンドの前に!を付けると、実行時にそのコマンドの出力結果がCommandの本文に注入されます。
例えば、以下のような使い方ができます。
- !`git diff`:現在の差分を注入してコードレビューを実行
- !`cat package.json`:プロジェクト設定を注入して依存関係チェック
- !`date`:現在日時を注入してタイムスタンプ付きレポート生成
静的なMarkdownファイルでありながら、実行時に動的な情報を取り込めるのがCommandsの大きな強みです。毎回変わるデータ(差分、日付、ファイルの中身など)を自動で取得し、Commandに組み込むことで、より柔軟な自動化が実現します。
知っておくべきビルトインコマンド
Claude Codeには64個のビルトインコマンドが用意されています。すべてを覚える必要はありませんが、カテゴリ別に主要なものを把握しておくと便利です。
セッション管理
/clear:会話をリセット/compact:コンテキストを圧縮/resume:過去のセッションを再開/rewind:直前の操作を巻き戻し/branch:会話を分岐
モデル・設定
/model:モデル切り替え/effort:思考レベルの変更(low/medium/high)/plan:計画モード(読み取り専用で調査)
プロジェクト
/diff:変更差分の表示/pr-comments:PR コメントの確認/security-review:セキュリティレビュー
コンテキスト管理
/context:現在のコンテキスト情報/cost:トークン消費量の確認/usage:使用状況
特に/costは、トークン消費を管理するうえで頻繁に使います。Max 5xプランで運用している私は、作業の区切りごとに/costで消費量をチェックするのが習慣になっています。
Commandをオーケストレーターとして使う
Commandの真価は、単独の処理実行ではなくAgent/Skillのオーケストレーターとして機能するときに発揮されます。
基本的な流れは以下の通りです。
- ユーザーが
/command-nameでCommandを呼び出す - CommandがAgent toolでデータ取得エージェントを呼び出す
- エージェントが分離コンテキストでデータを収集して返す
- CommandがSkill toolで出力生成スキルを呼び出す
- スキルが最終成果物を生成
このパターンの利点は、Command自体は軽量モデル(haiku等)で実行し、重い処理はAgent/Skill側のモデル設定に任せられる点です。結果として、トークン消費を最適化しながら高品質な出力が得られます。
私が実際にCommand化している業務
参考までに、私が日常的にCommand化して使っている業務を紹介します。
- SEO記事生成→CMS投稿:キーワードと記事IDを引数で渡し、記事執筆→MicroCMS投稿まで一気通貫
- 提案書PDF生成:クライアント情報と提案内容を引数で渡し、PDF出力
- リサーチ→要約→レポート生成:テーマを引数で渡し、調査から成果物まで自動化
- note記事生成:トピックを引数で渡し、記事本文と挿絵を一括生成
いずれも「1日2回以上」の基準に基づいてCommand化したものです。一度作成すれば、あとは/command-name 引数で呼び出すだけです。
まとめ
Claude Code Commandsの使い方を整理します。
- .claude/commands/にMarkdownファイルを置くだけで作成できる
- 「1日2回以上やることはCommand化」が判断基準
- $ARGUMENTSで引数を渡し、同じCommandを異なる条件で再利用
- !`command`で実行時に動的な情報を注入
- 64個のビルトインコマンドのうち、
/costと/compactは必須 - Commandの真価はAgent/Skillのオーケストレーターとして機能するとき
まずは、毎日繰り返している業務を1つCommand化してみてください。引数と動的コンテキストを組み合わせることで、驚くほど柔軟な自動化が実現します。一度この効率を体験すると、Command化していない繰り返し業務が気になって仕方なくなるはずです。
御社の業務に合わせたClaude Code導入支援
「AIツールを導入したが、現場で使われない」を終わらせる。
業務課題のヒアリングから設計、ハンズオン実践、運用定着まで一貫して支援します。