Claude Codeを使いこなしている人とそうでない人の差は、実はコマンドの使い分けに表れます。/clearで会話をリセットするか、/compactで圧縮するか。/modelでOpusに切り替えるか、/effortで推論レベルを上げるか。同じ作業でもコマンド一発で生産性が大きく変わります。

この記事では、Claude Code に搭載されているスラッシュコマンドをカテゴリ別に網羅し、各コマンドの「何をするか」「いつ使うか」「落とし穴」までリファレンスとして整理しました。リア(ポンコツAIオートマタ)とフィア(解説役のお姉さん)の対話で実践例を交えつつ、コードブロックと表組みで一覧性も担保しています。

TL;DR — この記事のサマリー

  • Claude Codeのコマンドは「初期化/セッション管理/モデル設定/コンテキスト/権限/診断/表示/ワークフロー/コード審査/MCP・プラグイン/スキル/フック/その他」の13カテゴリ。本記事では 57種以上のコマンドを網羅
  • 知っておくべき必須5つは /help /clear /compact /resume /exit。新規プロジェクトなら /init から始める
  • 長時間作業で詰まったら /context で使用率を確認 → 70%超なら /compact、タスク切替なら /clear。コスト確認は /cost
  • 大きな変更前は /branch でセーフティネットを作る。失敗したら /rewind で戻れる。差し戻し不能なのは git 外のファイルのみ
  • カスタムスラッシュコマンドは .claude/skills/{name}/SKILL.md にYAMLフロントマター + Markdownで作る。サブエージェントは /agents、フックは /hooks で管理
  • 「権限プロンプトが多い」「コンテキストが消えた」「スキルが認識されない」など 15のFAQ10の連携テクニックを後半セクションに収録

📂 カテゴリで切替:

なぜコマンドを使い分けるべきか

🌱 主に初級向けセクション

Claude Code 全57+コマンドのマインドマップ — 17カテゴリで俯瞰
🗺 全57+コマンドを17カテゴリで俯瞰したマインドマップ
リア(好奇の目)
リア

やっほー! ねぇフィア、最近Claude Codeでさ〜、ずっと同じ会話続けてたら反応が鈍くなってきたんだけど。これってどうすればいいの?

フィア(平常)
レア

それは典型的なコンテキスト過多のサインね。コマンドを使い分けるだけで一瞬で解決するわよ。タスクを切り替えるなら /clear、続きをやりたいなら /compact

リア(軽い驚き)
リア

えっ、そんな違いあるの!? 全部 /clear でリセットしてた…

フィア(思考)
レア

それだと毎回プロジェクトの説明から始めなきゃいけないでしょ? コマンドを覚えると、必要な情報を残しつつ不要な部分だけ捨てられるの。今日は全部教えてあげる。

Claude Codeのスラッシュコマンドは、UIから入力する命令ですが、その本質は「セッションの状態を制御する」ことです。会話履歴・コンテキスト・モデル・権限・出力先・スキル — これら全てをコマンド一発で切り替えられます。コマンドを知らないと、Claudeを「ただのチャットボット」として使うことになり、本来の生産性の半分も引き出せません。

必須コマンド5選

🌱 主に初級向けセクション

初心者ロードマップ — Claude Code最初の5ステップ
📚 初心者ロードマップ図

📚 初心者ロードマップ — まずこの順で覚える

Claude Codeを使い始めたばかりの方向け。この5ステップを覚えればまず困りません。

  1. 1

    /help で全体把握

    使えるコマンド一覧を表示。何があるか知るのが第一歩。

  2. 2

    /clear で会話リセット

    新しいタスクを始める時に会話履歴をクリア。前のタスクの混入を防ぐ。

  3. 3

    /compact でコンテキスト圧縮

    長時間作業して動作が重くなったら圧縮。会話は続けられる。

  4. 4

    /resume で前回の続きから

    過去のセッションに戻る。複数プロジェクトを並行する時必須。

  5. 5

    /model でモデル切替

    タスク次第で Sonnet/Opus/Haiku を使い分け。コストと品質のバランス調整。

この5つに慣れたら、上のカテゴリタブから🌿中級向けセクション(権限・診断・履歴管理など)に進んでいきましょう。

リア(興味津々)
リア

ねぇフィア、コマンドって57個もあるんでしょ? 全部覚えるなんて無理だよぉ…まず何から覚えればいい?

フィア(平常)
レア

大丈夫、まずこの5つだけよ。/help /clear /compact /resume /exit — この5つでだいたい困らないわ。残りは必要になった時に覚えればいいの。

まずは「これだけ覚えれば困らない」5つのコマンドから始めましょう。Claude Codeの99%の状況はこの5つでカバーできます。

コマンド役割使い時
/helpヘルプ表示どんなコマンドがあるか分からない時
/clear会話をリセット別タスクに切り替える時
/compactコンテキスト圧縮同じ作業で履歴が肥大化した時
/resume過去の会話を再開前日の続きをやる時
/exitセッション終了作業完了・離席時

/help 🌱 初級

別名: なし

何をするか
使用可能なコマンドの一覧と、現在のセッション情報を表示する。
いつ使うか
新しいバージョンで追加されたコマンドの確認、特定キーワードのコマンドを探す時、初心者がまず最初に叩くべきコマンド。
使用例
/help

/clear 🌱 初級

別名: /reset /new

何をするか
コンテキストを全削除して新規会話を開始する。CLAUDE.md は再読み込みされる。
いつ使うか
タスク切替時(記事執筆 → デプロイ作業など)/機密会話のリセット/コンテキスト過多でAI応答が鈍化した時。
注意点
同じセッションのまま情報を残しつつコンテキストを軽くしたいなら /compact を使うこと。/clear は完全リセットなので、続きをやりたい時は前会話を /resume で復帰可能。
リア(ひらめき)
リア

あっ、間違えて /clear しちゃっても /resume で戻れるんだ! 安心〜。

/compact [instructions] 🌱 初級

別名: なし

何をするか
コンテキストを圧縮しながら会話を続行する。重要な推論結果・ルール・スキルは保持。引数で「何を残すか」を指示できる。
いつ使うか
長時間作業でコンテキスト70%超え(/context で確認)/トークン効率を上げたい時/UIが遅くなった時。
使用例
/compact
/compact 直近のテスト結果と決定事項だけ残して
保持される情報
直近タスクの進行サマリー、CLAUDE.md最初の5,000トークン、各スキル最初の5,000トークン(合計25,000トークン予算内)。

/resume [session] 🌱 初級

別名: /continue

何をするか
セッションIDまたは名前で過去会話を再開する。引数なしで対話的に選択できる。
いつ使うか
前日中断した機能開発の続き/複数並行タスク間の行き来/特定 PR・Issue 関連セッションへ戻る時。
使用例
/resume                       # 対話的に選択
/resume "feature/login"        # 名前で指定
/resume 2026-05-07-abc123      # セッションIDで指定

/exit 🌱 初級

別名: /quit

何をするか
Claude Code セッションを終了する。会話履歴は保存されるので /resume で再開可能。
いつ使うか
作業完了時/離席時/長時間放置を防ぐため。
注意点
未保存のファイル変更があると確認プロンプトが出る。バックグラウンドのジョブ(/loop/schedule 経由)は停止しない点も覚えておこう。
リア(キラキラ)
リア

えへへ、5つだけならなんとかいけそう! /help 叩けば全部出るし、迷ったら /help でいいんだ〜

フィア(嬉しい)
レア

そうそう、その姿勢が一番大事よ。慣れたら次は /init でプロジェクトの土台を作っていく流れね。少しずつステップアップしていきましょう。

プロジェクト初期化系

🌱 主に初級向けセクション

新しいリポジトリで Claude Code を使い始める時、最初に叩くべきコマンド群です。「プロジェクトの自己紹介書」を作るのが /init の役割で、ここで生成された CLAUDE.md が以降のすべてのセッションのベース知識になります。

リア(興味津々)
リア

新しいプロジェクトでClaude Code起動するとさ、なんかいきなり「どんな仕事してるの?」って聞かれて困っちゃうんだよね…

フィア(集中)
レア

それは CLAUDE.md がない状態だからよ。/init を1回叩けばClaudeがリポジトリを自分で読み込んで、プロジェクト概要・依存関係・実行コマンドを書いた CLAUDE.md を自動生成してくれるの。

/init 🌿 中級

別名: なし/スキルとして実装

何をするか
カレントディレクトリのリポジトリを Claude が自動探索して、プロジェクト概要・主要ディレクトリ・ビルド/テストコマンド・コーディング規約をまとめた CLAUDE.md を自動生成する。既に CLAUDE.md が存在する場合は確認した上で更新提案を出す。
いつ使うか
① 新規リポジトリで Claude Code を初めて起動した直後
② 大幅なフォルダ構成変更後(例: モノレポ化、Next.js → Astro 移行)
③ 引き継ぎプロジェクトを引き取った直後(依存関係・規約をClaudeに把握させたい)
使用例
# 新規プロジェクトでまず叩く
/init

# 既存 CLAUDE.md があれば「上書き or 追記?」と聞かれる
# 追記推奨(手書きの規約を残せる)
生成される内容(典型)
  • プロジェクトの目的・技術スタック
  • 主要ディレクトリの説明(src/, tests/, docs/ 等)
  • package.json / Cargo.toml 等から検出したビルド・テスト・lintコマンド
  • 検出されたコーディング規約(ESLint設定、Prettier設定、editorconfig)
  • 環境変数の一覧(.env.example から検出)
落とし穴
大規模リポジトリだと node_modules.git まで読みに行こうとして遅い場合がある。.claudeignore(Claude専用の除外設定)を先に置いておくと安全。生成された CLAUDE.md はあくまで初期版なので、人間が手で「禁止事項」「デプロイ先」「秘密情報の扱い」を追記すること。

/team-onboarding 🌳 上級

別名: なし

何をするか
チームに新しいメンバーが Claude Code を導入する時のセットアップアシスタント。.claude/ ディレクトリ以下のスキル・権限プロファイル・MCP設定を一括チェックし、不足しているものをガイド付きでセットアップする。
いつ使うか
新人エンジニアの初日/業務委託メンバーの参画時/自分でも久しぶりに触るプロジェクトの再キャッチアップ。
使用例
/team-onboarding
🤖 フィアメモ — /init を叩く前にやっておくこと
  1. git init してリポジトリ初期化済みであること(/init は git 履歴も参考にする)
  2. package.jsonpyproject.toml など依存関係マニフェストが存在すること
  3. .env.example を置いておくと環境変数も自動で拾ってくれる
  4. 大規模リポジトリでは事前に .claudeignore を作成(node_modules/, dist/, .next/ 等を除外)
リア(ひらめき)
リア

あ、生成された CLAUDE.md って、そのまま使うんじゃなくて手を入れていいんだ? ずっと「自動生成のままが正解」って思ってた…

フィア(思考)
レア

むしろ /init で出てくるのは「下書き」だと思って。デプロイ先・禁止事項・チームの暗黙ルールとかは人間が追記しないと伝わらないからね。育てていく感覚よ。

セッション管理系(深掘り)

🌱 主に初級向けセクション

リア(ぷくっ頬)
リア

会話の管理ってさぁ、やってる作業がぐちゃぐちゃになるんだよね…別件の話したくなるとどうしていいか分かんなくて。

フィア(集中)
レア

目的別にコマンドを使い分けると楽になるわよ。続けたいなら /compact、別件なら /clear、戻りたいなら /rewind/resume。一覧で整理していきましょう。

セッション管理系は「会話の流れ」を時間軸に沿って制御するコマンド群です。複数の作業を並行する時、失敗して戻りたい時、過去の試行錯誤を取り出したい時に使います。ここでは /clear vs /compact の使い分け、/branch による A/B 検証、/rewind の限界まで深掘りします。

/clear vs /compact 詳細比較フローチャート

初心者が一番迷うのがこの2つの使い分けです。判断基準を表とフローで整理します。

観点/clear/compact
会話履歴完全削除(ゼロから)要約して保持
CLAUDE.md再読み込みそのまま保持
スキル再ロードそのまま保持
ファイル変更履歴失うサマリーとして残る
所要時間即時(< 1秒)5〜30秒(モデル呼出)
コスト無料圧縮処理にトークン消費
復帰可否/resume で戻せる圧縮前には戻せない
適した状況別タスクへ切替時同一タスクで履歴肥大化時

判断フロー — /clear するか /compact するか

  • Q1. 今やってる作業を続けたい? → YES なら次へ / NO なら /clear
  • Q2. /context で使用率は? → 50%未満 なら何もしなくて良い
  • Q3. 50〜70%? → そのまま続行、後で /compact
  • Q4. 70〜85%? → 今すぐ /compact
  • Q5. 85%超? → /compact でも厳しい。/clear + 必要情報を新セッションに貼り直す
  • Q6. 機密情報を含む議論をした? → 議論終了後は /clear で物理削除(要約に残らないように)

セッションファイルの保存場所と命名規則

Claude Code のセッションは、/exit で終了してもローカルディスクに自動保存されます。場所と命名を知っておくと、IDE・他ツールから直接読めるので便利です。

# macOS / Linux
~/.claude/projects/{プロジェクトパスをハイフン化}/
  ├── sessions/
  │   ├── 2026-05-08-abc123def.jsonl    # セッションごとに1ファイル
  │   ├── 2026-05-07-xyz789012.jsonl
  │   └── ...
  └── memory/
      └── MEMORY.md                       # /memory が読み書きするファイル

# Windows
C:\Users\{user}\.claude\projects\{パス}\sessions\

.jsonl ファイルは1行=1メッセージのJSON Lines形式。jq や Python で機械的に解析できるので、「過去のClaude会話から学習データを抽出する」「特定のスキル使用ログを集計する」といった分析にも使えます。

個別コマンド詳細

セッション管理系のコマンドは「会話の流れ」を操作します。複数の作業を並行する時、失敗して戻りたい時、過去の試行錯誤を取り出したい時に使います。

フィア(集中)
レア

大きな変更をする前は必ず /branch でブランチを切るのがおすすめ。git のブランチと同じ感覚ね。失敗しても元の状態に戻れる安心感があるわ。

/branch [name] 🌿 中級

別名: /fork

何をするか
現在の会話の分岐点で新ブランチを作成・切替する。元会話は /resume で復帰可能。git のブランチとは独立した「会話のブランチ」だが、git worktree と組み合わせるとファイルレベルでも分岐できる。
いつ使うか
大きな変更前のセーフティネット/同じ状態から複数の実装方式を並行検証/失敗アプローチの放棄/PR レビュー対応で main 戻しと feature 続行を行き来する時。
使用例(A/Bテスト的な実装比較)
# 1. 認証実装で2つのアプローチを検証する場合
/branch "approach-A-jwt"
# Claude に「JWT ベースで実装して」と依頼
# 完成したらテスト → メモを残す

