Claude Code Reverts EnterWorktree Default: worktree.baseRef Gives You the Choice
Claude Code 2.1.133 introduces the worktree.baseRef setting, allowing developers to control whether worktrees branch from origin/
Sources & Mentions
3 external resources covering this update
A Settings Option That Changes How Worktrees Are Created
Claude Code 2.1.133 introduces a new worktree.baseRef setting that gives developers explicit control over where new worktrees branch from. The setting accepts two values: "fresh" (the default) and "head".
What Changed and Why It Matters
When v2.1.128 shipped in early May 2026, Claude Code quietly changed the EnterWorktree command to branch from local HEAD instead of origin/<default-branch>. For developers with unpushed commits, this was a significant workflow improvement β those commits would carry forward into the new worktree rather than being left behind. Anthropic covered this in the 2.1.128 release notes, and some developers adjusted their workflows accordingly.
With v2.1.133, that behavior is being reverted to the historical default. The default value "fresh" causes --worktree, EnterWorktree, and agent-isolation worktrees to branch from origin/<default-branch> β the same behavior Claude Code had before v2.1.128. This was Anthropic's original documented behavior, and reverting makes it consistent with existing documentation.
How to Opt Into the 2.1.128 Behavior
Developers who prefer branching from local HEAD β keeping unpushed commits in new worktrees β can restore that behavior with one line in their settings:
{
"worktree": {
"baseRef": "head"
}
}
This setting applies to --worktree flag, the EnterWorktree command, and agent-isolation worktrees consistently.
Choosing the Right Value
The "fresh" default is appropriate for teams where everyone pushes before starting parallel work. It guarantees a clean, synchronized starting point for each worktree and avoids confusion about which commits are in scope for a given task.
The "head" option suits solo developers or small teams who frequently have unpushed work-in-progress commits that should carry forward when spinning up a new task in a separate worktree.