Codex CLIのカスタムコマンドを完全攻略!よく使う指示を瞬時に呼び出す方法
こんにちは、とまだです。
Codex CLIを使っていて、「またこの長い指示を打つのか...」と思ったことはありませんか?
コードレビューをお願いするたびに、同じような観点を何度も説明したり。
実は、これらの定型的な指示をカスタムコマンドとして保存しておける機能があるんです。
今回は、Codex CLIでカスタムコマンドを作成・活用する方法を、実例を交えて詳しく解説します。
また、動画版を見るとイメージが掴みやすいと思います!
忙しい人のために要約
- Codex CLIで
/コマンド名で定型プロンプトを呼び出せる -
~/.codex/prompts/にMarkdownファイルを置くだけ - ファイル名がコマンド名になる(例:review.md → /review)
- コマンドを反映するにはCodex CLIの再起動が必要
カスタムコマンドってどんな仕組み?
カスタムコマンド(正式には「カスタムプロンプト」)は、毎回入力する定型的な指示を短いコマンドで呼び出せる機能です。
例えて言うなら、料理のレシピをメモしておいて、必要な時にサッと取り出すようなもの。
「コードをレビューして、セキュリティとパフォーマンスの観点で...」という長い指示を、/reviewの一言で済ませられるようになります。
実際にCodex CLIには/initや/compactといったビルトインコマンドがありますよね。
それと同じように、自分だけのオリジナルコマンドを作れるというわけです。
作り方は驚くほどシンプル
カスタムコマンドの作成は、本当に簡単です。
指定されたフォルダにMarkdownファイルを置くだけ。
プログラミングの知識は一切不要です。
基本的な手順
まず、カスタムコマンド用のフォルダを作成します。
mkdir -p ~/.codex/prompts
次に、コマンドファイルを作成します。
touch ~/.codex/prompts/greet.md
これで/greetというコマンドが使えるようになります。
ファイルの編集方法
ファイルの編集は、お好きな方法でOKです。
VS Codeを使っている場合:
code ~/.codex/prompts/greet.md
もしcodeコマンドが使えない場合は、VS CodeでCommand+Shift+P(WindowsはCtrl+Shift+P)を押して、「Shell Command: Install 'code' command in PATH」を選択してください。
viコマンドでも編集できます。
vi ~/.codex/prompts/greet.md
実際に動かしてみよう
では、簡単なカスタムコマンドを作って試してみましょう。
挨拶コマンドを作成
greet.mdに以下の内容を書きます。
英語で挨拶してください
保存したら、Codex CLIを起動します。
codex
そして、作成したコマンドを実行してみましょう。
/greet
すると、「英語で挨拶してください」というプロンプトが自動的に送信されます。
注意点:変更の反映
カスタムコマンドを編集した後は、必ずCodex CLIを再起動する必要があります。
# Ctrl+C を2回押して終了
# もう一度起動
codex
これで最新の内容が反映されます。
実践的なカスタムコマンドの例
では、実際の開発で役立つカスタムコマンドをいくつか紹介します。
公式ドキュメントを参考にいくつか用意してみました。
あくまで汎用性を重視しているので、ご自身のプロジェクトに応じてカスタマイズしていくと良いでしょう。
コードレビュー用コマンド
~/.codex/prompts/review.md:
このコードを詳細にレビューしてください。
## 確認観点
- セキュリティの問題
- パフォーマンスの改善点
- コードの可読性
- ベストプラクティスとの乖離
- 潜在的なバグ
## 出力形式
優先度の高い順に問題点を列挙し、具体的な修正提案を含めてください。
使い方:
/review
これで、一貫した観点でコードレビューができます。
セキュリティチェック用コマンド
~/.codex/prompts/security.md:
セキュリティの観点からコードを分析してください。
特に以下の脆弱性をチェック:
- SQLインジェクション対策
- XSS脆弱性
- 認証・認可の実装
- 機密情報のハードコード
- 入力値の検証
発見した問題については、CVSSスコアと修正方法を提示してください。
リファクタリング提案コマンド
~/.codex/prompts/refactor.md:
このコードをクリーンコード原則に従ってリファクタリングしてください。
改善ポイント:
- 単一責任原則の適用
- 重複コードの排除
- 命名の改善
- 複雑度の削減
- テスタビリティの向上
変更前後の比較と、なぜその変更が必要かの説明も含めてください。
テスト生成コマンド
~/.codex/prompts/test-gen.md:
選択したコードに対して包括的なユニットテストを作成してください。
テスト要件:
- 正常系のテストケース
- 異常系・エッジケース
- 境界値テスト
- モック・スタブの適切な使用
各テストケースには、何をテストしているかのコメントを付けてください。
プロジェクト特化型のカスタムコマンド
プロジェクトごとに異なる要件がある場合も、カスタムコマンドで対応できます。
API仕様書生成
~/.codex/prompts/api-doc.md:
実装したAPIエンドポイントのドキュメントを生成してください。
含める内容:
- エンドポイントURL
- HTTPメソッド
- リクエストパラメータ
- レスポンス形式
- エラーコード
- 使用例(curl)
OpenAPI 3.0形式で出力してください。
データベース設計レビュー
~/.codex/prompts/db-review.md:
データベーススキーマを分析してください。
チェック項目:
- 正規化レベルの適切性
- インデックスの設定
- 外部キー制約
- パフォーマンスのボトルネック
- スケーラビリティの課題
改善提案がある場合は、マイグレーションスクリプトも提供してください。
IDE拡張版での制限事項
Codex CLIにはVS Code拡張版もありますが、カスタムコマンドの動作には違いがあります。
CLI版 vs IDE拡張版
| 機能 | CLI版 | IDE拡張版 |
|---|---|---|
| カスタムコマンド | ✅ 完全対応 | ⚠️ 不安定 |
| ビルトインコマンド | ✅ 全機能 | ❌ 一部のみ |
| セッション管理 | ✅ 安定 | ❌ 制限あり |
基本的には、カスタムコマンドを使いたい場合はCLI版の使用を推奨します。
IDE拡張版では、カスタムコマンドが認識されないことがあったり、期待通りに動作しないケースがあります。
このあたりは今後のアップデートで改善されるかもしれません
カスタムコマンドの管理テクニック
カスタムコマンドが増えてきたら、整理整頓が大切です。
命名規則を決める
用途別にプレフィックスを付けると管理しやすくなります。
review-security.md # セキュリティレビュー
review-performance.md # パフォーマンスレビュー
gen-test.md # テスト生成
gen-doc.md # ドキュメント生成
トラブルシューティング
よくある問題と解決方法をまとめておきます。
コマンドが認識されない
原因1: ファイルの場所が間違っている
# 正しい場所を確認
ls ~/.codex/prompts/
原因2: 拡張子が.mdではない
# .mdファイルのみ認識される
mv command.txt command.md
原因3: Codex CLIを再起動していない
# Ctrl+C 2回で終了後、再起動
codex
編集内容が反映されない
必ずCodex CLIを再起動してください。
ホットリロード機能はないため、変更を反映するには再起動が必要です。
動画で実際の操作を見る
カスタムコマンドの作成から実行まで、実際の画面で確認したい方は、こちらの動画をご覧ください。
コードレビュー用のカスタムコマンドを作成し、実際にプロジェクトで使用する様子を詳しく解説しています。
動画では以下の内容を実演しています。
- カスタムコマンドの作成手順
- VS Codeでの編集方法
- 実際のプロジェクトでの活用例
- トラブルシューティングの実例
まとめ
Codex CLIのカスタムコマンドは、定型的な作業を劇的に効率化してくれる機能です。
仕組みはシンプルで、~/.codex/prompts/にMarkdownファイルを置くだけ。
コードレビュー、セキュリティチェック、テスト生成など、よく使う指示をコマンド化しておけば、開発スピードが格段に上がります。
最初は簡単なコマンドから始めて、徐々に自分の開発スタイルに合わせてカスタマイズしていきましょう。
ぜひ、今日から試してみてください!