If you are self-hosting n8n Community Edition, you already know the pain: no built-in version control. Enterprise has Source Control at €667/mo, but for Community users, there is nothing.
I got tired of manually exporting workflow JSON, committing it, and fixing credentials by hand when promoting from staging to production. So I built n8n-sync — a CLI that gives you Git-friendly version control for your n8n workflows.
What it does
-
n8n-sync pull— exports all workflows to normalized JSON files (readable diffs!) -
n8n-sync push— creates/updates workflows with credential mapping + dry-run -
n8n-sync diff— shows semantic differences between local files and your instance -
n8n-sync status— lists all workflows with drift detection
Why it is useful
-
diff --checkexits 1 on drift — perfect for CI pipelines - Credential mapping between staging/production without manual fixes
- YAML frontmatter + sorted JSON = actually readable Git diffs
- No n8n Enterprise required
Install
pip install n8n-sync Quick start
n8n-sync init n8n-sync pull n8n-sync diff --check n8n-sync push --dry-run n8n-sync push The problem it solves
Without version control, self-hosted n8n workflows are a black box:
- No history of changes
- No way to review workflow modifications before they go live
- No CI/CD integration
- Credentials break when copying between instances
- Cannot rollback a broken workflow
n8n-sync fixes all of this by making your workflows first-class Git citizens.
Repo: https://github.com/badwalx/n8n-sync
Would love feedback from other self-hosters. What is missing? What would make this useful for your workflow?




