{"version":"2.1.282","anchor":"new-tengu-violin-bassbar-gate-default-on-controls-link-pre","canonical_anchor":"attaching-a-folder-to-a-cloud-session-with-file-sync-is-buil","heading":"Attaching a local folder to a cloud session: file sync flow and earlier link preparation","tier":"notice","area":"Cloud Sessions","url":"https:\/\/changelogs.core-directive.com\/v\/2.1.282\/e\/new-tengu-violin-bassbar-gate-default-on-controls-link-pre","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.282","markdown":"### Attaching a local folder to a cloud session: file sync flow and earlier link preparation\n\nNew code attaches a local git checkout to a cloud session with file sync, and attach can prepare the link while reading the stream position\n\n**Unclear.** It is not known what link-preparation overlap does, or whether it already ran without a switch before.\n\n**What**\n\nA cloud session is a Claude Code session running on Anthropic's servers that can run tools on your own computer through a link. This release adds and changes several pieces of how a local machine attaches to such a session:\n\n- New code lets the SDK host (a program that embeds Claude Code) attach a local git checkout to a running cloud session and start file sync, which keeps the local folder and the session's copy in step.\n\n- It first checks the folder: it must be the top of a git repository, use a supported git layout, and be a checkout of the same repository the session works in. It then asks you through a sync-mode dialog, which must be one the host has declared it can show. Last, it checks that the folder is on the session's branch and that its commit is in the recent history of that branch.\n\n- If every check passes, sync is armed and starts the next time Claude runs something on that computer. Each refusal has its own message, for example \"File sync was not started: this folder sits inside a larger git repository.\"\n\n- The only caller is the headless remote attach path. It runs when the session has no directory-sync handle and directory sync reports `not_armed_here`, and it then loads `startAttachSync` and starts it.\n\n- The flow is controlled by the gate `tengu_violin_soundpost`, whose built-in default is off, and fails early with \"flag_off\" when the gate check does not pass. The flag server returned off for this site's account and for the anonymous baseline, but no reading has been taken under this release yet.\n\n- In serve mode, attach now starts preparing the link while it reads the stream position, instead of afterwards, and passes the result to `linkForServing` along with `handsKeyToLaterReaders`. This is controlled by `linkPreparationOverlapOn`, which falls back to the gate `tengu_violin_bassbar`, whose built-in default is on. Nothing has been read about that gate yet.\n\n- Linking now accepts `localIdentity`, `prepared` and `handsKeyToLaterReaders`, and the link step records which proof form it used (`proof`) and whether it retried with the v1 form (`proof_v1_retry`).\n\n**Why**\n\nThese pieces point to attaching an existing local checkout to a cloud session and keeping the two in sync, with link setup overlapping other work at attach time. Whether the file sync flow runs for you depends on server-controlled gates.\n\n- Flag `tengu_violin_bassbar`: Not enough to say (read for one account on one subscription tier against v2.1.282; this account: no value returned, anonymous baseline: no value returned, compiled default: on) These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.\n- Area: Cloud Sessions\n- Tier: You'll notice\n- Useful: 5\/5\n- Signal: 5\/5"}