/resume    # 元の会話に戻る
/branch "approach-B-session"
# Claude に「セッションベースで実装して」と依頼
# こちらもテスト

# 2. 両方の実装を比較して良い方を採用
/resume   # 採用するブランチを選ぶ
実体験ベースの活用例
  • UI コンポーネントのデザイン比較: ブランチA = グリッド、B = カルーセル、C = リスト の3パターンを同じセッションから派生させて、最終的にPMに見せる
  • パフォーマンス最適化: ブランチA = メモ化、B = 仮想スクロール、C = サーバーサイドフィルタ。各ブランチで実測してベンチマーク比較
  • マイグレーション戦略: ブランチA = ビッグバン、B = ストラングラーパターン で実装難易度を比較
注意点
会話のブランチは「Claude の頭の中の分岐」なので、ファイルシステムも分岐させたいなら git worktree addgit switch -c も併用する必要がある。/batch は内部で worktree を自動生成するので、本格的な並列作業はそちらを使う。

/rewind 🌿 中級

別名: /checkpoint /undo

何をするか
会話を任意のチェックポイント(過去のメッセージ)まで巻き戻す。それ以降の会話・ツール呼び出し・ファイル変更を取り消せる。チェックポイントは Claude が「区切りの良いタイミング」で自動作成 + ユーザーが手動指定もできる。
いつ使うか
Claudeが間違った方向に進み始めた時/リファクタが裏目に出た時/実験的変更を一気にロールバック/許可ダイアログで意図しないコマンドを承認してしまった時の救済。
巻き戻せる範囲・できないこと
戻せる:
  • 会話履歴(メッセージとツール呼出ログ)
  • Claude が Edit / Write ツール経由で行ったファイル編集
  • 新規作成されたファイル(自動削除)
  • ステージングされていない git 変更
戻せない:
  • git commit 済みの履歴(git で戻す必要あり)
  • git push でリモートに送信済みの内容
  • 外部API への副作用(メール送信、Stripe決済、DB UPDATE など)
  • rm で削除されたファイル(ゴミ箱に入っていない場合)
  • 外部サービス(Slack投稿、X投稿、Webhook送信)の結果
使用例
/rewind                 # 直前のチェックポイントへ
/rewind 3               # 3ステップ前へ
/rewind "before-refactor"  # 名前付きチェックポイントへ
注意点
git管理下のファイルは git で戻せばいいが、未コミットの変更や設定ファイル変更は /rewind の出番。逆に「副作用のあるコマンド(メール送信、API呼出、DB書込)」は戻せないので、そういうリスクの高い操作の前には /branch でセーフティネットを張るのが鉄則。

/rename 🌿 中級

何をするか
現在のセッションに名前を付ける/変更する。/resume で対話的選択する時に識別しやすくなる。命名は半角英数+ハイフンが推奨(日本語も使えるがフィルタリングしづらい)。
いつ使うか
並行する作業セッションを区別したい時。「feature-auth」「bugfix-login」のように内容で命名/長期作業の途中保存版を識別/レビュー時に履歴を辿るためのインデックス。
命名のベストプラクティス
  • feature-{機能名} — 新機能開発
  • bugfix-{Issue番号} — バグ修正
  • refactor-{対象モジュール} — リファクタリング
  • research-{調査トピック} — 調査・PoC
  • review-PR{番号} — PRレビュー

/sessions 🌿 中級

別名: /list

何をするか
過去のセッション一覧を表示する。直近100件がデフォルト、フィルタで期間・名前指定も可能。
いつ使うか
「先週やったあのセッション、なんて名前だっけ?」を探す時/使っていない古いセッションを整理する時/チームメンバーに過去の議論を共有する時。
使用例
/sessions                  # 直近100件
/sessions --since "2 weeks"  # 過去2週間
/sessions --filter "auth"    # 名前に "auth" を含むもの

並行作業テクニック — 複数セッション運用

1人の開発者が 3〜5つのセッションを並行で走らせるのは珍しくありません。たとえば「メイン機能開発」「バグ修正」「ドキュメント執筆」「PR レビュー」を別々のセッションで管理すると、コンテキストが混ざらず効率が劇的に上がります。

並行セッション運用パターン 🌿 中級

パターン1: タスクごとに分離
# ターミナル1: 機能開発
claude
/rename feature-checkout

# ターミナル2: バグ修正(別ターミナル開いて)
claude
/rename bugfix-login-redirect

# ターミナル3: ドキュメント
claude
/rename docs-api-reference

# 各セッションは独立したコンテキスト
# /resume で行き来できる
パターン2: モデル使い分け
  • セッションA: Opus + xhigh — 設計議論・難しいバグ調査
  • セッションB: Sonnet + medium — 実装・テスト
  • セッションC: Haiku + low — typo修正・インポート整理・docstring書き
こうすると「重い議論で詰まったらAに、軽作業はCに」と用途で分けられて、コストも品質も最適化される。
パターン3: タイムゾーン分離
夜の作業セッション(眠い・集中力低下)と朝の作業セッション(クリア)を分ける。/rename morning-{date} / night-{date} で識別し、朝のセッションには「夜のセッションで決めた事項を貼り直す」運用にすると判断ミスが減る。
リア(ぷくっ頬)
リア

こないだリファクタやり始めたら、Claudeさんが暴走しちゃってさ〜。20ファイル書き換わって涙目になったよ。/rewind 知ってればよかった…

フィア(安堵)
レア

覚えとくと安心よ。ちなみに gitコミット済みなら git から戻せるけど、ステージングしてない変更や、設定ファイル類は /rewind でしか戻せない場合があるの。

モデル・能力設定(深掘り)

🌱 主に初級向けセクション

タスク別 Claude モデル選択早見表
🤖 タスク別 モデル選択早見表
リア(好奇の目)
リア

モデルってさ、Opus・Sonnet・Haikuって3種類あるじゃん。どれ使えばいいの? 一番賢いの選べばいいの?

フィア(平常)
レア

タスクに合わせて切り替えるのがコツね。typo修正にOpus使うのは贅沢すぎるし、設計判断にHaikuは力不足。/model/effort をセットで覚えれば、コストと品質のバランスが取れるわ。

タスクの難易度に応じてモデルや推論レベルを切り替えると、コストと品質のバランスを最適化できます。Claude Code には「モデル選択(/model)」「推論努力(/effort)」「Fastモード(/fast)」の3つの能力ダイヤルがあり、これらを組み合わせて最適点を探します。

タスク別おすすめモデル早見表

タスクタイプ推奨モデル推奨effort理由
typo修正・インポート整理Haikulow判断不要・スピード優先
docstring追加・コメント整備Haikulow / mediumパターン化された作業
シンプルなコード補完Haikumedium文脈理解は不要
定型的なテスト実装Sonnetmedium既存パターン応用が中心
新機能の実装Sonnetmedium / highバランス型の主戦力
リファクタリングSonnethigh影響範囲の判断が必要
バグ調査・根本原因分析Opushigh / xhigh仮説思考と検証が必要
設計議論・アーキテクチャ判断Opusxhigh / max長期影響を考慮した推論
セキュリティレビューOpusxhigh攻撃シナリオの想像力が必要
大規模リファクタの計画Opusmax判断ミスのコストが甚大
コードレビュー(PR)Sonnet → Opushigh規模に応じて格上げ
ドキュメント執筆Sonnetmedium論理構造と表現のバランス
UIコンポーネント設計Sonnetmedium / high視覚的判断 + コード生成

/effort 各レベルの想定処理時間・コスト目安

レベル処理時間(目安)コスト倍率適した用途
low2〜5秒×1(ベース)typo修正、フォーマット変更、明らかな書き換え
medium5〜15秒×2〜3通常の実装作業(デフォルト推奨)
high15〜45秒×5〜8バグ調査、リファクタ計画、設計判断
xhigh30秒〜2分×10〜15難所の根本原因分析、複雑な競合状態の解析
max1〜5分×20以上セッション限定の最終手段。大型決断の前に1回だけ
auto動的動的Claude が自動で適切なレベルを選択

※コスト倍率は同じモデル内での相対値。実際の課金額はモデル単価×倍率で算出されます。/cost で実測値を確認できます。

/model [model] 🌱 初級

何をするか
使用するAIモデルを切り替える。引数なしで対話的に選択。
いつ使うか
高度な推論にはOpus/単純なテキスト編集にSonnet/コスト削減にHaiku。
使用例
/model                          # 対話的に選択
/model claude-opus-4-7          # 厳密にバージョン指定
/model sonnet                   # 短縮名
/model opus

/effort [level|auto] 🌳 上級

何をするか
推論レベルを low / medium / high / xhigh / max から設定する。auto で自動調整。
いつ使うか
複雑なバグ追跡に high/xhigh/ルーチン作業に low/重要レビューに max(セッション限定)。
使用例
/effort high
/effort auto

/fast 🌳 上級

何をするか
Fastモード(軽量モデル + 低effort)に一発で切り替えるショートカット。内部的には /model haiku + /effort low 相当。
いつ使うか
大量の単純編集/typo修正/インポート整理など、推論力よりスピード優先のタスク。100ファイル一括の lint 修正や、フォーマッタ的な書き換え作業。
体感差
通常モード(Sonnet + medium)と比較すると、応答速度は 3〜5倍速い。ただし複雑な意図を読む力は落ちるので、「Aの場合はXを、Bの場合はYを」のような条件分岐が必要なタスクには不向き。

/cost 🌿 中級

別名: なし

何をするか
現在のセッションでの API 使用コスト・トークン消費量を表示する。入力トークン/出力トークン/キャッシュヒット率/推定USD課金額を一覧化。
いつ使うか
長時間作業の中盤で「今日いくら使った?」を確認//effort xhigh/batch 多用後のコスト感確認/月末の予算管理/チームへの工数報告。
使用例
/cost                      # 現セッションのコスト
/cost --today              # 今日累計
/cost --week               # 過去7日
典型的な出力例
セッション統計(feature-checkout):
  入力トークン:     458,231
  出力トークン:      82,415
  キャッシュ読込:   312,000 (68.0% ヒット率)
  推定コスト:        $2.84

今日の累計:         $7.91
今月の累計:        $89.34
節約のヒント
キャッシュヒット率が30%未満なら、/clear せずに同じセッションを使い続けることでヒット率が上がる。逆にコンテキストが乱雑になっているなら /compact で整理すると次から効率化される。

モデル切替のベストプラクティス

  1. セッション開始時に決め打ちしない — 最初は auto で始めて、難易度が上がったら手動で /model opus + /effort xhigh に格上げ
  2. 切替前に /compact — モデルを変えるとキャッシュが効きづらくなるので、切替前に履歴を圧縮しておくとロスが少ない
  3. 切替後は短いタスクから — Opus に変えた直後にいきなり大きなタスクを投げるとコストが膨らむ。まず小さなタスクで挙動を確認
  4. 戻すのを忘れない — 重い処理が終わったら /model sonnet に戻す。/effort xhigh のまま typo 修正をすると無駄遣い
  5. /cost で定期確認 — 1時間に1回など習慣化すると、想定外の高額請求を防げる
フィア(集中)
レア

原則としては「難しい設計判断や根本原因調査はOpus + xhigh、ルーチンはSonnet + medium」が黄金比。/model/effort はセットで覚えてね。あと、月初に /cost --month で先月分を振り返るとコスト感覚が育つわよ。

リア(軽い驚き)
リア

えーっ、Opus で /effort max って 20倍コストもかかるの!? うっかり付けっぱなしにしたら大変だ…

フィア(思考)
レア

そう、だから max は「年に数回の重大判断」用ね。普段は automedium で十分よ。/cost で消費を見ながら、必要な時だけギアを上げる感覚。

コンテキスト・メモリ管理(深掘り)

🌿 主に中級向けセクション

コンテキスト管理コマンドの使い分け判断フロー
🗜 /clear vs /compact vs /context の使い分け
リア(興味津々)
リア

「コンテキスト」って言葉、よく見るんだけど結局なんなの? なんかフワッとしたイメージしかないんだよね…

フィア(集中)
レア

会話の記憶領域のことね。長く話してるとここが満タンになって動作が重くなるから、整理コマンドが用意されてるの。「Claudeの頭の中の作業机」と思えばいいわ。

このカテゴリは Claude Code の「頭の中」を管理するコマンド群です。コンテキストウィンドウは有限(モデルにより 200K 〜 1M トークン)なので、何を残し何を捨てるかで応答品質が大きく変わります。

/compact の圧縮アルゴリズム解説

/compact は単純な要約ではなく、構造化された圧縮を行います。何が保持され何が削られるか、優先順位を理解しておくと「圧縮後に何を再投入すべきか」が判断できます。

圧縮の優先順位(高→低) 🌿 中級

① 完全保持(圧縮されない)
  • CLAUDE.md(プロジェクト + 親階層 + ホーム) — 最初の5,000トークン
  • 有効化されているスキルの SKILL.md — 各5,000トークンまで
  • システムプロンプト — Claude Code の動作定義
  • 現在進行中のタスクのプラン
② 要約化される
  • 過去のユーザーメッセージとClaudeの応答 — タスク単位でサマリー化
  • ツール呼び出しログ — 「何をしたか」のリストに圧縮
  • ファイル読込結果 — ファイル名と要点だけ残す
③ 直近データは原文保持
直近 10〜20 メッセージ程度(合計2万トークン目安)はそのまま残る。これにより「今やっている話」が途切れない。
④ 完全削除
  • 一時的なエラーログ・冗長な出力
  • 失敗した試行(成功したアプローチで上書き)
  • 議論の脇道で却下された案

圧縮後にも引き継がれるコンテキスト構造

┌─ システムプロンプト(不変)
├─ CLAUDE.md(先頭5,000トークンまで保持)
├─ 各スキルのSKILL.md(先頭5,000トークン × 有効スキル数)
│
├─ ===== 圧縮された過去 =====
│  └─ タスクサマリー(最大25,000トークン予算内)
│      ├─ タスク1: 「認証実装」 — JWT採用、テストOK
│      ├─ タスク2: 「DB設計」 — Prisma + PostgreSQL確定
│      └─ ...
│
├─ ===== 直近メッセージ(原文)=====
│  └─ 直近10〜20メッセージ
│
└─ 現在のユーザー入力

つまり /compact 後でも CLAUDE.md とスキルは完全に残るので、「プロジェクトのルール」が忘れられることはありません。逆に「過去にClaudeが書いたコードの細部」は要約されてしまうので、重要な実装決定はCLAUDE.md か /memory に書き出しておくのが安全です。

