Skip to Content

CLI

The ZəkaHouse CLI is the primary tool for deploying, managing, and developing ZəkaHouse. It orchestrates Docker Compose services and provides an interactive setup wizard for production deployments, as well as a full local development environment.

$ zeka-learnhouse --help
Usage: zeka-learnhouse [options] [command]

The ZakaHouse CLI — deploy, manage, and operate your ZakaHouse instance

Installation

The CLI ships inside the ZəkaHouse repository — it is not published to npm. You build it from a clone of the repository and run it from there.

Don’t use npx learnhouse. That resolves to the unrelated learnhouse package on the public npm registry, which installs upstream LearnHouse — a different product — not ZəkaHouse.

1. Install the prerequisites

You need Docker (with Docker Compose v2), Node.js 18+, and Bun. On macOS or Linux, apps/cli/install.sh in the repository installs Docker and Node.js for you; on Windows, use apps/cli/install.ps1.

2. Build the CLI

From a clone of the repository:

cd apps/cli
bun install
bun run build

3. Put zeka-learnhouse on your PATH

The examples throughout these docs call the CLI as zeka-learnhouse. Link it once from apps/cli to make that command available everywhere:

npm link

Alternatively, skip linking and run it directly from apps/cli — bun dist/bin/learnhouse.js <command> is equivalent to zeka-learnhouse <command>.

4. Run the setup wizard

zeka-learnhouse setup

Requirements

  • Node.js 18+
  • Bun (to build the CLI)
  • Docker with Docker Compose v2

What It Does

The CLI handles two main workflows:

Production Deployment

The setup wizard generates a complete Docker Compose deployment with:

  • ZəkaHouse app (learnhouse-app) container (Next.js + FastAPI)
  • PostgreSQL database (with optional pgvector for AI)
  • Redis cache
  • Caddy or Nginx reverse proxy (with optional auto-SSL)

Each deployment gets a unique ID, allowing multiple instances on the same machine.

Local Development

The dev command starts infrastructure in Docker and runs the API, web, and collaboration servers locally with hot reload.

Quick Reference

CommandDescription
zeka-learnhouse setupInteractive setup wizard
zeka-learnhouse startStart all services
zeka-learnhouse stopStop all services
zeka-learnhouse updateUpdate to latest or a specific version
zeka-learnhouse statusShow service status
zeka-learnhouse healthRun health checks
zeka-learnhouse logsStream container logs
zeka-learnhouse configShow installation info
zeka-learnhouse envEdit environment variables
zeka-learnhouse backupBackup database
zeka-learnhouse restore <archive>Restore database from backup
zeka-learnhouse doctorRun diagnostics
zeka-learnhouse deploymentsManage deployments & resource limits
zeka-learnhouse scaleSet memory limits per service (app, db, redis)
zeka-learnhouse shellOpen shell in a container
zeka-learnhouse devStart dev environment
zeka-learnhouse redeployRedeploy the Railway service with staged env vars

See Commands for the full reference including all flags.