Skip to content

Configuration

Eder Borella edited this page Sep 28, 2026 · 1 revision

Two places: environment variables for the server, and config.yaml for each project.

Environment variables

Set them in your shell, or copy .env.example to .env, which VibeBoard loads on start. A variable exported in your shell wins over .env.

Variable Default What it does
VIBEBOARD_PORT 4610 Port for the web UI and the API
VIBEBOARD_HOST 127.0.0.1 Interface to bind. 0.0.0.0 opens it to your network: see Security
VIBEBOARD_ROOT the parent of the working directory Folder scanned for existing projects, and where new ones go
VIBEBOARD_LOG_LEVEL info fatal to trace, or silent. info logs every request and every route error
VIBEBOARD_LOG_DIR logs/ in the install One JSON-lines file per day. Empty writes to stdout instead
VIBEBOARD_LOG_KEEP 14 Daily log files to keep; older ones are deleted on start
VIBEBOARD_CLAUDE_BIN claude The Claude Code executable
VIBEBOARD_OPENCODE_BIN opencode The OpenCode executable
VIBEBOARD_OPENCODE_PORT 0 (the OS picks) Port for the opencode serve VibeBoard starts
VIBEBOARD_OPENCODE_URL unset Use an opencode serve you run yourself instead
VIBEBOARD_COPILOT_TIMEOUT_MS 180000 How long one copilot turn may take
VIBEBOARD_RUN_TIMEOUT_MS 1800000 Fallback run timeout, for a project that sets none
VIBEBOARD_COPILOT_HOME ~/.vibeboard/copilot The clean config home the copilot runs in
VIBEBOARD_COPILOT_ISOLATE on 0 lets the copilot load your personal CLI config, plugins and hooks

Rarely needed, but there: VIBEBOARD_AGENT_IMAGE (the agent image, vibeboard-agent:latest), VIBEBOARD_TOKEN_FILE and VIBEBOARD_STATE_FILE (sign-in and app state, under ~/.vibeboard/), and VIBEBOARD_API_SOCKET_DIR (where agent boxes reach the API, ~/.vibeboard/run). Keep the token file outside every project: an agent's box mounts the project it works on.

A project's config.yaml

Each project keeps its settings in .vibeboard/config.yaml. Settings and the auto-pilot bar write it for you, and it is plain YAML if you would rather edit it by hand.

The Settings dialog: the copilot backend, default model and effort, chats kept and the context window

Key Default What it does
name set at creation The project's display name
boards.<board>.columns see Boards and cards Column names, in order
maxConcurrentRuns 3 Runs in flight at once; more are queued, not refused
miniatureChars 140 How much of a card's body its miniature shows
idPadding 3 Digits in a card id: E-001
keepChats 20 Copilot chats kept; older ones are pruned
contextBudget 200000 Tokens the copilot's context bar treats as full
enforceOneParent false Limit a card to one parent link. Agents are held to it either way
box.kind web The agent image: web has a browser for smoke tests; game and research do not
box.packages none System packages installed into the project's agent box
copilot.backend claude-code The default backend: claude-code or opencode
copilot.backends.<backend> The saved model and effort for each backend
autopilot.mode mini for new projects mini, express or standard
autopilot.idleMinutes 10 Mini: stop a run that has produced nothing for this long
autopilot.runTimeoutMs 1800000 Standard and Express: the longest one run may take
autopilot.attemptCap 3 Attempts a card gets on a skill before it is parked
autopilot.budgetUsd 20 Stop once the project's spend reaches this; 0 turns it off
autopilot.maxIterations 250 Stop after this many steps
autopilot.focus unset Express: the one feature auto-pilot is confined to

See Auto-pilot for what the auto-pilot settings do in each mode.

Clone this wiki locally