こんにちは、とまだです。
Claude Codeを使っていて、同じような指示を何度も書いているなと感じたことはありませんか?
実は、Claude Codeには「カスタムコマンド」という便利な機能があるんです。
これを使えば、長い指示を短いコマンドで実行できるようになります。
今回は、カスタムコマンドの基本的な仕組みから、実 際に使える便利なコマンドまで、初心者の方でもすぐに活用できる方法をご紹介します。
(追記:カスタムコマンドの観点も含めて Codex CLI との比較記事も書きました)
カスタムコマンドとは?
カスタムコマンドは、よく使う指示を短いコマンドとして登録できる機能です。
日常生活でたとえるなら、スマートフォンの「ショートカット」のようなものです。
「おはよう」と言うだけで、天気予報を読み上げて、今日の予定を確認して、ニュースを表示する、といった一連の動作を自動化できるあれです。
Claude Codeのカスタムコマンドも同じように、複雑な指示を簡単なコマンドで実行できるようにしてくれます。
たとえば、コードレビューをお願いする時を考えてみましょう。
通常なら「このコードをレビューして、バグの可能性を指摘して、パフォーマンスの改善点も教えて」と長々と説明する必要があります。
でも、カスタムコマンドを使えば /review
と打つだけで、同じことができるようになるんです。
仕組みはとてもシンプル
カスタムコマンドの仕組みは驚くほどシンプルです。
.claude/commands/
というディレクトリに、マークダウンファイルを置くだけ。
ファイル名がコマンド名になり、ファイルの内容が実行される指示になります。
たとえば、.claude/commands/hello.md
というファイルを作れば、/hello
というコマンドが使えるようになります。
本当にこれだけです。
プログラミングの知識がなくても、テキストファイルが作れれば誰でもカスタムコマンドを作れます。
実際に作ってみよう
では、実際にカスタムコマンドを作ってみましょう。
まず最初は、シンプルなものから始めます。
コマンド用のディレクトリを準備
プロジェクトのルートディレクトリで、以下のコマンドを実行します。
mkdir -p .claude/commands
これで、カスタムコマンドを置く場所ができました。
最初のカスタムコマンドを作成
では、プロジェクトの概要を説明してもらうコマンドを作ってみます。
.claude/commands/explain.md
というファイルを作成し、以下の内容を書きます。
このプロジェクトについて、以下の観点で説明してください。
- 主な機能
- 使用している技術
- ディレクトリ構成
- 重要なファイル
初めて見る人でもわかるように、簡潔に説明してください。
これで準備は完了です。
Claude Codeを起動して、/explain
と入力してみてください。
プロジェクトの概要を自動的に説明してくれるはずです。
実用的なカスタムコマンドの例
基本がわかったところで、実際に役立ちそうなカスタムコマンドをいくつか作ってみましょう。
コードの改善提案(/improve)
.claude/commands/improve.md
:
現在のコードを確認し、以下の観点で改善提案をしてください。
1. コードの可読性
2. パフォーマンス
3. エラーハンドリング
改善案は具体的なコード例と共に提示してください。
実装の優先度(高/中/低)も付けてください。
このコマンドを使うと、現在のコードの改善点を素早く把握できます。
特に、自分では気づきにくい問題点を発見してくれることが多いです。
テストコード生成(/test)
.claude/commands/test.md
:
現在の実装に対するテストコードを生成してください。
以下のケースを含めてください:
- 正常系のテスト
- 異常系のテスト
- エッジケースのテスト
テストフレームワークは、プロジェクトで使用しているものを選択してください。
各テストケースにはコメントで説明を追加してください。
テストコードを書くのは面倒な作業ですが、このコマンドで基本的なテストを素早く生成できます。
生成されたテストをベースに、必要に応じて追加や修正を行えば効率的です。
引数を使った動的なコマンド
カスタムコマンドは、実行時に引数を受け取ることもできます。
$ARGUMENTS
という特別な変数を使うことで、コマンド実行時に値を渡せるようになります。
ファイル指定レビュー
.claude/commands/file-review.md
:
$ARGUMENTS のファイルについて、詳細なコードレビューを実施してください。
確認するポイント:
- コーディング規約の準拠
- バグの可能性
- セキュリティ上の問題
- パフォーマンスの改善余地
問題がある場合は、修正案も提示してください。
使い方は以下のようになります。
/file-review src/components/Header.tsx
これで、特定のファイルだけをピンポイントでレビューできます。
機能追加コマンド
.claude/commands/add-feature.md
:
$ARGUMENTS という機能を実装してください。
実装の手順:
1. 必要なファイルの確認
2. 既存コードへの影響確認
3. 実装
4. テストの追加
既存の設計パターンに従って、一貫性のある実装をしてください。
使用例:
/add-feature ユーザープロフィール編集機能
このように、引数を使うことで柔軟なコマンドが作れます。
カスタムコマンドの管理と運用
カスタムコマンドを効果的に使うには、適切な管理が重要です。
命名規則を決める
コマンド名は短く、わかりやすいものにしましょう。
たとえば、レビュー系は review-
で始める、生成系は gen-
で始めるなど、カテゴリごとにプレフィックスを付けると管理しやすくなります。
ただし、あまり細かく分けすぎると覚えにくくなるので、バランスが大切です。
プロジェクトごとにカスタマイズ
プロジェクトの性質によって、必要なコマンドは変わってきます。
フロントエンド開発なら、コンポーネント生成やスタイリングチェックのコマンドが便利です。
また、バックエンド開発なら、API設計やデータベース最適化のコマンドが役立つでしょう。
プロジェクトの特性に合わせて、カスタムコマンドを調整していきましょう。
チームで共有する
カスタムコマンドはGitで管理できるので、チーム全体で共有できます。
.claude/commands/
ディレクトリをリポジトリに含めることで、チームメンバー全員が同じコマンドを使えるようになります。
これにより、開発の標準化が進み、品質の統一も図れます。
効果的な活用のコツ
カスタムコマンドを最大限に活用するためのコツをご紹介します。
小さく始めて、徐々に拡張する
最初から完璧なコマンドを作ろうとせず、シンプルなものから始めましょう。
使っていく中で不便を感じたら、その都度改善していけばいいのです。
たとえば、最初は「コードをレビューして」という簡単な指示から始めて、徐々に「セキュリティも確認して」「パフォーマンスも見て」と追加していく感じです。
頻度の高い作業を優先する
毎日のように行う作業こそ、カスタムコマンド化する価値があります。
コードレビュー、テスト実行、ドキュメント更新など、繰り返し行う作業を洗い出してみましょう。
これらをコマンド化することで、開発時間を大幅に短縮できます。
定期的な見直しを行う
プロジェクトが成長するにつれて、必要なコマンドも変わってきます。
月に一度くらいは、使用頻度の低いコマンドを削除したり、新しく必要になったコマンドを追加したりして、メンテナンスを行いましょう。
使わないコマンドが増えすぎると、かえって管理が煩雑になってしまいます。
ちなみに私は週に一度は見直すようにしています。
まとめ
Claude Codeのカスタムコマンドは、開発効率を大幅に向上させる強力な機能です。
仕組みはシンプルで、.claude/commands/
ディレクトリにマークダウンファイルを置くだけ。
これだけで、複雑な指示を短いコマンドで実行できるようになります。
まずは簡単なコマンドから始めて、徐々に自分の開発スタイルに合わせてカスタマイズしていきましょう。
使い込んでいくうちに、なくてはならない存在になるはずです。
今回ご紹介したコマンドを参考に、ぜひ自分だけのカスタムコマンドセットを作ってみてください。
なお、今回はあえてカスタムコマンドの基礎としてシンプルな例だけお見せしました。
一方、私が実務や個人開発で使っているのは、より詳しく、具体的で、これまでの開発経験を反映した実践的なものです。
次回は、これらの基礎的なコマンドをさらに発展させた、品質チェックに特化したカスタムコマンドについて詳しく解説する予定です。
関連記事
Claude Codeの基本的な使い方がまだよくわからない方は、こちらの記事もご覧ください。