LoomSignal
Docs← Back to site
Operation

Living with it, day to day

Once it's running, LoomSignal mostly looks after itself — sources refresh on their own and upgrades roll back if anything's off. When you do need to reach in, there's one CLI for everything.

Zero-drama upgrades
Stage new binary
Snapshot store
Atomic swap
Restart
Verify /readyz
Not ready in time? Automatic rollback — binary and data snapshot restored.

Sources stay fresh on their own

Connected sources sync in the background — the first pass runs at startup, then on a schedule you set (hourly by default). No cron, no tokens to pass around, no separate worker to babysit. Git repos are picked up automatically as they change.

One CLI for everything

The commands you’ll actually reach for, grouped by what you’re doing.

Run & connect
loomsignal init
Guided first-time setup — model, network, access, sources, service.
loomsignal serve
Run the daemon (usually managed by systemd for you).
loomsignal connect <git-url>
Add a git repo as a source and keep it in sync.
loomsignal source add|list
Connect and inspect your tool integrations.
Inspect context
loomsignal query <text>
Ask for governed context from the command line, with citations.
loomsignal entities
Browse the resolved entities LoomSignal knows about.
loomsignal doctor
Verify the provenance chain and show what's held back from gold and why.
Resolve conflicts
loomsignal contradictions
List where sources currently disagree.
contradictions resolve|dismiss
Settle a conflict, or dismiss it as expected.
identity assert-same|assert-distinct|split
Tell LoomSignal two names are (or aren't) the same real thing.
Maintain
loomsignal backup
Take a hot, consistent snapshot of the store.
loomsignal update [binary]
Swap in a new version safely, with automatic rollback.
loomsignal principal add
Mint a scoped access token for an agent or bot.

When sources disagree

Contradictions aren’t errors to suppress — they’re the signal that two sources of truth have drifted. LoomSignal surfaces them, keeps serving the settled context, and lets you resolve on your terms: merge two identities, mark one version as canonical, or dismiss a known-benign conflict. A human decision always outranks an inferred one.

Contested state is never stored as a flag to be forgotten — it’s derived fresh every time context is read, so a conflict can never quietly go stale.

Health & monitoring

The service exposes standard endpoints for whatever you already run — liveness, readiness, and Prometheus metrics — plus structured logs.

health check
curl -s localhost:8787/readyz     # ready to serve?
curl -s localhost:8787/metrics    # Prometheus metrics
journalctl -u loomsignal -f       # structured logs

Upgrades that can’t leave you stranded

An upgrade stages the new binary, snapshots the store, swaps atomically, restarts, and verifies the service is ready. If it isn’t ready in time, both the binary and the data snapshot are restored automatically — so a bad build never becomes an outage. Schema changes take a fail-safe backup before they run.

Back to Overview