Command Inbox
Reference

Scripts and CLI

npm/bun scripts and utility commands

Defined in root package.json.

Application scripts

ScriptCommandPurpose
devnext devStart development server (port 3000)
buildnext buildProduction build
startnext startStart production server
lintnext lintESLint

Database scripts

ScriptCommandPurpose
db:migratebun scripts/migrate.tsApply Drizzle SQL migrations
db:studiodrizzle-kit studioOpen Drizzle Studio GUI

Corsair scripts

ScriptCommandPurpose
corsair:setupbun scripts/corsair-setup.tsInitialize Corsair schema + integrations
corsair:resetbun scripts/corsair-reset.tsWipe Corsair data (destructive — requires reconnect)
smoke:corsairbun scripts/smoke-corsair.tsSanity check Corsair API connectivity
gmail:watchbun scripts/gmail-watch.tsRegister Gmail Pub/Sub watch

Composite scripts

ScriptCommandPurpose
phase0db:migrate && corsair:setup && smoke:corsairFull Phase 0 bootstrap

Documentation scripts (root)

ScriptCommandPurpose
docs:devbun run --filter command-inbox-docs devFumadocs dev server (port 3001)
docs:buildbun run --filter command-inbox-docs buildBuild docs site

Script file locations

PathPurpose
scripts/migrate.tsMigration runner
scripts/corsair-setup.tsCorsair initialization
scripts/corsair-reset.tsCorsair reset
scripts/smoke-corsair.tsAPI smoke test
scripts/gmail-watch.tsGmail push watch registration

Typical workflows

Fresh local setup:

bun install
cp .env.example .env.local
# fill env
bun run phase0
bun dev

Production migration:

DATABASE_URL="postgresql://..." bun run db:migrate
DATABASE_URL="postgresql://..." bun run corsair:setup

Docs development:

bun run docs:dev

Package manager

Project uses Bun for install and script execution. Vercel builds use bun install and bun run build per vercel.json.