プロフェッショナル環境構築
Claude Codeの開発者Boris Cherny自身のワークフローを再現し、VS Code統合、高度なCLAUDE.md設計、Self-Improvement Loopを駆使した最強の開発環境を構築します。
Boris Cherny流ワークフロー
Claude Code開発者であるBoris Chernyは、自身の日常開発で10〜15の並列セッションを同時運用しています。このセクションでは、彼のワークフローを分解し、再現可能な形で解説します。
並列セッション戦略
Borisは1つの大きなタスクを分解し、各サブタスクを独立したClaude Codeセッションで同時進行させます。
- 10〜15セッション同時運用 — git worktreeを使って各セッションに独立した作業ディレクトリを割り当て、コンテキスト汚染をゼロにする
- Opusモデルの活用 — 複雑な設計判断やアーキテクチャ検討にはOpusを使い、定型的なコード生成にはSonnetを使い分ける
- セッション分離の原則 — 「1セッション = 1機能 = 1ブランチ」を徹底し、認知的負荷を最小化
# メインリポジトリから独立した作業ディレクトリを作成
git worktree add ../project-feature-auth feature/auth
git worktree add ../project-feature-api feature/api
git worktree add ../project-refactor-db refactor/db
# 各ディレクトリで独立したClaude Codeセッションを起動
cd ../project-feature-auth && claude
cd ../project-feature-api && claude
cd ../project-refactor-db && claudecode-simplifier / verify-appエージェント
Borisは専用のカスタムエージェントを定義し、特定の役割に特化させています。
- code-simplifier — コードの複雑度を下げることに特化。冗長なロジック、過剰な抽象化、不要な依存関係を検出して簡素化する
- verify-app — 変更後のアプリケーション全体の動作を検証。テスト実行、型チェック、lintを自動実行して品質を担保する
あなたはコードの複雑度を下げる専門エージェントです。
## 原則
- 関数は20行以内に保つ
- ネストは3レベル以内
- 不要な抽象化レイヤーを除去
- 早期リターンパターンを適用
## 手順
1. 対象ファイルの複雑度を分析
2. リファクタリング計画を提示
3. 承認後に実行
4. テストが通ることを確認Living Documentation
Borisはドキュメントを「生きた文書」として扱い、コードの変更と同時に自動更新させます。
- CLAUDE.mdの自動更新 — Hooksで重要な変更を検知し、CLAUDE.mdの関連セクションを自動更新
- アーキテクチャ図の同期 — ディレクトリ構造やモジュール依存関係が変わったら自動でドキュメントを更新
- decisions.logの蓄積 — 重要な設計判断をログとして残し、後からの振り返りを可能にする
Living Documentationの効果は累積的です。最初の1週間は手間に感じますが、1ヶ月後には「なぜこの設計にしたのか」を即座に確認できるようになり、チーム全体の生産性が向上します。
VS Code統合の最適化
Claude CodeのVS Code拡張を最大限に活用するための設定と運用方法を解説します。
拡張機能のインストールと基本設定
VS Code拡張マーケットプレイスから「Claude Code」を検索してインストールします。インストール後、以下の設定を最適化してください。
- インラインdiffの活用 — Claude Codeが提案する変更がエディタ内で直接diffとして表示される。Accept/Rejectを1クリックで操作可能
- ターミナル統合 — VS Code内蔵ターミナルでClaude Codeを起動すると、エディタとの連携がシームレスになる
- ステータスバー表示 — トークン使用量やセッション状態が常時表示される
@メンション活用
VS Code拡張では、@を使って特定のファイルやシンボルを参照できます。
# ファイルを明示的に参照
@src/auth/login.ts このファイルのバリデーションロジックを改善して
# 複数ファイルを参照
@src/api/routes.ts @src/middleware/auth.ts
この2つのファイルの連携を分析して
# ターミナル出力を参照
@terminal 直前のエラーの原因を分析して@メンションでファイルを指定すると、Claude Codeがそのファイルの全内容をコンテキストに含めます。大きなファイルの場合はコンテキストを圧迫するため、必要な部分だけを参照するよう意識してください。
キーバインド設定
効率的な操作のために、以下のキーバインドを設定することを推奨します。
| 操作 | デフォルト | 推奨 |
|---|---|---|
| Claude Codeパネルを開く | Ctrl+Shift+P |
Ctrl+L |
| インラインdiffを承認 | Ctrl+Enter |
そのまま |
| Plan Mode切替 | Shift+Tab |
そのまま |
| セッションクリア | なし | Ctrl+Shift+K |
高度なCLAUDE.md設計
CLAUDE.mdを200行以内に保ちつつ、プロジェクトの全情報をClaude Codeに伝えるための高度な設計パターンを解説します。
Progressive Disclosure実践
情報を階層化し、必要な時に必要な情報だけがロードされる構造を作ります。
# CLAUDE.md
## プロジェクト概要
Next.js 15 + TypeScript + Prisma のSaaSアプリケーション。
## 最重要ルール
- TypeScript strict modeを厳守
- テストカバレッジ80%以上を維持
- APIレスポンスは必ずzodでバリデーション
## ディレクトリ構成
src/
app/ # Next.js App Router
components/ # UIコンポーネント
lib/ # ユーティリティ
server/ # サーバーサイドロジック
## 詳細ガイド
- コーディング規約: .claude/rules/coding.md
- テスト方針: .claude/rules/testing.md
- デプロイ手順: docs/deploy-guide.md
- API設計: docs/api-design.md@import活用
@importディレクティブを使って、CLAUDE.mdから外部ファイルを参照できます。これにより、本体を簡潔に保ちつつ詳細な指示を提供できます。
# コーディング規約
## 命名規則
- コンポーネント: PascalCase (e.g., UserProfile)
- 関数: camelCase (e.g., getUserById)
- 定数: UPPER_SNAKE_CASE (e.g., MAX_RETRY_COUNT)
- ファイル: kebab-case (e.g., user-profile.tsx)
## 禁止パターン
- any型の使用禁止(unknown + type guardを使う)
- console.logの本番コード混入
- 非同期処理でのtry-catch省略path-specific rules
.claude/rules/にglobs指定付きのルールファイルを配置することで、特定のパスにのみ適用されるルールを定義できます。
---
globs: src/components/**/*.tsx, src/app/**/*.tsx
---
# フロントエンドルール
- Server Componentをデフォルトとし、必要な場合のみ"use client"を宣言
- スタイリングはTailwind CSSを使用
- アクセシビリティ: aria-labelを必須とする---
globs: src/server/**/*.ts, src/app/api/**/*.ts
---
# APIルール
- 全エンドポイントでzodバリデーションを実装
- エラーレスポンスはRFC 7807形式に準拠
- レート制限を必ず設定200行以内を保つテクニック
- ルールの分割 — カテゴリ別に
.claude/rules/へ移動(coding, testing, deploy, security) - ドキュメントへの委譲 — 詳細な手順は
docs/に置き、CLAUDE.mdからパスだけ記載 - 月次棚卸し — 古い・重複するルールを定期的に削除
- 具体例は最小限 — 1ルールにつき1例まで。多数の例が必要なら別ファイルへ
CLAUDE.mdが大きすぎると、Claude Codeのコンテキストウィンドウを圧迫し、実際のコード分析に使える領域が減ります。「短く、的確に」が鉄則です。
Self-Improvement Loop実践
Claude Codeの運用で得た学びを体系的に蓄積し、継続的に開発環境を改善するサイクルです。
昇格サイクル: lessons.md → CLAUDE.md → Hooks
学びの重要度に応じて、適切なレベルに「昇格」させます。
lessons.md(気づきの記録)
セッション中に気づいたパターンや失敗を記録。「このAPIは必ずnullチェックが必要」「テストはモック不要で書ける」など。
CLAUDE.md(ルール化)
3回以上同じ気づきが出たら、CLAUDE.mdまたは.claude/rules/に正式なルールとして昇格。「APIレスポンスは必ずnullチェックする」をルール化。
Hooks(自動強制)
ルール違反が繰り返される場合、Hooksで自動的にチェック・ブロックする仕組みに昇格。「nullチェック漏れを自動検出して警告」。
具体例: 型安全性の改善サイクル
## 2026-03-20
- PrismaのfindFirstの戻り値がnull許容であることを忘れて
ランタイムエラーになった。型チェックを徹底する必要あり。## データベースクエリ
- findFirst/findUniqueの戻り値は必ずnullチェックする
- 存在しない場合のエラーハンドリングを明示的に実装する{
"hooks": {
"PostWrite": [{
"matcher": "**/*.ts",
"command": "grep -n 'findFirst\\|findUnique' $FILE | grep -v 'null\\|undefined\\|!= null\\|!== null' && echo 'WARNING: nullチェック漏れの可能性' || true"
}]
}
}Self-Improvement Loopは「3回ルール」で運用するのが効果的です。同じ問題が3回発生したらルール化、ルール違反が3回発生したらHook化。過剰な自動化を避けつつ、確実に品質を向上させます。
GitHub推奨プロジェクト導入手順
Claude Codeの生産性を高めるGitHubコミュニティの推奨プロジェクトと、その具体的な導入手順を解説します。
shanraisshan/claude-code-plugins
コミュニティで最も人気のあるプラグインコレクションです。
# プラグインリポジトリをクローン
git clone https://github.com/shanraisshan/claude-code-plugins.git ~/.claude-plugins
# CLAUDE.mdにプラグインパスを追加
echo "## Plugins" >> CLAUDE.md
echo "~/.claude-plugins を参照" >> CLAUDE.mdsuperpowers
Claude Codeに高度なワークフロー機能を追加するプラグインです。Plan Mode強化、自動テスト実行、コンテキスト管理の改善などを提供します。
# npmでグローバルインストール
npm install -g @anthropic/claude-code-superpowers
# または、プロジェクトローカルにインストール
npm install --save-dev @anthropic/claude-code-superpowers
# settings.jsonに追加
{
"plugins": ["superpowers"]
}- auto-plan — タスク開始時に自動的にPlan Modeで計画を生成
- smart-compact — コンテキスト使用量に応じて自動的に
/compactを実行 - test-on-save — ファイル保存時に関連テストを自動実行
dx(ykdojo)
開発者体験(DX)を向上させるユーティリティプラグインです。ステータスバー、進捗表示、セッション管理などを提供します。
# npmでインストール
npm install -g claude-code-dx
# 設定ファイルに追加
# ~/.claude/settings.json
{
"plugins": ["dx"],
"dx": {
"statusBar": true,
"tokenCounter": true,
"sessionHistory": true
}
}プラグインの組み合わせは慎重に。互いに競合する機能がある場合、予期しない動作を引き起こす可能性があります。最初は1つずつ追加し、動作を確認してから次のプラグインを導入してください。