CLAUDE LABEN
FORK — Claude Code 2.1.212で/forkの挙動が変わりました。会話を新しいバックグラウンドセッションへ複製し、作業を続けたまま並走できます。従来のセッション内サブエージェントは/subtaskに移りましたLIMITS — WebSearchの呼び出しがセッション単位で既定200回に制限されました。サブエージェントの起動も既定200回が上限で、暴走した検索・委譲のループを止められますMCPBG — 2分を超えるMCPツール呼び出しは自動的にバックグラウンドへ移り、セッションが固まらなくなりました。しきい値はCLAUDE_CODE_MCP_AUTO_BACKGROUND_MSで調整できますPLANFIX — プランモードがtouchやrmといったファイルを変更するBashコマンドを、許可プロンプトもcanUseToolコールバックも通さずに実行してしまう不具合が修正されましたSONNET5 — Claude Sonnet 5は導入価格として入力100万トークンあたり2ドル、出力10ドルで提供中です。8月31日を過ぎると3ドルと15ドルに戻りますIPO — Anthropicが早ければ10月の株式公開を視野に、引受銀行が投資家との面談を組み始めたと報じられていますFORK — Claude Code 2.1.212で/forkの挙動が変わりました。会話を新しいバックグラウンドセッションへ複製し、作業を続けたまま並走できます。従来のセッション内サブエージェントは/subtaskに移りましたLIMITS — WebSearchの呼び出しがセッション単位で既定200回に制限されました。サブエージェントの起動も既定200回が上限で、暴走した検索・委譲のループを止められますMCPBG — 2分を超えるMCPツール呼び出しは自動的にバックグラウンドへ移り、セッションが固まらなくなりました。しきい値はCLAUDE_CODE_MCP_AUTO_BACKGROUND_MSで調整できますPLANFIX — プランモードがtouchやrmといったファイルを変更するBashコマンドを、許可プロンプトもcanUseToolコールバックも通さずに実行してしまう不具合が修正されましたSONNET5 — Claude Sonnet 5は導入価格として入力100万トークンあたり2ドル、出力10ドルで提供中です。8月31日を過ぎると3ドルと15ドルに戻りますIPO — Anthropicが早ければ10月の株式公開を視野に、引受銀行が投資家との面談を組み始めたと報じられています
記事一覧/Claude Code
Claude Code/2026-04-26中級

Claude Code の .claude/ ディレクトリをチームで共有する設計 — Git管理する範囲と個人設定の境界

Claude Code の .claude/ をチームで共有する時、どのファイルを Git に入れて、どこを個人設定に残すか。実プロジェクトで得た境界線と .gitignore テンプレートをまとめます。

claude-code129git16team-development2settings5

個人で使い始めた Claude Code をチームに広げようとしたとき、最初に判断を迫られるのが .claude/ ディレクトリの扱いです。すべてを Git にコミットすれば全員が同じ設定で始められそうですが、個人の API トークンやセッション履歴まで共有してしまうと、事故の温床になります。逆に .claude/ を丸ごと .gitignore に入れてしまうと、せっかく整備したカスタムコマンドやサブエージェントがチームに引き継がれません。

私は4つの個人プロジェクトで Claude Code を運用し、そのうち2つでチーム展開を進めるなかで、.claude/ の境界が曖昧なまま走ると再現性が崩れる瞬間に何度もぶつかりました。ここでは「何を Git に入れて、何を個人領域に残すか」を、実用的なパターンとして整理します。

.claude/ の中身を分類する

Claude Code の .claude/ には用途の異なるファイルが混在しています。まず構成要素を分類しないと、Git 戦略の議論は前に進みません。代表的な要素は次のとおりです。

  • settings.json — プロジェクト共通の設定(モデル選択・許可ツール・MCP サーバー定義など)
  • settings.local.json — 個人ローカルの上書き設定(既定で gitignore 推奨)
  • commands/ — カスタムスラッシュコマンド(.md ファイル群)
  • agents/ — カスタムサブエージェント定義
  • CLAUDE.md — プロジェクトの作業指針(コードベース上位の知識ファイル)
  • history/ または sessions/ — Claude Code が記録するセッション履歴

このうち、チームで共有する価値があるのは「コマンド」「エージェント」「共通 settings」「CLAUDE.md」の4つです。残りは原則として個人領域に置きます。判断基準はシンプルで、「同じリポジトリで作業する全員が、同じ挙動で Claude Code を使えるべき情報か?」を問うだけです。

チームで共有する4つのファイル

私の判断軸は明確で、「再現性に寄与する設定」だけを Git に入れるというものです。具体的にはこの4種類が該当します。

