How Git Sync Works
Each sync cycle pulls the configured branch, imports changes from Git into the Automation Server, exports local automation changes, and pushes a commit when the synchronized files changed. By default, each automation is stored in its own directory under the configured path:automation.yaml file stores the automation configuration. Files from an uploaded automation bundle are expanded under tarball/ so Git can show meaningful diffs.
Git Sync is bidirectional. A change made in Agent Canvas is exported to Git, while a change merged into the synchronized branch is imported into Agent Canvas during the next cycle. If the same automation has pending local changes, the local version takes precedence for that cycle.
Requirements
Before configuring Git Sync, make sure you have:- A healthy Agent Canvas backend with a version of Automation Server that supports Git Sync
- Permission to manage automations on that backend
- A Git repository and branch dedicated to the synchronized automation files
- An HTTPS access token with read and write access when the repository is private
Configure Git Sync
- Open the
Automateview in Agent Canvas. - Select
Git Syncnear the top of the automation list. - Configure the repository:
Repository URL: The HTTPS clone URL, such ashttps://github.com/example/automation-backup.git.Branch: The branch Git Sync pulls from and pushes to. The default ismain. Git Sync creates the branch during the first cycle if it does not exist.Path: The repository-relative directory that holds automation files. The default isautomations.Access token: Required for private repositories. The token needs permission to read and push repository contents.
- Set
Sync every (seconds):- Enter
0to sync only when you selectSync now. - Enter a positive number to run automatic sync cycles at that interval.
- Enter
- Optionally set the commit author name and email. Leave these fields blank to use the backend defaults.
- Optionally enter an encryption key. See Encrypt Synchronized Files before enabling this option.
- Turn on
Enable Git Sync. - Select
Save and sync now.
Encrypt Synchronized Files
An encryption key encrypts each automation file before it is committed. The repository then contains ciphertext instead of readable YAML and script content. Encryption protects the contents stored in Git, but it also prevents normal code review and meaningful diffs. Use it when repository-level access controls are not sufficient for the sensitivity of your automation definitions. The access token and encryption key entered in Agent Canvas are encrypted before the Automation Server stores them. Leaving either secret field blank keeps its current value. Use the corresponding clear option when you intend to remove a stored secret.Edit Automations Through Git
Use a pull request when you want to review automation changes before Agent Canvas imports them:- Create a branch from the synchronized branch.
- Edit the automation’s
automation.yamlor files undertarball/. - Open and review a pull request.
- Merge the pull request into the synchronized branch.
- Wait for the next automatic cycle or select
Sync now. - Open the automation in Agent Canvas and confirm the imported configuration before running it.
If file encryption is enabled, edit automations in Agent Canvas instead. Encrypted repository files are not directly editable or reviewable.
Pause or Run Sync Manually
Turn offEnable Git Sync and save to pause synchronization without deleting the repository configuration. Turn it on again to resume.
Select Sync now to start a cycle immediately. The request schedules the cycle in the background, and the activity row follows it until it succeeds or fails. If another cycle is already running, Agent Canvas follows that cycle instead of starting a duplicate.

