DOCUMENT OPS

Upload only changed Figma slices by diffing hashes against the Coda manifest

On a schedule, re-exports every Figma slice, compares each content hash to the last recorded version in Coda, and uploads to R2 only the assets that actually changed.

CategoryDocument Ops
Enginesim
Difficultyintermediate
Triggerschedule
Steps6
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerDaily schedule
  • ActionExport and hash all Figma slicesFigmaFigma
  • ActionLook up latest hash per asset in CodaCodaCoda
  • LogicBranch: skip unchanged, keep changed/new
  • ActionUpload changed slices to R2CloudflareCloudflare R2
  • OutputWrite new version rows to Coda manifestCodaCoda

What it does

Keeps your CDN in sync with Figma without re-uploading everything. On each run it exports the current slices, computes a content hash per asset, and checks it against the version already logged in the Coda manifest. Only genuinely changed assets are pushed to R2 and recorded as a new version.

When to use it

Use it for large icon or illustration sets where a full re-export wastes bandwidth and clutters version history. It is ideal when most assets are stable between releases and you only want CDN churn for the handful that designers actually touched.

How it works

  1. 1A daily schedule kicks off the sync.
  2. 2The flow exports every export-marked slice from the Figma file and hashes each one.
  3. 3For each asset it looks up the latest hash stored in the Coda manifest.
  4. 4A logic step splits assets into unchanged (skip) and changed/new (upload).
  5. 5Changed assets are uploaded to R2 under a fresh content-hashed key.
  6. 6New version rows are written back to the Coda manifest, leaving unchanged assets untouched.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect FigmaFiles, frames, comments, assets.
  2. 2
    Connect Cloudflare R2Object storage, S3-compatible.
  3. 3
    Connect CodaDocs, packs, automations.
  4. 4
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  5. 5
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  6. 6
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.