···15151616Asterism connects directly to the relay Firehose (`com.atproto.sync.subscribeRepos`), decodes each repo commit's CAR-framed CBOR blocks itself, and recursively walks each record for link references (strong refs, AT-URIs, DIDs, URLs). Links are stored keyed by target, source collection, and field path. It can optionally backfill existing repos for your configured collections on startup so the index is useful immediately.
17171818-This matters for three reasons:
1919-2020-**Sovereignty** — No middlemen. Asterism reads straight from the relay Firehose, and doesn't rely on secondary processors like Jetstream.
2121-2222-**Latency** — Fewer hops also means fresher data faster. Asterism reduces Constellation's Relay → Jetstream → Constellation to a single hop, Relay -> Asterism.
2323-2424-**Verifiability** — Firehose commits carry signed MST proofs; Jetstream strips them and re-serializes as plain JSON. Asterism verifies each record against its repo's signed commit instead of trusting an upstream re-encoding.
1818+Because Asterism connects directly to the relay Firehose, and doesn't rely on secondary processors like the Jetstream, it can achieve very low latencies for near-realtime backlinks while preserving MST integrity checks.
25192620```
2727-Relay ──► Jetstream ──► Constellation (preprocessed events)
2828-Relay ──► Asterism (raw commits, filter locally)
2121+Relay ──► Jetstream ──► Constellation ──► Apps
2222+Relay ──► Asterism ──► Apps
2923```
30243125## Quick start