Unclear It is not clear which worktree configuration states exist besides absent, extension and file, or exactly when this check runs.
What
A git worktree is an extra checkout of the same repository in another folder. Such a checkout can have its own settings file, config.worktree, which git uses when extensions.worktreeConfig is turned on. When Claude Code packages a repository to send to a remote or cloud session, it checks for these settings.
- Detection now has three states:
extension,inert(aconfig.worktreefile that contains only harmless keys) andfile. Before, there was a single yes-or-no check for theextensions.worktreeConfigextension. - If the upload fails at the step that handles the worktree's administrative folder, the inert case now has its own explanation. It says that a per-worktree configuration file (config.worktree) stands in its administrative entry.
- The tamper check for linked worktrees is stricter. When the policy is "refuse", any worktree config state other than "absent" is treated as tampered. Before, only the "extension" state was refused.
- Upload diagnostics also record an
inert_configworktree check.
Why
If you start remote sessions from a linked worktree, error messages are clearer when a config.worktree file gets in the way. More worktree setups may also be rejected as tampered during sync than before.
The entry above is what we published on the day. These lines were added later, as Anthropic's own pages caught up, and they sit beside the original rather than replacing it.
Sparse checkout requires git to enable `extensions.worktreeConfig` in the repository's shared `.git/config` while a sparse worktree exists. Claude Code removes that entry after the last worktree is removed, but only if Claude Code added it…large-codebases see the edit
It is not clear which worktree configuration states exist besides absent, extension and file, or exactly when this check runs.
A small documentation edit on Set up Claude Code in a monorepo or large codebase touched a line naming extensions.worktreeConfig after this…