A local-first operations console — one dashboard for your projects, tasks, goals, an agent-assignment queue, and more, backed by a plain-JSON file database and updated live as files change on disk.
It's built on one core idea: a UI and an agent (e.g. Claude Code) write the same files. Edit a record on disk and it appears in the console instantly (a chokidar watcher streams SSE events); act in the console and the JSON on disk updates. No database server, no build step for content.
This is a public template. It ships with fictional demo data ("Northwind Labs") so every module renders on first run — swap
data/for your own, or runnpm run seedto regenerate the demo set.
npm install
npm run dev # http://localhost:3000No environment variables are required — the app boots open. Optionally copy .env.local.example → .env.local to point the Skills module at a folder of markdown skills (SKILLS_DIR) or to enable a login gate (AUTH_TOKEN, empty = disabled).
- Module system — every feature is a self-contained folder under
src/modules/<id>/plus one line insrc/modules/registry.ts. Add one with the/new-moduleskill or by hand (seeCLAUDE.md). - File database (
fsdb) —src/lib/fsdb.ts: one pretty-printed JSON file per record, collections are directories underdata/, writes are atomic (temp file → rename) so readers never see a half-written file. - Live updates — a singleton chokidar watcher (
src/lib/watcher.ts) → an SSE endpoint (src/app/api/events/route.ts) → one sharedEventSourceon the client. TheLINK · LIVEindicator in the status bar reflects it. - Assignment queue — a staged work queue (
inbox → active → review → done) with areview → donegate only a human can cross. Agents claim frominbox, do the work, and close toreview; you accept in the console. - App shell — sidebar, topbar, status bar, command palette (Ctrl+K), and a boot sequence.
Overview · Projects · Tasks · Assignments · Goals · Learning · Tools · Knowledge · Architectures · Brain (force-graph) · Briefing · Activity · Skills.
Next.js 16 · React 19 · TypeScript · Tailwind v4 · chokidar · d3-force · react-markdown. No database, no external services.
Every record type, its fields, and the assignment state machine are documented in docs/data-contracts.md.
Built as a template from a personal build by Ian Provencher.