Skip to content

Data and storage

Reference2026-11-09

What Syntope Tokens stores, where it is stored, and which hosts it can reach. Syntope Tokens is in early beta, so file metadata can still change. Keep your repository as the durable copy.

What is stored where

Data Location Travels with the Figma file
Complete project: token sets, tokens, themes Plugin data on the Figma file Yes
Bindings of a layer Plugin data on that layer Yes
Git connection: provider, repository, branch, path, last revision Plugin data on the Figma file Yes
Figma variable links: collection, mode and variable IDs Plugin data on the Figma file Yes
Personal access token Figma client storage, per connection No
Syntope Bridge pairing keys Figma client storage No
Appearance and window size Figma client storage, per file No
Undo history and unsaved JSON drafts Memory of the open plugin No, lost when the plugin closes

Plugin data lives in the file and only this plugin reads it. Duplicating a file carries the project and its bindings along. Client storage lives on this computer, so a collaborator who pulls or pushes pastes a token on their computer once. Anyone else can edit tokens in the file without Git access.

With a connected repository, Git is the source of truth and the file holds the working copy the plugin reads and applies from. Without one, the plugin shows local document and the file holds the only copy.

How the project is saved

The project is stored as JSON, split into chunks of up to 90,000 bytes, with at most 1,000 chunks. A save writes the complete new version first and switches to it in one step, so a failed save leaves the previous version intact.

If the stored project cannot be read, the plugin shows your tokens could not be loaded. See Troubleshooting.

Bindings on layers

A binding stores the token’s internal ID, a copy of its set and path for display, its type and its apply target. A layer has one binding per target. Bindings are what the inspect tab reads and sync to: selection replays. Above 80,000 bytes on one layer the plugin warns, and at 90,000 it refuses the apply.

In your repository

A pull or push moves the project files only: standard DTCG Format and Resolver documents. Syntope-specific data sits in $extensions under the eu.syntope.* namespace, so the files stay valid DTCG. See Extensions and Storage.

Network access

manifest.json allows exactly these hosts. Figma blocks every other request from the plugin.

Host Used for
https://api.github.com GitHub sync
https://gitlab.com GitLab sync
https://api.bitbucket.org Bitbucket Cloud sync
ws://localhost:41414 Syntope Bridge, the local connection to Syntope MCP, which you pair yourself

No Syntope server sits between the plugin and your Git host. The plugin calls the provider directly from Figma, over HTTPS, and refuses redirects. The connection to Syntope Bridge stays on your computer.

The manifest also declares the currentuser permission. Version 0.2.0 does not read the current user.

Access tokens

Your personal access token stays in client storage on this computer. It is never written to plugin data or to the repository. The plugin does not encrypt it, and it is sent only to the provider. Limit the token to one repository and give it an expiry date. Disconnecting deletes it from this computer.

Undo

Change How to take it back
Tokens, sets, themes, imports and pulls Undo in the plugin header, up to 50 steps while the plugin stays open, or Cmd+Z in Figma
Apply, sync to: selection, removing a binding, a variable sync Cmd+Z in Figma, one step per action
A push Revert the commit in Git

Undo stops working once the project changes from outside its history, for example through Figma undo. Save a change to continue.

Starting over

There is no reset button. To clear a project, delete its token sets and themes. Bindings stay on the layers. Remove them per selection in inspect.