← ClaudeAtlas

developlisted

Run Chimaera locally and iterate on it — the daemon + Vite web-UI dev loop, ports, dev-mode auth, the build-embeds-UI gotcha, the isolated per-worktree daemon (chimaerad-isolated), and where things live. Use when starting to develop or run the app, when a change needs the real daemon/UI to see, when working in a git worktree or alongside another daemon, or when the dev server won't come up (port in use, Node version, blank UI).
martinappberg/chimaera · ★ 2 · Code & Development · score 63
Install: claude install-skill martinappberg/chimaera
# Developing Chimaera locally Chimaera is a Rust daemon (`crates/`) that embeds and serves a Svelte web UI (`web-ui/`), plus a standalone Tauri app (`crates/chimaera-app`). See [AGENTS.md](../../../AGENTS.md) for the repo map; this skill is the run loop. ## The dev loop (do this to develop the UI + daemon) Run the daemon and the Vite dev server side by side, then work against `http://localhost:5173`. The launch configs are in [`.claude/launch.json`](../../launch.json): - **chimaerad** → `cargo run -p chimaera -- serve --port 9700` - **web-ui** → Vite on 5173, proxying `/api`, `/ws`, `/raw` to the daemon on 9700 Prefer the preview tooling to start them (`preview_start` with the `chimaerad` then `web-ui` config), or `just`: ```sh just dev-ui # Vite dev server (assumes a daemon is already running) # in another shell: cargo run -p chimaera -- serve --port 9700 ``` **Auth is automatic in dev.** Vite exposes the local daemon's `~/.chimaera/manifest.json` at `/dev/manifest` (dev-only middleware, absent from production builds), so the page picks up the bearer token itself — don't hand-copy tokens. Point a second UI at a different daemon with `CHIMAERA_DEV_TARGET=http://127.0.0.1:<port>` (see the `web-ui-sandbox` config). ## Isolated per-worktree run (coding agents — use this in a worktree) The default `chimaerad` / `web-ui` configs hardcode ports 9700 / 5173 and share `~/.chimaera`. That collides the moment a second worktree or chat is live: `serve` **writes the manif