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のFAQと10の連携テクニックを後半セクションに収録
なぜコマンドを使い分けるべきか
🌱 主に初級向けセクション
やっほー! ねぇフィア、最近Claude Codeでさ〜、ずっと同じ会話続けてたら反応が鈍くなってきたんだけど。これってどうすればいいの?
それは典型的なコンテキスト過多のサインね。コマンドを使い分けるだけで一瞬で解決するわよ。タスクを切り替えるなら /clear、続きをやりたいなら /compact。
えっ、そんな違いあるの!? 全部 /clear でリセットしてた…
それだと毎回プロジェクトの説明から始めなきゃいけないでしょ? コマンドを覚えると、必要な情報を残しつつ不要な部分だけ捨てられるの。今日は全部教えてあげる。
Claude Codeのスラッシュコマンドは、UIから入力する命令ですが、その本質は「セッションの状態を制御する」ことです。会話履歴・コンテキスト・モデル・権限・出力先・スキル — これら全てをコマンド一発で切り替えられます。コマンドを知らないと、Claudeを「ただのチャットボット」として使うことになり、本来の生産性の半分も引き出せません。
必須コマンド5選
🌱 主に初級向けセクション
📚 初心者ロードマップ — まずこの順で覚える
Claude Codeを使い始めたばかりの方向け。この5ステップを覚えればまず困りません。
-
1
/helpで全体把握使えるコマンド一覧を表示。何があるか知るのが第一歩。
-
2
/clearで会話リセット新しいタスクを始める時に会話履歴をクリア。前のタスクの混入を防ぐ。
-
3
/compactでコンテキスト圧縮長時間作業して動作が重くなったら圧縮。会話は続けられる。
-
4
/resumeで前回の続きから過去のセッションに戻る。複数プロジェクトを並行する時必須。
-
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 🌱 初級
- 何をするか
- コンテキストを全削除して新規会話を開始する。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] 🌱 初級
- 何をするか
- セッションIDまたは名前で過去会話を再開する。引数なしで対話的に選択できる。
- いつ使うか
- 前日中断した機能開発の続き/複数並行タスク間の行き来/特定 PR・Issue 関連セッションへ戻る時。
- 使用例
-
/resume # 対話的に選択 /resume "feature/login" # 名前で指定 /resume 2026-05-07-abc123 # セッションIDで指定
/exit 🌱 初級
- 何をするか
- 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
git initしてリポジトリ初期化済みであること(/initは git 履歴も参考にする)package.jsonやpyproject.tomlなど依存関係マニフェストが存在すること.env.exampleを置いておくと環境変数も自動で拾ってくれる- 大規模リポジトリでは事前に
.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] 🌿 中級
- 何をするか
- 現在の会話の分岐点で新ブランチを作成・切替する。元会話は
/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 addやgit switch -cも併用する必要がある。/batchは内部で worktree を自動生成するので、本格的な並列作業はそちらを使う。
/rewind 🌿 中級
- 何をするか
- 会話を任意のチェックポイント(過去のメッセージ)まで巻き戻す。それ以降の会話・ツール呼び出し・ファイル変更を取り消せる。チェックポイントは 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-{調査トピック}— 調査・PoCreview-PR{番号}— PRレビュー
/sessions 🌿 中級
- 何をするか
- 過去のセッション一覧を表示する。直近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書き
- パターン3: タイムゾーン分離
- 夜の作業セッション(眠い・集中力低下)と朝の作業セッション(クリア)を分ける。
/rename morning-{date}/night-{date}で識別し、朝のセッションには「夜のセッションで決めた事項を貼り直す」運用にすると判断ミスが減る。
こないだリファクタやり始めたら、Claudeさんが暴走しちゃってさ〜。20ファイル書き換わって涙目になったよ。/rewind 知ってればよかった…
覚えとくと安心よ。ちなみに gitコミット済みなら git から戻せるけど、ステージングしてない変更や、設定ファイル類は /rewind でしか戻せない場合があるの。
モデル・能力設定(深掘り)
🌱 主に初級向けセクション
モデルってさ、Opus・Sonnet・Haikuって3種類あるじゃん。どれ使えばいいの? 一番賢いの選べばいいの?
タスクに合わせて切り替えるのがコツね。typo修正にOpus使うのは贅沢すぎるし、設計判断にHaikuは力不足。/model と /effort をセットで覚えれば、コストと品質のバランスが取れるわ。
タスクの難易度に応じてモデルや推論レベルを切り替えると、コストと品質のバランスを最適化できます。Claude Code には「モデル選択(/model)」「推論努力(/effort)」「Fastモード(/fast)」の3つの能力ダイヤルがあり、これらを組み合わせて最適点を探します。
タスク別おすすめモデル早見表
| タスクタイプ | 推奨モデル | 推奨effort | 理由 |
|---|---|---|---|
| typo修正・インポート整理 | Haiku | low | 判断不要・スピード優先 |
| docstring追加・コメント整備 | Haiku | low / medium | パターン化された作業 |
| シンプルなコード補完 | Haiku | medium | 文脈理解は不要 |
| 定型的なテスト実装 | Sonnet | medium | 既存パターン応用が中心 |
| 新機能の実装 | Sonnet | medium / high | バランス型の主戦力 |
| リファクタリング | Sonnet | high | 影響範囲の判断が必要 |
| バグ調査・根本原因分析 | Opus | high / xhigh | 仮説思考と検証が必要 |
| 設計議論・アーキテクチャ判断 | Opus | xhigh / max | 長期影響を考慮した推論 |
| セキュリティレビュー | Opus | xhigh | 攻撃シナリオの想像力が必要 |
| 大規模リファクタの計画 | Opus | max | 判断ミスのコストが甚大 |
| コードレビュー(PR) | Sonnet → Opus | high | 規模に応じて格上げ |
| ドキュメント執筆 | Sonnet | medium | 論理構造と表現のバランス |
| UIコンポーネント設計 | Sonnet | medium / high | 視覚的判断 + コード生成 |
/effort 各レベルの想定処理時間・コスト目安
| レベル | 処理時間(目安) | コスト倍率 | 適した用途 |
|---|---|---|---|
low | 2〜5秒 | ×1(ベース) | typo修正、フォーマット変更、明らかな書き換え |
medium | 5〜15秒 | ×2〜3 | 通常の実装作業(デフォルト推奨) |
high | 15〜45秒 | ×5〜8 | バグ調査、リファクタ計画、設計判断 |
xhigh | 30秒〜2分 | ×10〜15 | 難所の根本原因分析、複雑な競合状態の解析 |
max | 1〜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で整理すると次から効率化される。
モデル切替のベストプラクティス
- セッション開始時に決め打ちしない — 最初は
autoで始めて、難易度が上がったら手動で/model opus+/effort xhighに格上げ - 切替前に
/compact— モデルを変えるとキャッシュが効きづらくなるので、切替前に履歴を圧縮しておくとロスが少ない - 切替後は短いタスクから — Opus に変えた直後にいきなり大きなタスクを投げるとコストが膨らむ。まず小さなタスクで挙動を確認
- 戻すのを忘れない — 重い処理が終わったら
/model sonnetに戻す。/effort xhighのまま typo 修正をすると無駄遣い /costで定期確認 — 1時間に1回など習慣化すると、想定外の高額請求を防げる
原則としては「難しい設計判断や根本原因調査はOpus + xhigh、ルーチンはSonnet + medium」が黄金比。/model と /effort はセットで覚えてね。あと、月初に /cost --month で先月分を振り返るとコスト感覚が育つわよ。
えーっ、Opus で /effort max って 20倍コストもかかるの!? うっかり付けっぱなしにしたら大変だ…
そう、だから max は「年に数回の重大判断」用ね。普段は auto か medium で十分よ。/cost で消費を見ながら、必要な時だけギアを上げる感覚。
コンテキスト・メモリ管理(深掘り)
🌿 主に中級向けセクション
「コンテキスト」って言葉、よく見るんだけど結局なんなの? なんかフワッとしたイメージしかないんだよね…
会話の記憶領域のことね。長く話してるとここが満タンになって動作が重くなるから、整理コマンドが用意されてるの。「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の対象 - 赤のセル: 直近メッセージ — 削れない(圧縮後も残る)
- 典型的な出力
-
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 に追記します。
- 追記タイミング: ユーザーが同じ修正を2回以上した時/「次から○○して」のような指示があった時
- 追記内容: ルール本文 + 学習日時 + 経緯(オプション)
- 削除:
/memory editで手動削除のみ。Claude は自動削除しない - 破棄リスク:
~/.claude/をフォルダ削除すると失われる。重要なルールはCLAUDE.mdに転記推奨
/compact はコンテキストを圧縮しながら会話を続行するコマンドで、本セクションのアルゴリズム解説と合わせて読むと「圧縮で何が起きているか」が一段深く理解できるはずです。基本的な使い方は カテゴリタブの「必須5選」 でも扱っています。
つまり /compact と /clear の使い分けが鍵ってこと? 続けたいか・忘れたいかで決めればいいんだ。
そう。続けたいなら /compact、リセットしたいなら /clear、現状確認は /context。シンプルだけど効果絶大よ。重要な決定は /memory や CLAUDE.md に書いておくと安心ね。
権限管理(深掘り)
🌿 主に中級向けセクション
権限プロンプト多すぎ問題! 毎回「これ実行して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/**) | パス制限付きRead | src/ 配下のみ |
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 🌿 中級
- 何をするか
- ツール使用権限を
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.jsonにadditionalDirectoriesを書くと、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が間違って大事なファイル消しちゃってさ…泣いた
うん、bypassPermissions は deny ルールも効かなくなるから、本当に何でも実行できちゃう。代わりに "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モードに切替(マウス無効、キーボードのみ) | 即時 |
/vim | Vimキーバインドモード切替 | 即時 |
/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
- Claude が書いたコードを別エディタに貼る →
/tui レンダラ別の使用感比較
Claude Code は複数のレンダラ(描画エンジン)を持っており、/tui で切り替えられます。環境により最適な選択が異なります。
| レンダラ | 適した環境 | 特徴 |
|---|---|---|
auto (デフォルト) | すべて | 環境を自動検出して最適なものを選ぶ |
rich | モダンターミナル | 絵文字・色・進捗バー・グリッドを最高品質で表示 |
compact | 狭い画面・SSH越し | 装飾を削って情報密度を上げる |
plain | 古いターミナル・パイプ経由 | ANSIコードなし、機械可読を優先 |
vscode | VSCode統合ターミナル | 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との議論をそのまま技術記事に流用」も可能ね。
ワークフロー実行系(深掘り)
🌳 主に上級向けセクション
ねぇフィア、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] 🌳 上級
- 何をするか
- 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] 🌳 上級
- 何をするか
- 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] 🌿 中級
- 何をするか
- 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行のPR | 500行〜数千行のPR |
| 適したフェーズ | セルフレビュー | マージ前最終確認 |
/security-review の検出パターン具体例
/security-review は OWASP Top 10 + 言語固有の脆弱性パターンを網羅しています。
| カテゴリ | 検出パターン例 |
|---|---|
| SQLインジェクション | 文字列結合でクエリ構築、パラメータバインディング不使用、ORM raw query |
| XSS | dangerouslySetInnerHTML、innerHTML = 、エスケープ処理欠如 |
| 認証バグ | セッション固定、JWT署名検証欠如、平文パスワード保存 |
| シークレット漏洩 | ハードコードされたAPIキー、console.log でのトークン出力、コミット予定の .env |
| CSRF | SameSite 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キー直接設定
-
メリット: SSH/CI でも使える、シンプル# .claude/settings.json に環境変数を参照 { "mcpServers": { "github": { "env": { "GITHUB_TOKEN": "${GITHUB_TOKEN}" } } } }
デメリット: トークン管理が手動、漏洩リスク - 方式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.json の additionalDirectories に書いておくと恒久化できるわよ。「権限管理」セクションで紹介した設定ね。一時的な参照なら /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-invocation | true で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 は「このスキルを呼ぶべきか?」を以下の要素で判定します。優先順位は上ほど強い。
disable-model-invocation: true→ 絶対に自動起動しない(手動のみ)- ユーザーが明示的に
/skill-nameを打った → 確実に起動 - description のキーワード一致度 → 「いつ・何のために」が具体的なほど起動されやすい
- 過去の使用履歴 → 同じ文脈で過去に呼ばれたことがあるとスコアUP
- ユーザーの口調・指示の強さ → 「○○して」と命令形 + スキル description が一致なら起動
- 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 🌿 中級
- 何をするか
- 定義済みサブエージェントの一覧表示・新規作成・編集・削除を対話的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
---
直近の変更を厳格にレビューしてください。
サブエージェントが活きる場面
- 独立した調査タスク — メインのコンテキストを汚さず深掘り調査
- 並列実行 —
/batchで複数のサブエージェントを同時起動 - 専門知識の固定化 — 「セキュリティ専門」「DB設計専門」のように役割を分ける
- 独立した権限プロファイル — メインと違う権限セットで実行
- 異なるモデル使用 — メインはSonnet、サブはOpusで重い分析だけ任せる
あ、サブは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自動実行いいね! もう怒られないぞ〜
いい習慣ね。あと PreToolUse で rm -rf や git push --force をブロックしておくと、Claudeの暴走で大事故…って事態を未然に防げるわ。フックは「忘れる前提の安全網」として効くのよ。
その他便利系
🌿 主に中級向けセクション
他にも便利なコマンドある? 主要カテゴリ以外にも何かありそうだけど。
いくつかあるわ、用途別に紹介ね。本筋を切らずに余談を投げる /btw、別端末を遠隔操作する /remote-control、自分の使用パターンを見せる /insights…日常の小さなストレスを解消してくれる子たちよ。
| コマンド | 役割 | 使い時 |
|---|---|---|
/btw | 「ところで…」追記 | 本筋の作業を中断せずに小ネタ・余談を質問 |
/teleport (/tp) | 別プロジェクト・ファイルへ瞬間移動 | 頻繁に行き来するパスをショートカット化 |
/remote-control (/rc) | 別マシン上のClaudeを操作 | 本番サーバー、別端末への遠隔指示 |
/insights | 使用統計・分析 | 自分のClaude利用パターンを可視化 |
/team-onboarding | チーム新メンバー向けセットアップ | プロジェクトのCLAUDE.md・スキルの一括導入支援 |
/release-notes | Claude 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 🌳 上級
- 何をするか
- プライバシー設定の管理。データ学習への利用可否、コードのアップロード設定、長期記憶の保存範囲などを制御する。
- いつ使うか
- 機密プロジェクトでデータ学習をオプトアウトしたい/企業ポリシーに従って設定したい/個人情報の扱いを厳格化したい。
- 主な設定項目
-
- 会話データの学習利用 ON/OFF
- コードのクラウド送信 ON/OFF
- テレメトリ収集 ON/OFF
- 長期記憶の永続化 ON/OFF
- データ保持期間(30日 / 90日 / カスタム)
/app / /desktop 🌳 上級
- 何をするか
- デスクトップアプリ(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. カスタムスキルが認識されない 🌳 上級
- チェックリスト
-
- パスは
.claude/skills/{name}/SKILL.mdか(個人なら~/.claude/skills/) - YAMLフロントマターの構文が正しいか(インデント、コロン、引用符)
nameが小文字+数字+ハイフンのみか/skillsで一覧確認/reload-pluginsで再読込/doctorで構文エラー検査
- パスは
Q5. Claudeが指示を無視する/違うことをする 🌿 中級
- 解決
-
①
/debugでシステムプロンプトに何が送られているか確認
② CLAUDE.md と現在の指示が矛盾していないか
③ Plan mode(/plan)で計画を立てさせてから実行
④/effort highでじっくり考えさせる
⑤ それでもダメなら/clearで新規セッション
Q6. APIコストが想定より高い 🌿 中級
- 解決
-
①
/costで内訳確認
② キャッシュヒット率が低ければ、長いセッションを維持して/compact活用
③/model haikuや/fastで軽作業を切り分け
④/effort xhighやmaxを放置していないか確認
⑤/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 | セッション終了 | |
| 初期化 | /init | — | CLAUDE.md自動生成 |
/team-onboarding | — | チーム新メンバー導入支援 | |
| セッション | /branch | /fork | 会話を分岐 |
/rewind | /checkpoint /undo | 過去のチェックポイントへ | |
/rename | — | セッションに名前を付ける | |
/sessions | /list | 過去セッション一覧 | |
| モデル | /model | — | 使用モデル切替 |
/effort | — | 推論レベル設定 | |
/fast | — | 高速モード | |
/cost | — | API使用コスト表示 | |
| コンテキスト | /context | — | 使用率の可視化 |
/memory | — | 長期記憶管理 | |
| 権限 | /permissions | /allowed-tools | 権限ルール管理 |
/fewer-permission-prompts | — | 頻出許可を自動allowlist化 | |
| 診断 | /doctor | — | 環境診断 |
/debug | — | デバッグモード | |
/status | — | セッション状態表示 | |
/bug | — | Anthropicにバグ報告 | |
| 表示 | /config | /settings | 設定GUI |
/theme | — | テーマ切替 | |
/color | — | シンタックス配色 | |
/copy | — | 応答をコピー | |
/export | — | 会話をエクスポート | |
/diff | — | 差分表示 | |
/focus | — | フォーカスモード | |
/tui | — | ターミナルUI | |
/vim | — | Vimキーバインド | |
| ワークフロー | /batch | — | 並列タスク実行 |
/simplify | — | 3エージェントレビュー | |
/loop | — | 定期繰返し実行 | |
/schedule | /routines | cron実行 | |
| レビュー | /review | — | PRローカルレビュー |
/security-review | — | 脆弱性チェック | |
/ultrareview | — | クラウド深度レビュー | |
/pr_comments | /pr-comments | PR既存コメント表示 | |
| MCP | /mcp | — | MCPサーバー管理 |
/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直接呼出、プロファイル分離 | 個人/チームに最適化された環境構築 |
カテゴリ別の総まとめ
- 必須5つ:
/help/clear/compact/resume/exit— まずはこれだけ - 初期化:
/init/team-onboarding— 新プロジェクトのスタート地点 - セッション制御:
/branch/rewind/rename/sessions— 大きな変更の安全網 - モデル調整:
/model/effort/fast/cost— 難易度・コストに合わせて最適化 - コンテキスト:
/context/memory— Claude の頭の中を管理 - 権限:
/permissions/fewer-permission-prompts— 安全と効率のバランス - 診断:
/context/doctor/status/debug/bug— 詰まったら現状把握 - 表示:
/diff/copy/theme/vim— 長時間使う上での快適さ - 強力なワークフロー:
/batch/simplify/loop/schedule— 大型タスクと自動化 - レビュー:
/review/security-review/ultrareview/pr_comments— 品質担保 - MCP・プラグイン:
/mcp/plugin/reload-plugins— 外部統合 - スキル・エージェント・フック:
/skills/agents/hooks— Claude を「自分用」にカスタマイズ - 認証・課金:
/login/upgrade/privacy-settings— アカウント管理 - カスタム化:
.claude/skills/{name}/SKILL.mdでプロジェクト固有のコマンドを作れる
明日からの一歩
明日からの一歩としておすすめなのは、/help を毎日1回叩くこと。新しいコマンドが追加されていることに気づけますし、忘れていたコマンドを思い出せます。さらに効果的なのが:
- 初週: 必須5つを使い倒す。特に
/clearvs/compactの使い分けを意識 - 2週目:
/costを1日1回確認し、自分のコスト感覚を育てる - 3週目:
/simplifyを実装後に必ず叩く習慣を作る - 4週目: 自分専用のカスタムスキルを1つ作る(小さくてOK、例: 「git status整形して」)
- 2ヶ月目:
/batchで大きなリファクタを試す - 3ヶ月目:
/scheduleで日次・週次のルーチンを自動化
コマンドを使い分けられるようになると、Claude Code の世界が一段広がります。「ただのチャットボット」から「相棒」へ、Claude との関係が変わるのを体感してください。
ふー、コマンド種類いっぱいあるね…! でも全部覚えなくていいって聞いて安心したよ。まずは /help と /compact から使ってみる!
その姿勢が一番大事よ。慣れてきたら /branch と /rewind も加えてみて。「失敗できる安心感」がClaudeとの作業を何倍も大胆にしてくれるから。
了解! それじゃ今日からコマンド使いになるぞ〜! みんなも一緒にレベルアップしようね! ばいばい〜!