Hawkeye
Every connection in your codebase, one click away.
When you build a system with 15 external services, 110 database tables, and 377 routes, nobody can hold the full picture in their head anymore. You change one thing and something else breaks three layers away because you didn't know they were connected.
Hawkeye is the satellite view. Click on "Stripe" and instantly see: which webhooks pull data in, which tables store it, which pages display it, and which cron jobs refresh it. Search for any table, any route, any integration — see everything it touches.
It also has an Orphans tab that surfaces the dead weight: components imported by nothing, tables nobody reads, endpoints that were used once and forgotten. It's the cleanup worklist that writes itself.
A codebase scanner (hawkeye-scan.ts) walks every .ts/.tsx file, extracts Supabase .from('table') calls, parses vercel.json cron schedules, indexes external service adapters, and cross-references route definitions. Output: a 2,000-line JSON manifest mapping 26 services → 40 crons → 110 tables → 377 routes with full read/write provenance.
A React page at /architecture renders this manifest as an interactive graph (React Flow), a sortable/filterable table, and an orphans view. Click any node to open a detail panel showing upstream and downstream connections. Filter by domain (sales, marketing, ops, AI) or node type (service, table, cron, page). Stale-data banner warns when the manifest is older than 14 days.
Regeneration is on-demand (npm run hawkeye:scan), not live — architecture changes weekly, not hourly. The manifest is committed to the repo, so every session has the same picture.