はじめに
Claude Codeを使い始めたものの、「なんとなく使っている」という方は多いのではないでしょうか。
今回は、Anthropic x Forum Ventures ハッカソンで優勝したエンジニアが、10ヶ月間の実践で培った Claude Code の完全セットアップガイドを紹介します。Skill、Hook、Sub Agent、MCP、Plugin の設定から、効率的なワークフローまでを網羅的に解説します。
このガイドを読めば、Claude Codeの真のポテンシャルを引き出し、開発効率を飛躍的に向上させることができます。
全てを真似する必要はないです。
自分に必要だと思った設定をして、それが良いかどうか見極めながら自分専用にどんどんチューニングしていくことをおすすめします。
1. Skill と Slash Command – プロンプトの短縮形
Skillとは何か
Skillは、特定のスコープやワークフローに制限されたルールです。繰り返し使うプロンプトを短縮形として登録することで、毎回同じ指示を書く手間を省けます。
実用的なSkill例
以下のような Skill を作成しておくと便利です:
| Skill名 | 用途 |
|---|---|
/refactor-clean | コードのリファクタリング |
/tdd | テスト駆動開発のサポート |
/e2e | E2Eテストの作成 |
/test-coverage | テストカバレッジの確認・向上 |
保存場所
- グローバルSkill:
~/.claude/skills/ - プロジェクト固有:
.claude/skills/ - Slash Command:
~/.claude/commands/または.claude/commands/
Skill作成例
---
name: refactor-clean
description: コードをクリーンにリファクタリング
---
以下の原則に従ってコードをリファクタリングしてください:
1. 単一責任の原則を守る
2. 関数は20行以内を目安に
3. 変数名は意図が明確なものに
4. 重複コードを抽出して共通化
5. コメントは「なぜ」を説明する
2. Hooks – 自動化トリガーで効率化
Hookの種類と用途
Hookは、特定のイベント発生時に自動的に処理を実行する仕組みです。
| Hook種類 | タイミング | 主な用途 |
|---|---|---|
| PreToolUse | ツール実行前 | 検証、リマインダー表示 |
| PostToolUse | ツール終了後 | フォーマット、フィードバック |
| UserPromptSubmit | メッセージ送信時 | 入力の前処理 |
| Stop | Claude応答完了時 | 後処理、通知 |
| PreCompact | コンテキスト圧縮前 | 重要情報の保存 |
| Notification | 権限リクエスト時 | カスタム通知 |
実践的なHook設定例
長時間コマンド用のtmuxリマインダー
{
"PreToolUse": {
"matcher": "tool == \"Bash\" && tool_input.command matches \"(npm|pnpm|yarn|cargo|pytest)\"",
"hooks": [{
"type": "command",
"command": "if [ -z \"$TMUX\" ]; then echo '[Hook] Consider tmux for session persistence' >&2; fi"
}]
}
}
このHookは、npm installやpytestなど時間のかかるコマンド実行前に、tmuxの使用を促すリマインダーを表示します。
不要ファイル作成のブロック
{
"PreToolUse": {
"matcher": "tool == \"Write\" && tool_input.file_path matches \".*\\.md$\" && !tool_input.file_path matches \"(README|CHANGELOG|docs/)\"",
"hooks": [{
"type": "block",
"message": "不要なMarkdownファイルの作成を検出しました"
}]
}
}
JS/TSファイルの自動フォーマット
{
"PostToolUse": {
"matcher": "tool == \"Write\" && tool_input.file_path matches \".*\\.(js|ts|jsx|tsx)$\"",
"hooks": [{
"type": "command",
"command": "npx prettier --write \"${tool_input.file_path}\""
}]
}
}
3. Sub Agent – タスクの委譲と並列化
Sub Agentの概念
Sub Agentは、メインのオーケストレーターが限定されたスコープでタスクを委譲する仕組みです。各Sub Agentは特定の役割に集中し、効率的な作業分担を実現します。
推奨Sub Agent構成
| Sub Agent | 役割 | 許可ツール |
|---|---|---|
planner.md | 計画立案 | Read, Grep |
architect.md | 設計判断 | Read, Grep, Glob |
tdd-guide.md | TDD支援 | Read, Write, Bash |
code-reviewer.md | コードレビュー | Read, Grep |
security-reviewer.md | セキュリティ検証 | Read, Grep |
Sub Agent設定のポイント
- スコープを限定する – 各Sub Agentには必要最小限のツールのみ許可
- 役割を明確に – 曖昧な責務は避ける
- 独立性を保つ – Sub Agent間の依存を最小化
4. MCP(Model Context Protocol)- 外部サービス連携
MCPとは
MCPは、Claude Codeを外部サービスに直接接続するプロトコルです。これにより、データベース操作やAPI呼び出しをシームレスに行えます。
推奨MCPサーバー
| カテゴリ | MCP | 用途 |
|---|---|---|
| 開発 | github, vercel, railway | Git操作、デプロイ |
| データ | supabase, clickhouse | DB操作 |
| 検索 | firecrawl | Web検索・スクレイピング |
| AI | sequential-thinking | 複雑な推論 |
| メモリ | memory | 長期記憶 |
コンテキスト管理の重要性
重要: MCPは便利ですが、コンテキストウィンドウを消費します。
推奨ガイドライン:
- 設定するMCP: 20〜30個
- 同時有効化: 10個以下
- アクティブツール: 80個以下
使用しないMCPは必ず無効化しましょう。
MCP設定例
{
"mcpServers": {
"github": {
"type": "http",
"url": "https://mcp.github.com"
},
"supabase": {
"type": "stdio",
"command": "npx",
"args": ["-y", "supabase-mcp-server"]
}
}
}
5. Plugin – パッケージ化された機能拡張
必須Plugin
| Plugin | 機能 |
|---|---|
mgrep@Mixedbread-Grep | ripgrepより優れたセマンティック検索 |
typescript-lsp@claude-plugins-official | TypeScriptインテリジェンス |
mgrepの威力
mgrepは、従来のripgrep/grepを大幅に上回る検索能力を持ちます。
# ローカルファイル検索
mgrep "function handleSubmit"
# Web検索
mgrep --web "Next.js 15 app router changes"
# 自然言語での意図検索
mgrep "認証はどこで設定されている?"
6. キーボードショートカット – 操作効率の最大化
必須ショートカット一覧
| ショートカット | 機能 |
|---|---|
Ctrl+U | 行全体を削除 |
! | bashコマンドプレフィックス |
@ | ファイル検索 |
/ | Slash Commandを開始 |
Alt+Enter | 複数行入力 |
Shift+Tab | 思考表示の切り替え |
Esc Esc | Claude中断/コード復元 |
7. 並列ワークフロー – 生産性の飛躍的向上
/fork による会話フォーク
/fork コマンドで現在の会話をフォークし、別のアプローチを並列で試すことができます。
Git Worktrees との連携
# Worktreeの作成
git worktree add ../project-feature-a feature-a
# 別ターミナルで並列作業
cd ../project-feature-a
claude
これにより、競合を気にせず複数の機能を同時開発できます。
8. 優勝者のセットアップ公開
MCPサーバー構成(14個設定、5-6個有効化)
常時有効:
- github
- firecrawl
- supabase
- memory
- sequential-thinking
必要時有効化:
- vercel, railway
- cloudflare-docs, cloudflare-workers
- clickhouse
- magic
主要Hook設定
- 長時間実行コマンド用のtmuxリマインダー
- 不要な.mdファイル作成をブロック
- JS/TSをPrettierで自動フォーマット
- console.logの警告表示
9. 成功のための5つの原則
1. 複雑にしすぎない
設定は「微調整」として扱いましょう。過度な設定は逆効果です。
2. コンテキストウィンドウは貴重
未使用のMCPとPluginは必ず無効化。コンテキストの無駄遣いは性能低下に直結します。
3. 並列実行を活用
会話のフォーク、Git worktreesで並列作業を行い、待ち時間を削減。
4. 繰り返しを自動化
フォーマット、リント、リマインダーはHookで自動化。手動作業を減らしましょう。
5. Sub Agentのスコープを限定
限られたツール = 集中した実行。責務を明確にすることで品質が向上します。
まとめ
Claude Codeは、適切に設定することで開発効率を劇的に向上させることができます。
今日から始められるアクション:
- よく使うプロンプトをSkillとして登録
- PrettierなどのフォーマッターをPostToolUse Hookに設定
- 使用頻度の低いMCPを無効化
- mgrepプラグインをインストール
ぜひ、このガイドを参考に自分だけの最強セットアップを構築してください。

コメント