/synclair/environment is the “where does this clone stand” section — the stack it runs
on, and whether its foundation is current with the upstream Synclair it was cloned from.
It’s the section you check before a sync, and the one that tells you a foundation update
is available.
What it is
Two things in one place:The running stack
What this hub is actually running on — Next.js, Tailwind, shadcn/ui, and the rest of
the environment.
Foundation freshness
Whether this clone is behind the upstream Synclair repository — the opt-in “call home” check.
What’s in it
- The stack view — the framework, styling, and tooling the clone runs.
- The Synclair view — the foundation freshness state: your clone’s baseline (the upstream commit it last synced to) and, when call-home is on, how many foundation updates are available with their commit titles.
How it works
Freshness uses an opt-in “call home” seam (data/mother.json). When enabled, the hub
compares your recorded baseline against the upstream repository via GitHub’s public compare API
and shows “up to date” or “N updates available” — checking is never pulling.
It’s deliberately minimal: nothing is sent but the baseline sha, there’s no telemetry,
and it’s off by default. Knowing you’re behind and choosing to pull are two
separate, deliberate acts — which is the whole doctrine of “clone, sync deliberately.”
How to act on it
Turn on freshness checks
Turn on freshness checks
--anchor <sha>).Pull foundation updates
Pull foundation updates
When you’re behind and want the updates, use the
synclair-sync skill — it pulls
them as an ordinary git merge, resolving seed vs. brain by the merge contract. Your
project’s own brand and knowledge never sync.Promote an improvement upstream
Promote an improvement upstream
If something you built here is foundation (not seed), the same skill cherry-picks it
into the upstream repository — the flywheel that improves Synclair for every clone.
Related: Setup modes
Whether updates come in as a subtree pull or a sibling merge depends on your topology.