



WithCodeMedia-1-pc
WithCodeMedia-2-pc
WithCodeMedia-3-pc
WithCodeMedia-4-pc




WithCodeMedia-1-sp
WithCodeMedia-2-sp
WithCodeMedia-3-sp
WithCodeMedia-4-sp









生徒Claude Code、基本操作はわかってきたんですけど、もっと“使いこなしてる感”を出したくて…。中級者っぽいテクってありますか?
ペン博士あるよ。いきなり実装させない『プランモード』、作業を分ける『サブエージェント』、定型処理を自動化する『フック』。この3つを軸に、@や!の小ワザ、上級者の作業フロー、FAQまで一気に紹介するね!知ってるかどうかで効率と安全性が大きく変わるよ。
基本操作に慣れたら、次は“使いこなし”の段階です。この記事では、プランモード・サブエージェント・フックという3つの実践テクニックを中心に、Claude Codeを一段深く活用するための豆知識をまとめて紹介します。さらに、@や!といった入力の小ワザ、Escでの中断、セッションの再開、上級者の作業フロー、よくある質問(FAQ)、用語集までを一通り押さえます。どれも知っているかどうかで、作業効率と安全性が大きく変わるテクニックばかりです。
この記事は、「Claude Codeのインストールと基本的な対話はできるが、もっと効率的・安全に使いたい」という方を想定しています。一つずつ手元で試しながら読み進めると、自分の開発スタイルに自然と組み込めるようになります。読み終えるころには、単に“質問して答えをもらう”使い方から、“計画を立てさせ、作業を分担させ、定型処理を仕込む”という一段上の使い方へ、自然と発想が切り替わっているはずです。
Claude Codeを“使いこなす”と一口に言っても、覚えるべきことは多岐にわたります。そこでまず、本記事で扱う内容を3つの軸に整理しておきましょう。これを頭に入れておくと、以降の各セクションがどの目的に効くのかが見通しやすくなります。
| 軸 | 解決したい課題 | 使う機能 |
|---|---|---|
| 計画 | 意図とズレたまま大量に書き換えられるのを防ぐ | プランモード(Shift+Tab) |
| 分担 | 調査や横断確認でメインの会話が散らかる | サブエージェント(/agents・.claude/agents) |
| 自動化 | 毎回手でやる定型処理・危険操作のガード | フック(settings.json) |
この3軸に加えて、@(ファイル参照)・!(シェル実行)・Esc(中断)・–resume(再開)といった小ワザを組み合わせると、操作のテンポが一段上がります。記事の後半では、これらを実際の作業フローにどう組み込むかも具体例で示します。
なお、本記事で紹介する機能・コマンドは、Claude Codeのバージョンや設定によって挙動や表記が一部異なる場合があります。最新の正確な仕様は、必ず公式ドキュメントやアプリ内のヘルプ(後述の /help)で確認してください。
複雑な作業をいきなり任せると、意図とズレたまま大量にコードを書き換えられてしまうことがあります。修正点が10箇所あったのに3箇所しか直っていない、あるいは頼んでいない部分まで変更されている——そんな“手戻り”を防ぐために使うのがプランモードです。
プランモードは、Claude Codeがいきなりコードを変更せず、まず実装の「計画(プラン)」だけを提示するモードです。あなたがその計画を確認し、承認してから初めて実際の編集に進みます。方針を先にすり合わせられるため、大きなズレが起きにくくなります。
イメージとしては、家を建てる前に設計図を見せてもらう感覚です。「どこを・どんな方針で・どの順番で直すのか」を着工前に確認できるので、できあがってから「思っていたのと違う」となるリスクを大きく減らせます。
プランモードへの切り替えは、入力中にShift+Tab を押すことで行えます。Shift+Tabを押すたびにモードが循環的に切り替わり、現在どのモードかが画面に表示されます。プランモードに入っている間は、Claude Codeはファイルへの書き込みを伴う作業を実行せず、調査と計画立案に専念します。
プランモードは、特に次のような“影響範囲が読みづらい作業”で威力を発揮します。
| 場面 | プランモードで防げること |
|---|---|
| 複数ファイルにまたがるリファクタリング | 関係ない箇所まで巻き込んで壊す |
| 既存仕様の変更 | 意図と異なる仕様で実装が進む |
| 大きな新機能の追加 | 設計方針の認識ズレで作り直しになる |
| 不慣れなコードベースの改修 | 依存関係を見落としたまま着手する |
逆に、「タイポを1箇所直す」「コメントを追記する」といった軽微で影響範囲が明確な作業では、プランモードを挟まず通常モードでサッと済ませた方が速いこともあります。作業の重さに応じて使い分けるのがコツです。
調査や横断的な確認など、本筋とは別に進めたい作業があります。これらをメインの会話の中で全部やろうとすると、文脈(コンテキスト)が雑多な情報で埋まり、肝心の本題がぼやけてしまいます。そこで使うのがサブエージェントです。
サブエージェントは、特定の役割を持たせた“専門の別働隊”のようなものです。たとえば「コードベースを調べる調査担当」「テストを書く担当」のように役割を定義しておき、必要なときに呼び出して作業を任せられます。サブエージェントは独立した文脈で動くため、メインの会話を散らかさずに並行して処理を進められるのが大きな利点です。
サブエージェントは、コマンド/agentsから作成・編集・管理できます。/agents を実行すると、エージェントの一覧表示や新規作成のメニューが開き、対話的に役割(システムプロンプト)や使えるツールを設定していけます。初めて作るときは、このコマンドからガイドに沿って進めるのが分かりやすい方法です。
作成したサブエージェントの定義は、プロジェクト直下の.claude/agents/ ディレクトリにファイルとして保存されます(ユーザー全体で共有する場合はホームディレクトリ側に置く形になります)。ファイルとして管理できるため、チームでGit管理して共有したり、別プロジェクトに使い回したりできます。
各エージェント定義ファイルには、おおむね次のような情報を記述します。役割を明確に言語化しておくほど、サブエージェントの動きが安定します。
定義ファイルのイメージは次のとおりです(あくまで構造のイメージで、実際のキーや形式は /agents の生成結果に従ってください)。
---
name: code-explorer
description: コードベースの構造や実装箇所を調査する。実装方針の検討前に呼ぶ。
tools: Read, Grep, Glob
---
あなたはコードベース調査の専門エージェントです。
依頼されたテーマについて関連ファイルを横断的に調べ、
要点だけを簡潔に要約して報告してください。
推測で断定せず、根拠となるファイルパスを必ず添えること。
サブエージェントの真価は、複数の作業を同時に走らせ、要約だけを受け取れる点にあります。代表的な使い方を挙げます。
| シナリオ | サブエージェントの役割 | メインの会話の役割 |
|---|---|---|
| 大規模な調査 | コードベースを横断して関連箇所を洗い出す | 調査結果を受けて方針を決める |
| バグ調査と実装の並走 | 別働隊が原因箇所を特定 | 本筋では別の修正を進める |
| レビュー観点の分業 | セキュリティ観点・可読性観点で別々に確認 | 両方の指摘をまとめて反映 |
| コンテキスト節約 | 重い読み込みを肩代わりさせる | 本題の文脈をきれいに保つ |
特に「調査はサブエージェント、意思決定はメイン」という分業は効果が大きい使い方です。大量のファイルを読む作業を肩代わりさせることで、メインの会話には“要約された結論”だけが返ってくるため、文脈が汚れず、判断に集中できます。
「ファイルを編集したら自動でフォーマッタをかけたい」「特定の危険なコマンドは実行させたくない」「作業の節目に通知を出したい」——こうした自動処理を実現するのがフック(hooks)です。
フックは、Claude Codeが何かを実行する“タイミング”に、あなたが決めた任意のコマンドを差し込める仕組みです。設定ファイルにルールを書いておくと、たとえば「ファイル編集の直後に必ずLintを走らせる」「特定のコマンドが実行されようとしたら止める」といった処理を、毎回手作業なしで効かせられます。
人間が毎回気をつけて行う作業ほど、抜け漏れが起きやすいものです。フックは「忘れずにやる」を仕組みで担保するための機能だと考えると分かりやすいでしょう。
フックはsettings.json(設定ファイル)に記述します。設定の置き場所は用途に応じて複数あり、適切に使い分けます。
| 場所 | 対象範囲 | 主な用途 |
|---|---|---|
| プロジェクト直下の .claude/settings.json | そのプロジェクト・チーム全員 | Git共有してチーム共通のルールを効かせる |
| プロジェクトの .claude/settings.local.json | 自分だけ(そのプロジェクト) | 個人用の設定。Git管理外にする |
| ホームの ~/.claude/settings.json | 自分の全プロジェクト | どこでも効かせたい個人の共通設定 |
フックには差し込めるタイミング(イベント)がいくつかあります。代表的なものを押さえておきましょう。
ファイルを編集するツールが動いた“後”に、整形コマンドを自動実行する例です。これにより、コードの体裁を常に一定に保てます。下記は構造のイメージで、実際のキーや形式は最新の公式ドキュメントに合わせてください。
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "npx prettier --write ."
}
]
}
]
}
}
この設定では、ファイルを編集または新規作成するツールが使われるたびに、Prettierによる整形が自動で走ります。手で整形コマンドを叩く必要がなくなり、レビュー時に「整形だけの差分」が混ざるのも防げます。プロジェクトに合わせて、ESLintやBlack、gofmtなど使い慣れたツールに置き換えてください。
ツール実行の“前”に割り込んで、危険な操作を止める使い方です。たとえば、意図しない破壊的なコマンドが走るのを未然に防ぐガードとして機能させられます。
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "/path/to/guard-script.sh"
}
]
}
]
}
}
ここで指定する guard-script.sh の中で、実行されようとしているコマンドを検査し、危険なパターン(例:強制削除や本番への直接操作など)なら処理を止めるように書きます。スクリプトの終了コードや出力で「許可・ブロック」を制御する形が一般的です。具体的な判定の渡され方や戻り値の仕様は公式ドキュメントで必ず確認してください。
| やりたいこと | タイミング | フックの中身の例 |
|---|---|---|
| コードの体裁を統一 | PostToolUse | Prettier / Black などの整形コマンド |
| 静的解析を毎回実行 | PostToolUse | ESLint / 型チェックの実行 |
| 危険なコマンドを禁止 | PreToolUse | コマンド内容を検査して停止 |
| 作業ログを残す | PostToolUse | 実行内容をファイルに追記 |
フックと並んで「安全に使う」ために知っておきたいのが権限(permissions)の設定です。Claude Codeは、ファイルを編集したりコマンドを実行したりする際に、ツールごとの許可・禁止を設定できます。これを理解しておくと、「うっかり危険な操作が走る」リスクを構造的に下げられます。
コマンド/permissionsを実行すると、現在どのツールが許可・禁止されているかを確認したり、ルールを調整したりできます。たとえば「読み取り系は自由に、書き込みや特定コマンドは確認を挟む」といった運用が可能です。
権限はフックと役割が近いですが、権限は“このツール・このコマンドを許すか”という静的なルール、フックは“実行のタイミングで処理を差し込む”動的な仕組みと整理すると分かりやすいでしょう。両方を組み合わせると、安全性と効率を両立できます。
| 仕組み | 得意なこと | 典型的な使い方 |
|---|---|---|
| 権限(permissions) | ツール単位・コマンド単位の許可/禁止 | 破壊的コマンドの禁止、安全なコマンドの許可 |
| フック(hooks) | 実行前後に任意の処理を差し込む | 自動整形、内容を検査してのブロック |
チームで使う場合は、権限とフックの方針を設定ファイルで共有し、全員に同じガードを効かせるのがおすすめです。属人的な「気をつける」に頼らず、仕組みで安全を担保できます。
3つの軸に加えて、日々の操作テンポを上げる小ワザを押さえておきましょう。どれも一度覚えれば毎日使える定番です。
入力中に@(アットマーク)を打つと、ファイルやディレクトリを指定して文脈に取り込めます。「このファイルを見ながら直して」というときに、パスを正確に渡せるので便利です。補完が効くため、長いパスでも素早く指定できます。口頭で「あのファイル」と曖昧に伝えるより、@で対象を明示した方が、認識のズレが起きにくく結果も安定します。複数ファイルを続けて指定すれば、関連するコードをまとめて文脈に入れることもできます。
行頭で!(エクスクラメーション)を使うと、シェルコマンドを直接実行できます。!git status のように打てば、会話を抜けずに状態確認ができ、その結果を踏まえて続きの指示を出せます。テストやビルドの結果を確認しながら進めたいときに重宝します。
方向性がズレてきた、あるいは想定より大きく動き出した——そんなときはEsc キーで実行中の処理をすぐに止められます。「とりあえず止めて軌道修正する」をためらわずにできるのは、安全に使ううえで非常に重要です。止めてから指示を出し直せば、無駄な作業を最小限にできます。
過去の作業を文脈ごと再開したいときは、起動時の --resume オプションやセッション再開の操作を使います。前回どこまでやったかを引き継いで続けられるため、「昨日の続きから」をスムーズに始められます。長期のタスクを日をまたいで進めるときに効果的です。
| 操作 | 効果 |
|---|---|
| @ファイル名 | 特定ファイルやディレクトリを文脈に取り込む |
| ! コマンド | その場でシェルコマンドを実行する |
| Esc | 実行中の処理を即中断する |
| –resume / 再開操作 | 過去のセッションを文脈ごと再開する |
| /clear | 会話の文脈をリセットして仕切り直す |
| /help | 使えるコマンドやヘルプを確認する |
| /agents | サブエージェントを作成・管理する |
| /permissions | ツール実行の許可・禁止を細かく設定する |
これらは一覧で眺めるより、実際の作業の中で「今ここで使えるな」と気づいて使うことで身につきます。まずは @ と ! と Esc の3つだけでも、毎回意識して使ってみてください。
Claude Codeを長時間使っていると、会話の文脈が膨らんで、話題が混ざってきます。文脈をきれいに保つことは、回答の精度を維持するうえで地味ですが重要なテクニックです。
まったく別のタスクに移るときは、/clear で文脈をリセットして仕切り直すのが有効です。前のタスクの情報が残っていると、無関係な前提を引きずってしまうことがあります。新しい作業は新しい文脈で始めると、判断がクリアになります。
前述のとおり、大量のファイルを読む調査はサブエージェントに肩代わりさせることで、メインの文脈に“要約だけ”を残せます。これは文脈節約のための王道テクニックです。
「このプロジェクトではこの規約を守る」といった恒常的な前提は、毎回会話で伝えるのではなく、プロジェクトのメモリ(指示ファイル)にまとめておくと効率的です。こうしておけば、セッションをまたいでも同じ前提で動いてくれます。コーディング規約・ディレクトリ構成・禁止事項などを書いておくとよいでしょう。
メモリに書いておくと効果が高い項目の例を挙げます。「毎回口頭で伝えていること」を見つけたら、それがメモリに書くべき候補です。
こうした前提を文章化しておくことは、人間の新メンバーが読むオンボーディング資料を整えるのと同じ効果があります。Claude Codeのためだけでなく、チーム全体のドキュメントとしても役立ちます。
ここまでで「プランモード」「サブエージェント」「フック」を個別に見てきました。最後に、3つを組み合わせたときに作業がどう変わるかを、Before/Afterの形で整理しておきましょう。単体で使うよりも、組み合わせることで効果が積み上がるのがポイントです。
| 場面 | 使う前(Before) | 使った後(After) |
|---|---|---|
| 大きな改修の着手 | いきなり実装されて手戻り | プランモードで計画を承認してから着手 |
| 影響範囲の調査 | メインの会話が調査ログで埋まる | サブエージェントに任せ要約だけ受け取る |
| コードの体裁 | 整形漏れの差分がレビューに混ざる | フックで編集後に自動整形され常に統一 |
| 危険コマンド | うっかり実行されるリスク | 権限・フックで未然にブロック |
こうして見ると、3つの機能はそれぞれ「品質(計画)」「効率(分担)」「安全と一貫性(自動化)」という別々の課題に効いていることが分かります。だからこそ、組み合わせると相乗効果が出るのです。一つの機能だけでも効果はありますが、3つがそろうと“安心して任せられる範囲”が一段広がり、より大きな作業を安全に進められるようになります。
ここまでの機能を、実際の作業ではどう組み合わせるのか。一つの機能改修を通した作業フローを例に示します。これはあくまで一例ですが、3つの軸と小ワザがどうつながるかのイメージがつかめるはずです。
このフローの肝は、「いきなり作らせない(計画)」「重い作業は分ける(分担)」「定型は仕込む(自動化)」という3つの考え方が、自然に組み合わさっている点です。最初は全部を意識する必要はありません。まずプランモードだけ、慣れたらフック、というように一つずつ取り入れていきましょう。
| ステップ | 取り入れる機能 | 理由 |
|---|---|---|
| 1 | プランモード(Shift+Tab) | すぐ使えて手戻り防止の効果が一番分かりやすい |
| 2 | @ ・ ! ・ Esc | 日々の操作テンポが上がる定番の小ワザ |
| 3 | PostToolUseフック(自動整形) | 1つ仕込むだけで体裁が常に揃う |
| 4 | サブエージェント | 大きめの調査タスクで効果を体感しやすい |
A. 影響範囲が読みづらい作業や、意図とのズレを避けたい重要な変更で使うのがおすすめです。逆に、タイポ修正のような軽微で明確な作業では、通常モードの方が速いこともあります。作業の重さで使い分けてください。
A. サブエージェントは独立した文脈で動く“専門の別働隊”です。重い調査などを任せると、メインの会話には要約だけが返ってくるため、本題の文脈を汚さずに済みます。役割を狭く定義するほど安定して動きます。
A. フックは任意のコマンドを実行できる強力な仕組みなので、中身のコマンドは自分で内容を理解したものだけを設定してください。まずは「編集後に整形する」といった無害なものから小さく試し、挙動を確認してから広げるのが安全です。
A. できます。プロジェクト直下の .claude/settings.json をGitで共有すれば、チーム全員に同じ自動処理を効かせられます。個人用の設定は別ファイル(ローカル用の設定)に分け、Git管理から外すと混乱しません。
A. Esc キーで実行中の処理をすぐに中断できます。止めてから指示を出し直せば、無駄な作業を最小限に抑えられます。「おかしいと思ったらまず止める」を習慣にすると安全です。
A. 起動時の –resume やセッション再開の操作を使うと、過去の文脈を引き継いで続けられます。長期タスクを日をまたいで進めるときに便利です。
A. アプリ内で /help を実行するか、公式ドキュメントを確認するのが確実です。Claude Codeはバージョンで仕様や表記が更新されることがあるため、迷ったら一次情報を見るクセをつけましょう。
A. 整形対象を絞れば実用的な速度に保てます。毎回プロジェクト全体を整形するのではなく、編集したファイルだけを対象にすると負荷を抑えられます。重く感じる場合は、フックではなくコミット前の一括整形など別のタイミングに寄せる選択肢もあります。まずは小さく試して、体感速度を確かめてから本格導入するのが安全です。
A. 毎回変わらない恒常的な前提はメモリに、その作業限りの指示は会話で渡すのが基本です。「いつも同じことを口頭で伝えているな」と気づいたら、それはメモリに書くサインです。逆に、一度きりの細かい要望までメモリに書くと、かえって肥大化して扱いにくくなるので注意しましょう。
本記事に登場した主な用語を、最後に整理しておきます。読み返すときの参照にしてください。
| 用語 | 意味 |
|---|---|
| プランモード | いきなり実装せず、まず計画だけを提示するモード。Shift+Tabで切り替える |
| サブエージェント | 特定の役割を持たせた別働の作業担当。/agents で管理し .claude/agents に定義する |
| フック(hooks) | 実行の前後などのタイミングに任意のコマンドを差し込む仕組み。settings.json で設定 |
| PreToolUse | ツール実行の“前”に動くフック。条件次第で実行を止められる |
| PostToolUse | ツール実行の“後”に動くフック。自動整形やLintに向く |
| settings.json | Claude Codeの設定ファイル。フックや権限などを記述する |
| コンテキスト(文脈) | 会話に取り込まれている情報のまとまり。多すぎると精度が落ちやすい |
| @(ファイル参照) | ファイルやディレクトリを文脈に取り込む入力の小ワザ |
| !(シェル実行) | 会話を抜けずにシェルコマンドを実行する小ワザ |
| –resume | 過去のセッションを文脈ごと再開する起動オプション |
Claude Codeを使いこなす鍵は、プランモードで方針をすり合わせ、サブエージェントで作業を分担し、フックで定型処理を自動化することです。さらに、@・!・Escといった小ワザや、/clearでの文脈整理、–resumeでの再開を組み合わせれば、安全かつ高速に開発を進められます。
最初からすべてを使う必要はありません。まずはプランモードと@・!・Escの3点セットから始め、慣れてきたら自動整形フック、そしてサブエージェントへと、一つずつ自分の作業に取り入れていきましょう。小さく試して効果を体感することが、定着への一番の近道です。
・計画:Shift+Tabのプランモードで手戻りを防ぐ
・分担:サブエージェントで重い調査を並行処理
・自動化:フックで定型作業と危険コマンドのガードを仕込む
ツールは“使いこなす土台”があってこそ活きます。WithCodeで開発の基礎と設計を体系的に学べば、プランモードもサブエージェントもフックも、その効果を最大限に引き出せます。
WithCodeでは、Web制作の基礎から実務的な技術まで、実践的なスキルを段階的に学べます。
副業・フリーランスが主流になっている今こそ、自らのスキルで稼げる人材を目指してみませんか?
未経験でも心配することはありません。まずは無料カウンセリングで、悩みや不安をお聞かせください!
WithCodeでWeb制作を習得後、フリーランスエンジニアとして活動。HTML/CSS・JavaScript・WordPress案件を中心に年間20件以上の制作実績を持つ。「難しい技術をわかりやすく」をモットーに、初心者〜中級者向けの技術記事を執筆。副業・フリーランス独立を目指す方に向けた情報発信に注力している。
公式サイト より
今すぐ
無料カウンセリング
を予約!