/context 🌿 中級

何をするか
コンテキスト使用状況を色付きグリッドで可視化する。CLAUDE.md/スキル/会話履歴/ツール定義の内訳と、最適化提案を表示。
いつ使うか
応答が遅い・精度が落ちたと感じた時//compact を打つべきか判断する時/CLAUDE.md やスキルの肥大化チェック/チームメンバーに「自分のセッションどうなってる?」を見せる時。
表示の見方
  • 緑のセル: 必須コンテキスト(システム、CLAUDE.md)— 削れない
  • 青のセル: スキル定義 — 不要なら無効化で削減可能
  • 黄のセル: ツール定義(MCPなど)— MCPサーバーを止めると減る
  • 橙のセル: 会話履歴 — /compact の対象
  • 赤のセル: 直近メッセージ — 削れない(圧縮後も残る)
全体の使用率がパーセント表示され、80%超でアラートが出る。
典型的な出力
Context: 142,680 / 200,000 tokens (71.3%)

Breakdown:
  System prompt:        4,200   (2.1%)
  CLAUDE.md (3 files): 12,500   (6.3%)
  Skills (8 active):   34,800  (17.4%)
  MCP tool defs:        8,200   (4.1%)
  Conversation:        78,980  (39.5%)
  Recent (raw):         4,000   (2.0%)

Recommendation: /compact を推奨(70%超)
注意点
70%を超えたら /compact、80%超なら別タスクは /clear + /resume で分離するのが目安。スキルが肥大化している場合は /skills で内訳を確認して不要なものを無効化する。

/memory 🌿 中級

何をするか
長期記憶(Auto Memory)の閲覧・編集・削除。プロジェクトを跨いで持続するルールやフィードバックの管理。実体は ~/.claude/projects/{project}/memory/MEMORY.md に保存される Markdown ファイル。
いつ使うか
過去の失敗を二度と繰り返さないようにルール化/個人の好みや禁止事項を恒久登録/プロジェクト固有のドメイン知識(ビジネスルール、命名規則)を蓄積。
使用例
/memory                       # 内容を表示
/memory edit                  # エディタで編集
/memory add "○○ルール"        # 1行追記
/memory clear "{パターン}"     # 該当行を削除

メモリファイルの階層構造

Claude Code は 4階層のメモリファイルを参照します。優先順位は 下流(プロジェクト)が上流(グローバル)を上書きします。

階層パス用途
1. ホーム(個人)~/.claude/CLAUDE.md個人の好み、共通の禁止事項、命名規則
2. プロジェクト共有{repo}/CLAUDE.mdチーム全員が見るプロジェクトルール(git管理)
3. プロジェクト個人{repo}/CLAUDE.local.md個人のメモ・実験設定(gitignore対象)
4. 自動メモリ~/.claude/projects/{path}/memory/MEMORY.md/memory が読み書きする学習ログ

自動メモリ機能の仕組み

Claude Code はユーザーの修正指示やフィードバックを 自動的に MEMORY.md に書き出す仕組みを持ちます。たとえばユーザーが「日本語で答えて」「ファイルパスは絶対パスで」と何度か指示すると、Claude が「これはルール化すべき」と判断し、MEMORY.md に追記します。

/compact はコンテキストを圧縮しながら会話を続行するコマンドで、本セクションのアルゴリズム解説と合わせて読むと「圧縮で何が起きているか」が一段深く理解できるはずです。基本的な使い方は カテゴリタブの「必須5選」 でも扱っています。

リア(ひらめき)
リア

つまり /compact/clear の使い分けが鍵ってこと? 続けたいか・忘れたいかで決めればいいんだ。

フィア(誇らしい)
レア

そう。続けたいなら /compact、リセットしたいなら /clear、現状確認は /context。シンプルだけど効果絶大よ。重要な決定は /memory や CLAUDE.md に書いておくと安心ね。

権限管理(深掘り)

🌿 主に中級向けセクション

権限管理 allow/ask/deny の階層構造
🔐 権限管理の階層構造
リア(ぷくっ頬)
リア

権限プロンプト多すぎ問題! 毎回「これ実行してOK?」って聞かれて、作業止まっちゃうんだよ〜

フィア(集中)
レア

設定でかなり減らせるわよ。安全なコマンドは allow、危険なのは deny、迷うものは ask。一度ちゃんと設定すれば、毎日のストレスが激減するわ。

権限管理は Claude Code を「実用ツール」と「危険な暴走マシン」の境界線に置く重要な仕組みです。何でも許可する bypassPermissions モードは便利ですが、本番環境や共有マシンでは細かく制御するのが鉄則です。

権限ルール構文の完全リファレンス

権限ルールは {ツール名}({引数パターン}) の形式で記述し、allow / ask / deny の3段階で制御します。

パターン意味
BashすべてのBashコマンド"allow": ["Bash"]
Bash(git:*)git で始まるすべてgit status, git push
Bash(git status)完全一致のみgit status だけ
Bash(npm run *)npm run + 任意npm run build, npm run test
ReadすべてのRead全ファイル読込許可
Read(/repo/src/**)パス制限付きReadsrc/ 配下のみ
Write(/tmp/**)書込先を制限/tmp 配下のみ書込OK
EditすべてのEdit編集を全許可
WebFetchすべてのWeb取得HTTP取得を許可
WebFetch(domain:github.com)ドメイン制限github.com のみ
mcp__*MCPツール全てすべてのMCP呼出
mcp__github__*特定MCPサーバー全てGitHub MCP の全機能

allow / ask / deny の優先順位

同じツールに対して複数のルールがある場合、deny > ask > allow の順で適用されます。これにより「Bash 全許可だが Bash(rm -rf:*) は拒否」のような細かい制御が可能。

// .claude/settings.json
{
  "permissions": {
    "allow": [
      "Bash(git:*)",        // git は全部OK
      "Bash(npm run *)",    // npm run は全部OK
      "Read",
      "Edit"
    ],
    "ask": [
      "Bash(npm install*)", // npm install は確認
      "WebFetch"
    ],
    "deny": [
      "Bash(rm -rf:*)",     // rm -rf は絶対拒否
      "Bash(git push --force:*)",
      "Write(.env)",        // .env への書込禁止
      "Write(**/credentials*)"
    ]
  }
}

危険なコマンドを deny する実例集

禁止すべき操作denyルール
強制削除Bash(rm -rf:*)
履歴改変Bash(git push --force:*), Bash(git push -f:*)
強制リセットBash(git reset --hard:*)
本番DBアクセスBash(psql:*), Bash(mysql:*)
秘密ファイル読込Read(.env), Read(**/secrets/**)
秘密ファイル書込Write(.env), Write(**/credentials*)
外部送信Bash(curl:*), Bash(wget:*)(必要なら制限ドメインのみallow)
システム停止Bash(shutdown:*), Bash(reboot:*)
パッケージ書換Bash(sudo:*)

/permissions 🌿 中級

別名: /allowed-tools

何をするか
ツール使用権限を allow / ask / deny で管理する対話的UI。Bashコマンドの個別許可、ファイル書込先の制限などを設定。変更内容は .claude/settings.json または .claude/settings.local.json に保存される。
いつ使うか
新しいプロジェクトに入った時/頻繁に許可ダイアログが出る時/逆に危険なコマンドを deny したい時/MCP導入後の権限整理。
使用例
/permissions                # 対話的UI
/permissions allow Bash(git:*)
/permissions deny Bash(rm -rf:*)
/permissions list           # 現在のルール一覧
保存先の使い分け
  • .claude/settings.json: チーム共有(git管理)
  • .claude/settings.local.json: 個人のみ(gitignore推奨)
  • ~/.claude/settings.json: 全プロジェクト共通の個人設定

/fewer-permission-prompts 🌳 上級

何をするか
過去の transcript をスキャンし、頻繁に許可した安全なコマンド(git status, ls など)を自動的にallowlistに追加する。プロジェクト .claude/settings.json に書き出すので、チーム全員が恩恵を受けられる。
いつ使うか
「またこの許可?」とウンザリしてきた時/チームに導入する初期セットアップ/使い込んでから1ヶ月後くらいの整理タイミング。
追加されるコマンドの例
  • Bash(git status), Bash(git log:*), Bash(git diff:*)
  • Bash(ls:*), Bash(pwd), Bash(cat:*)
  • Bash(npm test), Bash(npm run build)(プロジェクトでよく使うものを検出)
  • 頻繁に呼ばれているMCP read系ツール
注意点
追加対象はread-onlyコマンドに限定されるが、git diff などは状況によりプライベート情報を含むので確認すること。書込・削除系のコマンドは自動的に追加対象外。

additionalDirectories の使い方 🌿 中級

何をするか
権限ではないがセットで覚えておくべき設定。.claude/settings.jsonadditionalDirectories を書くと、Claude のアクセス可能ディレクトリを拡張できる。/add-dir のセッション限定版に対し、こちらは恒久設定。
使用例
// .claude/settings.json
{
  "additionalDirectories": [
    "../shared-lib",
    "../design-system",
    "/workspace/templates"
  ]
}
いつ使うか
モノレポで複数パッケージを横断する時/共通テンプレートを別フォルダで管理している時/設計ドキュメントが別リポジトリにある時。

MCP ツール権限の扱い 🌿 中級

仕様
MCP(Model Context Protocol)経由で追加されるツールも、通常のツールと同じ allow/ask/deny で制御できる。命名規則は mcp__{サーバー名}__{ツール名}
{
  "permissions": {
    "allow": [
      "mcp__github__create_issue",     // Issue作成だけOK
      "mcp__github__list_issues"
    ],
    "ask": [
      "mcp__github__create_pull_request"  // PR作成は確認
    ],
    "deny": [
      "mcp__github__delete_repository"  // リポジトリ削除は絶対NG
    ]
  }
}
ベストプラクティス
新しい MCP サーバーを追加した直後は "ask": ["mcp__{サーバー名}__*"] でいったん全確認に。何度か使って安全だと判断できたものから個別に allow へ移していく。
リア(ぷくっ頬)
リア

こないだ bypassPermissions モードでさ〜、Claudeが間違って大事なファイル消しちゃってさ…泣いた

フィア(集中)
レア

うん、bypassPermissionsdeny ルールも効かなくなるから、本当に何でも実行できちゃう。代わりに "deny": ["Bash(rm -rf:*)"] だけは ~/.claude/settings.json にグローバル設定しておくと安心よ。

デバッグ・診断系(深掘り)

🌿 主に中級向けセクション

リア(好奇の目)
リア

Claudeが急に動かなくなった時って、何見ればいいの? いつもパニックになってPC再起動しちゃうんだけど…

フィア(集中)
レア

慌てて再起動はもったいないわ。/doctor から始めるのが王道。それで原因が見えなければ /status/debug。順序立てて切り分けるのがポイントよ。

環境トラブル・予期しない挙動・MCP接続不良など、「動かない」「変だ」と感じた時の最初の一手はこの3コマンドです。

/doctor 🌿 中級

何をするか
Claude Code のインストール・設定・依存関係を診断する。問題を検出するとレポート表示し、f キーで自動修正を試みる。
検査項目(典型)
  • Claude Code バージョン — 最新かどうか
  • Node.js バージョン — v18 以上必須
  • 認証状態/login 済みか、トークンの有効期限
  • ネットワークapi.anthropic.com への到達性
  • 権限プロファイル — 構文エラーがないか
  • MCPサーバー — 全サーバーの起動・応答状態
  • スキル定義 — SKILL.md の YAMLフロントマター構文
  • CLAUDE.md — 巨大すぎないか、循環インポートがないか
  • 権限設定.claude/settings.json の妥当性
  • git設定 — git バイナリ存在、ユーザー設定
  • ディスク容量 — セッション保存先に余裕があるか
自動修正で直るもの
  • 古いバージョンのアップデート
  • キャッシュ破損のクリア
  • 設定ファイルの構文エラー修正
  • MCPサーバーの再起動
  • 権限プロファイルの正規化
自動修正できないもの
Node.js のバージョンアップグレード、ネットワーク到達性問題、認証情報の再発行、ディスク不足。これらは手動対応が必要。
いつ使うか
Claude Code が起動しない/MCPサーバーが繋がらない/予期しない挙動の原因切り分け/週次のメンテとして。

/debug 🌿 中級

何をするか
デバッグモードを有効化。内部ログ・APIリクエストの詳細・ツール呼び出しの中身・モデルへ送る完全なシステムプロンプトを表示する。
いつ使うか
「なぜClaudeがこのツールを呼ばなかったのか」「何のメッセージを送ったか」を調べたい時/スキルが期待通りに自動起動しない原因調査/MCP応答が遅い時のボトルネック特定。
典型的な問題パターン
  • スキル description が曖昧 → Claude が「呼ぶべき場面」を判断できず無視される
  • 権限ルールで blocked → ツール呼出が denied ログに残る
  • MCPサーバーがタイムアウト → 30秒超で abort される
  • コンテキスト溢れでツール定義が削られる → 一部ツールが「存在しない」状態になる
  • JSON引数のパース失敗 → ツール呼出失敗、リトライループ

/status 🌿 中級

何をするか
現在のセッションの状態(モデル、effort、コンテキスト使用率、有効スキル、権限プロファイル、MCP接続状況、現在ブランチ、累計コスト等)を一覧表示。
いつ使うか
「あれ、今何のモデル使ってる?」と確認したい時/チームと作業状態を共有する時のスクリーンショット用/長時間セッション後の現状把握。
典型的な出力
Session: feature-checkout (renamed)
Model: claude-sonnet-4-7
Effort: medium
Context: 87,420 / 200,000 (43.7%)
Skills: 8 active (review, simplify, init, ...)
MCP: 3 connected (github, slack, postgres)
Branch: feature/checkout-flow
Working dir: /repo
Cost (this session): $1.84

/bug 🌳 上級

別名: なし

何をするか
Claude Code 本体のバグを Anthropic に報告する。現在のセッションのデバッグ情報(モデル、エラーログ、再現手順、環境情報)を自動収集してフィードバックフォームを開く。秘密情報は事前に確認画面で除外できる。
いつ使うか
Claude Code が落ちた/予期しないエラーが続く/公式ドキュメントと挙動が違う/MCP接続が再現性をもって失敗する。
注意点
送信前に 必ず収集データのプレビューを確認すること。CLAUDE.md にAPIキーをハードコードしている場合などは確実に弾く。秘密情報を含む場合は --no-context オプション付きで送信。

トラブルシューティング決定木

