Skip to content

What it syncs

KoNiMa Claude Sync organizes what it syncs into domains. The same package is installed everywhere: your license decides which domains are available. Everything travels only through your own git repository.

The domains at a glance

DomainWhat travelsCan you turn it on or off?
ConfigurationRules, skills, slash commands, agents, CLAUDE.md and settings.json.Always on; you manage individual items from the dashboard.
PluginsThe list of installed plugins: install once, and it reaches every machine.Always on with a license that includes it.
Custom pluginsPlugins your team writes itself, installed automatically on every machine.On by default; switch in the System tab.
MCP serversMCP server definitions, without their credentials.Always on with a license that includes it.
MemoriesClaude’s memories and project notes, merged across machines.You turn it on, in the Memory tab.
HooksClaude Code custom hooks, with the right version for each operating system.On by default; switch in the System tab.
SessionsThe Claude Code conversations you choose to take with you using /sync-session.License module; claudeSync.syncSessions setting.

Configuration

The heart of the product. The Claude Code configuration that lives in ~/.claude (rules, skills, commands, agents, CLAUDE.md and settings.json) becomes the same on all your machines. In the Claude system tab you decide, for each item, whether it is active, and whether you share it with the team or keep it to yourself: see Managing the configuration.

Plugins

Your list of Claude Code plugins travels with you. You install a plugin once, and at the next sync every other machine receives it. In the same way, removing a plugin removes it everywhere: the decision applies to all machines.

Custom plugins

Not to be confused with the Plugins domain: that one syncs the list of plugins installed from marketplaces, while custom plugins are packages your team writes itself, and what travels is the plugin’s own files. A maintainer prepares them; at the next sync every machine receives, installs and enables them automatically. If a plugin needs a setup step, it runs on its own; if that step fails, the plugin stays installed and the dashboard flags it, without stopping the sync.

For the full guide see Custom plugins.

MCP servers

MCP server definitions reach every machine. Credentials held in environment variables and headers are blanked before sending, so the repository holds the server but not its secrets. On a new machine you enter them once. Don’t put secrets in a server’s URL or arguments: they are not protected there.

Memories

Claude’s memories and project notes are merged across machines: each one brings along what the others have learned. Projects are recognized by their git remote, not by their local path: the same project, cloned into different folders on different machines, is recognized and its memories end up in the right folder, however you cloned it.

Memories come from two sources, each with its own switch in the Memory tab:

  • Sync claude-mem memories (database), for memories from the claude-mem plugin. You need the claude-mem plugin installed and a system Node.js 23.4 or later, which the System check verifies for you;
  • Sync .md project memories (~/.claude/projects), for Claude Code’s project notes.

The Memories domain requires an edition that includes it.

Which projects share memories

Not every project on your machine has its memories sent: they are collected within a company scope, which depends on where your sync repository is.

  • On a shared service (GitHub, GitLab, Bitbucket, Codeberg, Gitea.com, SourceHut or Azure DevOps) the scope is your organization: repositories with the same owner as the sync repository. Your personal repositories on the same service stay out, so their memories don’t reach the shared repository.
  • On your company’s git server the scope is the whole server.

If your company uses more than one git server, you can add more scopes:

  1. In VS Code, open File › Preferences › Settings and search for Claude Sync.
  2. Under Company Git Hosts, add one entry for each scope: a whole server (for example devops.acme.com) or a service followed by an organization (for example github.com/AcmeOrg).

The sync repository’s server is always included.

Projects outside the scope are not hidden: the Projects tab shows them as outside the company scope, each with the reason, and you can include one if you want its memories to travel.

Hooks

Claude Code custom hooks travel together with the scripts for the different operating systems: each machine uses the version that fits it. On a machine for which the hook has no version, it simply doesn’t run, and the Claude system tab says so on the hook’s row.

Sessions

A Claude Code conversation starts on one machine and stays there, unless you decide to take it with you. Type /sync-session during the session, and when it ends the conversation is encrypted and sent to your repository; on your other machines you resume it with claude -r. Only you can see your sessions. It is a license module: details in Sessions across machines.

Keeping files out of a folder: .knmsyncignore

Some files should not travel: indexes the machine generates, build output, caches, anything that is rebuilt locally. To declare them, put a .knmsyncignore file at the root of a synced folder. It uses the same syntax as a .gitignore and travels with the folder, so the whole team shares the same exclusions.

  • One rule per line; # starts a comment.
  • name excludes a file or folder with that name at any depth; folder/ excludes a whole folder; *.log excludes by extension; a leading / refers to the root of the folder; !rule includes again something a broader rule excluded.

For example, if a hook generates an index file inside hooks/, add a .knmsyncignore there that lists it, and that file stays on the machine that produces it. The custom plugins folder already comes with one (see Custom plugins). For hooks and custom plugins, the maintainer opens it straight from the dashboard.

Your work under your control

  • Before applying any change that arrives from your other machines, Claude Sync saves a local copy of what was there.
  • One machine doesn’t overwrite another’s work. When the same file changes in two places at once, Claude Sync shows you and you decide.
  • Your edits to team items stay on your machine and, if the team publishes a new version, yours is kept and you choose which one to keep: see The dashboard.
  • Several VS Code windows open work together without trouble: one drives the sync, the others follow it.
  • Offline too: changes go out at the next sync that can run, and the license keeps working for up to seven days after the last successful check.

What never travels

Your data doesn’t pass through KoNiMa’s servers: the only service contacted is the license service. The repository credentials and the license key stay on your machine and never end up in the repository.

These also stay out of syncing:

  • the ~/.claude.json file, which stays in your user folder; Claude Sync syncs only the MCP server definitions in it;
  • the choice of Claude folder, which applies to this machine only;
  • the skills Claude Code downloads by itself: Claude Code downloads and updates them on each machine on its own. In the Overview they are counted separately, as “from Claude Code”;
  • the working files and local backups Claude Sync keeps in the Claude folder.