Solo watches each open project's root directory for solo.yml changes and marks the project as out of sync when the file content differs from the last synced version.
The watcher debounces filesystem events and compares file hashes, so repeated save events do not necessarily create repeated sync prompts. If a branch switch or edit returns solo.yml to the last synced content, Solo clears the out-of-sync state.
What triggers a sync
Common cases:
git pullupdatessolo.yml- Switching branches changes, removes, or restores
solo.yml - You edit and save
solo.ymldirectly - A tool rewrites the file
- The file becomes unreadable or larger than Solo's 1 MB YAML limit
What you see
When a project needs syncing, Solo shows:
- A warning indicator in the project area of the sidebar.
- A Sync banner/action in the sidebar project UI.
- A persistent solo.yml changed toast. Click the toast to open the project in its owning workspace and window, or click its X to dismiss it without navigating.
Sync action
Click Sync to apply the latest solo.yml into Solo. Syncing can:
- Add new commands
- Update changed commands
- Remove deleted commands
- Preserve a command row across an unambiguous rename when the command string matches
If removed commands are currently running, they're stopped during sync.
YAML commands that would collide with an existing terminal or agent name are skipped instead of overwriting that non-command item.
Trust and sync
Commands may require trust again after sync when critical configuration changes. That includes changes to:
- The command string
- The working directory
- Auto-start or auto-restart behavior
- File-watch restart patterns
- Environment values
If a command variant has already been trusted on your machine, Solo can reuse that trust across branch switches even if the process name changes. Enabling Automatically trust command changes in the project settings applies trust automatically for that project's commands, so review them before you turn it on. During a sync, working directories that do not resolve safely inside the repo are not auto-trusted.
Auto-start and restarts
Sync updates configuration only. It doesn't automatically restart or auto-start commands as part of the sync action itself.