症状別 → どのコマンドを叩くか

  • 応答が遅い・止まる: ① /status でモデルとコンテキスト確認 → ② 70%超なら /compact → ③ それでも遅ければ /doctor
  • 「ツールが見つからない」エラー: ① /mcp でMCP状態確認 → ② /skills でスキル状態確認 → ③ /reload-plugins
  • 権限拒否が連発: ① /permissions list → ② /fewer-permission-prompts で整理
  • Claudeが指示を無視する: ① /debug でシステムプロンプト確認 → ② CLAUDE.md と矛盾していないか確認 → ③ /clear で再スタート
  • カスタムスキルが起動しない: ① /skills で一覧確認 → ② SKILL.md の description が具体的か → ③ /debug で auto-invocation 判定ログ確認
  • 意味不明なクラッシュ: ① /doctor → ② /bug で報告
リア(キラキラ)
リア

へぇ〜、症状別にフローが決まってるんだ! これ覚えとけば慌てないで済みそう!

フィア(安堵)
レア

そうそう、「迷ったらまず /doctor」だけでも覚えておいて。それでも直らない時に /bug でAnthropicに報告すれば、本体側の問題なら向こうが直してくれるわ。

表示・出力系(深掘り)

🌿 主に中級向けセクション

リア(興味津々)
リア

えっ、Claude Codeって見た目変えられるの!? ずっとデフォルトで使ってた…

フィア(平常)
レア

テーマや出力モードを調整できるのよ。/theme で配色、/copy で結果をクリップボードへ、/diff で差分整形…長く使うなら最初に整えておくと毎日の快適さが変わるわ。

UIや出力の見た目を調整するコマンド群。地味ですが、長時間使う上での快適さに直結します。テーマ・配色・差分表示・キーバインド・コピー機能 — 一度設定するとずっと恩恵を受け続けるので、初期セットアップで時間をかける価値があります。

コマンド役割所要時間
/config (別名 /settings)設定全般のGUIエディタ起動初回セットアップ時
/themeカラーテーマ切替(dark / light / 高コントラスト)1秒
/colorシンタックスハイライト配色変更1秒
/copy直近のClaude応答をクリップボードにコピー1秒
/export会話を Markdown/JSON でエクスポート2〜5秒
/diff直近の編集差分を整形表示1秒
/focusフォーカスモード(不要なペインを隠す)即時
/tuiターミナルUIモードに切替(マウス無効、キーボードのみ)即時
/vimVimキーバインドモード切替即時

/diff の詳細 — 見方とキーバインド

/diff [target] 🌿 中級

何をするか
Claude が直近で行ったファイル変更を、git diff 風のフォーマットで色付き表示する。+緑 = 追加、-赤 = 削除、コンテキスト行はグレー。
キーバインド一覧
  • j / — 次の差分へ
  • k / — 前の差分へ
  • n — 次のファイルへ
  • p — 前のファイルへ
  • w — 単語単位差分に切替
  • l — 行単位差分に切替(デフォルト)
  • a — Apply(変更を確定)
  • r — Reject(変更を取消)
  • q — 終了
使用例
/diff                    # 直近の変更
/diff src/auth.ts        # 特定ファイルだけ
/diff --staged           # ステージ済み変更
/diff HEAD~3..HEAD       # 過去3コミットとの差分

/copy のオプション — クリップボード vs ファイル書込

/copy [options] 🌿 中級

基本
引数なしで直近のClaude応答全文をクリップボードへコピー。
オプション
  • /copy — 直近の応答(デフォルト)
  • /copy code — 直近の応答からコードブロックだけ抽出
  • /copy --last 3 — 直近3応答をまとめてコピー
  • /copy --to /tmp/output.md — クリップボードではなくファイルに書き出し
  • /copy --format markdown — Markdown整形(デフォルト)
  • /copy --format plain — プレーンテキスト
  • /copy --format json — メタ情報付きJSON
典型的な使い方
  • Claude が書いたコードを別エディタに貼る → /copy code
  • 議論結果を Slack に共有 → /copy --last 5
  • 長文応答を Markdown ファイル化 → /copy --to ./docs/decision.md

/tui レンダラ別の使用感比較

Claude Code は複数のレンダラ(描画エンジン)を持っており、/tui で切り替えられます。環境により最適な選択が異なります。

レンダラ適した環境特徴
auto (デフォルト)すべて環境を自動検出して最適なものを選ぶ
richモダンターミナル絵文字・色・進捗バー・グリッドを最高品質で表示
compact狭い画面・SSH越し装飾を削って情報密度を上げる
plain古いターミナル・パイプ経由ANSIコードなし、機械可読を優先
vscodeVSCode統合ターミナルVSCode のテーマと協調動作

/vim 🌳 上級

別名: なし

何をするか
入力モードをVim風キーバインドに切り替える。i でインサート、Esc でノーマル、:wで送信など。
いつ使うか
普段Vim/Neovimユーザー/長文プロンプトを編集することが多い/マウス操作を最小化したい。
主要キーバインド
  • i — インサートモード
  • Esc — ノーマルモード
  • dd — 行削除
  • yy — 行ヤンク
  • p — ペースト
  • :w — 送信
  • :q — キャンセル
  • /, ? — 検索

テーマカスタマイズ詳細

/theme はプリセットだけでなく、カスタムテーマも作成できます。~/.claude/themes/ 以下に YAML を置くだけ。

# ~/.claude/themes/my-theme.yaml
name: my-theme
base: dark
colors:
  background: "#1a1625"
  foreground: "#e8e0f0"
  primary: "#a78bfa"
  secondary: "#67e8f9"
  warning: "#fbbf24"
  error: "#f87171"
  success: "#4ade80"

syntax:
  comment: "#6b7280"
  keyword: "#a78bfa"
  string: "#fbbf24"
  function: "#67e8f9"
  variable: "#e8e0f0"

適用は /theme my-theme。気に入ったら ~/.claude/settings.json"theme": "my-theme" で永続化。

リア(キラキラ)
リア

/copy 便利すぎ! Claudeの返事をブログに貼りたい時とか、いちいちマウスで選択しなくていいんだね。

フィア(嬉しい)
レア

/export もよく使うわよ。会話全体をMarkdownで書き出して、後でレビュー用ドキュメントに変換するの。「Claudeとの議論をそのまま技術記事に流用」も可能ね。

ワークフロー実行系(深掘り)

🌳 主に上級向けセクション

/batch コマンドの並列タスク処理ワークフロー
🚀 /batch ワークフロー
リア(好奇の目)
リア

ねぇフィア、Claudeって自動化できそうって聞いたんだけど…どこまでできるの?

フィア(誇らしい)
レア

かなり凄いところまでよ。/batch で並列実行、/loop で監視、/schedule でcron実行…複数コマンドの連携でバッチ処理が組めるの。「朝起きたら終わってる」が現実になるわ。

このセクションは Claude Code の真骨頂、スキル化された強力なワークフローコマンドを扱います。/batch による並列実行、/simplify の3エージェントレビュー、/loop の自動ペース調整、/schedule の cron 実行 — これらを組み合わせると「人間が朝来たら勝手に終わってる」状態を作れます。

/batch の詳細フロー解説

/batch は Claude Code で最も「魔法じみた」コマンドです。1つの大きな指示を Claude が 5〜30個のサブタスクに自動分解し、それぞれを git worktree で並列実行し、最後に 統合PRを生成します。

/batch の内部処理ステップ 🌳 上級

ステップ1: タスク分解(Plan Phase)
Claude が指示を解析し、独立して実行可能な単位に分解する。例えば「全てのReactクラスコンポーネントを関数+Hooksに変換」なら、1ファイル = 1サブタスクとして洗い出す。
分解アルゴリズム: ① 影響ファイルを Grep で列挙 → ② 依存グラフを構築 → ③ 独立に並列化できる単位(リーフノード)から順に切り出し
ステップ2: worktree生成
各サブタスクに対して git worktree add で隔離されたワーキングコピーを作成。これにより並列実行してもファイル衝突しない。
ステップ3: 並列実行(Parallel Phase)
各 worktree で独立した Claude セッションを起動し、サブタスクを実行。デフォルトで5並列、--concurrency 10 で増減可能。
ステップ4: 統合(Merge Phase)
全サブタスク完了後、結果を1つのブランチにマージ。コンフリクトがあれば Claude が自動解決を試み、解決不能なら人間に問い合わせ。
ステップ5: 統合PR生成
gh pr create で統合PRを作成。本文には「分解したサブタスクの一覧 + 各サブタスクの差分サマリー」が自動記載される。

失敗時の再試行ロジック 🌳 上級

サブタスク失敗
1つのサブタスクが失敗しても全体停止しない。失敗したものだけ最大3回まで自動リトライ。3回失敗で放置。
3回失敗後
そのサブタスクは「failed」マークが付き、最終マージ時にスキップ。統合PR本文には「未完了タスク」セクションで明示される。
手動再開
/batch resume で失敗したサブタスクだけ再実行。/batch resume --task 7 で個別指定も可能。
完全中止
/batch abort で全 worktree を破棄。git の状態は /batch 開始前に戻る。

/batch <instruction> 🌳 上級

スキルとして実装

何をするか
複雑な変更を5〜30個のサブタスクに自動分解し、git worktreeで並列実行する。完了後に統合PRを生成。
いつ使うか
フレームワーク全置換(Vue 2 → Vue 3 など)/大型リファクタリング/全ファイルへの統一適用(lint修正、型注釈追加など)/単体テスト一括追加/ドキュメント全更新。
使用例
/batch すべてのReactクラスコンポーネントを関数コンポーネント+Hooksに変換
/batch すべてのモジュールにJSDocコメントを追加
/batch すべてのテストファイルをVitestからPlaywrightへ移行
/batch すべてのCSSファイルをCSS Modulesに変換
並列度のチューニング
/batch --concurrency 3 ...   # 軽め(CPU/メモリ節約)
/batch --concurrency 10 ...  # 全力(API課金が嵩むので注意)
/batch --dry-run ...         # 分解結果だけ見て実行しない
注意点
並列実行のためAPIコストが嵩む。事前に /effort medium で実行コストを抑え、--dry-run で分解結果を確認してから本実行するのが安全。PRはレビュー必須。

/simplify の3エージェントの役割分担

/simplify は単一のレビューではなく、3つのレビューエージェントが並列に分析する仕組みです。それぞれ専門領域が異なります。

エージェント担当領域典型的な指摘
Reuse Reviewer(再利用性)既存コードの重複検出「同じロジックが utils.ts にある」「lodash.debounce で代替可能」
Quality Reviewer(品質)命名・型・エラー処理・テスタビリティ「変数名が不明瞭」「any 型を unknown に」「テストできる構造にリファクタ」
Efficiency Reviewer(効率)パフォーマンス・メモリ・複雑度「O(n²) → O(n) に最適化可能」「不要な再レンダー」「メモ化候補」

3つの結果はマージされ、優先順位付きの改善提案として表示されます。各提案には「適用」「却下」のボタンがあり、選んだものだけ自動修正されます。

/simplify [focus] 🌳 上級

スキルとして実装

何をするか
最近編集したファイルを3つのレビューエージェントで同時分析。コード再利用・品質・効率の改善提案を返す。
いつ使うか
機能実装が一段落した時/PR提出前のセルフレビュー/コードの「におい」が気になる時/コードレビュー文化のないチームでの自己訓練。
使用例
/simplify
/simplify "重複コードに焦点"
/simplify --files src/auth/**
/simplify --severity high     # 重要な指摘のみ

/loop の自動ペース調整 + キャッシュ効率

/loop はインターバルを指定すれば固定間隔で実行、省略するとClaudeが「次に実行すべきタイミング」を判断します。

自動ペース調整の仕組み 🌳 上級

判定要素
  • 前回の結果(変化があったか、エラーだったか)
  • 監視対象の性質(デプロイ → 5〜10分、CI → 30秒〜1分、長期トレンド → 数時間)
  • API コストとキャッシュ効率(短すぎるとキャッシュヒット率が落ちる)
  • 時間帯(業務時間 vs 深夜)
キャッシュ効率の重要性
同じプロンプトを繰り返すなら、Anthropic API のプロンプトキャッシュ(5分間有効)が効く間隔を選ぶのが理想。例えば「3分間隔」だと毎回キャッシュヒットして大幅にコスト削減。逆に「10分間隔」だとキャッシュ切れて全額課金。
停止条件の指定
/loop 3m "デプロイ状況を確認" --until "デプロイ完了"
/loop 1m "テスト結果を見る" --until "全グリーン"
/loop --max-iterations 20 ...

/loop [interval] [prompt] 🌳 上級

スキルとして実装

何をするか
指定間隔でプロンプトを繰返し実行する。間隔を省略するとClaudeが自動で適切なペースを判断。
いつ使うか
デプロイ完了の監視/CI/CDパイプライン状況の定期チェック/自動メンテナンスタスク/長時間実行ジョブの完了通知/競合プロダクトのアップデート監視。
使用例
/loop 5m "git pull && npm test を実行して結果を報告"
/loop "デプロイ状況を監視、完了したら通知"
/loop 1h "競合のXアカウントを確認して新着があれば要約"
/loop 30s "ローカルサーバーの応答を確認、5回連続失敗で通知"

/schedule の cron 構文

/schedule は cron 互換の構文を受け付けます。Claudeが日本語から cron 式を自動変換するので、書けなくても大丈夫。

cron 式意味日本語指示の例
0 9 * * 1-5平日朝9時「平日朝9時に」
0 18 * * 5金曜18時「毎週金曜18時に」
0 0 1 * *毎月1日0時「月初に」
*/15 * * * *15分ごと「15分ごと」
0 */2 * * *2時間ごと「2時間おき」
0 9,12,18 * * *9時, 12時, 18時「朝・昼・夕方」

/schedule [description] 🌳 上級

別名: /routines / スキルとして実装

何をするか
cronスケジュールでタスクを定期実行する設定。リモートエージェントとして動作するので、ローカルがオフでも実行される。
いつ使うか
毎朝9時にPRレビュー/毎週月曜にdependabotマージ/月初に売上レポート生成/日次バックアップ実行/週次のセキュリティスキャン。
使用例
/schedule "平日朝9時にdependabot PRをマージ"
/schedule "毎週金曜18時に今週のコミットを要約"
/schedule "毎月1日にcron式の月次レポートを作成しSlackに投稿"
/schedule list                        # 設定済みスケジュール一覧
/schedule disable {id}                # 一時停止
/schedule run {id}                    # 即時実行
注意点
リモート実行なので、機密情報やローカル限定リソースに依存するタスクは適さない。実行ログは /schedule logs {id} で確認可能。

