[FEATURE] VS Code extension: sync Session Manager groups across machines via VS Code Settings Sync

Status Open
Reported on v2.1.296
Maintainer reply None cached
Activity 0 comments · opened Oct 10, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet (related, but for the desktop app / claude.ai/code / iOS: #92717, #94596, #100344 — none covers the VS Code extension or VS Code Settings Sync)
  • [x] This is a single feature request (not multiple features)

Problem Statement

I use the VS Code extension on two machines (office and home office) with the same repository. The session transcripts are available on both machines, but the session groups I create in the Session Manager sidebar ("Tickets", "New group", …) exist only on the machine where I created them. On the other machine every session shows up under "Ungrouped", so I have to rebuild the grouping by hand on each machine — and keep doing it as groups change.

VS Code Settings Sync is enabled on both machines, but it does not carry the groups.

Technical background (extension 2.1.296): the groups are stored in context.globalState under the key sessionGroups:<first workspace folder fsPath> (see sessionGroupsKey() / setSessionGroups()). The extension never calls globalState.setKeysForSync(), so Settings Sync ignores the key. Under Remote-WSL the value lives in the Windows client's state.vscdb, which users should not (and cannot safely) copy around themselves.

Proposed Solution

Let VS Code Settings Sync carry the session groups:

  1. Register the groups key(s) via context.globalState.setKeysForSync([...]).
  2. Because the current key is scoped by workspace path, either
  • store all groups in one key (e.g. sessionGroups) as a map keyed by a workspace identifier, and register that single key, or
  • register the per-workspace keys of the workspaces that have groups.
  1. Ideally key the workspace by something that is stable across machines (e.g. the git remote, or the folder name), because the absolute path can differ between machines (C:\… vs. /home/…, different user names).
  2. Groups that reference session IDs which do not exist locally can simply stay hidden until the transcript appears — the existing filtering against archived IDs shows that the extension already handles "unknown/hidden ID in a group".

An opt-out setting (e.g. claudeCode.syncSessionGroups) would be fine for users who do not want this.

Alternative Solutions

  • Rebuilding the groups on every machine by hand (current workaround).
  • Account-level sync of the sidebar organization as requested in #92717 / #94596 — that would solve it as well, if it also covers the VS Code extension. Settings Sync is just the mechanism VS Code users already have enabled.

Priority

Medium - Would be very helpful

Feature Category

Other (VS Code extension, Session Manager sidebar)

Use Case Example

  1. In the office I group the sessions of a support case under "Tickets".
  2. In the evening I continue on my home machine; the transcripts are there (same repo, synced ~/.claude/projects).
  3. Today: the sidebar shows everything under "Ungrouped". With this feature: the same groups appear, and changes made at home are back in the office the next morning.

Additional Context

  • Extension 2.1.296, VS Code with Remote-WSL (Ubuntu) on a Windows client, Settings Sync enabled on both machines.
  • The same mechanism would also make the "Archived sessions" state (hiddenSessionIds) consistent across machines, which has the same limitation today — but this request is only about the groups.

View original on GitHub ↗