CommandCenter is an AI-assisted operations console that orchestrates autonomous agents, tasks, and workspaces. The repository is a pnpm monorepo; the primary application lives under apps/commandcenter (React/Vite client + Express/WebSocket API).
pnpm install
pnpm approve-builds better-sqlite3
cd apps/commandcenter
pnpm dev- Client (Vite) runs on http://localhost:5173.
- API + proxy server runs on http://localhost:5000 and serves the built client in production.
- WebSocket endpoint: ws://localhost:5000/ws.
Copy apps/commandcenter/.env.example to .env and fill in JWT_SECRET, DATABASE_URL, etc., before hitting protected routes.
- Verify with
pnpm lint,pnpm --filter rest-express typecheck,pnpm testbefore pushing changes (seeVERIFICATION_CHECKLIST.md).
| Topic | Location |
|---|---|
| High-level architecture | docs/ARCHITECTURE.md |
| Developer workflow & conventions | docs/DEVELOPMENT.md |
| Current status & verification | PROJECT_STATUS.md, VERIFICATION_CHECKLIST.md |
| API contract reference | API_REFERENCE.md |
| Walkthrough / onboarding | WALKTHROUGH.md |
apps/
commandcenter/ # Web + API bundle (Vite + Express)
packages/
shared/ # Shared Zod schemas and types
core/ # Placeholder for reusable UI utilities
The client relies on typed React Query hooks (@/api/useCommandCenterApi) and a WebSocket reconciler (@/lib/websocket). The server defaults to a SQLite-backed SqliteStorage, with an in-memory fallback for testing (STORAGE_BACKEND=memory).
pnpm lint- ESLint across client and server packages.pnpm test- Vitest suites covering auth routes and client auth utilities.pnpm --filter rest-express typecheck- runstsc --buildfor the Express bundle.- The codebase favours Zod validation at the boundary; extend
packages/shared/schema.tswhen adding new resources.
- Add integration coverage for auth/storage flows (Vitest or Playwright).
- Finalise Neon/Postgres wiring once the managed database is provisioned and align Drizzle schema.
- Migrate demo data seeding into fixtures and document the workflow in
docs/DEVELOPMENT.md. - Expand WebSocket payload handling to cover workspace switching and richer agent activity.