この記事は、Anthropicの Claude Codeチームからのワークフロー上のヒントをまとめたものです。これらの実践は、並列実行、計画、自動化、検証、カスタマイズをカバーしており、チームが毎日コードをより速く配信するために使用しているパターンです。すべてのセットアップは異なるため、自分に合ったものを見つけるために試してみてください。
重要: このガイドで最も影響力のあるヒントは検証です。Claudeが自分の出力をチェックする方法を提供することです。1つの実践だけを採用する場合は、これを選んでください。下記の検証セクションを参照してください。
開始する前に: このガイドの範囲
これらは Claude Codeチームの個々のエンジニアから収集されたパワーユーザーパターンです。その結果:
ここに示されているいくつかのコマンド(例えば
/loop、/dream、/simplify、/btw、/color、/babysit)は、それらのエンジニアが自分たちのために構築したカスタムスラッシュコマンドまたは個人スキルです。これらは組み込まれていません。.claude/commands/にマークダウンファイルをドロップすることで、それらのいずれかを再作成できます。スラッシュコマンドを参照してください。参照されているプラグイン(例えば iMessageプラグインまたは「ralph-wiggum」プラグイン)はコミュニティマーケットプレイスから提供されており、Anthropicによってレビューまたは承認されていません。管理環境でサードパーティプラグインをインストールする前に、管理者に確認してください。
いくつかの機能(オートモード、サンドボックス、リモートコントロール、スケジュール済みクラウドジョブ、音声)はデフォルトでオフになっており、組織のポリシーによって無効にされる可能性があります。ここのコマンドまたはフラグが「利用不可」を返す場合、管理者がワークスペースに対してそれを有効にしていない可能性があります。
このガイドの他のすべてはストック Claude Codeインストールで機能します。不確定な場合は、/helpを実行して、セッションで実際に利用可能なものを確認してください。
目次
セクション | カバー内容 |
並列での作業 | ワークツリー、サブエージェント分離、 |
構築前の計画 | 計画モード、モデル選択、努力レベル |
効果的なプロンプト作成 | プッシュバックプロンプト、 |
Claudeで学習する | 説明的な出力、図、間隔を置いた反復 |
CLAUDE.mdとメモリ |
|
検証 | Chrome拡張機能、デスクトップアプリ、 |
スラッシュコマンド、スキル、サブエージェント | カスタムコマンド、エージェント定義、コードレビューエージェント |
フック | ライフサイクルイベントとパターン |
権限とセキュリティ | 事前承認、オートモード、サンドボックス、長時間実行タスク |
スケジュール済みおよび定期的なタスク |
|
モバイルとリモートコントロール | モバイルアプリ、テレポート、リモートコントロール、ディスパッチ |
ツール統合(MCP) | データ分析、バグ修正、プラグイン |
環境のカスタマイズ | ターミナル、ステータスライン、音声、出力スタイル |
SDKとマルチリポジトリ作業 |
|
並列での作業
複数のセッションを同時に実行する
最大の生産性向上は、3~5個の Claude セッションを並列で実行し、それぞれを独自のgitワークツリーで実行することです。Claude Codeには、ネイティブワークツリーサポートが組み込まれています。
CLIから、
claude --worktree(またはclaude --worktree my_worktree)を実行して、分離されたワークツリーでセッションを開始します。--tmuxを追加して、独自のTmuxセッションで起動します。デスクトップアプリから、[コード]タブを開き、ワークツリーチェックボックスをチェックします。
非gitVCS(Mercurial、Perforce、SVN)の場合、
settings.jsonでWorktreeCreateおよびWorktreeRemoveフックを定義して、同じ分離を取得します。
多くのセッション間で方向性を保つために、ワークツリーに名前を付け、シェルエイリアス(za、zb、zc)を設定してそれらの間をジャンプし、ターミナルタブを色分けし、ターミナル通知を有効にして、Claudeが注意を必要とするときに知ることができます。多くのエンジニアは、ログを読んでクエリを実行するだけのための専用の「分析」ワークツリーを保持しています。
ワークツリー分離を備えたサブエージェント
サブエージェントは分離されたワークツリーで実行することもできます。これは大規模なバッチ変更に特に強力です。エージェントのフロントマターにisolation: worktreeを追加します:
# .claude/agents/worktree-worker.md
---
name: worktree-worker
model: haiku
isolation: worktree
---
その後、自然に促します: 「すべての同期IOを非同期に移行します。変更をバッチ処理し、ワークツリー分離を備えた10個の並列エージェントを起動します。各エージェントは変更をエンドツーエンドでテストしてからPRを作成する必要があります。」
大規模な移行用の/batch
/batchコマンドは移行について質問し、必要に応じて数十、数百以上のワークツリーエージェントに作業を分散します。各エージェントは独立して動作し、独自の変更をテストし、独立してPRを作成します。
> /batch migrate src/ from Solid to React
構築前の計画
複雑なタスクをプランモードで開始する
Shift+Tabを押してプランモードに切り替えます。計画に力を注ぎ、Claudeが一度の実装を行えるようにします。典型的なフローは次のとおりです: プランモードに入る → 計画を改善する → 自動受け入れ編集に切り替える → Claudeが実行します。
チームからのいくつかのパターン:
1つのClaudeに計画を作成させ、2番目のClaudeを起動してスタッフエンジニアとしてレビューさせます。
何か問題が発生した瞬間に、プランモードに戻り、ストリーム中のコース修正ではなく再計画します。
プランモード後、Claudeは作業内容に基づいてセッションに自動的に名前を付けます。また、
claude --name "auth-refactor"で事前に名前を設定することもできます。
すべてにOpusと思考を使用する
Claude Codeチームの理由: 「これまで使用した中で最高のコーディングモデルであり、Sonnetより大きく遅いにもかかわらず、ステアリングが少なくて済み、ツール使用が優れているため、最終的には小さいモデルを使用するよりもほぼ常に高速です。」
計算:ステアリングが少ない+ツール使用が優れている=より大きいモデルでも全体的に高速な結果。
努力レベル
/effortを実行して努力レベルを選択します。4つのレベルは低(トークン数が少ない、高速)、中(デフォルト)、高(トークン数が多い、より高い知能)、および最大です。Claude Codeチームはすべてに高を使用します。難しいデバッグやアーキテクチャの決定で/effort maxに切り替えて、Claudeが必要なだけ推論できるようにします。最大はより速く使用制限を消費するため、セッションごとに有効にします。
効果的にプロンプトする
最初のソリューションを受け入れないでください。Claudeにより良いことをするよう促します。うまく機能するいくつかのプロンプト:
「これらの変更について私に質問し、テストに合格するまでPRを作成しないでください。」Claudeに配送前に理解を検証するよう強制します。
「これが機能することを証明してください。」Claudeに
mainとフィーチャーブランチ間の動作の差分を表示させます。「今知っていることをすべて知っていれば、これを廃棄して優雅なソリューションを実装してください。」平凡な最初の試みの後に役立ちます。
作業を引き継ぐ前に、曖昧さを減らすために詳細な仕様を作成します。より具体的であるほど、出力が良くなります。
副質問用の/btw
Claudeが積極的に作業している間に、/btwを使用して、それを中断することなく簡単な質問をします。シングルターンでツール呼び出しはありませんが、会話の完全なコンテキストがあります。
> /btw what does the retry logic do?
Claudeで学習する
Claude Codeはコード作成だけではなく、説明と教育を行うように構成すると強力な学習ツールです。
/configで「説明的」または「学習」出力スタイルを有効にして、Claudeに変更の理由を説明させます。不慣れなコードを説明するビジュアルHTMLプレゼンテーションを生成します。
新しいプロトコルとコードベースのASCII図を要求します。
間隔を空けた反復スキルを構築します:理解を説明し、Claudeはギャップを埋めるためのフォローアップを質問します。
CLAUDE.mdとメモリ
CLAUDE.mdに投資する
リポジトリルートに単一のCLAUDE.mdファイルを共有し、gitにチェックインし、チーム全体が貢献します。重要な実践: Claudeが何か誤ったことをするたびに、CLAUDE.mdに追加して、同じ間違いを繰り返さないようにします。
修正後、次のように終了します: 「その間違いを繰り返さないようにCLAUDE.mdを更新してください。」Claudeは自分自身のルールを作成するのに非常に優れています。
コードレビューの@claude
/install-github-actionでGitHub Actionをインストールし、PRコメントで@claudeにタグを付けて、レビューの一部としてCLAUDE.mdに学習を追加します:
nit: use a string literal, not ts enum @claude add to CLAUDE.md to never use enums, always prefer literal unions
これは「複合エンジニアリング」です。各修正により、将来のすべてのセッションが改善されます。
自動メモリと自動ドリーム
/memoryを実行してClaude Codeの組み込みメモリシステムを構成します。
自動メモリは、セッション間で設定、修正、パターンを自動的に保存します。ユーザーメモリは
~/.claude/CLAUDE.mdに、プロジェクトメモリは./CLAUDE.mdに移動します。自動ドリームは、過去のセッションを定期的にレビューするサブエージェントを実行します。メモリが蓄積されると、古い仮定、重複するメモ、低信号エントリで混乱する可能性があります。自動ドリームは重要なものを保持し、不要なものを削除し、洞察をより清潔な構造化メモリにマージします。
/dreamを実行して手動でトリガーするか、/memory設定で有効にします。
命名は、REM睡眠が短期記憶を長期記憶に統合する方法にマップされます。
高度: ノートディレクトリ
チームの1人のエンジニアは、すべてのタスクとプロジェクトのノートディレクトリを維持するようClaudeに指示し、すべてのPR後に更新してから、CLAUDE.mdでそれを指します。
検証 — #1のヒント
Claudeに作業を検証する方法を与えることで、最終結果の品質が大幅に向上します。Claudeが独自にフィードバックループを閉じることができれば、出力が正しくなるまで反復します。
検証はドメインごとに異なります。bashコマンド、テストスイート、シミュレーター、ブラウザテストですが、原則は同じです。ドメイン固有の検証に投資します。
Chrome拡張機能
フロントエンド作業の場合は、Claude Code Chrome拡張機能をインストールします。他のエンジニアのように考えてください。ウェブサイトを構築するよう誰かに依頼しても、ブラウザを使用させない場合、見栄えは良くなりますか?おそらくそうではありません。ブラウザを使用すれば、見栄えが良くなるまで反復します。
チームはウェブコードで作業するたびにChrome拡張機能を使用します。code.claude.com/docs/en/chromeでChromeまたはEdge用にダウンロードしてください。
ウェブサーバー用のデスクトップアプリ
Claude Desktopアプリは、組み込みブラウザでWebサーバーを自動的に起動してテストする機能をバンドルしています。CLIやVS CodeのChrome拡張機能を使用して同様のセットアップを行うか、Desktopアプリを直接使用することができます。
/simplify(コード品質向上用)
任意のプロンプトの後に/simplifyを追加します。変更されたコードを再利用性、品質、効率性、およびCLAUDE.md準拠について確認する並列エージェントを実行します。すべて1回のパスで実行されます。
> hey claude make this code change then run /simplify
スラッシュコマンド、スキル、およびサブエージェント
繰り返されるワークフロー用のスキル
1日に複数回実行する場合は、スキルまたはコマンドに変換します。スキルは.claude/commands/にチェックインされ、チームと共有されます。いくつかのアイデア:
すべてのセッションの終了時に実行して重複したコードを検出する
/techdebtコマンド。7日間のSlack、GDrive、Asana、GitHubを1つのコンテキストダンプに同期するコマンド。
dbtモデルを作成し、コードをレビューし、開発環境でテストするアナリティクスエンジニアエージェント。
スラッシュコマンドにはインラインBashを含めることができます。これにより、追加のモデル呼び出しなしに(git statusなど)情報を事前計算できます。
PRワークフロー用のサブエージェント
サブエージェントを最も一般的なPRワークフローの自動化と考えてください。.mdファイルを.claude/agents/にドロップします:
.claude/agents/ build-validator.md code-architect.md code-simplifier.md verify-app.md
各エージェントは、カスタム名、色、ツールセット、許可/禁止ツール、権限モード、およびモデルを持つことができます。settings.jsonに"agent"を追加するか、claude --agent <name>を使用してメイン会話のデフォルトエージェントを設定します。/agentsを実行して開始します。
カスタムシステムプロンプト用の--agent
カスタムエージェントは、しばしば見落とされる強力なプリミティブです。.claude/agentsで新しいエージェントを定義し、claude --agent=<name>を実行します。読み取り専用エージェントの例:
# .claude/agents/ReadOnly.md --- name: ReadOnly description: Read-only agent restricted to the Read tool only color: blue tools: Read --- You are a read-only agent that cannot edit files or run bash.
実行時のサブエージェントの活用
「サブエージェントを使用」を追加して、Claudeが問題に対してより多くの計算を投入したいリクエストに対応します。
個別のタスクをサブエージェントにオフロードして、メインエージェントのコンテキストウィンドウをクリーンで焦点を絞った状態に保ちます。
権限リクエストをフックを介してOpusにルーティングします。攻撃をスキャンして安全なものを自動承認させます。
コードレビューエージェント
PRが開かれると、Claudeは異なる懸念事項(ロジックエラー、セキュリティ問題、パフォーマンス低下)に焦点を当てた複数のエージェントをディスパッチでき、インラインコメントを投稿できます。Anthropicチームはこれを最初に自分たちのために構築しました。エンジニアあたりのコード出力が大幅に増加し、レビューがボトルネックでした。
フック
フックを使用すると、エージェントライフサイクルのポイントで決定論的にロジックを実行できます。開始するにはClaudeにフックを追加するよう依頼してください。
一般的なフックパターン
イベント | ユースケース |
| Claudeを起動するたびに動的にコンテキストをロードします |
| モデルが実行するすべてのbashコマンドをログに記録します |
| Write/Edit後にコードを自動フォーマットしてCI障害を防止します |
| 権限プロンプトをSlack、WhatsApp、またはOpusにルーティングしてレビューします |
| 長いタスクで決定論的チェックを実行するか、Claudeに続行するよう促します |
| コンテキスト圧縮後に重要な指示を再挿入します |
自動フォーマット用のPostToolUseフックの例:
"PostToolUse": [
{
"matcher": "Write|Edit",
"hooks": [{ "type": "command", "command": "bun run format || true" }]
}
]
権限とセキュリティ
一般的なコマンドを事前承認します
/permissionsを実行して、一般的な安全なコマンドを事前に許可し、チームの.claude/settings.jsonにチェックインします。これは権限をスキップするよりも推奨される代替案です。プロンプトが少なくなり、監査可能な許可リストが保持されます。完全なワイルドカード構文がサポートされています。"Bash(bun run *)"または"Edit(/docs/**)"を試してください。
Claude Codeの権限システムは、プロンプトインジェクション検出、静的分析、サンドボックス化、および人間の監視をレイヤー化します。安全なコマンドの小さなセットがボックスから事前承認されます。/permissionsを介して追加するすべてのものは、そのベースラインに追加されます。
自動モード
自動モードでは、Claudeがあなたに代わって権限決定を下すことができます。分類器は実行前に各アクションを評価します。安全な操作は自動承認され、リスクのあるものはまだフラグが立てられます。claude --enable-auto-modeで有効にするか、セッション中にShift+Tabで切り替えます(計画モード→自動モード→通常モード)。
サンドボックス化
/sandboxを実行して、Claude Codeのオープンソースサンドボックスランタイムにオプトインします。マシン上で実行され、ファイルとネットワークの分離の両方をサポートし、セキュリティを向上させながら権限プロンプトを削減します。3つのモードが利用可能です:
自動許可付きサンドボックスBashTool
通常の権限付きサンドボックスBashTool
サンドボックスなし
長時間実行タスク
非常に長時間実行されるタスクの場合、Claudeが中断なく動作できることを確認してください。推奨されるアプローチ:
完了時にバックグラウンドエージェントで検証するようClaudeに指示します。
エージェント
Stopフックを使用して決定論的チェックを行います(監査可能なワークフローに推奨)。「ralph-wiggum」コミュニティプラグインを使用します。
サンドボックス環境の場合、--permission-mode=dontAskまたは--dangerously-skip-permissionsを使用してブロックを回避します。
スケジュール済みおよび定期的なタスク
ローカル定期タスク用の/loop
/loopは、最大3日間ローカルで定期的なタスクをスケジュールします。Claude Codeチームが実行する例をいくつか示します:
/loop 5m /babysit # auto-address review, rebase, shepherd PRs /loop 30m /slack-feedback # auto put up PRs for Slack feedback /loop 1h /pr-pruner # close out stale PRs
Cloud Jobsの/schedule
/loopとは異なり、スケジュール済みジョブはクラウドで実行されます。ノートパソコンを閉じても動作し続けます。
> /schedule a daily job that looks at all PRs shipped since yesterday and updates our docs based on the changes. Use the Slack MCP to message #docs-update with the changes
注:最も一般的なワークフローをスキル+ループに変換することを試してみてください。これは強力です。
モバイルおよびリモートコントロール
スマートフォンから作業する
Claude Codeにはモバイルアプリがあります。iOS/Android用のClaudeアプリをダウンロードしてコードタブをタップしてください。iMessageプラグインも利用可能です(/plugin install imessage@claude-plugins-official)。任意のAppleデバイスからタスクを送信できます。
デバイス間でセッションをテレポートする
モバイル、ウェブ、デスクトップ、ターミナル間でセッションを移動します:
claude --teleport(またはセッション内から/teleport)は、クラウドセッションをマシンで続行します。/remote-controlを使用すると、スマートフォンまたはウェブからローカルセッションを制御できます。claude remote-controlを使用すると、モバイルアプリから新しいローカルセッションを生成できます。利用可能:v2.1.74以上のMax、Team、およびEnterpriseプラン。
/configで「すべてのセッションのリモートコントロールを有効にする」を有効にすることもできます。
Claude Cowork Dispatch
Dispatchは、Claude Desktopアプリ用のセキュアなリモートコントロールです。許可があれば、MCPs、ブラウザ、コンピュータを使用できます。Slackとメールの確認、ファイル管理、外出中のラップトップでの作業に便利です。
ツール統合(MCP)
Claudeを既存のツールに接続して、Slackを検索したり、BigQueryを実行したり、Sentryログを取得したりできます。
{
"mcpServers": {
"slack": {
"type": "http",
"url": "https://slack.mcp.anthropic.com/mcp"
}
}
}
データと分析
bq CLIを使用してメトリクスをリアルタイムで取得および分析するようClaudeに指示します。BigQueryスキルをコードベースにチェックインしてください。Claude Codeチームの見方:「個人的には、過去6か月以上SQLを1行も書いていません。」これは、CLIやMCP、またはAPIを持つすべてのデータベースで機能します。
バグ修正
Slack MCPを有効にして、バグスレッドをClaudeに貼り付けて、「修正」と言うだけです。コンテキストスイッチはゼロです。または「失敗しているCIテストを修正してください」と言って、方法をマイクロマネジメントしないでください。Claudeをdockerログに向けて、分散システムのトラブルシューティングを行います。これは驚くほど得意です。
プラグイン
プラグインは、LSP(すべての主要言語で利用可能)、MCP、スキル、エージェント、カスタムフックをバンドルします。公式のAnthropicプラグインマーケットプレイスからインストールするか、組織用の内部マーケットプレイスを立ち上げてから、マーケットプレイスリファレンスをsettings.jsonにチェックインして、すべての開発者に自動的に追加されるようにします。/pluginを実行して開始します。
環境のカスタマイズ
ターミナル設定
/configを実行してライト/ダークモードを設定し、/terminal-setupを実行してIDE ターミナル、Apple Terminal、Warp、またはAlacrittyでShift+Enterを改行に有効にします。/vimを実行してVimモードを使用します。チームは同期レンダリングと24ビットカラーのためにGhosttyを推奨しています。
ステータスライン、色、キーバインディング
/statuslineは、.bashrc/.zshrcに基づいてカスタムステータスラインを生成します。モデル、ディレクトリ、残りのコンテキスト、コスト、またはその他の情報を表示します。/colorはプロンプト入力色を変更します。3~5個のセッションが開いていて、一目で区別する必要がある場合に便利です。/keybindingsは任意のキーを再マップします。設定はライブリロードされ、~/.claude/keybindings.jsonに保存されます。
音声入力
音声モードはすべてのユーザー(Claude Code DesktopおよびCoworkを含む)が利用できます。Claude Codeチームのコーディングのほとんどは音声で行われています。音声は入力するより約3倍速く、その結果、プロンプトがより詳細になります。
CLI:
/voiceを実行してスペースバーを押し続けますデスクトップ:音声ボタン(マイクアイコン)を押します
iOS:システム設定で音声入力を有効にします
macOS ネイティブ:任意のターミナルでシステム音声入力にfn×2を押します
ウェブセッション
ターミナルを超えて、claude.ai/codeで追加のセッションを実行します。&コマンドを使用してセッションをバックグラウンドにするか、--teleportフラグを使用してローカルとウェブ間でコンテキストを切り替えます。
出力スタイル
/configを実行して出力スタイルを設定します。説明的では、Claudeが作業中にフレームワークとパターンを説明します(新しいコードベースに最適)。学習では、Claudeが変更をガイドします。Claudeの声を調整するためにカスタムスタイルを作成することもできます。
スピナー動詞
Claude Codeを個人的に感じさせるのは小さなことです。スピナー動詞をカスタマイズして、デフォルトリストに追加または置き換えるようClaudeに依頼してください。settings.jsonをソース管理にチェックインして、チームと動詞を共有します。
すべてをカスタマイズする
Claude Codeはそのままで素晴らしく動作するように構築されていますが、カスタマイズする場合は、settings.jsonをgitにチェックインして、チーム全体が恩恵を受けるようにしてください。設定はコードベース単位、サブフォルダ単位、ユーザー単位、またはエンタープライズ全体のポリシーを通じてサポートされています。
数字で見ると:数十の設定と環境変数があります。設定リファレンスを参照してください。settings.jsonの"env"フィールドを使用して、ラッパースクリプトを回避します。
SDKとマルチリポジトリの作業
より高速なSDK起動のための--bare
デフォルトでは、claude -p(およびTypeScript/Python SDK)はローカルのCLAUDE.mdファイル、設定、およびMCPを検索します。非対話的な使用の場合、通常は--system-prompt、--mcp-config、--settingsなどを通じてこれらを明示的に指定する必要があります。起動を約10倍高速化するために--bareを追加します:
claude -p "summarize this codebase" \
--output-format=stream-json \
--verbose \
--bare
注:これはSDKが最初に構築されたときの設計上の見落としでした。将来のバージョンでは、デフォルトが--bareに反転します。現在のところ、フラグでオプトインしてください。
マルチリポジトリ作業用の--add-dir
リポジトリ全体で作業する場合、--add-dir(または/add-dir)を使用して、Claudeに追加フォルダへのアクセスと権限を付与します。または、"additionalDirectories"をチームのsettings.jsonに追加して、常にそれらを含めます。
セッションのフォーク
既存のセッションから分岐するには、セッション内から/branchを実行するか、CLIからclaude --resume <session-id> --fork-sessionを実行します。
クラウド環境のセットアップスクリプト
Claude CodeのウェブおよびデスクトップでAセットアップスクリプトを追加します。これは新しいクラウドセッションの前に実行されます。依存関係をインストールし、設定を構成し、環境変数を設定します。スクリプトは再開時にスキップされます。
付録:クイックリファレンス
領域 | 主要コマンド |
並列作業 |
|
計画 | Shift+Tab、 |
メモリ |
|
検証 | Chrome拡張機能、 |
自動化 |
|
フック |
|
権限 |
|
スケジューリング |
|
リモート |
|
カスタマイズ |
|
SDK&マルチリポジトリ |
|
付録:関連記事
リソース | リンク |
フックリファレンス | |
サブエージェントとカスタムエージェント | |
スケジュール済みタスク | |
Chrome拡張機能 |
Claude Codeは頻繁に更新されます。内部配布前に、code.claude.com/docsに対してバージョン固有の詳細を確認してください。
