Every sync shows what changed in a Figma library, and every change reaches your code as a pull request your team reviews. This page covers how syncs start, where to review changes, how pull requests are created and how their status comes back to FISYCO.
It applies to icons, illustrations and tokens libraries. The components library records design changes but doesn't deliver files.
Before you start
- The project has Figma connected and at least one library. See Connect Figma.
- The project has a repository connected. See Connect a repository. Without one, FISYCO has nowhere to deliver, so no changes wait for a pull request.
How a sync starts
A sync reads the library's Figma file and records what was added, modified or removed. The first one runs right after you create the library. After that, a sync starts in one of these ways:
FISYCO asks Figma regularly whether its webhook is alive and raises a notification when it breaks. A publish that changes only variables is not caught by the fallback check, so it needs the webhook or the plugin.
Only one sync runs per library at a time. While it runs, the library header shows the current stage and progress, and Cancel stops it. The page updates on its own, without a reload.
The status in the header
The library header always shows one status and the action that fits it:
Review pending changes
The Pending tab lists everything that isn't in your code yet: what changed since your last merged pull request. The tab shows the count.
- Open the library, then Pending.
- Filter by All, New or Modified.
- Select an item. For a modified icon or illustration, compare the versions in Side by side, Overlay or Slider mode.
- Check Changes by sync run to see which syncs touched the item. Each entry opens that sync.
Changes stay in Pending while their pull request is open. They leave the list when the pull request is merged.
Look through the history
The History tab lists every sync of the library. Each row shows the Trigger (manual, webhook or automation), the User who started it, when it Started and a Summary of added, modified and removed items.
Click Diff on a row to open that sync's changes. Here you can filter by New, Modified and Removed. A failed sync shows the reason instead.
When a sync was delivered, its row also shows the pull request's status and a link to it.
Create a pull request
- After a sync with changes, the header shows N pending and Create PR.
- Click Create PR. The header shows progress while FISYCO commits the files.
- When it's done, the header shows PR open. Click View PR to open it in your repository.
FISYCO generates the files from the current state of the library and commits them to a new branch. The pull request opens against the project's target branch. FISYCO doesn't merge it: your team reviews and merges it as usual.
The description lists the number of added, modified and removed items, the changes themselves, the syncs included and a link to the library. Files that an earlier delivery wrote and this one no longer generates are deleted in the same commit. Other files in the folder stay untouched.
When a pull request is already open
If new changes arrive while a pull request is open, the button reads Update PR. FISYCO adds a commit to the same pull request instead of opening another one. If that pull request was merged or closed in the meantime, FISYCO opens a new one.
Branch, title and labels
Open the library's Settings, then Pull Requests. Under PR templates, set the Branch name, the PR title and labels for added, modified and removed items. The default branch is fisyco-sync-{librarySlug}-{runId}, and the default title is FISYCO sync: {libraryName}. A label is added only when its count is above zero.
Automatic pull requests
In the same settings, turn on Automatically create a PR after each sync. FISYCO then creates or updates the library's pull request after every successful sync. The checkbox appears only when your workspace plan includes automatic pull requests.
While it's on, FISYCO doesn't accept manual pull requests for that library. An automatic pull request also goes out when the generated files change without a Figma change, for example after you edit a naming template.
Pull request status
FISYCO follows each pull request through your repository's webhooks. The status in History changes on its own:
If a repository webhook stops working, FISYCO checks the status of open pull requests every 30 seconds until the hook is repaired. The live state of every Figma and repository hook is under Registered webhooks in the project's Settings → Integrations.
FISYCO never writes to your target branch directly. Every change arrives as a pull request, and your team decides what to merge.