Setting up Brunch

Installing the prerequisites and launching Brunch for the first time


Brunch runs locally as a command-line tool, published as @hashintel/brunch. There's nothing to install ahead of time to launch the UI — npx fetches it on demand — but cooking a plan needs two extra tools on your machine first.

Because Brunch is an active research project, the prototype evolves quickly. Expect the interface and feature set described here to change; this page documents the intended flow rather than a frozen release.

Prerequisites

cook shells out to two tools, so install both before your first run:

  • pi — the coding agent that writes the code for each step (version 0.74 or newer, on your PATH).
  • bun — used as a runtime by the demo fixtures.
npm i -g @earendil-works/pi-coding-agent
curl -fsSL https://bun.sh/install | bash

Configuration

Add your model API key to a .env in the directory you'll run from. For the live Petrinaut view, also set the port and Petrinaut URL. Shell environment variables work too, and win over .env.

# required
ANTHROPIC_API_KEY=sk-ant-…

# required for the live --petrinaut-stream view
PORT=6006
PETRINAUT_URL=https://petrinaut.example/brunch?sse=http://localhost:6006/stream

Launching Brunch

With the prerequisites in place, launch Brunch in the project directory you want to work in:

npx @hashintel/brunch@latest

This opens the web UI, where you describe the small app you want. Brunch interviews you and writes a reviewable specification into the local .brunch/ folder — the input to the rest of the loop. Pick New concept from scratch for your first run.

Next steps

  • Follow the full walkthrough — spec, plan, and live build — in the Run guide.
  • Understand what happens under the hood in How it works.