This tool exists to make already-public records legible, not to surveil. Below is the full accounting of what it collects, how current that data is, and — just as important — the capabilities it deliberately refuses. Every source is a public feed; all processing runs locally on this host.
Data provenance & freshness
Record
Public source
Records
Freshness
incident reports
SpotCrime (public incident map)
5,519
9 days old
jail roster
Sangamon County Sheriff roster
525
today
arrests
Springfield Herald arrest column
681
29 days old
sex-offender registry
Illinois State Police SOR
891
today
FBI wanted
FBI Wanted public API
1,205
today
dispatch (CAD)
Broadcastify scanner feed (transcribed)
1,013
today
What this tool does
Aggregate already-public records (incidents, roster, arrests, registry, wanted).
Resolve the same person/place across sources into one transparent timeline.
Summarize records in plain language, grounded strictly on the record text.
Help draft public-records (FOIA) requests where reporting falls short.
What it will never do
No automated license-plate readers or vehicle tracking.
No facial recognition or biometric matching.
No real-time location tracking or geofencing of individuals.
No alerting or 'watchlisting' on the sex-offender registry or wanted lists.
AI guardrails (enforced in code)
Summaries are generated by a local model, then filtered by deterministic rules before anything publishes. Prompts ask for restraint; these rules enforce it. Published in full — a tool that demands transparency from institutions owes the same about itself.
Name scrub.Published AI summaries of scanner audio never contain a personal name. Any sentence naming someone is deleted before publication; people appear only as “a subject”, “the caller”, “a juvenile”.
Casualty guard.A summary cannot claim anyone was injured or killed unless the transcript itself plainly says so. Unsupported casualty sentences are deleted.
Escalation guard.Claims of a stand-off, barricade, hostage, pursuit, weapons, explosion, or “dangerous/critical condition” are deleted unless the transcript contains matching language. Mundane radio traffic must read as mundane.
Radio-code definition ban.The model may never assert what a numeric radio code “means” or “indicates”. Only codes decoded by the local Sangamon/Illinois code table are explained; everything else has no known meaning here.
Scrub-to-fallback.If the guards delete a summary's substance, the whole blurb is replaced with an honest “details are unclear from the audio” — never published half-hallucinated.
Merge veto.The AI's decision to thread a follow-up transmission into an existing incident is vetoed in code when the two mention contradictory places. Closeness in time alone never links two events, and vague housekeeping traffic (“updated location”, “radio check”) never becomes an incident.
Corrections & removals
Every record carries a “dispute this record” button and people named here can request removal — anonymously. Every resolution publishes, including rejections and why.
0 under review0 accepted0 rejected0 people suppressed
License AGPL-3.0Fully local. AI runs on-device via Ollama; no data leaves the host.
No prediction, risk-scoring of individuals, or predictive policing.
No selling, sharing, or transmitting of data to third parties.
Names on air.A name spoken on scanner audio is cross-referenced only when it exactly matches a person who already exists in an official public record (jail roster, arrest log, registry, FBI). The site never creates a person from audio, and a mention is displayed as a cross-reference, never an accusation.
Suppression honored everywhere.An accepted removal request hides the person from search, rosters, dossiers, and timelines — enforced at the API layer so no page can leak them back in.