3行でいうと

  • スキルは、SKILL.md を入れたフォルダです。/名前 で自分が呼ぶことも、Claudeが説明文を見て自動で読み込むこともできます。昔の .claude/commands/ のファイルも動きますが、同じ名前ならスキルが優先される、と公式に書かれています。
  • スラッシュコマンドは「/ で始まる命令」の総称で、組み込みのコマンド、同梱スキル、自分で作ったスキルが同じ一覧に並びます。サブエージェントは別物で、自分専用の文脈(コンテキスト)を持つ作業者です。
  • 3つの共通点は「ファイルで書く」こと、違いは「いつ文脈に入るか」です。スキルは(初期状態では)説明文だけが常に入り、本文は使うときに入ります。サブエージェントの作業は、別の文脈で行われ、要約だけが戻ります。

この記事は公式ドキュメントを2026年10月16日に読んでまとめたもので、実際に使って確かめた記録ではありません。運営者はClaude Codeを入れていますが、使い心地はこの記事には書いていません。ファイルの書き方、設定名、数値は公式に書かれたとおりに写したもので、動作確認はしていません。公式の文章は要約の形で取得したため、引用はせず言い換えています。

先に結論

スラッシュコマンド:「呼び出し口」の総称

公式の「Commands」ページによると、コマンドはClaude Codeの中で、モデルの切り替え、権限の管理、文脈の整理、ワークフローの実行などをするためのものです。/ を打つと一覧が出て、文字を足すと絞り込めます。コマンドとして認識されるのは、メッセージの先頭にあるときだけです。

この記事に関係するコマンドを、公式の説明から抜き出します。

コマンド 公式の説明の要点
/mcp MCPサーバーの接続とOAuth認証を管理します
/skills 使えるスキルを一覧します
/hooks フックの設定を見ます
/plugin プラグインを管理します
/permissions 許可、確認、拒否のルールを管理します
/agents サブエージェントの作成や管理を、Claudeに頼むか、ファイルを直接編集するよう案内します(v2.1.197以前は、対話画面が開く、と書かれています)
/reload-skills 実行中に足したスキルを、再起動なしで読み込み直します
/skill-doctor スキルごとの文脈の使用量と、使われた頻度を表示します。公式には、v2.1.252以降と機能フラグの取得が必要と書かれています

/code-review、/batch、/debug、/loop のように、公式が「Skill」と表示している同梱コマンドもあります。つまり、/ の一覧には「プログラムに組み込まれた命令」と「スキルとして用意された手順」が混ざっています。MCPサーバーが公開する「プロンプト」も、コマンドとして一覧に並ぶ、と書かれています。

スキル:手順書をフォルダに入れる

スキルは、SKILL.md を入れたフォルダです。最小の形は、先頭にYAMLという書式の設定(name、description など)を書き、その下に指示を書くものです。置き場所は、公式の表のうち主なものを挙げると次のとおりです(公式の表には、サブフォルダの .claude/skills/、--add-dir で追加したフォルダ、claude.aiで有効にしたスキルも載っています)。

種類 置き場所 有効になる範囲
個人 ~/.claude/skills/<名前>/SKILL.md このパソコンの全プロジェクト
プロジェクト .claude/skills/<名前>/SKILL.md そのリポジトリ(コミットすると共有)
プラグイン <プラグイン>/skills/<名前>/SKILL.md プラグインが有効な場所。/プラグイン名:スキル名 で呼ぶ
組織(管理設定) 管理設定のディレクトリ内の .claude/skills/... 組織が配った全員

同じ名前があるときは、組織、個人、プロジェクトの順に優先されます。プラグインの名前は専用の接頭辞がつくので、衝突しないと書かれています。

誰が呼ぶかを決める。 設定で、次のように切り替えられます(description は「何をするか、いつ使うか」の説明文)。

引数と動的な情報。 $ARGUMENTS は、/名前 のあとに書いた文字列に置き換わります。本文に !`git diff HEAD` のように書くと、Claudeに渡す前にそのコマンドが実行され、結果が本文に差し込まれます。コマンドが失敗すると、スキルの呼び出し全体が中止される、と書かれています。

使う文脈の量。 説明文(description と when_to_use)は、一覧の中で1,536文字で切られます。呼び出されたスキルの本文は、会話に残ります。圧縮(コンパクト)のあとは、直近に呼んだスキルが、1つにつき最初の5,000トークンまで、全体で25,000トークンまで入れ直されます。

スキルの設定項目(一部、公式の記載)
  • name(省略するとフォルダ名)、description、argument-hint、arguments
  • allowed-tools:スキルが動いているターン中、確認なしで使えるツール。次のメッセージで解除される
  • disallowed-tools、model、effort、paths(自動で読み込まれる条件をファイルの形で絞る)
  • context: fork と agent:スキルを、会話の履歴なしのサブエージェントとして実行する
  • hooks:呼び出されたあとの、そのセッションの間だけ有効なフック
  • 設定名が違うと、エラーにならず無視される、と書かれています。綴りの確認が大事です。

サブエージェント:別の文脈を持つ作業者

サブエージェントは、自分専用の文脈、システムプロンプト、ツールの範囲、権限を持つ専門のAIです。Claudeは、依頼が説明文に合うときに仕事を渡し、サブエージェントは、結果だけを返します。最大の利点は、文脈を分けられることだと、公式は書いています。

最初から入っているもの。 Explore(読み取り専用の高速な検索)、Plan(計画モードでの調査)、general-purpose(調査も作業もする汎用)などが、公式の表にあります。

自分で作る。 Markdownのファイルで、先頭に設定、本文がシステムプロンプトになります。必須は name と description だけです。主な設定は、tools(使えるツール)、disallowedTools、model、permissionMode、skills、mcpServers、hooks、memory、isolation などです。置き場所は、優先順位の高い順に、管理設定、--agents の起動オプション、.claude/agents/、~/.claude/agents/、プラグインの agents/ です。

呼び出し方。 説明文に合う依頼をすると、Claudeが自動で渡します。「このサブエージェントを使って」と頼む、@ で選ぶ、claude --agent 名前 でセッション全体をそのエージェントにする、といった方法が書かれています。

制限(公式の記載)。 サブエージェントは、さらにサブエージェントを呼べますが、既定では3層までです。同時に動かせるのは、既定で20個です。バックグラウンドで動くサブエージェントが許可を求めるときは、本体の会話に確認が出ます。プラグインから来たサブエージェントは、hooks、mcpServers、permissionMode が無視される、と書かれています。

使い分けの目安(公式の対応表より)

CLAUDE.md スキル サブエージェント
入るタイミング 毎回、全文 説明文は毎回、本文は使うとき 呼ばれたとき、別の文脈
向いているもの 「いつもこうする」というルール 参考資料、繰り返す手順 読むファイルが多い調査、並列の作業

公式は、スキルは「再利用できる内容」、サブエージェントは「分離された作業者」と区別しています。組み合わせも書かれていて、サブエージェントに skills: でスキルを先に読み込ませる、スキルを context: fork でサブエージェントとして動かす、のどちらも可能です。また、必ず守らせたいルールは、指示文ではなく「フック」にするよう勧めています(別の記事で扱います)。

安全面:読んでから使う

僕らの見立て:どこから始めるか

見立てです。公式の「少しずつ足す」という考え方に沿って、僕らが整理しました。同じ頼み方を3回繰り返したらスキルにする。調べ物が会話を埋めるならサブエージェントにする。この順で十分ではないか、という見立てです。公式の「少しずつ足す」表にも、同じ手順書をチャットに貼るのが3回目になったらスキルにする、という目安があります。

気をつけること

出典