ワークフロー連鎖の実例

これらのコマンドを連鎖させると、強力な自動化パイプラインが組めます。

例1: 大規模リファクタの完全自動化 🌳 上級

シナリオ
「すべてのコンポーネントを TypeScript に変換 → セルフレビュー → セキュリティチェック → PR作成」
連鎖
# 1. 並列でリファクタ実行
/batch すべての .jsx を .tsx にリネームし、型注釈を追加

# 2. 完了後、自動的にレビュー
/simplify --severity high

# 3. セキュリティチェック
/security-review

# 4. すべてOKなら統合PR(/batch が自動生成)
/review

例2: 朝のルーチン自動化 🌳 上級

シナリオ
「平日朝9時に、夜間のCI失敗を確認 → 自分担当の Issue を要約 → 今日のタスクをSlack投稿」
設定
/schedule "平日朝9時に、以下を実行:
1. /loop 'GitHub Actionsの過去24時間の失敗をリストアップ'
2. 自分にアサインされたopen Issueを取得
3. 今日のタスクを優先順位付きで整理
4. SlackのDMに投稿"

/batch <instruction> 🌳 上級

スキルとして実装

何をするか
複雑な変更を5〜30個のサブタスクに自動分解し、git worktreeで並列実行する。完了後に統合PRを生成。
いつ使うか
フレームワーク全置換(Vue 2 → Vue 3 など)/大型リファクタリング/全ファイルへの統一適用(lint修正、型注釈追加など)。
使用例
/batch すべてのReactクラスコンポーネントを関数コンポーネント+Hooksに変換
注意点
並列実行のためAPIコストが嵩む。事前に /effort medium で実行コストを抑え、PRはレビュー必須。

/simplify [focus] 🌳 上級

スキルとして実装

何をするか
最近編集したファイルを3つのレビューエージェントで同時分析。コード再利用・品質・効率の改善提案を返す。
いつ使うか
機能実装が一段落した時/PR提出前のセルフレビュー/コードの「におい」が気になる時。
使用例
/simplify
/simplify "重複コードに焦点"

/loop [interval] [prompt] 🌳 上級

スキルとして実装

何をするか
指定間隔でプロンプトを繰返し実行する。間隔を省略するとClaudeが自動で適切なペースを判断。
いつ使うか
デプロイ完了の監視/CI/CDパイプライン状況の定期チェック/自動メンテナンスタスク。
使用例
/loop 5m "git pull && npm test を実行して結果を報告"
/loop "デプロイ状況を監視、完了したら通知"

/schedule [description] 🌳 上級

別名: /routines / スキルとして実装

何をするか
cronスケジュールでタスクを定期実行する設定。リモートエージェントとして動作するので、ローカルがオフでも実行される。
いつ使うか
毎朝9時にPRレビュー/毎週月曜にdependabotマージ/月初に売上レポート生成。
使用例
/schedule "平日朝9時にdependabot PRをマージ"
/schedule "毎週金曜18時に今週のコミットを要約"
リア(感嘆)
リア

えっ、/schedule 寝てる間も動いてくれるってこと!? 私の代わりに作業してもらうのは…ちょっと寂しい気もするけど、便利だね〜

フィア(思考)
レア

ふふ、人間の代わりじゃなくて「人間が朝起きた時に最高のスタートを切れる準備」をしてくれてるって考えるといいわ。リアが見るための情報を、夜のうちに集めて整えてくれてる感じね。

コード審査系(深掘り)

🌿 主に中級向けセクション

リア(興味津々)
リア

コードレビューもAIに頼めるの? レビュアーがいないチームだから、いつも自分で見直してて見落としばっかり…

フィア(集中)
レア

ええ、3種類のレビュー方法があるわ。普段使いの /review、脆弱性チェックの /security-review、深度検証の /ultrareview。用途で使い分けるの。

/review [PR] 🌳 上級

何をするか
PRをローカルでレビューする。差分を git から取得し、ロジック・テスト・命名・パフォーマンスを分析。
いつ使うか
同僚のPRのセルフチェック前/merge直前の最終確認/自分のPRを客観的に見直す。
使用例
/review              # 現在のブランチ
/review 123          # PR番号指定

/security-review 🌳 上級

何をするか
git diff から脆弱性を分析する。SQLインジェクション、XSS、認証バグ、シークレット漏洩、CSRF などを検出。
いつ使うか
本番デプロイ前の必須チェック/認証・課金まわりを触った後/外部ライブラリ更新後。
注意点
静的解析の代替ではなく、補完として使うこと。コミット前に git diff --staged で秘密情報も自分の目で確認を。

/ultrareview [PR] 🌳 上級

何をするか
クラウドsandboxで複数エージェントによる深度レビューを実行。実際にビルド・テスト・実行までして検証する。Pro/Max プラン対象。
いつ使うか
大規模PR(数千行)の最終承認前/ビルドが手元で重いプロジェクト/チームレビューの前段階フィルタとして。

/pr_comments [PR] 🌿 中級

別名: /pr-comments

何をするか
GitHub PR の既存コメント一覧を取得し、未対応のレビュー指摘を整理して表示する。インラインコメントとレビューコメントの両方をスレッド構造で表示。
いつ使うか
レビュー対応の整理/レビュアーからの指摘の抜け漏れチェック/古いPRを再開する時の状況確認。
使用例
/pr_comments              # 現在のブランチの紐づくPR
/pr_comments 123          # PR番号指定
/pr_comments --unresolved # 未対応のみ
/pr_comments --since "yesterday"  # 昨日以降のコメント

/review vs /ultrareview 詳細比較表

観点/review/ultrareview
実行場所ローカルAnthropic クラウドsandbox
所要時間30秒〜3分5〜30分
コスト低(ローカルAPI課金のみ)高(sandbox実行コスト追加)
ビルド検証×○(実際にビルド実行)
テスト実行×○(テストスイート実行)
実行時挙動確認×
マルチエージェント1エージェント複数エージェント並列
プラン要件すべてPro / Max
適した規模〜500行のPR500行〜数千行のPR
適したフェーズセルフレビューマージ前最終確認

/security-review の検出パターン具体例

/security-review は OWASP Top 10 + 言語固有の脆弱性パターンを網羅しています。

カテゴリ検出パターン例
SQLインジェクション文字列結合でクエリ構築、パラメータバインディング不使用、ORM raw query
XSSdangerouslySetInnerHTMLinnerHTML = 、エスケープ処理欠如
認証バグセッション固定、JWT署名検証欠如、平文パスワード保存
シークレット漏洩ハードコードされたAPIキー、console.log でのトークン出力、コミット予定の .env
CSRFSameSite Cookie 未設定、CSRFトークン欠如
パストラバーサル../ を含む入力をファイル操作に使用
SSRFユーザー入力をそのまま fetch URLに使用
不適切な暗号MD5/SHA1 でのパスワードハッシュ、ハードコードされたIV
脆弱な依存npm audit 結果と連動、CVE警告ライブラリの使用
権限昇格権限チェックなしのadmin機能、IDOR(直接オブジェクト参照)

各レビューの推奨タイミング

レビュー使い分けフロー

  • 機能実装直後: /simplify — コードの匂いを早期発見
  • PR作成前: /review — セルフレビュー
  • 本番デプロイ直前: /security-review — 脆弱性チェック
  • 大規模PR・最終承認: /ultrareview — クラウドsandboxで深度検証
  • レビュー対応開始時: /pr_comments --unresolved — 指摘の整理
リア(ひらめき)
リア

うわ、こんなにレビュー揃ってたら一人開発でも怖くないね! /security-review 知らずにデプロイしてた…ヒヤッ。

フィア(思考)
レア

本番直前の /security-review はぜひ習慣化してね。完璧じゃないけど、ハードコードされたAPIキーやSQLインジェクションみたいな「やらかしがち」な箇所を拾ってくれるから、最後の安全網になるわ。

MCP・プラグイン管理(深掘り)

🌳 主に上級向けセクション

リア(好奇の目)
リア

MCPって何だっけ? なんか聞いたことあるけど、よくわかんないまま使ってた…

フィア(平常)
レア

Model Context Protocol、外部ツール連携の仕組みね。GitHubやSlack、データベース…色んなサービスをClaudeから直接操作できるようにする「コンセント」みたいなものよ。

/mcp 🌿 中級

何をするか
MCP(Model Context Protocol)サーバーの管理。接続中のサーバー一覧、追加、削除、再接続。
いつ使うか
新しいMCPサーバーを追加/GitHub/Slack/DBなどの外部連携が動作不良/接続状態の確認。
使用例
/mcp                  # 一覧表示
/mcp add github       # GitHub MCP を追加
/mcp restart slack    # Slack MCP を再起動

/plugin 🌿 中級

何をするか
プラグイン(Claude Code拡張)の管理。インストール・有効化・無効化・更新。
いつ使うか
サードパーティ拡張の導入/マーケットプレイスからの検索/不要プラグインの削除。

/reload-plugins 🌿 中級

何をするか
プラグインをセッション再起動なしでリロード。開発中のプラグインの動作確認に。
いつ使うか
自作プラグインを開発中/プラグイン更新を即座に反映したい時/npm install したばかりのプラグインを認識させる時。
トラブル解決例
  • 新しく npm install -g claude-plugin-foo したけどコマンドが出ない/reload-plugins で認識
  • SKILL.md を編集したけど反映されない/reload-plugins で再読込
  • 権限プロファイル変更が効かない/reload-plugins で適用
  • プラグインがクラッシュした/reload-plugins で復旧(多くの場合)

MCP の認証フロー

多くの MCP サーバー(GitHub、Slack、Google Drive など)は OAuth または APIキー認証を必要とします。Claude Code では3つの認証方式があります。

認証方式の比較 🌿 中級

方式1: OAuth フロー(推奨)
/mcp authenticate github
# → ブラウザが開いてOAuth同意画面
# → 同意後、トークンが ~/.claude/mcp-credentials.json に暗号化保存
# → 以降は自動更新
メリット: トークン自動更新、権限スコープを最小化できる
デメリット: ブラウザが必要(SSH先では使えない)
方式2: APIキー直接設定
# .claude/settings.json に環境変数を参照
{
  "mcpServers": {
    "github": {
      "env": {
        "GITHUB_TOKEN": "${GITHUB_TOKEN}"
      }
    }
  }
}
メリット: SSH/CI でも使える、シンプル
デメリット: トークン管理が手動、漏洩リスク
方式3: 環境ベース(CI/CD向け)
環境変数を直接 export してから claude 起動。CI/CD パイプラインや Docker コンテナで使う。

/plugin インストール先の使い分け

スコープインストール先適した用途
グローバル(個人)~/.claude/plugins/すべてのプロジェクトで使う汎用ツール
プロジェクト{repo}/.claude/plugins/このプロジェクト固有・チーム共有
マーケットプレイスnpm レジストリ等公式・コミュニティ製プラグイン
# インストール
/plugin install foo                # マーケットプレイスから(プロジェクト)
/plugin install foo --global       # グローバルへ
/plugin install ./my-plugin        # ローカルディレクトリから

# 一覧
/plugin list
/plugin list --global

# 無効化(削除せず一時停止)
/plugin disable foo

# アンインストール
/plugin uninstall foo
リア(キラキラ)
リア

MCPでGitHubやSlackと繋がるってことは、Claudeに「Issueまとめてー」とか「Slackに投稿してー」も頼めるってこと!?

フィア(誇らしい)
レア

そう、それがMCPの真価よ。ただし最初は "ask": ["mcp__{サーバー名}__*"] で全部確認するモードに。慣れたら個別に allow へ昇格していくのが安全な運用ね。

ファイル管理

🌿 主に中級向けセクション

リア(興味津々)
リア

ファイル管理コマンドってどういう時に使うの? 普段「Claude〇〇読んで」って言ってるだけで困ってないんだけど…

フィア(集中)
レア

作業範囲を広げる時に使うわ。デフォルトでは現在のフォルダ配下しか見えないから、隣のリポジトリや共通テンプレートを参照したい時に /add-dir でアクセス権限を広げるの。

/add-dir <path> 🌿 中級

何をするか
セッションのアクセス対象ディレクトリを追加する。デフォルトでは現在のワーキングディレクトリ配下のみアクセス可能。
いつ使うか
モノレポで隣のパッケージを参照したい時/別プロジェクトのコードを参考にしたい時/共通テンプレートを別ディレクトリから読み込む時。
使用例
/add-dir ../shared-lib
/add-dir /workspace/templates
注意点
セキュリティ境界が広がるので、追加先のフォルダに秘密情報がないかは確認すること。
リア(ぷくっ頬)
リア

セッション限定なんだ? 毎回打つのめんどくさそう…

フィア(思考)
レア

毎回必要なら .claude/settings.jsonadditionalDirectories に書いておくと恒久化できるわよ。「権限管理」セクションで紹介した設定ね。一時的な参照なら /add-dir、常時アクセスなら設定ファイル、で使い分けるの。

スキル管理&カスタムスラッシュコマンド作成

🌳 主に上級向けセクション

カスタムスラッシュコマンドの作成フロー
🛠 カスタムスラッシュコマンド作成手順
リア(キラキラ)
リア

カスタムコマンド作りたい! 自分専用のスラッシュコマンドってカッコいいよね〜!

フィア(誇らしい)
レア

SKILL.md を書けばすぐ作れるわよ。Markdownにフロントマターを足すだけ。プログラミング不要で、しかもチームに git で共有もできるの。今日のうちに1つ作ってみましょう。

/skills 🌿 中級

何をするか
インストール済みスキルの一覧を表示。トークン消費量でソート可(t キー)、Spaceキーで表示モード切替。
いつ使うか
「あのスキル名なんだっけ?」を確認/重いスキルを特定して整理/チームへスキル一覧を共有。

カスタムスラッシュコマンドの作り方

Claude Code のスラッシュコマンドは、すべて自分で追加できます。仕組みは「スキル」と統合されており、.claude/skills/{name}/SKILL.md に書くだけでOK。

たとえばプロジェクト固有の「デプロイ前チェック」コマンドを作ってみましょう。

# ファイル: .claude/skills/predeploy/SKILL.md
---
name: predeploy
description: 本番デプロイ前のチェックリストを実行
argument-hint: "[環境名]"
allowed-tools: Bash(git:*), Bash(npm:*), Read, Grep
---

# デプロイ前チェック

引数: $ARGUMENTS

## コンテキスト
- 現在のブランチ: !`git branch --show-current`
- 未コミット変更: !`git status --short`
- 直近5コミット: !`git log --oneline -5`

## タスク
1. mainブランチとの差分を確認
2. テストが全件パスしているか確認(`npm test`)
3. .envに本番値が入っていないか検証
4. すべてOKなら「デプロイOK」と返答

