原文(日本語に翻訳)
Windows で、セッション env ディレクトリが読み取り専用属性を持つか OneDrive 内にある場合に Bash コマンドが "EEXIST: file already exists" エラーで失敗する問題を修正。
原文(英語)
Fixed Bash commands failing on Windows with "EEXIST: file already exists" on the session-env directory when it has the read-only attribute or is inside OneDrive
概要
Windows 環境で、セッション環境ディレクトリが読み取り専用属性を持つ場合や OneDrive によって管理されているフォルダ内にある場合に、Bash コマンドが EEXIST: file already exists エラーで失敗するバグが修正されました。OneDrive の同期やフォルダ属性の競合によって発生していた問題です。
基本的な使い方
修正後は特別な設定変更は不要です。OneDrive フォルダや読み取り専用属性のあるディレクトリから Claude Code を使用しても、Bash コマンドが正常に動作するようになりました。
powershell
# OneDrive フォルダから Claude Code を起動(修正後は正常動作)
cd "$env:USERPROFILE\OneDrive\Projects\my-project"
claude実践例
OneDrive でプロジェクトを管理している場合
powershell
# OneDrive 内のプロジェクトで作業
cd "C:\Users\username\OneDrive\Documents\dev\my-app"
claude
# 修正前: Bash コマンドで "EEXIST: file already exists" エラーが発生
# 修正後: 正常に Bash コマンドが実行される読み取り専用属性のあるフォルダでの作業
グループポリシーや管理ツールによって読み取り専用属性が設定されているフォルダでも Claude Code が動作するようになりました。
注意点
- Windows 専用の修正です。macOS や Linux には影響しません。
- OneDrive の同期が進行中の場合、ファイル操作に遅延が生じる可能性があります。これは OneDrive 自体の特性であり、Claude Code の問題ではありません。