~/.nu/compose.yaml:
They run as your user, from the
UID and GID in ~/.nu/.env, so the files
in ~/.nu stay yours.
compose.yaml is replaced on every update. Put your changes in
~/.nu/compose.override.yaml, which Compose merges in. To stay on a version,
set NU_VERSION in ~/.nu/.env, such as NU_VERSION=0.2 for the latest 0.2
release.
Manage the services with docker compose from ~/.nu:
mem_limit so a large build can’t starve the rest of Nu.
The kernel keeps each turn’s record for a year. To change that, set
REBUNO_RETENTION in ~/.nu/.env to a duration, such as REBUNO_RETENTION=2160h
for 90 days.
Network
Nu publishes one port, 4122, and only on localhost. The terminal client and the browser handoff pages use it. To use the client from another machine, see Remote access. The kernel’s port stays inside the Compose network. Other services there can scrape its Prometheus metrics atnu:4117/metrics.
Remote access
The terminal client can talk to Nu on another machine, such as a home server. Install only the client there:~/.nu/client.json. Everything else
stays on the server: chats, memory, secrets, packages, and settings. Commands
such as nu login, nu install ./my-package, and nu mcp add act on the
server, and sign-in redirects open in the browser on your machine.
Dashboard
The Rebuno dashboard shows every turn step by step, along with pending approvals and the policy. It is optional:NU_DASHBOARD_PORT for another port. It
holds the kernel’s admin token, so it only listens on localhost. To start it
with the rest of Nu, add COMPOSE_PROFILES=dashboard to ~/.nu/.env.
Without Docker
Nu can also run straight from a checkout, with Postgres and therebuno kernel
on your PATH:
pnpm nu opens the client. NU_HOME sets the data directory, and
NU_DB_URL points Nu at an existing Postgres database. Without Docker there is
no sandbox.