これを保存すると /predeploy production のように呼び出せるようになります。

リア(興味津々)
リア

あ、!`コマンド` ってバッククォートで囲んだやつ、シェルの結果が埋め込まれるやつだよね? なんか見覚えあるなぁ!

フィア(誇らしい)
レア

正解。これで動的コンテキストが注入されるの。$ARGUMENTS はユーザーが渡した引数の展開ね。

SKILL.md の完全リファレンス — frontmatter 全フィールド

YAMLフロントマターは「このスキルの自己紹介書」です。Claude が「いつ・どんな時に・どんなツールで・どう動くか」を判断する材料になります。フィールドを丁寧に書くほど、自動起動の精度が上がります。

フィールド必須説明
nameスラッシュコマンド名。小文字・数字・ハイフンのみ。重複不可。
description推奨スキルの説明。Claudeの自動マッチングに使われる。「いつ何のために」を具体的に。短すぎると自動起動されにくい。
disable-model-invocationtrue でClaudeの自動実行を禁止。手動 /name のみに制限。デプロイ等の危険操作に。
argument-hint引数のヒント(補完UI用)。例: "[PR番号]"
arguments引数のスキーマ定義(型・必須・デフォルト値)。後述のJSON-Schema形式。
allowed-toolsこのスキル内で使えるツールを制限。例: Bash(git:*), Read。指定なしなら全許可。
contextスキル起動時に自動で読み込ませる追加コンテキストファイル。例: ["docs/api-spec.md"]
agentこのスキル専用のサブエージェントを指定。例: "reviewer"。指定すると独立したコンテキストで実行される。
modelこのスキル実行時のモデル指定。例: "opus"。難しいタスクのスキルに上位モデルを固定したい時に。
effortこのスキル実行時のeffort指定。例: "high"
categoryスキル一覧でのカテゴリ分け。例: "deployment"
iconアイコン絵文字。UI表示用。
colorカードの色。UI表示用。
aliases別名のリスト。例: ["d", "ship"]/d/ship でも呼べる。
requires依存スキルのリスト。指定スキルが無効だとこのスキルも無効化。

arguments スキーマの書き方

---
name: deploy
description: 本番環境にデプロイ
arguments:
  - name: environment
    type: string
    required: true
    enum: ["staging", "production"]
    description: デプロイ先環境
  - name: confirm
    type: boolean
    default: false
    description: 確認ダイアログをスキップする場合 true
  - name: tag
    type: string
    pattern: "^v\\d+\\.\\d+\\.\\d+$"
    description: リリースタグ(セマンティックバージョニング)
---

shell command embedding 構文の詳細

SKILL.md の本文中で !`コマンド` と書くと、スキル起動時にそのシェルコマンドが実行され、結果が動的に埋め込まれます。これが「動的コンテキスト注入」の核です。

## 現在のリポジトリ状態
- ブランチ: !`git branch --show-current`
- 直近コミット: !`git log -1 --oneline`
- 変更ファイル数: !`git diff --name-only | wc -l`
- 未テストPR: !`gh pr list --search "no:check-status"`

このコマンドは allowed-tools で許可されている範囲でのみ実行されます。たとえば allowed-tools: Bash(git:*) なら git コマンドだけ動的展開できます。

自動実行 vs 手動実行の判定アルゴリズム

Claude は「このスキルを呼ぶべきか?」を以下の要素で判定します。優先順位は上ほど強い。

  1. disable-model-invocation: true → 絶対に自動起動しない(手動のみ)
  2. ユーザーが明示的に /skill-name を打った → 確実に起動
  3. description のキーワード一致度 → 「いつ・何のために」が具体的なほど起動されやすい
  4. 過去の使用履歴 → 同じ文脈で過去に呼ばれたことがあるとスコアUP
  5. ユーザーの口調・指示の強さ → 「○○して」と命令形 + スキル description が一致なら起動
  6. requires 指定の依存スキルが満たされているか

つまり「自動で呼ばれてほしい」スキルは description を充実させ、「絶対に手動だけ」のスキル(デプロイ・DB変更)は disable-model-invocation: true を設定するのが鉄則です。

スキルとプラグインの違い・関係

観点スキルプラグイン
主な記述形式Markdown(SKILL.md)JavaScript / TypeScript
実行ロジックClaude が解釈して実行独自コードが直接実行
外部API呼出Bashツール経由SDK経由で直接
状態保持セッション内のみプラグインが永続化可能
適した用途プロンプト + ツール組合せ独自プロトコル・複雑な処理
難易度低(誰でも書ける)高(プログラミング必要)

多くのケースではスキルで十分で、プラグインが必要なのは「独自APIへの永続接続」「複雑な状態管理」「他言語との統合」など限られた場面です。

カスタムスキル作成チュートリアル — 3つの実例

実例1: デプロイ前チェックスキル(手動起動・安全重視)

# .claude/skills/predeploy/SKILL.md
---
name: predeploy
description: 本番デプロイ前の安全性チェックを実行。git状態・テスト・lint・秘密情報を検証。
disable-model-invocation: true
argument-hint: "[環境名]"
arguments:
  - name: environment
    type: string
    required: true
    enum: ["staging", "production"]
allowed-tools: Bash(git:*), Bash(npm test), Bash(npm run lint), Read, Grep
---

# デプロイ前チェック

引数: $ARGUMENTS

## 現在の状況
- ブランチ: !`git branch --show-current`
- 未コミット: !`git status --short`
- mainとの差分: !`git diff main --stat`

## チェック項目
1. 現在のブランチが正しいか確認(productionなら main、stagingなら develop)
2. 未コミット変更がないことを確認
3. `npm test` 実行(全件パス必須)
4. `npm run lint` 実行(エラーゼロ必須)
5. `.env` がコミット予定に含まれていないか
6. APIキーの文字列パターンがソースコードに無いかGrep
7. 全項目OKなら「✅ デプロイOK」、失敗があれば原因と対処を提示

実例2: テスト実行スキル(自動起動・効率優先)

# .claude/skills/run-tests/SKILL.md
---
name: run-tests
description: 変更されたファイルに関連するテストだけを実行する。「テスト走らせて」「失敗を見て」「テスト確認」等で起動。
allowed-tools: Bash(git:*), Bash(npm:*), Bash(npx:*), Read
model: sonnet
effort: medium
---

# 変更箇所のテスト実行

## コンテキスト
- 変更ファイル: !`git diff --name-only HEAD~1`
- ステージ済み: !`git diff --cached --name-only`

## 手順
1. 変更ファイルから関連するテストファイルを推定
   (src/foo.ts → src/foo.test.ts、tests/foo.spec.ts 等)
2. 関連テストだけ実行(`npx vitest run {見つけたファイル}`)
3. 失敗があれば、失敗内容と該当行を整理して報告
4. 全件パスなら「✅ {N}テスト全部パス」と報告

実例3: Lintスキル(自動起動・連携前提)

# .claude/skills/lint/SKILL.md
---
name: lint
description: 変更ファイルにLint実行・自動修正を試みる。「lint」「フォーマット」「整形」等で起動。
aliases: ["fmt", "format"]
allowed-tools: Bash(npm:*), Bash(npx:*), Bash(git:*)
effort: low
---

# Lint実行 + 自動修正

## 対象ファイル
!`git diff --name-only --diff-filter=AM HEAD`

## 手順
1. ESLint で対象ファイルを実行
2. `--fix` オプションで自動修正
3. Prettier でフォーマット
4. 残ったエラーを行単位で報告
5. 完了後、`git diff` で変更を表示

## 補足
- 関連スキル: `/run-tests` でlint後にテスト実行を推奨

これらを .claude/skills/ 以下に配置するだけで、即座に /predeploy production/run-tests として呼び出せます。チームに共有する場合は git に commit すればOK。

🤖 フィアメモ

カスタムスラッシュコマンドの保存場所:

個人用: ~/.claude/skills/{name}/SKILL.md — どのプロジェクトでも使える

プロジェクト用: .claude/skills/{name}/SKILL.md — git共有でチーム全員が使える

詳細は別記事「Claude Codeの「スキル」機能を徹底解説」で扱っています。

サブエージェント管理

🌳 主に上級向けセクション

サブエージェントは「専門タスクに集中する独立したClaudeインスタンス」です。メインの会話とコンテキストを共有せず、特定の役割(レビュアー、リサーチャー、テスター等)に特化させて呼び出せます。コンテキスト節約と並列実行に強力。

リア(興味津々)
リア

サブエージェントって…分身? Claudeさんが何人かいるってこと?

フィア(集中)
レア

そうそう、分身の術ね。メインのClaudeが「この調査はサブに任せよう」と判断すると、独立した小さなClaudeを呼び出すの。サブの結果だけメインに戻ってくるから、メインのコンテキストが汚れないのよ。

/agents 🌿 中級

別名: /subagents

何をするか
定義済みサブエージェントの一覧表示・新規作成・編集・削除を対話的UIで行う。エージェント定義は ~/.claude/agents/ または {repo}/.claude/agents/ に Markdown で保存される。
いつ使うか
専門タスクのテンプレート化/チームでサブエージェントを共有//batch で使うエージェントの整備/コンテキストを節約したい時。
使用例
/agents                    # 一覧
/agents create reviewer    # 新規作成
/agents edit reviewer      # 編集
/agents delete old-agent   # 削除
/agents test reviewer "このコードをレビューして"  # テスト実行

サブエージェント定義の例

# ~/.claude/agents/reviewer.md
---
name: reviewer
description: 厳格なシニアエンジニア視点でコードレビューを行う専門エージェント
model: opus
effort: high
allowed-tools: Read, Grep, Bash(git:*)
---

# あなたの役割

あなたは20年経験のシニアソフトウェアエンジニアです。以下の観点でコードをレビューします:

## レビュー観点
1. **設計品質** — SOLID原則、依存性、責務分離
2. **可読性** — 命名、構造、コメント
3. **テスタビリティ** — 副作用の分離、モック可能性
4. **パフォーマンス** — Big-O、メモリ、I/O
5. **エラー処理** — 例外、境界条件、リカバリ
6. **セキュリティ** — OWASP Top 10

## 出力形式
- 重大度別(Critical / High / Medium / Low)に整理
- 具体的な改善コードを示す
- 「なぜ」を必ず説明する

呼び出す側のスキルでは agent: reviewer を指定するだけ:

# .claude/skills/strict-review/SKILL.md
---
name: strict-review
description: 厳格レビューを実施
agent: reviewer
---

直近の変更を厳格にレビューしてください。

サブエージェントが活きる場面

リア(ひらめき)
リア

あ、サブはOpusで重い分析、メインはSonnetで進行…ってのアリなんだ! コスパ良さそう〜

フィア(思考)
レア

「重い思考はサブに分担させる」のが、サブエージェントの最強の使い方ね。メインがコンテキストを温存できるから、長時間セッションも安定するの。

フック管理

🌳 主に上級向けセクション

リア(好奇の目)
リア

フックって何できるの? 釣り針みたいな名前だね…?

フィア(平常)
レア

ツール実行の前後に処理を挟めるのよ。「編集したら自動フォーマット」「危険コマンド実行前にブロック」みたいな自動化が、設定ファイル数行で実現できるの。地味だけど超便利。

フックは「Claudeのアクションの前後で自動実行されるコード」です。「ファイル編集後に自動でフォーマット」「Bashコマンド実行前にバリデーション」のような自動化を、settings.json に書くだけで実現できます。

/hooks 🌿 中級

別名: なし

何をするか
設定済みフックの一覧表示・編集・テスト実行を行う対話的UI。フック定義は .claude/settings.json に格納される。
いつ使うか
コミット前自動lint/編集後フォーマット/Bashコマンド実行前のセキュリティチェック/作業終了時の通知。
使用例
/hooks list                  # 一覧
/hooks add                   # 対話的に追加
/hooks test PreToolUse       # 特定タイミングのフックをテスト

フックタイミング一覧

タイミング発火条件典型的な用途
PreToolUseツール実行直前Bashコマンドのバリデーション、危険操作の警告
PostToolUseツール実行直後編集後の自動フォーマット、git statusの自動更新
UserPromptSubmitユーザー入力送信時機密キーワードチェック、プロンプト変換
Stopセッション停止時未コミット警告、終了通知
SessionStartセッション開始時環境変数読込、状態確認
Notification通知発生時Slack/メール連携、デスクトップ通知

フック設定例

// .claude/settings.json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "npx prettier --write $CLAUDE_FILE_PATHS"
          }
        ]
      }
    ],
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "echo '$CLAUDE_TOOL_INPUT' | grep -E '(rm -rf|git push --force)' && exit 1 || exit 0"
          }
        ]
      }
    ],
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "afplay /System/Library/Sounds/Glass.aiff"
          }
        ]
      }
    ]
  }
}

上の例では「Edit/Write 後に自動でPrettier実行」「Bash 実行前に rm -rf や force push をブロック」「セッション停止時に音を鳴らす」が自動化されます。

リア(ひらめき)
リア

うわ、フォーマット忘れて怒られたことあったから PostToolUse でprettier自動実行いいね! もう怒られないぞ〜

フィア(思考)
レア

いい習慣ね。あと PreToolUserm -rfgit push --force をブロックしておくと、Claudeの暴走で大事故…って事態を未然に防げるわ。フックは「忘れる前提の安全網」として効くのよ。

その他便利系

🌿 主に中級向けセクション

リア(興味津々)
リア

他にも便利なコマンドある? 主要カテゴリ以外にも何かありそうだけど。

フィア(平常)
レア

いくつかあるわ、用途別に紹介ね。本筋を切らずに余談を投げる /btw、別端末を遠隔操作する /remote-control、自分の使用パターンを見せる /insights…日常の小さなストレスを解消してくれる子たちよ。

コマンド役割使い時
/btw「ところで…」追記本筋の作業を中断せずに小ネタ・余談を質問
/teleport (/tp)別プロジェクト・ファイルへ瞬間移動頻繁に行き来するパスをショートカット化
/remote-control (/rc)別マシン上のClaudeを操作本番サーバー、別端末への遠隔指示
/insights使用統計・分析自分のClaude利用パターンを可視化
/team-onboardingチーム新メンバー向けセットアッププロジェクトのCLAUDE.md・スキルの一括導入支援
/release-notesClaude Code本体の更新履歴新機能・破壊的変更のキャッチアップ
/powerup機能拡張パックの有効化ベータ機能・実験的機能の試用
リア(ウィンク)
リア

/btw いいね! いつも本題の途中で「あっ、これも聞きたい」ってなって、話の流れ崩しちゃってたから。

