cursor for data · local-first · duckdb-powered
The execution layer is solved - DuckDB runs SQL brilliantly. The unsolved problem is that people don't understand their data: which tables exist, how they connect, which join is correct. QueryPad is an AI CLI that answers those questions first, then writes the SQL.
$ querypad inspect ./data Tables: 3 Relationships: 2 payments.user_id ↳ users.id (100%, many-to-one) events.user_id ↳ users.id (100%, many-to-one) Wrote artifacts to ./data/.datactx $ querypad ask "total payment amount by user plan" ./data -- SQL SELECT u.plan, COUNT(*) AS payment_count, SUM(p.amount) AS total FROM payments p JOIN users u ON p.user_id = u.id GROUP BY u.plan plan payment_count total ---- ------------- ------ paid 8 285.74 Insight: All payments come from paid-plan users.
Point it at a folder of CSV / Parquet / JSON files - or attach a live database - and it builds a machine-readable picture of your data that both its own agent and yours can trust.
Pre-release - runs from source today. Node ≥ 20.
$ git clone https://github.com/kiyeonjeon21/querypad && cd querypad $ npm install && npm run build && npm link $ querypad inspect ./your-data
npm package and native desktop app are on the roadmap.