Skip to content

Make targets

Run make help to see this list with one-line descriptions inline.

Setup

TargetWhat it does
make onboardRecommended for first-time host setup. Interactive wizard that runs the rest of the setup steps end-to-end with progress reporting.
make setupCopies .env.example.env if missing
make installbun install for all workspaces

Docker stack (infra)

TargetWhat it does
make updocker compose up -d
make downdocker compose down (preserves volumes)
make restartdownup
make psShow running services
make healthProbe RC, Postgres, Redis, Mongo, Mem0 in one command
make logsTail all services
make logs-rocketchatTail Rocket.Chat only
make logs-mem0Tail mem0-api only
make psqlOpen psql on the Nexus DB
make redis-cliOpen redis-cli on the Redis container
make mongo-shellOpen mongosh on the Mongo container

Bootstrapping

TargetWhat it does
make bootstrapCreate the admin user, @claude + @hermes bots, #nexus-test room

Host services (Bun + tmux)

TargetWhat it does
make services-upStart gateway + composer + runtime in tmux session nexus
make services-downKill the tmux session
make services-attachAttach to the session (Ctrl-b d to detach)
make services-statusProbe each host service /health
make dev-gatewayRun gateway in foreground (no tmux)
make dev-composerRun composer in foreground (no tmux)
make dev-runtimeRun runtime in foreground (no tmux)

Web UI

TargetWhat it does
make web-buildBuild admin UI; gateway serves /admin/*
make web-devVite dev server (port 5173) with /api proxy to gateway

Bridges (per-developer)

TargetWhat it does
make create-bridge USER=<u> CWD=<path>Provision a per-user bridge AND issue a one-shot join URL. Optional NAME=<role>, CLI=<kind>.
make issue-join-link SLUG=<slug>Re-issue a fresh one-shot join URL for an existing bridge (e.g. when the previous URL was lost or expired). Optional NEXUS_JOIN_TTL_HOURS=N.
make issue-invite USER=<u>Issue an invite that lets a developer create a NEW bridge for themselves (constraints: CLI=..., SLUG_PREFIX=..., NEXUS_INVITE_TTL_HOURS=N, NEXUS_INVITE_MAX_USES=N).
make build-bridgeBundle nexus-bridge.ts to a single-file JS for distribution
make build-cliBundle the nexus CLI to packages/nexus-cli/dist/nexus.js
make invite-bot SLUG=<slug> CHANNEL=<name>Invite a bridge bot to a Rocket.Chat channel
make list-bridgesShow every bridge + last-seen timestamp

Cleanup

TargetWhat it does
make cleandown + remove orphan containers (keeps volumes)
make nukeDESTRUCTIVE. Drop containers AND volumes (data loss).

Documentation

TargetWhat it does
make docs-devVitePress dev server (port 5174)
make docs-buildBuild the docs site to docs/.vitepress/dist/
make docs-previewPreview the production build locally

Type checking

TargetWhat it does
make typechecktsc --noEmit across the monorepo

Format

TargetWhat it does
make formatRun Prettier across **/*.{ts,tsx,json,md}

Released under the MIT License.