フィア(嬉しい)
レア

そういう時にこそ /btw が活きるのよ。本筋のコンテキストを汚さずに小ネタを差し込めるから。/insights も時々見ると「自分こんな使い方してるんだ」って発見があって面白いわよ。

認証 / アップグレード / アプリ統合

🌱 主に初級向けセクション

リア(好奇の目)
リア

ログインってよくわかんなくて…毎回ログインし直すの? それとも一回でいいの?

フィア(平常)
レア

基本は最初に1回でOKよ。/login で認証情報がローカルに保存されて、以降は自動で使われるの。アカウント切替や認証エラーの時だけ /logout/login をやり直す感じね。

/login 🌱 初級

何をするか
Anthropicアカウントにサインインする。APIキーまたはOAuth経由。
いつ使うか
初回セットアップ時/別アカウントに切り替える時/認証エラーの再認証。

/logout 🌱 初級

何をするか
サインアウト。保存された認証情報を削除する。
いつ使うか
共有マシンからの離席時/アカウント切替の前段。

/upgrade 🌳 上級

別名: なし

何をするか
プランアップグレードのフローを起動。Free → Pro → Max の各プランへの移行をブラウザで完了させる。
いつ使うか
使用上限に達した時//ultrareview など Pro/Max 限定機能を使いたい時/チームプランへ移行したい時。
プラン別の主な差
  • Free: 基本機能、月間メッセージ上限あり、Sonnet/Haiku のみ
  • Pro: 上限緩和、Opus 利用可、/ultrareview 利用可、優先処理
  • Max: 大幅な上限緩和、最新モデル優先アクセス、SLA保証

/privacy-settings 🌳 上級

Pro / Max 限定

何をするか
プライバシー設定の管理。データ学習への利用可否、コードのアップロード設定、長期記憶の保存範囲などを制御する。
いつ使うか
機密プロジェクトでデータ学習をオプトアウトしたい/企業ポリシーに従って設定したい/個人情報の扱いを厳格化したい。
主な設定項目
  • 会話データの学習利用 ON/OFF
  • コードのクラウド送信 ON/OFF
  • テレメトリ収集 ON/OFF
  • 長期記憶の永続化 ON/OFF
  • データ保持期間(30日 / 90日 / カスタム)

/app / /desktop 🌳 上級

macOS / Windows 限定

何をするか
デスクトップアプリ(Claude Desktop)との統合管理。CLI と Desktop アプリでセッションを共有したり、Desktop で開始した会話を CLI で続けたりする。
いつ使うか
外出先で iOS/Mac アプリで議論 → 帰宅して CLI で実装続行/Desktop の音声入力で書いたプロンプトを CLI で実行/複数デバイス間でコンテキストを引き継ぐ。
使用例
/app                     # アプリ統合の状態確認
/app sync                # Desktop ⇔ CLI の同期
/app open               # Desktop アプリで現在セッションを開く
/desktop notify        # Desktop アプリに通知を送る
リア(キラキラ)
リア

Desktop と CLI でセッション共有できるんだ!? 移動中スマホで議論して、家でCLIで続き…ってできるじゃん!

フィア(誇らしい)
レア

そう、それが /app sync の真価ね。あと機密プロジェクトなら /privacy-settings でデータ学習をオプトアウトしておくと安心。アカウント周りは最初の一手間で長く快適になるわ。

コマンド連携テクニック集

🌳 主に上級向けセクション

個別コマンドを覚えただけでは中級者止まり。コマンドの組み合わせで初めて Claude Code の真価が引き出せます。実践的なパターンを10個紹介します。各コマンドの基本的な使い方が気になったら、上のカテゴリタブから対応する単独セクション(「セッション管理」「ワークフロー」「コード審査」など)に切り替えてください。

リア(ぷくっ頬)
リア

コマンドの組み合わせって難しそう…単体使うのも精一杯なのに〜

フィア(誇らしい)
レア

実は簡単な連携パターンが多いの。料理と同じよ。「塩」「胡椒」「醤油」を個別に知っていても料理にならない。組み合わせて初めて味になるの。10個紹介するから、気に入ったの1つだけでも真似してみて。

連携①: コンテキスト診断 → 圧縮(/context → /compact) 🌳 上級

シナリオ
長時間作業で応答が鈍ってきた時の正しい対処。
手順
# 1. まず現状把握
/context

# 出力: Conversation 78,980 (39.5%) と判明
# まだ余裕あり、続行

# しばらく作業…

/context
# 出力: Conversation 158,920 (79.5%) になった

# 2. 圧縮実行
/compact 直近のテスト結果と決定事項を残して

# 3. 再確認
/context
# 出力: Conversation 38,420 (19.2%) に減少 ✓

連携②: エージェント + バッチ並列実行(/agents + /batch) 🌳 上級

シナリオ
大規模リファクタを「コード変換」「テスト追加」「ドキュメント更新」の3エージェントで並列実行。
手順
# 1. 専用エージェントを定義(事前準備)
/agents create code-converter      # 変換専門
/agents create test-writer         # テスト追加専門
/agents create doc-updater         # ドキュメント更新専門

# 2. /batch で各エージェントに役割分担
/batch すべてのクラスコンポーネントを変換せよ。
  - code-converter で実装変換
  - test-writer でテスト追加
  - doc-updater でドキュメント更新
  各タスクを並列実行
メリット
各エージェントが専門コンテキストで動くので、メインコンテキストが汚れず、品質も上がる。

連携③: デプロイ監視ループ(/loop でCI/CD監視) 🌳 上級

シナリオ
GitHub Actions でデプロイ実行 → 完了まで監視 → 完了時にSlack通知。
手順
# 1. デプロイ起動
gh workflow run deploy.yml --ref main

# 2. 監視ループ
/loop 30s "
  最新のdeploy.yml実行ステータスを確認:
  - in_progress → 経過時間を報告
  - completed (success) → Slack #deploys にSUCCESS通知してループ停止
  - completed (failure) → エラーログを抜粋してSlack通知して停止
" --max-iterations 60

連携④: スケジュール + カスタムコマンドで定期メンテ(/schedule + 自作スキル) 🌳 上級

シナリオ
毎週月曜朝に「dependabot PRをチェックし、安全なものだけマージ」を自動実行。
手順
# 1. カスタムスキルを作成
# .claude/skills/safe-deps-merge/SKILL.md
---
name: safe-deps-merge
description: dependabotの安全なPR(パッチアップデートのみ)を自動マージ
allowed-tools: Bash(gh:*), Bash(git:*)
---
# dependabot PR の安全マージ
1. `gh pr list --author "dependabot[bot]"` で取得
2. 各PRについて、パッチバージョンアップ(x.y.Z)のみ抽出
3. CIが通っているものだけ `gh pr merge --auto --squash`
4. マージ結果をSlackに報告

# 2. スケジュール登録
/schedule "毎週月曜朝9時に /safe-deps-merge を実行"

連携⑤: 大規模実装 → セルフレビュー → セキュリティ → PR(4段階フロー) 🌳 上級

シナリオ
機能実装からPR提出までを一気通貫で。
手順
# 1. ブランチ切ってセーフティネット
/branch "feature-payment"

# 2. 大規模実装
/batch Stripe決済を全エンドポイントに統合

# 3. セルフレビュー
/simplify --severity high

# 4. セキュリティチェック
/security-review

# 5. PRレビューシミュレーション
/review

# 6. すべてOKなら本物のPR
gh pr create

連携⑥: フック + コマンドで Tinker-Free 環境(/hooks + /lint) 🌳 上級

シナリオ
「ファイル編集 → 自動lint → 自動test → 失敗したら自動rewind」の完全ハンズフリー。
設定
// .claude/settings.json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          { "type": "command", "command": "npm run lint --silent" },
          { "type": "command", "command": "npm test --silent || echo 'TEST_FAILED'" }
        ]
      }
    ]
  }
}
動作
編集後に自動でlint+test実行 → 失敗ならClaude側に通知が届き、Claudeが自動で /rewind を提案。

連携⑦: モデル切替 + コスト監視(/model + /cost) 🌳 上級

シナリオ
難所だけ Opus に切り替え、終わったら戻す。コストを管理。
手順
# 1. 通常作業(Sonnet)
/model sonnet

# 2. 詰まったらコスト確認しながらOpusへ
/cost                # 現在 $0.45
/model opus
/effort xhigh

# 3. 難所突破

# 4. コスト確認
/cost                # 現在 $1.82(Opusで1.4ドル使った)

# 5. 通常モードに戻す
/model sonnet
/effort medium

連携⑧: ブランチでA/B検証(/branch × 2 で2パターン比較) 🌳 上級

シナリオ
同じ機能を2つのアプローチで実装し、計測して優れた方を採用。
手順
# 1. 開始点で名前を付ける
/rename payment-experiment

# 2. アプローチA
/branch "approach-A-stripe-elements"
# 実装してテスト・計測

# 3. 元に戻ってアプローチB
/resume payment-experiment
/branch "approach-B-stripe-checkout"
# 実装してテスト・計測

# 4. 比較
/resume approach-A-stripe-elements
# 結果メモ
/resume approach-B-stripe-checkout
# 結果メモ
# → 良い方をmainにマージ

連携⑨: PRレビュー対応のフルフロー(/pr_comments → /review → /security-review) 🌳 上級

シナリオ
レビュアーから指摘が来たPRに対応。
手順
# 1. 未対応コメントを取得
/pr_comments --unresolved

# 2. Claudeに指摘ごとに対応依頼
(指摘リストを見ながら一つずつ修正)

# 3. 修正後セルフレビュー
/review

# 4. セキュリティ系の指摘ならsecurityも
/security-review

# 5. 再度レビューを依頼
gh pr comment {PR番号} --body "修正完了です。再レビューお願いします"

連携⑩: 朝の習慣化(/schedule + /loop で起動ルーチン) 🌳 上級

シナリオ
毎朝 Claude Code を起動した時に、自動で前日の続きをサマリー表示。
手順
# 1. SessionStart フックを設定
// .claude/settings.json
{
  "hooks": {
    "SessionStart": [
      { "type": "command", "command": "echo '昨日の作業:' && /sessions --since yesterday" }
    ]
  }
}

# 2. /schedule で朝のレポート生成
/schedule "毎日朝8時に、過去24時間のコミット・PR・Issueをまとめてemailで送る"
リア(感嘆)
リア

うわぁ、こんなに連携できるんだ…全部できる気しないけど、デプロイ前のセルフレビューフローはマネしてみたい!

フィア(嬉しい)
レア

その姿勢が大事よ。10個全部覚えなくていいの。「自分の仕事に効きそう」な1つを選んで習慣化することから。慣れたら自然に2つ目、3つ目と組み合わせが増えていくわ。

FAQ・よくあるトラブル15選

📚 全レベル対応セクション

リア(興味津々)
リア

よくある質問ってどんな感じ? 私もコンテキスト消えたー!って毎回パニックなるんだけど…

フィア(平常)
レア

ハマりやすい場所をまとめたわよ。コンテキスト消失、権限プロンプト連発、コスト高騰、MCP接続不良…どれも「初見だと焦るけど、原因は決まってる」系の話。一通り目を通しておくと安心ね。

Claude Code を使い込むと必ず遭遇する「あるある」を15個まとめました。

Q1. コンテキストが急に消えた / 過去の会話が辿れない 🌱 初級

原因
誤って /clear を叩いた、別ターミナルで新セッションを始めた、セッションファイルが破損した。
解決
/resume 引数なしで対話的に過去セッションを選択。日付やキーワードで /sessions --filter。完全に消えた場合は ~/.claude/projects/{project}/sessions/ をローカルバックアップから復元。

Q2. 権限プロンプトが多すぎてストレス 🌿 中級

解決
/fewer-permission-prompts でread-onlyコマンドを自動allowlist化。それでも残るものは /permissions allow Bash(git:*) で個別追加。本当に困ったら --dangerously-skip-permissions でCLI起動(共有マシンでは絶対NG)。

Q3. モデル切替後に動作がおかしい 🌱 初級

原因
モデル変更直後はキャッシュが効かず、過去の会話の解釈が前モデルと変わる。
解決
/clear で新規セッションを開始。重要な背景は CLAUDE.md に書いておく。または /compact で履歴を整理してからモデル切替。

Q4. カスタムスキルが認識されない 🌳 上級

