
何が起きたか
Claude Codeを1つの共有作業ツリーで走らせ、2026年6月から9月までに8件の事故とヒヤリハットが発生。著者が3ファイルしか確認していないのに5ファイルを巻き込んだコミットもあった。
なぜ重要か
非エンジニアの個人が、コミット前のgit diffによる確認は過去のスナップショットで、確認とコミットが競合し得ると指摘。作業ツリーを共有するチームも同じ穴を抱える。
注目点
著者の防御策はすべてベストエフォート。ファイルパスを明示しても同一ファイルへの別セッションの編集を拾うため、真の分離にはセッションごとのworktreeか同時書き込み1人しかない。
誰に効くか複数のAIコーディングエージェントを1つのリポジトリに向ける小規模チームや個人運用者。例えば並行翻訳や定期ジョブの修正を行うデータ・ローカライズ担当者。
こういう要約が、毎朝あなたのメールに届きます。
ここでは設定が重要だ。著者はエンジニアではなくAIを通じてコードを書き、並行作業とは同じディレクトリでclaudeを走らせる複数のターミナルウィンドウにすぎず、日常的にworktree分離は使っていない。stop hookが各ターン終了時にコミットを自動プッシュし、その条件にはmain上にいること、ローカルorigin/mainより先行するコミットがあること、シークレットチェックの通過が含まれる。そのため別セッションの作業を巻き込んだコミットが、誰かのターン境界でマシンを離れることがある。
事故のいくつかは不注意ではなく、gitの文書化された挙動に由来する。pathspecコミットは指定パスの作業ツリー内容を記録し、他パスのステージ内容を無視するため、別セッションのステージ済み変更は避けられるが、同じファイルに誰かが加えた編集は依然として取り込む。著者はスクリプトでこれを再現し、git 2.54.0のgit help commitを引用している。
クリップボードの事故も根本は同じだ。macOSは同じGUIログイン内の全セッションで1つのペーストボードを共有する。著者はテキストをそこ経由で流すのをやめ、フォームのテキストを直接挿入し、送信前に承認済みテキストと照合するようにした。セッションの生存確認では、トランスクリプトのタイムスタンプは最近の活動の参考にすぎないため、作業の引き継ぎを明示的なハンドオフ、応答の確認、または直接の目視確認に限定したが、その制御もベストエフォートだと述べている。
業界と使っているAIツールを選ぶと、仕事に関係するニュースが毎朝届きます。
登録無料・Googleアカウントなら30秒・いつでも解除できますAITodayについて →
この記事についてわからないことをAIに質問できます。AIはこの記事・AIToday の過去記事・Wikipedia を読み、出典を付けて答えます。Q&Aはこのページに公開され、他の読者も読めます。
このようなAIの動きを、御社の業界・競合に合わせて毎日届ける法人プランもあります → 詳しく見る
次の記事へTiny AI ArenaでAIモデルが対戦、claude-sonnet-5が首位