CLAUDE_CODE_DIR_SYNC_ENGINE
A Claude Code environment variable, read out of the shipped bundle. It was in the build from v2.1.242 and was gone by v2.1.285.
Set CLAUDE_CODE_LEGACY_BUNDLE to true to go back to the old single-file build shape.
Not Anthropic's. This is the line from the earliest changelog entry here that named it, v2.1.242.
In the changelogs
15Releases whose published page names CLAUDE_CODE_DIR_SYNC_ENGINE.
-
v2.1.285
Directory sync for cloud sessions and its environment variables removed
The directory-sync machinery for cloud sessions is gone, and its
CLAUDE_CODE_DIR_SYNC_*andCLAUDE_CODE_DISABLE_DIR_SYNCvariables no longer do anythingfound in this entry's text
-
v2.1.285
Cloud sessions no longer sync or seed your folder, and
CLAUDE_CODE_DIR_SYNC_ENGINEis ignoredStarting a cloud session no longer uses folder sync or seeding,
CLAUDE_CODE_DIR_SYNC_ENGINEis not read, and bundle upload remainsfound in this entry's text
-
v2.1.284
Cloud file sync can be paused from Anthropic's side without ending your session
If Anthropic switches cloud file sync off, sync pauses for the session instead of ending it, and picks up again once it is back on
found in this entry's text
-
v2.1.284
claude --cloudexplains what uploads when some files were withheld from syncWhen a cloud session cannot start and files were withheld from sync,
claude --cloudnow explains what the no-sync fallback would uploadfound in this entry's text, named in this entry
-
v2.1.284
Cloud file sync signs files per device and explains when that fails
Cloud file sync now signs synced files with a key for this computer, and stops with a clear message if that cannot be set up
found in this entry's text, named in this entry
-
v2.1.283
Cloud file sync explains when an organization's policy forbids it
Organizations whose data retention policy forbids file sync now get a clear message, and cloud sessions continue without syncing
found in this entry's text
-
v2.1.281
CLAUDE_CODE_DIR_SYNC_ENGINE no longer accepts 'git' / 'always-git'
CLAUDE_CODE_DIR_SYNC_ENGINE now only understands the off words, so "git" and "always-git" trigger a warning
found in this entry's text, named in this entry
-
v2.1.281
Cloud session bundle-upload failure now explains why and how to upload without file sync
Cloud sessions now say why the local upload failed and how to start with
CLAUDE_CODE_DIR_SYNC_ENGINE=noneinsteadfound in this entry's text
-
v2.1.281
Cloud (--cloud) fallback messages refactored
The hints shown when claude --cloud falls back now depend on the sync mode and say what gets uploaded and what stays local
found in this entry's text
-
v2.1.280
New early-upload ('created_empty') recovery path for cloud/remote-control sessions when dir sync can't seed files
Cloud sessions can now upload a first-time project snapshot when directory sync isn't ready yet
found in this entry's text
-
v2.1.248
Sessions resumed with directory sync disabled now say so
Resuming with directory sync turned off now says so instead of quietly doing nothing.
named in this entry, found in this entry's text
-
v2.1.248
Unknown words in CLAUDE_CODE_DIR_SYNC_ENGINE are now called out in the session
An unrecognised CLAUDE_CODE_DIR_SYNC_ENGINE value is now flagged in the status line.
named in this entry, found in this entry's text
-
v2.1.246
Cloud directory sync is now git-only, plus a new mode for plain folders
Cloud directory sync now only does git; the per-file and archive engines are gone.
named in this entry, found in this entry's text
-
v2.1.242
CLAUDE_CODE_LEGACY_BUNDLE restores the old non-split bundle shape
Set CLAUDE_CODE_LEGACY_BUNDLE to true to go back to the old single-file build shape.
named in this entry, found in this entry's text
-
v2.1.242
Cloud directory sync gains git and tar-archive engines beside the per-file lane
Cloud file sync gains git-bundle and tar-archive modes, but you still sync file by file.
named in this entry, found in this entry's text
First cited
6The earliest release whose published evidence quoted CLAUDE_CODE_DIR_SYNC_ENGINE was v2.1.246, 25 Aug 2026. That is the oldest release this project wrote about it, so it is a floor on the name's age and not the release that introduced it. It is not a presence reading: which builds carried the name is the table below.
Presence across releases
2Build by build
56One row per release since the first build this name was read out of. Absent means the build was read and the name was not in it, never mined means no bundle for that release was ever archived, and a declared type or a default is only ever what that release's own bundle stated.
Read out of the published npm bundle release by release, and out of Anthropic's own documentation as this site captured it. Nothing on this page is a description anybody here wrote about what the environment variable does. All environment variables.