Skip to main content
Auto-sync runs as a background service, waking on a timer, syncing every registered project and exiting. Each tick is a fresh process, so if one hangs or crashes, the next tick is unaffected. One background service per machine syncs every project registered on that machine. A project folder is registered by init or any other project command run inside it, except agents. Registering more folders adds them to the same service. daemon start never adds a folder.

status

Shows whether auto-sync is running and every project registered on this machine. Each entry includes its project ID and directory. Entries with a missing or mismatched .resumecontext.json marker are shown as skipped; they do not stop other projects from syncing.

start

Rarely needed. auth and every project command except agents start the daemon on their own if it is not running.

stop

Stops auto-sync. It restarts the next time you sign in or run a project command such as sync, so this is a pause rather than an off switch. agents is the exception, and deliberately so: it would be a poor command that silently undid a daemon stop you meant. To stop it for good, see uninstall.

On Linux servers

On Linux, auto-sync is a systemd timer that runs a sync about every 20 seconds.
  • As root, it is a system service in /etc/systemd/system. It needs no login session, keeps running after you log out and starts again after a reboot.
  • As any other user, it is a user service (systemctl --user). It only runs while that user is logged in, unless lingering is enabled. The CLI warns you when this applies. To keep it running after you log out:
If auto-sync can’t be set up, for example in a container without systemd, the CLI shows a warning with systemd’s own error. Your command still completes, and you can sync by hand with sync. After fixing the cause, run resumecontext daemon start to try again.