← Back to Main Dashboard

Open Design

Status: active (daemon-only mode) Started: 2026-07-16 Path: /opt/data/open-design/ Daemon: http://127.0.0.1:7456 MCP: config.yaml → url: http://127.0.0.1:7456/mcp Version: 0.15.1


What It Is

Open source Claude Design alternative. Agent-native, model-agnostic design tool. Spawns coding agents to produce HTML/CSS prototypes, dashboards, decks, images, videos.

Tech Stack

Deployment Mode

Daemon-only — Web UI consumes 2.5GB+ RAM (Next.js dev mode), causes OOM on 7.5GB Zeabur free-tier. Daemon alone uses ~475MB.

Start Command

export PATH="/opt/data/home/.nvm/versions/node/v24.18.0/bin:$PATH"
cd /opt/data/open-design
OD_PORT=7456 OD_HOST=0.0.0.0 OD_API_TOKEN=<token> node apps/daemon/dist/cli.js --port 7456 --host 0.0.0.0 --no-open

Health Check

curl -s http://127.0.0.1:7456/api/health
# Should return: {"ok":true,"version":"0.15.1"}

API Endpoints

Pitfalls

  1. Node version mismatch: Background processes use system Node 22, not nvm Node 24. Must export PATH with nvm node before starting daemon.
  2. 0.0.0.0 requires token: Binding to 0.0.0.0 requires OD_API_TOKEN env var. Generate with openssl rand -hex 32. Loopback (127.0.0.1) doesn't need token.
  3. better-sqlite3 compiled for wrong Node: If Node version differs from compile time, native module fails with ERR_DLOPEN_FAILED. Rebuild with pnpm rebuild better-sqlite3.
  4. Web UI resource hog: Next.js dev server = 2.5GB+ RAM. Never deploy on constrained servers. Use daemon-only mode.
  5. MCP config: Use HTTP URL (http://127.0.0.1:7456/mcp), not file path.

Related Files