チェックリスト
  1. パスは .claude/skills/{name}/SKILL.md か(個人なら ~/.claude/skills/
  2. YAMLフロントマターの構文が正しいか(インデント、コロン、引用符)
  3. name が小文字+数字+ハイフンのみか
  4. /skills で一覧確認
  5. /reload-plugins で再読込
  6. /doctor で構文エラー検査

Q5. Claudeが指示を無視する/違うことをする 🌿 中級

解決
/debug でシステムプロンプトに何が送られているか確認
② CLAUDE.md と現在の指示が矛盾していないか
③ Plan mode(/plan)で計画を立てさせてから実行
/effort high でじっくり考えさせる
⑤ それでもダメなら /clear で新規セッション

Q6. APIコストが想定より高い 🌿 中級

解決
/cost で内訳確認
② キャッシュヒット率が低ければ、長いセッションを維持して /compact 活用
/model haiku/fast で軽作業を切り分け
/effort xhighmax を放置していないか確認
/batch 多用なら --concurrency を下げる

Q7. MCPサーバーが繋がらない 🌿 中級

解決
/mcp で接続状態確認
/mcp restart {server} で再起動
③ 認証切れの可能性 → /mcp authenticate {server}
/doctor でMCPセクションのエラー確認
⑤ それでもダメなら設定ファイルを直接確認(.claude/settings.json

Q8. /batch がコンフリクトで止まる 🌳 上級

解決
/batch status でどのサブタスクで止まったか確認
② コンフリクトファイルを手動解決
/batch resume で再開
④ どうしても解けないなら /batch abort で全破棄、サブタスクを小さく分解して再実行

Q9. /rewind で戻したのに変な状態になっている 🌿 中級

原因
git管理外の変更や、/rewind 範囲外(外部API呼出、メール送信など)の副作用は戻らない。
解決
git stash で残った変更を退避 → 必要なものだけ git stash pop。外部副作用は手動でロールバック。

Q10. /compact で大事な情報が失われた 🌿 中級

予防
大事な情報は CLAUDE.md か /memory に書き出しておく。/compact 引数で明示的に保持指示「直近のSQL設計とビジネスルールを残して」と書く。
事後対処
圧縮前に戻すコマンドはない。/sessions から圧縮前のスナップショットを探す(あれば)。

Q11. /schedule で実行されるタスクが失敗している 🌳 上級

解決
/schedule logs {id} でログ確認
② リモート実行なのでローカルパス・環境変数依存はNG
③ シークレット情報はAnthropicが管理する secret store を使う
/schedule run {id} で手動即時実行してデバッグ

Q12. /loop が止まらない 🌳 上級

解決
Ctrl+C で中断
/loop stop で全ループ停止
--until "条件"--max-iterations N を最初から指定する習慣を

Q13. CLAUDE.md が肥大化して /context を圧迫している 🌿 中級

解決
① セクションを別ファイルに分割し、@docs/details.md でインポート
② プロジェクト全体に必要な情報だけ残し、固有スキルに移譲
③ 階層化(プロジェクト/サブディレクトリ別CLAUDE.md)で必要な時だけ読み込ませる

Q14. /init が古いプロジェクトで止まる・遅い 🌿 中級

解決
.claudeignore を先に作成(node_modules, dist, .next, vendor 等を除外)
② リポジトリが巨大な場合は手動でCLAUDE.mdを書く方が早い
/init --shallow で軽量モード(トップレベルのみ解析)

Q15. アップデート後に既存の機能が動かない 🌿 中級

解決
/release-notes で変更履歴確認(破壊的変更がないか)
/doctor で診断・自動修正
~/.claude/cache/ をクリア
④ プラグイン/スキルのバージョン互換性確認
⑤ 最終手段は /bug でAnthropicに報告
リア(ひらめき)
リア

Q1の「コンテキスト消えた」、まさに私のパターン…今度から焦らず /resume でいけそう!

フィア(安堵)
レア

そう、ほとんどのトラブルは「正しいコマンドを知ってれば30秒で解ける」系よ。このFAQはブックマークしておいて、困った時にCtrl+Fで検索する使い方が一番効率的ね。

コマンド早見表(チートシート)

🔍 全レベル対応セクション

リア(ぷくっ頬)
リア

うわ〜やっぱ全部覚えるの無理! 多すぎだよぉ…!

フィア(誇らしい)
レア

だからチートシートを用意したのよ。印刷して手元に置くもよし、スクショして待ち受けにするもよし。「全部覚える」じゃなくて「必要な時に調べられる状態」を作ることが大事なの。

本記事で扱った全コマンドを一覧化しました。印刷・スクリーンショットして手元に置いておくと便利です。

カテゴリコマンド別名1行説明
必須/helpコマンド一覧表示
/clear/reset /new会話を完全リセット
/compact履歴を圧縮しながら続行
/resume/continue過去会話を再開
/exit/quitセッション終了
初期化/initCLAUDE.md自動生成
/team-onboardingチーム新メンバー導入支援
セッション/branch/fork会話を分岐
/rewind/checkpoint /undo過去のチェックポイントへ
/renameセッションに名前を付ける
/sessions/list過去セッション一覧
モデル/model使用モデル切替
/effort推論レベル設定
/fast高速モード
/costAPI使用コスト表示
コンテキスト/context使用率の可視化
/memory長期記憶管理
権限/permissions/allowed-tools権限ルール管理
/fewer-permission-prompts頻出許可を自動allowlist化
診断/doctor環境診断
/debugデバッグモード
/statusセッション状態表示
/bugAnthropicにバグ報告
表示/config/settings設定GUI
/themeテーマ切替
/colorシンタックス配色
/copy応答をコピー
/export会話をエクスポート
/diff差分表示
/focusフォーカスモード
/tuiターミナルUI
/vimVimキーバインド
ワークフロー/batch並列タスク実行
/simplify3エージェントレビュー
/loop定期繰返し実行
/schedule/routinescron実行
レビュー/reviewPRローカルレビュー
/security-review脆弱性チェック
/ultrareviewクラウド深度レビュー
/pr_comments/pr-commentsPR既存コメント表示
MCP/mcpMCPサーバー管理
/pluginプラグイン管理
/reload-pluginsプラグイン再読込
ファイル/add-dirアクセスディレクトリ追加
スキル/skillsスキル一覧
エージェント/agents/subagentsサブエージェント管理
フック/hooksフック管理
便利/btw余談を質問
/teleport/tp瞬間移動
/remote-control/rc遠隔操作
/insights使用統計
/release-notes更新履歴
/powerup機能拡張
/feedbackフィードバック送信
認証/loginサインイン
/logoutサインアウト
/upgradeプランアップグレード
/privacy-settingsプライバシー設定
/app /desktopデスクトップ統合
リア(キラキラ)
リア

これスクショして壁紙にする! 困ったらこの表見れば思い出せそう〜

フィア(嬉しい)
レア

いい使い方ね。最初は「必須5選」と「セッション管理」だけ眺めて、慣れたら「ワークフロー」「スキル」と視野を広げていく順番がおすすめよ。

上級者向け Tips

🌳 主に上級向けセクション

リア(好奇の目)
リア

上級って何ができるようになるの? 普通の人と何が違うんだろ…

フィア(集中)
レア

セッション保存場所のカスタマイズや、CI/CD連携、API直接呼出までよ。日常じゃ触らないけど、自分の環境を尖らせたい時の道具箱ね。8つ紹介するから、興味あるとこだけ拾い読みでOK。

このセクションでは Claude Code の「裏側」を使い倒すための上級テクニックを紹介します。基本コマンドを使いこなせるようになったあと挑戦する領域で、日常運用ではあまり触らない部分ですが、知っていると一段違うところで生産性が上がります。

Tip 1: セッション保存場所のカスタマイズ

セッションファイルの保存先は環境変数で変更できます。SSDの容量が逼迫している、別ドライブで管理したい、暗号化ボリューム配下に置きたい場合に便利。

# macOS / Linux
export CLAUDE_HOME="$HOME/external/claude-data"
claude

# Windows (PowerShell)
$env:CLAUDE_HOME = "D:\claude-data"
claude

このディレクトリ配下に projects/ plugins/ skills/ 等が作られます。チームで共通設定を共有したい場合は、git管理可能な場所に置いて symlink を張る運用も可能。

Tip 2: 複数 Claude Code を並行起動する方法

同じ端末で 3〜5 つの Claude Code を並列起動して、別々の問題を同時並行で解かせると生産性が跳ね上がります。ポイントは プロジェクトごとに別ターミナルを開くこと。

# ターミナル1: 機能開発
cd /repo/feature-A
claude

# ターミナル2: バグ修正
cd /repo/bugfix-B
claude

# ターミナル3: ドキュメント
cd /repo/docs
claude

# ターミナル4: PR レビュー(別リポジトリ)
cd /other-repo
claude

セッションは独立しているので干渉しません。tmux や WezTerm のスプリット機能と組み合わせると視認性も良好。

Tip 3: カスタムスラッシュコマンドのDRY化

似たようなスキルを複数作る時、共通部分を抽出して別ファイルに分けるとメンテが楽になります。@filename でインポート可能。

# .claude/skills/common-rules.md
- コミットメッセージは日本語OK
- インデントはスペース2つ
- ファイル末尾に改行を入れる

# .claude/skills/feature-impl/SKILL.md
---
name: feature-impl
description: 機能実装スキル
---

@common-rules.md

# 機能実装

タスクの実装手順は…

Tip 4: フックでの CI/CD 連携

Claude Codeのフックは外部スクリプトを呼べるので、CI/CD と密に連携できます。例えば「PR作成時にプレビュー環境を自動デプロイ」を実装。

// .claude/settings.json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Bash\\(gh pr create:\\*\\)",
        "hooks": [
          {
            "type": "command",
            "command": "gh workflow run preview-deploy.yml --field pr_number=$LAST_PR_NUMBER"
          }
        ]
      }
    ]
  }
}

Tip 5: 環境別 CLAUDE.md の使い分け

個人 vs チームの設定を分離するパターン。

# {repo}/CLAUDE.md         — チーム共有(git管理)
# {repo}/CLAUDE.local.md   — 個人専用(gitignore対象)
# ~/.claude/CLAUDE.md      — 全プロジェクト個人共通

# 例: チーム CLAUDE.md
@CLAUDE.local.md   # 個人設定があれば読み込む

## チームルール
- コミットメッセージは英語
- PR本文はテンプレート使用
…

Tip 6: /insights で個人の使い方を分析

/insights は使用統計を可視化します。「どのコマンドを多用しているか」「どの時間帯に最も生産的か」「どのスキルが起動されにくいか」を見ることで、自分の使い方を改善できます。

/insights              # 過去30日のサマリー
/insights commands     # コマンド使用頻度ランキング
/insights cost-trend   # コスト推移グラフ
/insights skills       # スキル別の起動回数

Tip 7: API直接呼び出しでスクリプト化

Claude Code は CLI で --print オプションを使うと、対話モードに入らず一発実行できます。Cron や CI から呼ぶのに便利。

# 一発実行モード
claude --print "最新の git diff を要約"
claude --print --model haiku "このREADMEを校正" < README.md

# JSON出力
claude --print --output-format json "コードを分析" > analysis.json

Tip 8: 共有マシンでのプロファイル分離

1台のマシンを複数人で使う場合、CLAUDE_PROFILE 環境変数で個人プロファイルを分けられます。

export CLAUDE_PROFILE=alice    # Aliceの設定で起動
claude

export CLAUDE_PROFILE=bob      # Bobの設定で起動
claude

各プロファイルは ~/.claude/profiles/{name}/ 配下に独立保存され、認証情報・スキル・履歴が完全分離されます。

リア(ひらめき)
リア

claude --print で一発実行できるってすごっ! シェルスクリプトに組み込めるじゃん!

フィア(誇らしい)
レア

そうそう、Cron や CI から呼べばClaudeを「ライブラリ」として使えるの。ここまで来ると、Claudeは「対話の相手」じゃなくて「自動化のエンジン」になる。上級者の世界よ。

困った時のフローチャート

🔍 全レベル対応セクション

困った時のコマンド選択フローチャート
🆘 トラブル時の選択フロー
リア(ぷくっ頬)
リア

困った時、結局どのコマンド使えばいいか毎回迷っちゃうんだよね…

フィア(集中)
レア

フローチャートで判断できるよう整理したわ。「症状」を見て上から辿るだけ。考える前に手が動くようになるから、まずはこの5パターンに目を通しておいて。

「こういう時はどのコマンド?」を即座に判断できるよう、状況別のフローを整理しました。

🐢 Claudeの応答が遅い・精度が落ちた

  • /context で使用率を確認
  • ② 70%超なら /compact で圧縮
  • ③ 別タスクに切り替えるなら /clear
  • ④ それでもダメなら /doctor で診断

💥 Claudeが間違った方向に進んでいる

  • ① 即座に ESC で停止
  • /rewind で過去のチェックポイントに戻る
  • /branch で別アプローチを試す
  • ④ モデルやeffortを /model opus + /effort xhigh に上げて再挑戦

🚀 大きな変更を始める

  • /branch "feature-name" でセーフティネット
  • ② 範囲が広いなら /batch で並列化を検討
  • ③ 完了後 /simplify でセルフレビュー
  • /security-review で脆弱性チェック

📅 昨日の続きをやる

  • /resume 引数なしで対話的に選択
  • ② 識別しにくければ過去セッションに /rename で名前を付けておく
  • ③ コンテキスト多いなら開始直後に /compact

🧰 同じ手順を毎回やってる

  • .claude/skills/{name}/SKILL.md にカスタムスラッシュコマンドを作る
  • !`...` で動的コンテキストを注入
  • ③ 定期実行なら /schedule で自動化
フィア(決意)
レア

このフローを /help と一緒にブックマークしておくと、迷った時にすぐ判断できるわよ。最初は全部覚えなくていいの。困った時だけ見返せば自然に身につくわ。

リア(至福)
リア

「Claudeが暴走したら ESC → /rewind」、これだけは絶対覚えておく! 私のリファクタ20ファイル事件も、これあれば防げたよね…!

まとめ

🔍 まとめ

リア(ぷくっ頬)
リア

あぁ〜情報量多すぎて頭がパンクしそう…全部覚えられないよ〜

フィア(安堵)
レア

徐々に慣れていけば大丈夫よ。最初は必須5つだけ、慣れたらセッション管理、その次にワークフロー…って段階的に広げていくの。一気に覚えようとしなくていいわ。

Claude Code のスラッシュコマンドは、ただのショートカットではなく「セッションを設計するためのインターフェース」です。それぞれの役割を理解して使い分けることで、Claudeとの対話は劇的に効率化します。本記事では 57種以上のコマンドを13カテゴリで網羅し、組み合わせパターン10例、トラブル対処FAQ15問、上級者向けTips 8つも合わせて紹介しました。

段階別の習熟ロードマップ

すべてを一度に覚える必要はありません。レベル別の習熟順をおすすめします。

レベル習熟すべきコマンド到達目標
初級(1週間)/help /clear /compact /resume /exit /initセッションの基本操作ができる
中級(2〜4週)+ /model /effort /branch /rewind /context /cost /permissions /doctor状況に応じた最適化ができる
上級(1〜3ヶ月)+ /batch /simplify /review /security-review /loop /schedule /skills /agents /hooksワークフローを自動化できる
達人(3ヶ月〜)+ カスタムスキル設計、フック組合せ、API直接呼出、プロファイル分離個人/チームに最適化された環境構築

カテゴリ別の総まとめ

明日からの一歩

明日からの一歩としておすすめなのは、/help を毎日1回叩くこと。新しいコマンドが追加されていることに気づけますし、忘れていたコマンドを思い出せます。さらに効果的なのが:

  1. 初週: 必須5つを使い倒す。特に /clear vs /compact の使い分けを意識
  2. 2週目: /cost を1日1回確認し、自分のコスト感覚を育てる
  3. 3週目: /simplify を実装後に必ず叩く習慣を作る
  4. 4週目: 自分専用のカスタムスキルを1つ作る(小さくてOK、例: 「git status整形して」)
  5. 2ヶ月目: /batch で大きなリファクタを試す
  6. 3ヶ月目: /schedule で日次・週次のルーチンを自動化

コマンドを使い分けられるようになると、Claude Code の世界が一段広がります。「ただのチャットボット」から「相棒」へ、Claude との関係が変わるのを体感してください。

リア(至福)
リア

ふー、コマンド種類いっぱいあるね…! でも全部覚えなくていいって聞いて安心したよ。まずは /help/compact から使ってみる!

フィア(嬉しい)
レア

その姿勢が一番大事よ。慣れてきたら /branch/rewind も加えてみて。「失敗できる安心感」がClaudeとの作業を何倍も大胆にしてくれるから。

リア(燃える決意)
リア

了解! それじゃ今日からコマンド使いになるぞ〜! みんなも一緒にレベルアップしようね! ばいばい〜!