チーム開発で Claude Code を活用する
チームでのClaude Code導入、コードレビュー自動化、CI/CD統合のベストプラクティス。
チーム開発における Claude Code の位置づけ
Claude Code は個人開発ツールとして強力だが、チーム開発に導入することでさらに大きな効果を発揮する。コードレビューの自動化、CI/CDパイプラインとの統合、共通の開発規約の徹底など、チーム全体の生産性を向上させられる。
個人利用とチーム利用の違い
| 側面 | 個人利用 | チーム利用 |
|---|---|---|
| CLAUDE.md | 個人の好み | チーム共通の規約 |
| Hooks | 個人の作業効率化 | 全員の品質保証 |
| MCP サーバー | 個人のツール連携 | 共通の外部サービス連携 |
| 設定管理 | ローカルのみ | Gitで共有 |
| セキュリティ | 自己責任 | 組織のポリシー準拠 |
チーム導入のステップ
Step 1: パイロットメンバーの選定
まず1-2名のパイロットメンバーで試験運用を行う。Claude Code に慣れているメンバーが最適だ。
パイロット期間の目安: 2-4週間
パイロットで確認すること:
- 既存のワークフローとの整合性
- セキュリティ上の懸念
- コスト(API利用料)の試算
- チームメンバーの学習コスト
Step 2: 共通 CLAUDE.md の作成
パイロットメンバーの知見をもとに、チーム共通の CLAUDE.md を作成する。
# プロジェクト名
## 概要
プロジェクトの説明
## 技術スタック
- 言語: TypeScript
- フレームワーク: Next.js 15
- テスト: Vitest + Playwright
- パッケージマネージャ: pnpm
## コマンド
- 開発: pnpm dev
- ビルド: pnpm build
- テスト: pnpm test
- リント: pnpm lint
## チーム規約
- PRには必ずテストを含める
- コンポーネントは named export
- エラーハンドリングは必須
## 注意事項
- 本番環境のシークレットは絶対にコミットしない
- テナント分離のルールを遵守する
Step 3: 共通 Hooks の設定
.claude/settings.json(プロジェクト設定)にチーム共通のフックを定義する。
推奨設定:
- 保存時フォーマット: 全員のコードスタイルを統一
- TypeScriptチェック: 型エラーの早期発見
- console.log 警告: デバッグコードの混入防止
- セキュリティスキャン: 機密情報の検出
Step 4: 段階的な展開
パイロットの成果をもとに、チーム全体へ展開する。
パイロット(1-2名) → 早期導入(3-5名) → 全チーム展開
2-4週間 2-4週間 継続
共通 CLAUDE.md の運用
ファイル構成
プロジェクトルート/
CLAUDE.md # チーム共通(Git管理)
CLAUDE.local.md # 個人設定(.gitignore)
.claude/
settings.json # プロジェクト設定(Git管理)
commands/ # 共通カスタムコマンド
review.md
test.md
rules/ # パススコープルール
api-routes.md
components.md
CLAUDE.md の更新フロー
- 提案: Issue または PR で変更を提案
- レビュー: チームメンバーで内容を確認
- 承認: メインブランチにマージ
- 反映: 次回セッションから自動的に適用
個人設定の分離
個人の好み(使用言語、好みのライブラリなど)は CLAUDE.local.md に記述し、Git 管理外とする。
# CLAUDE.local.md(.gitignoreに追加)
- 私はVim派なので、エディタ関連の提案はVim向けで
- 日本語で回答して
コードレビュー自動化
自動レビューの設定
Claude Code のカスタムコマンドとフックを組み合わせて、コードレビューの一部を自動化する。
<!-- .claude/commands/review.md -->
---
description: "コードレビューを実行"
allowed-tools: ["Read", "Grep", "Glob", "Bash"]
---
以下の観点でコードをレビューしてください:
1. バグの有無
- 境界値の処理
- null/undefined チェック
- エラーハンドリング
2. セキュリティ
- 入力バリデーション
- SQL インジェクション対策
- 機密情報の漏洩
3. パフォーマンス
- 不要な再レンダリング
- N+1 クエリ
- メモリリーク
4. 可読性
- 命名規則
- 関数の長さ
- 適切なコメント
対象: $ARGUMENTS
PR テンプレートとの連携
PR テンプレートに Claude Code によるレビュー項目を組み込む。
<!-- .github/pull_request_template.md -->
## 変更内容
<!-- 変更の概要 -->
## チェックリスト
- [ ] テストを追加・更新した
- [ ] ドキュメントを更新した
- [ ] CLAUDE.md の規約に従っている
- [ ] セキュリティ上の懸念がない
## Claude Code レビュー
<!-- /review コマンドでレビューを実行 -->
CI/CD パイプラインへの統合
GitHub Actions での利用
CI/CD パイプラインで Claude Code を利用する場合の設定例。
Claude Code は CLI ツールとして動作するため、GitHub Actions のランナー上でも実行可能。API キーは GitHub Secrets に保存し、環境変数として渡す。
自動化できること
| タイミング | 自動化内容 |
|---|---|
| PR 作成時 | 自動コードレビュー、セキュリティスキャン |
| マージ時 | 自動ドキュメント更新、CHANGELOG 生成 |
| 定期実行 | 依存関係の更新確認、 Dead code の検出 |
| デプロイ前 | 型チェック、テスト、ビルドの検証 |
セキュリティ上の注意
CI/CD で Claude Code を利用する場合、以下に注意する:
- API キーの管理: GitHub Secrets に保存し、ログに露出させない
- 権限の最小化: 必要最小限のツールのみ許可
- 実行結果の検証: Claude の出力をそのまま本番に反映しない
- コスト管理: CI/CD での API 利用料を監視
セキュリティとコンプライアンス
チーム向けセキュリティチェックリスト
- CLAUDE.md に機密情報を含めていない
- CLAUDE.local.md が .gitignore に含まれている
- Hooks で機密情報の検出を設定している
- MCP サーバーのトークンを環境変数で管理している
- CI/CD の API キーが Secrets に保存されている
- テナント分離のルールが CLAUDE.md に記載されている(マルチテナントの場合)
データの取り扱い
Claude Code にコードを分析させる際、以下のデータには注意する:
| データ種別 | 取扱い |
|---|---|
| 本番データ | 分析に使用しない |
| 顧客個人情報 | 絶対に Claude に送信しない |
| シークレット・APIキー | .env ファイルは分析対象外にする |
| テストデータ | フィクションデータのみ使用 |
まとめ
チーム開発での Claude Code 導入は、「共通の文脈(CLAUDE.md)」「自動品質保証(Hooks)」「外部連携(MCPサーバー)」の3本柱で構成する。段階的な導入とチーム内でのナレッジ共有が成功の鍵だ。
エージェントチームオーケストレーションについては、エージェントチームオーケストレーションで詳しく解説しています。OMC team パイプラインについては、OMC team パイプラインで詳しく解説しています。GitHub Actions CI/CD については、GitHub Actions CI/CDで詳しく解説しています。
関連ガイド:
- CLAUDE.md 完全ガイド - CLAUDE.md の書き方の詳細
- Hooks で作業を自動化する - フック設定の詳細
- MCP サーバーで機能を拡張する - MCP設定の詳細
- 上級者向け学習パス - さらなる高度な活用
リファレンス
- Claude Code 公式ドキュメント
- 中級者向け学習パス - ワークフローとスキルの活用