Updating from the network
update is the command that touches the network in the daily loop. It polls
marketplaces, refreshes the local cache, and recomputes version pins — without
touching any agent config. (The one other networked path is setup-time:
import’s plugin component re-fetches the plugins it captures from an agent’s
native config.) apply then renders from that cache, so it’s always fast, offline,
and reproducible.
agentsync update # refresh cache + show pending plugin bumpsagentsync update --apply # refresh, then applyagentsync update --apply --auto-safe # same, auto-resolving only safe changesWhy the split matters
Section titled “Why the split matters”flowchart LR
NET["marketplaces<br/>+ npm registry"] -->|update (network)| CACHE[".state/cache/"]
CACHE -->|apply (offline)| AGENTS["agent configs"]
Separating “fetch” from “render” means:
applyis deterministic — same cache in, same config out, no surprise network changes mid-apply.applyworks offline — on a plane, in a locked-down CI runner, anywhere.- Upgrades are intentional — you see pending plugin bumps from
updatebefore they take effect.
Scheduling refreshes
Section titled “Scheduling refreshes”agentsync ships no daemon. Want nightly refreshes? Wire the one-liner into your own scheduler:
agentsync update --apply --auto-safe| Platform | Mechanism |
|---|---|
| macOS | launchd agent |
| Linux | cron or a systemd timer |
| Windows | Task Scheduler |
The daily loop How --auto-safe interacts with the drift classifier.