commands/*.md は共有しないと意味がありません。「/release でリリース手順を実行する」「/migrate でマイグレーションスクリプトを生成する」といったコマンドは、チームの作業手順そのものです。個人別に違う実装を持つ理由がないので、リポジトリ直下の .claude/commands/ にコミットします。レビューを通して品質を上げていける副次効果も大きいです。

agents/ も同じ性質を持ちます。たとえば「PR レビュー専用エージェント」や「テスト失敗の原因を切り分けるエージェント」は、定義を共有しないと「誰々さんの環境でだけ動く」属人性が生まれます。サブエージェントは設計次第で生産性に大きく差が出るので、ここを共有しない手はないと考えています。

CLAUDE.md はプロジェクトのドメイン知識・コーディング規約・テスト戦略を Claude に伝える中核ファイルです。これがリポジトリに入っていないと、新しく参加した開発者が Claude Code を使っても文脈ゼロから始まることになり、Claude Code の真価が発揮されません。

settings.json のうち共有してよいのは、「許可コマンド一覧」「使用モデル」「MCP サーバーの接続先 URL」など、機密情報を含まない部分です。設定の細かいフィールドについては Claude Code の settings.json 完全ガイド も参考にしてみてください。

個人領域に残すべきもの — 私が実際にやらかした落とし穴

Git に入れてはいけないものも明確にしておきます。ここを曖昧にすると、ある日突然 .git/objects の中に API キーが永久保存される事故が起きます。

settings.local.json は Claude Code が「個人の上書き」として認識するファイルで、デフォルトで gitignore に入れることが推奨されています。ここに個人の API トークンや、ローカル限定の許可設定を書きます。

history/sessions/ のセッション履歴は、個人の作業内容そのものです。コミットしてしまうと、プロンプトの試行錯誤や、社内の機密情報を含む会話まで公開されてしまいます。私は最初の頃 .claude/ 全体を git add してしまい、レビュアーから「このコミットに OPENAI_API_KEY が混ざっている」と指摘されて慌てて push 前に取り消したことがあります。これは git push 後だったら BFG Repo-Cleaner で履歴ごと書き換える羽目になっていました。

MCP サーバー設定のうち認証情報(OAuth トークン、API キー、データベース接続文字列)は絶対に共有しません。共有 settings.json には「接続先 URL」「サーバー名」までを書き、認証は各自が個別にセットアップする運用にします。settings.local.json 側で mcpServers の認証情報だけを上書きする構造にすると、共有部分と個人部分がきれいに分離できます。

実用 .gitignore テンプレート

私が4つのプロジェクトで使い回している .gitignore のパターンを共有します。

# Claude Code 個人設定
.claude/settings.local.json
.claude/history/
.claude/sessions/
.claude/cache/
.claude/projects/
 
# 一時ファイル・OS固有ファイル
.claude/*.tmp
.claude/.DS_Store
 
# 認証情報の保険(万が一書いてしまった時の最後の砦)
.claude/secrets.json
.claude/.env*
.claude/**/credentials.json

逆に、.claude/commands/ .claude/agents/ .claude/settings.json CLAUDE.md明示的にコミット対象 とします。

.gitignore を整備したら、git status -- .claude/ で意図したファイルだけが追跡対象になっているかを必ず確認してください。新しいバージョンの Claude Code が新しいサブディレクトリを作る可能性もあるので、月に1回程度は git status -- .claude/ を眺めてみることをおすすめします。私はこの確認をしていなかった時期に、新規追加された .claude/projects/ をうっかりコミットしてしまったことがあります。

チーム展開時の段取り

個人で使っていた Claude Code をチームに広げる際は、次の順序で進めると摩擦が少なくなることに気づきました。

  1. 既存の .claude/settings.json から個人情報(トークン・絶対パス・自分のメールアドレス等)を settings.local.json に分離する
  2. .gitignore を整備し、git status -- .claude/ でクリーンな状態を確認
  3. commands/agents/ を整理し、チームで使うものだけを残す(試作品は _archive/ に移動か削除)
  4. CLAUDE.md の冒頭に「このリポジトリで Claude Code を使う前に読むべきこと」セクションを追加
  5. プルリクエストとして他メンバーにレビューしてもらい、意図しない個人情報が混入していないか確認

特に5番目は省略しないでください。自分では気づかない個人情報(過去のディレクトリパス、社内の社員名、サンプルとして入れたメールアドレスなど)が commands/.md 内に紛れ込んでいることが意外と多くあります。コミット前のレビューは、技術的な正しさよりも「公開していい情報かどうか」をチェックする場として使うのが効果的です。

CLAUDE.md の設計思想については CLAUDE.md 設計パターン — プロジェクトインテリジェンスの育て方 で詳しく扱っていますので、チームで活用する前に一読することをおすすめします。

全体を振り返って — 今日からできる小さな一歩

.claude/ の Git 戦略は、一度決めれば長く使える「土台」の部分です。今すぐすべてを整える必要はありません。今日のところは .gitignore.claude/settings.local.json.claude/history/ .claude/sessions/ の3行を追加し、git status -- .claude/ でクリーンになっているかを確認するだけで十分です。これだけでも、機密情報が漏れる事故の大半は防げます。

そのうえでチーム展開を考える段階になったら、コマンドとエージェントを整理し、CLAUDE.md を整える、という順序で広げていくのが、私の経験上もっとも摩擦が少ない進め方でした。Claude Code の真価は「同じ前提を共有したチーム」で使ったときに最も発揮されると感じています。

シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

Claude Code2026-03-30
Claude Code で Git コンフリクトを自動解決する方法 — マージ戦略とリベース対応
Claude Code を使って Git のマージコンフリクトを素早く解決する方法を解説。3ウェイマージの理解からリベース時の競合対応、複雑なコンフリクトの自動解決テクニックまで、実践的なコマンド例付きで紹介します。
Claude Code2026-07-14
push先がいつの間にか一つ増えていた — /commit-push-pr が origin 以外のリモートへも押し始めた変更に、許可リストで蓋をする
7月14日の更新で /commit-push-pr が origin に加えて設定済みの push リモートへも自動で押すようになりました。便利な一方、ミラーやバックアップ用の第二リモートを持つ環境では、意図しない push が静かに増えます。どのリモートへ押し得るかを棚卸しし、許可リスト外の push を pre-push フックで止め、無人実行でも安全に回す設計を実装込みで整理しました。
Claude Code2026-06-18
壊れた settings.json で Claude Code が起動しなくなったとき — セーフモードの挙動と設定の分け方
settings.json の構文ミスで Claude Code が起動しなくなったときに、どの階層が壊れているかを切り分けて数分で復旧する手順と、自動運用で壊れにくい設定の分割・検証パターンをまとめました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →