Codexカスタムコマンドの作り方|~/.codex/promptsとSkills移行
先に結論: Codexの自作スラッシュコマンドは、
~/.codex/prompts/にMarkdownファイルを置き、/prompts:ファイル名で呼び出す「カスタムプロンプト」機能で作れます。ただしこの機能は非推奨扱いで、公式はSkillsへの移行を推奨しています。新規に作るならSkillsが第一候補です。
毎回同じ指示文を打っているなら、自作のスラッシュコマンドにまとめると一気に楽になります。
この記事では、Codexのカスタムプロンプト(自作スラッシュコマンド)の作り方と引数の使い方、そして非推奨となった今、Skillsとどう使い分けるべきかを2026年8月時点の情報で解説します。
この記事の要点
- Codexのカスタムプロンプトは、
~/.codex/prompts/に置いたMarkdownファイルを/prompts:ファイル名で呼び出す機能です。- フロントマターには
descriptionとargument-hintを書け、本文では$1〜$9・$KEY・$ARGUMENTSで引数を展開できます。- 読み込まれるのは
~/.codex/prompts/直下のファイルだけで、サブディレクトリは無視されます。追加・編集後はCodexの再起動が必要です。- カスタムプロンプトは2026年8月時点で非推奨扱いとなっており、公式はSkillsへの移行を推奨しています。
- リポジトリでの共有や自動発火が必要ならSkills、個人の定型文だけなら既存カスタムプロンプトの継続利用も現実的です。
前提・動作環境
この記事はCodex CLIまたはIDE拡張を導入済みの方向けです。導入がまだの方は「Codexの使い方完全ガイド」から始めてください。
カスタムプロンプトはCLIとIDE拡張の両方でスラッシュコマンドとして使えますが、非推奨機能のためバージョンアップで挙動が変わる可能性があります。最新の扱いは公式ドキュメント(developers.openai.com/codex)で確認してください。
カスタムプロンプトの作り方
作成は3ステップです。ホームディレクトリの~/.codex/prompts/にMarkdownファイルを置くだけで、ファイル名がそのままコマンド名になります。
まずフォルダを作ります。
mkdir -p ~/.codex/prompts
次に、プロンプト本体のMarkdownファイルを作成します。例としてPRの下書きを作らせるdraftpr.mdを置いてみます。
---
description: 変更内容からPRのタイトルと説明文の下書きを作る
argument-hint: [FILES=<paths>] [PR_TITLE="<title>"]
---
$FILES の変更内容を確認し、$PR_TITLE という方向性で
PRのタイトル案と説明文の下書きを作成してください。
フロントマターは省略可能ですが、descriptionを書いておくとスラッシュメニューの一覧に説明が表示されて選びやすくなります。argument-hintは期待する引数の書式をメモしておく欄です。
最後にCodexを再起動すれば読み込まれます。ファイルの追加・編集は再起動するまで反映されない点に注意してください。
呼び出し方と引数の展開
チャットの入力欄で/を打つとスラッシュメニューが開き、/prompts:ファイル名の形式で呼び出せます。
/prompts:draftpr FILES="src/app.ts src/util.ts" PR_TITLE="ログイン改善"
本文中のプレースホルダーは、呼び出し時の引数で置き換えられます。
$1〜$9: スペース区切りの位置引数を順番に展開します。$KEY(大文字の名前付き引数):KEY=value形式で渡します。スペースを含む値はFOCUS="loading state"のように引用符で囲みます。$ARGUMENTS: 渡された引数全体をまとめて展開します。$$: ドル記号そのものを出力したいときに使います。
引数を渡し忘れた定型文はそのまま送られるだけなので、まずは引数なしの固定文からはじめて、慣れたら$1や$KEYを足していくのが安全です。
非推奨化とSkillsへの移行
ここまで紹介したカスタムプロンプトは、2026年8月時点で公式ドキュメント上「非推奨(deprecated)」の扱いです。再利用可能な手順のパッケージ化はSkillsに一本化する方向が示されています。
両者の違いを整理すると次のようになります。
- 共有: カスタムプロンプトは
~/.codex/prompts/の個人ローカル限定で、リポジトリ経由でチーム共有できません。Skillsはリポジトリの.agents/skills/に置けばチーム全員で使えます。 - 呼び出し: カスタムプロンプトは
/prompts:名前の明示呼び出しのみです。Skillsは$skill-nameの明示指定に加え、descriptionに基づく自動発火にも対応します。 - 同梱物: カスタムプロンプトは指示文だけですが、Skillsはスクリプトや参考資料も一緒にパッケージ化できます。
新しくワークフローを整備するならSkillsが第一候補です。SKILL.mdの書き方は「Codex Skillsの使い方」で詳しく解説しています。
一方、「自分専用の定型文を数個呼び出したいだけ」という用途なら、既存のカスタムプロンプトを使い続ける判断も現実的です。
なお、Claude Codeにも同様の自作スラッシュコマンド機能があります。比較したい方は「Claude Codeのスラッシュコマンド一覧と使い方」をご覧ください。
つまずきポイント
気持ちはわかりますが、読み込まれるのは~/.codex/prompts/直下のMarkdownだけで、サブディレクトリは走査されないのです。ファイルを直下へ戻して、Codexを再起動すれば復活しますよ。
- サブフォルダに入れると認識されない: 読み込み対象は
~/.codex/prompts/直下のみで、サブディレクトリは無視されます。整理したい場合はファイル名の接頭辞(review-など)で工夫しましょう。 - 作ったのにメニューに出ない: 再起動忘れが典型例です。編集後は必ずCodexを起動し直してください。それでも出ない場合は、バージョン更新で挙動が変わっていないか公式情報を確認しましょう。
$をそのまま出力したい: シェル変数の例などを含むプロンプトでは、$$と書かないと引数展開と誤解されます。- AGENTS.mdと役割が混ざる: 毎回守ってほしい常設ルールはAGENTS.md、呼んだときだけ実行する手順はカスタムプロンプトやSkillsという住み分けです。詳しくは「AGENTS.mdの書き方」を参照してください。
よくある質問
今からカスタムプロンプトを覚える意味はありますか?
新規のワークフロー整備ならSkillsを推奨します。非推奨機能に新たに投資するより、共有や自動発火にも対応するSkillsで作る方が長持ちします。
ただし仕組み自体は数分で試せるほど簡単なので、「個人の定型文置き場」としての価値は今も残っています。
既存のカスタムプロンプトはすぐ移行すべきですか?
慌てる必要はありませんが、チームで共有したくなったタイミングがSkillsへの移行どきです。
指示文の本文はほぼそのまま、SKILL.mdのフロントマター(nameとdescription)を足す形で移せます。
プロジェクトごとにコマンドを分けられますか?
2026年8月時点のカスタムプロンプトはユーザー単位(~/.codex/prompts/)のみで、プロジェクト単位の配置はできません。
プロジェクト単位で分けたい場合は、リポジトリの.agents/skills/に置けるSkillsを使いましょう。
ハブネコのひとこと
非推奨と聞くと全部作り直したくなりますが、まずは「共有したいか」で線を引くのがおすすめです。自分しか使わない定型文はそのまま、チームに配りたくなったものからSkillsへ、が疲れない移行ペースです。
まとめ
Codexの自作スラッシュコマンドは、~/.codex/prompts/にMarkdownを置いて/prompts:ファイル名で呼び出すカスタムプロンプト機能で実現できます。
$1〜$9や$KEY、$ARGUMENTSで引数も扱えますが、機能自体は非推奨扱いで、公式はSkillsへの移行を推奨しています。共有・自動発火が必要ならSkills、個人の定型文なら現状維持という使い分けが現実的です。
Skillsの作り方は「Codex Skillsの使い方」、スラッシュコマンド全般の早見表は「Codexコマンド一覧・早見表」、Codex全体の使い方は「Codexの使い方完全ガイド」をご覧ください。
プロンプトをジャンルごとにサブフォルダへ整理したら、スラッシュメニューから全部消えちゃいました…。ぼく、片付けただけなのに…。