Skip to content

原文(日本語に翻訳)

  • worktree.bgIsolation: "none" 設定を追加。ワークツリーが実用的でないリポジトリで、バックグラウンドセッションが EnterWorktree なしに作業コピーを直接編集できるようになります

原文(英語)

  • Added worktree.bgIsolation: "none" setting to let background sessions edit the working copy directly without EnterWorktree, for repos where worktrees are impractical

概要

worktree.bgIsolation: "none" は、git worktreeの作成が難しい環境でバックグラウンドセッションを利用するための新しい設定です。通常、バックグラウンドセッションは安全な隔離のために別のgit worktreeで動作しますが、この設定を有効にすると現在の作業コピーを直接編集できるようになります。worktreeを作成できないリポジトリ構成(モノレポ、特定のCI環境など)で役立ちます。

基本的な使い方

.claude/settings.json または ~/.claude/settings.json に以下を追加します:

json
{
  "worktree": {
    "bgIsolation": "none"
  }
}

この設定後、バックグラウンドセッションは EnterWorktree ツールを使わずに作業コピーを直接編集します。

実践例

worktreeが使えないリポジトリでバックグラウンドセッションを使う

git worktreeが使えない環境(例:一部のCI/CD環境、サブモジュールを多用するリポジトリ):

json
// .claude/settings.json
{
  "worktree": {
    "bgIsolation": "none"
  }
}
bash
# バックグラウンドセッションを起動
claude --bg "テストスイートを実行して失敗を修正してください"
# → 別のworktreeではなく、現在の作業コピーで直接実行される

設定値の比較

設定値動作
デフォルト(未設定)バックグラウンドセッションは EnterWorktree で隔離されたworktreeで動作
"none"バックグラウンドセッションが作業コピーを直接編集

注意点

  • "none" を設定すると、バックグラウンドセッションとフォアグラウンドセッションが同じファイルを編集する可能性があります。競合に注意してください
  • この設定は、worktreeが「実用的でない」リポジトリ専用です。通常はデフォルト(worktree隔離あり)を使用することを推奨します
  • バックグラウンドセッションによる予期しない変更を避けるため、作業中のファイルとバックグラウンドタスクの対象が重複しないよう管理してください
  • worktreeが利用可能な環境では、隔離のためにデフォルト設定を維持することがベストプラクティスです

関連情報