Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>Profile Sync — Export & ImportNew to Visual Studio Code? Get it now.
Profile Sync — Export & Import

Profile Sync — Export & Import

Profile Sync — Export & Import

| (0) | Free
Export and import your VS Code extensions, keybindings, settings, snippets and tasks as a single portable profile file.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Profile Sync — Export & Import for VS Code

Back up and move your entire VS Code setup between machines in one click. Profile Sync exports your extensions, keyboard shortcuts, user settings, snippets and global tasks into a single portable .vscprofile.json file, and restores them on any other installation of VS Code, VS Code Insiders, Cursor or VSCodium.

Publisher: ballwictb · License: MIT

Features

  • One-click export of your full profile into a single JSON file.
  • Granular import: pick exactly which sections you want to restore.
  • Auto-installs missing extensions using the bundled VS Code CLI.
  • Safe imports: creates a timestamped backup of your current configuration before any change, so you can always roll back.
  • Deep settings merge: incoming settings are merged on top of yours instead of blindly overwriting.
  • Filters machine-specific keys (e.g. window.zoomLevel, terminal env variables) so you don't pollute a new machine.
  • JSONC aware: correctly parses settings.json and keybindings.json even with comments and trailing commas.
  • Works with VS Code, VS Code Insiders, VSCodium and Cursor.

Commands

All commands are available from the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) under the Profile Sync category:

Command Description
Profile Sync: Export Profile… Export a full profile to a .vscprofile.json file.
Profile Sync: Import Profile… Import a profile file, choosing which sections to apply.
Profile Sync: Export Extensions Only… Export just the list of installed extensions.
Profile Sync: Import Extensions Only… Install extensions from a profile file.
Profile Sync: Export Keybindings Only… Export only your keyboard shortcuts.
Profile Sync: Import Keybindings Only… Replace keybindings from a profile file.
Profile Sync: Show Current Profile Summary Preview what a full export would contain.

Configuration

Setting Default Description
profileSync.includeExtensions true Include installed extensions in exports.
profileSync.includeKeybindings true Include keybindings in exports.
profileSync.includeSettings true Include user settings in exports.
profileSync.includeSnippets true Include user snippets in exports.
profileSync.includeTasks false Include global tasks.json in exports.
profileSync.autoInstallExtensions true Auto-install missing extensions on import.
profileSync.backupBeforeImport true Backup current configuration before importing.
profileSync.excludedSettingsKeys [...] Setting keys (or dotted prefixes) to skip on export.

Profile file format

Exports are plain JSON files with a stable schema:

```jsonc { "schemaVersion": 1, "generator": "vscode-profile-sync", "generatorVersion": "1.0.0", "exportedAt": "2026-04-19T12:34:56.000Z", "platform": "darwin", "label": "my-laptop — 2026-04-19", "profile": { "extensions": [{ "id": "dbaeumer.vscode-eslint", "version": "3.0.10" }], "keybindings": [{ "key": "ctrl+k ctrl+t", "command": "workbench.action.selectTheme" }], "settings": { "editor.fontSize": 14 }, "snippets": { "javascript.json": "{ ... }" }, "tasks": { "version": "2.0.0", "tasks": [] } } } ```

Files produced by Profile Sync use the .vscprofile.json extension so they stay recognisable, but plain .json files are also accepted.

How it works

Profile Sync reads and writes directly to the standard VS Code User configuration directory:

  • Windows — %APPDATA%\Code\User
  • macOS — ~/Library/Application Support/Code/User
  • Linux — ~/.config/Code/User

(Insiders, VSCodium and Cursor folders are detected automatically.)

Extensions are installed using the VS Code CLI (code --install-extension) since the extension host API does not expose a public installer.

Backups

When profileSync.backupBeforeImport is enabled (default), a snapshot of your current settings.json, keybindings.json, tasks.json, snippets/ folder and the list of installed extensions is copied to:

``` /.profile-sync-backups// ```

You can delete old backups at any time.

Privacy

Profile Sync operates entirely locally. No data ever leaves your machine — you are in full control of where exported files are saved and shared.

Development

```bash pnpm install pnpm run watch

Press F5 in VS Code to launch the Extension Development Host

```

License

MIT © ballwictb

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft