Quickstart
Ba lệnh. Không cần đăng ký.
Open Design có một entry duy nhất: pnpm tools-dev. Daemon tự tạo một thư mục ẩn .od/ cho DB SQLite của projects và artifact theo dự án. Không có bước od init.
Yêu cầu
- · Node ~24 —
nvm install 24 && nvm use 24hoặcfnm install 24 && fnm use 24 - · pnpm 10.33.x —
corepack enable && corepack pnpm --version - · Ít nhất một coding-agent CLI được hỗ trợ trong
PATH— Claude Code, Codex, Cursor, Gemini, OpenCode, Qwen, Copilot, Devin, Hermes, Kimi, Kiro, Vibe hoặc Pi (hoặc không có cái nào, nếu bạn dùng proxy BYOK)
Ba lệnh
git clone https://github.com/nexu-io/open-design.git
cd open-design
corepack enable
pnpm install
pnpm tools-dev run web Mở URL web tools-dev in ra. Bật dialog welcome, dán key Anthropic (chỉ cần cho fallback BYOK), gõ một prompt, nhấn Send.
Trạng thái lần chạy đầu
Daemon sở hữu duy nhất một thư mục ẩn.
.od/
├── app.sqlite ← projects · conversations · messages · tab đang mở
├── artifacts/ ← render «Save to disk» một lần (có timestamp)
└── projects/<id>/ ← thư mục làm việc theo dự án, cũng là cwd của agent | Muốn… | Làm thế này |
|---|---|
| Xem có gì bên trong | ls -la .od && sqlite3 .od/app.sqlite '.tables' |
| Xoá hết về trắng | pnpm tools-dev stop && rm -rf .od && pnpm tools-dev run web |
| Chuyển sang nơi khác | Chưa hỗ trợ — path đã hardcode tương đối với repo |
Lệnh vòng đời
Tất cả dưới pnpm tools-dev.
pnpm tools-dev start # khởi động daemon + web (nền)
pnpm tools-dev run web # tương đương ở foreground
pnpm tools-dev stop # dừng tất cả
pnpm tools-dev status # cái gì đang chạy, ở đâu
pnpm tools-dev logs # tail log daemon + web
pnpm tools-dev inspect # IPC vào tiến trình đang chạy
pnpm tools-dev check # health check Khởi động desktop / nền, restart trên port cố định và chi tiết dispatcher sinh media (OD_BIN, OD_DAEMON_URL), xem QUICKSTART.md trên GitHub.
Nền tảng · v0.5.0
Ba nền tảng, ba trạng thái.
0.5.0 nói thẳng từng nền tảng đang ở đâu. Chọn dòng khớp máy bạn.
| Nền tảng | Trạng thái | Ghi chú |
|---|---|---|
| macOS | Ổn định | Chỉ Apple Silicon (arm64) — không có build Intel. macOS 11 Big Sur trở lên. |
| Windows | Ổn định · chưa ký | x64, Windows 10 / 11. SmartScreen sẽ cảnh báo lần đầu — chọn More info → Run anyway. |
| Linux | Chỉ headless | Lifecycle CLI hạng nhất (install / start / stop) đã đáp xuống 0.5.0. Chưa có gói GUI — hợp với server và CI. Xem dưới. |
Linux · headless
Chạy Open Design trên server không có DISPLAY.
v0.5.0 ship một path lifecycle phi-graphics. Đẩy daemon và web lên một con Linux headless, rồi quất từ trình duyệt laptop. Cùng backend, không có shell Electron đứng trước.
pnpm install
pnpm tools-pack linux install --headless # setup một lần
pnpm tools-pack linux start --headless # daemon + web, không Electron
pnpm tools-pack linux stop --headless
pnpm tools-pack linux logs # tail log headless Gói apt, quyền namespace và chú ý FUSE đã viết trong tools/pack/README.md. Đã verify trên Ubuntu 24.04 và Arch Linux. Đáp xuống 0.5.0 qua PR #686.
Self-host · v0.5.0
Hoặc chạy như một container duy nhất.
v0.5.0 ship path Docker Compose chính thức. Một image Alpine (docker.io/vanjayak/open-design). Daemon serve cả API lẫn bản static export Next.js đã build — không cần nginx riêng, không cần container frontend riêng.
git clone https://github.com/nexu-io/open-design.git
cd open-design/deploy
OPEN_DESIGN_IMAGE=docker.io/vanjayak/open-design:latest docker compose pull
OPEN_DESIGN_IMAGE=docker.io/vanjayak/open-design:latest docker compose up -d --no-build
# → http://127.0.0.1:7456 Mặc định: bind vào 127.0.0.1:7456, cap memory 384 MB, runtime volume tại /app/.od. Đừng publish daemon ra interface công khai như vậy — API không xác thực với client ngoài trình duyệt. Đặt trước nó một reverse proxy có xác thực, tunnel SSH hoặc VPN. Doc đầy đủ: deploy/README.md. Image cố tình không bundle CLI Claude / Codex / Gemini — giữ chúng ngoài container.
Giờ thì sao?
Chọn cái gì đó để render.
Khi daemon đã lên, bạn cần một skill (làm gì), một design system (trông sao), và lý tưởng là một tham chiếu cho biết «đẹp» là thế nào.