「スラッシュコマンド」で検索すると、/goal も /formal も /handwritten も、同じ一覧表に並んで出てくる。
だがこの3つは、動く仕組みがまったく違う。片方はアプリに実装された機能で、片方は単なる文章の書き方で、残り一つはそもそも効いているかどうか怪しい。同じ「/」で始まるせいで、全部同じものとして紹介されてしまっている。
まず全体像を整理する。
| 層 | 実体 | 具体例 | 見分け方 |
|---|---|---|---|
| 第1層:公式コマンド | アプリに実装された機能 |
/goal /plan /model
|
「/」を打つと候補メニューに出る |
| 第2層:擬似コマンド | ただのプロンプトの書き方 |
/formal /casual /short
|
メニューに出ない。文章として読まれている |
| 第3層:都市伝説枠 | 効果の根拠が薄い噂 |
/handwritten /humanize
|
検証記事の多くが「再現できない」と報告 |
この記事は、OpenAI公式ドキュメント(learn.chatgpt.com)で実在を確認できたものだけを「第1層」として扱っている。裏取りできなかったものは、正直にそう書く。
第1層:公式のスラッシュコマンド
入力欄で半角の「/」を打つと、候補メニューが実際に立ち上がる。これが本物のコマンドだ。
公式ドキュメントには、ChatGPTデスクトップアプリで使えるコマンドの一覧が載っている。主なものを抜き出す。
| コマンド | できること |
|---|---|
/goal |
持続的な目標を設定し、ChatGPTがそれに向けて作業し続ける |
/plan |
複数ステップの計画を立てるプランモードの切り替え |
/model |
このチャットで使うモデルを選ぶ |
/reasoning |
推論の深さ(reasoning effort)を選ぶ |
/status |
チャットID、コンテキスト使用量、レート制限を表示 |
/compact |
現在のチャットのコンテキストを圧縮する |
/side |
メインのチャットを中断せず、一時的なサイドチャットを開始 |
/fork |
ローカルチャットを新しいチャットへ複製 |
/review |
未コミットの変更やブランチ比較のコードレビューモード |
/mcp |
接続中のMCPサーバーの状態を表示 |
/memories |
メモリーの利用・生成の可否を設定 |
/feedback |
フィードバック送信ダイアログを開く |
使えるコマンドは環境によって変わる
公式ドキュメント自身が「利用可能なコマンドは環境とアクセス権によって異なる」と明記している。上の表はデスクトップアプリのリファレンスに基づくもので、Web版やモバイル版で全部が同じように使えるとは限らない。
一番確実な確認方法は、自分の入力欄で実際に「/」を打ってみること。 記事の一覧表より、目の前のメニューのほうが正しい。
/status は地味だが効く
/compact や /status は目立たないが、長い会話でこそ効いてくる。/status でコンテキスト使用量を確認し、埋まってきたら /compact で圧縮する。この2つを知っているだけで、「途中から急にAIが前の話を忘れ始める」現象への対処がまったく変わる。
/plan → /goal の実際の使い方
第1層のなかでも、いちばん挙動が特殊なのが /goal だ。単発の返信ではなく、完了・一時停止・追加情報の要求のいずれかに至るまで作業を続ける「持続的な目標」 を設定する。
公式ドキュメントが推奨しているのは、/plan で目標を練ってから /goal に渡す流れだ。実際に書くとこうなる。
ステップ1:/plan で計画を固める
/plan 社内の勤怠管理をExcel運用からツールに移行したい。
要件整理から候補ツールの比較まで進めたい。
ここでChatGPTが計画案を出してくる。「要件を洗い出す→候補を列挙→評価軸を決める→比較表を作る」といった形だ。これを対話で詰める。この段階では、まだ作業は始まらない。
ステップ2:固まった計画を /goal に渡す
/goal 勤怠管理ツールの候補を3つに絞り、
比較表とコスト試算をまとめる
これでゴールモードに入る。目標が有効なあいだ、入力欄の上に進捗行が表示される。
進捗行のボタンが便利
目標の一時停止・再開、目標文の編集、目標のクリアは、進捗行のボタンから直接操作できる。いちいち別のスラッシュコマンドを打ち直す必要はない。目標が走っている最中も、通常のメッセージで軌道修正を続けられる。
/plan を挟む意味は大きい。目標があいまいなまま /goal に渡すと、AIは曖昧な目標に向かって延々と走り続けることになる。先に目標を言語化して詰めるフェーズを分ける、という設計になっている。
自分専用コマンドの作り方:/prompts:<name>
「毎回同じ指示を書くのが面倒」を解決する公式の仕組みがこれだ。Markdownファイルを置くと、それが自分専用のスラッシュコマンドになる。
先に重要な注意:カスタムプロンプトは公式に「非推奨(deprecated)」扱い
OpenAIは現在、再利用したい指示についてはSkillsを使うことを推奨している。既存のカスタムプロンプトは引き続き動くが、これから新規に組むなら Skills を検討したほうがいい。
「便利な機能を見つけた」と思って飛びついた先が非推奨だった、というのはよくある話なので、最初に書いておく。
仕組みを理解する分には有用なので、手順を載せる。
1. ファイルを置く
~/.codex/prompts/ の直下にMarkdownファイルを作る。サブディレクトリは走査されないので、直下に置くこと。ファイル名(.md を除いた部分)がコマンド名になる。
2. 中身を書く
~/.codex/prompts/review.md の例:
---
description: 指定ファイルをレビューして改善点を3つ挙げる
argument-hint: [FILE=<path>] [FOCUS="<観点>"]
---
$FILE のコードをレビューしてください。
特に $FOCUS の観点を重視して、改善点を3つ挙げてください。
YAMLフロントマターの description はコマンド名の下に表示される説明文、argument-hint は期待する引数の説明になる。
3. 再起動する
プロンプトはセッション開始時に読み込まれる。ファイルを追加・編集したら再起動が必要。ここを忘れて「作ったのに出てこない」と悩むケースが多い。
4. 呼び出す
/prompts:review FILE=src/api.ts FOCUS="エラーハンドリング"
プレースホルダーは3種類使える。
| 記法 | 意味 |
|---|---|
$1 〜 $9
|
スペース区切りの位置引数を順に展開 |
$ARGUMENTS |
引数を全部まとめて展開 |
$FILE など大文字名 |
KEY=value 形式で渡した名前付き引数 |
スペースを含む値は FOCUS="loading state" のようにクォートで囲む。$ そのものを出したいときは $$ と書く。
第2層:擬似コマンドの正体
ここからが本題だ。/formal /casual /short のような形は、解説記事が大量にある。そして実際に動く。だが、第1層とは仕組みがまったく違う。
これらは専用のパーサーが反応しているのではなく、後に続く文章と合わせて自然言語の指示として読まれているだけだ。
/formal この文章を直して
と書くのは、AIから見れば
この文章をフォーマルに直してください
と書くのとほぼ同じ意味になる。「コマンドだから効く」のではなく「LLMが文脈から意図を汲めるから効く」——因果が逆なのだ。
見分け方は簡単で、「/」を打ったときのメニューに出てこなければ、それは第2層である。
第2層は「使うな」ではない
自分専用の略語として /blog を「ブログ記事の形式で」の意味で使う運用は、普通に便利だ。問題なのは使うことではなく、「ChatGPTの公式機能」として説明してしまうこと。
実体を正しく理解していれば、「効かないときは略語をやめて普通の文章で書けばいい」という当たり前の対処にたどり着ける。
第3層:都市伝説枠
/handwritten で手書き風になる、/humanize でAIっぽさが消える——こうした「裏コマンド」も出回っている。
検証した記事の多くが、効果を再現できなかったと報告している。ChatGPTが自然言語を理解してそれらしく振る舞っているだけで、隠し機能が起動しているわけではなさそうだ、というのが実態に近い。
第2層と第3層は、「専用パーサーが存在しない」という点では同じだ。違うのは効果そのものの確からしさである。第2層の /formal は「フォーマルにして」という指示として確実に伝わる。第3層の /handwritten は、そもそも何を指示しているのかAI側にも判然としない。
見分け方のまとめ
| 手順 | 判定 |
|---|---|
| 入力欄で「/」を打つ | メニューに出る → 第1層(公式) |
| メニューに出ない | 意味が明快な指示語 → 第2層(擬似) として使える |
| メニューに出ない | 「なぜ効くのか」を説明できない → 第3層(都市伝説)。疑ってかかる |
おわりに
同じ「/」で始まっていても、中身は3層に分かれている。この区別をつけずに一覧表へ並べてしまうと、アプリの機能と、ただの言い回しと、根拠のない噂が、同じ信頼度で読者に伝わってしまう。
そして皮肉なことに、いちばん確実な検証方法はいちばん地味だ。自分の入力欄で「/」を打つ。 記事の一覧表より、目の前に出てくるメニューのほうが正しい。