Operator setup

Builder quickstart without guesswork.

This is the stable public setup surface behind Chopshopr's local MCP and NemoClaw receipts. Copy one registration, prove one state change, then close on the same build and ship gate the repo uses.

Register One default model per surface

Keep baseline and Super as separate MCP registrations so normal prompts stay boring.

Prove Read 401 and doctor states literally

A protected endpoint or empty sandbox state is a clue, not a reason to flatten the stack.

Ship Use the verified worktree gate

Build first, direct-ship second, deploy third when the public site changed.

First move Register baseline or Super

Start from the exact public command instead of reconstructing flags from memory.

Proof receipt Run one truth check after each layer

Endpoint auth, doctor state, and ship gate each answer a different question.

Next step Switch to the deeper setup note only when needed

The essay explains the why; this route keeps the commands and state checks close.

Chopshopr package

Copyable registrations, truth checks, and the ship gate.

Chopshopr exposes two reusable MCP entrypoints: local inference through src/index.js and bounded host operations through src/nemoclaw-mcp.js. This route keeps the normal operator loop compact.

Baseline

Nemotron 3 Nano A3B via vLLM

Default local inference surface for normal work.

codex mcp add local-llm-nemotron-baseline -- \
  env LOCAL_LLM_BACKEND=vllm \
      VLLM_BIN=/home/chopshopr/venvs/nemotron-super-vllm/bin/vllm \
      LOCAL_LLM_MODEL=nvidia/nemotron-3-nano-30b-a3b \
      LOCAL_LLM_MODEL_PATH=/home/chopshopr/models/offline/transformers/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16 \
      LOCAL_LLM_SERVED_MODEL_NAME=nvidia/nemotron-3-nano-30b-a3b \
      LOCAL_LLM_BASE_URL=http://127.0.0.1:8007/v1 \
      LOCAL_LLM_API_KEY=local-dev-token \
      VLLM_MAX_MODEL_LEN=8192 \
      node /home/chopshopr/code/chopshopr/src/index.js
High reasoning

Nemotron 3 Super via vLLM

Separate heavy-reasoning path so it never masquerades as the everyday default.

codex mcp add local-llm-nemotron-super -- \
  env LOCAL_LLM_BACKEND=vllm \
      VLLM_BIN=/home/chopshopr/venvs/nemotron-super-vllm/bin/vllm \
      LOCAL_LLM_MODEL=nvidia/nemotron-3-super \
      LOCAL_LLM_MODEL_PATH=/home/chopshopr/models/offline/transformers/NVIDIA-Nemotron-3-Super-120B-A12B-NVFP4 \
      LOCAL_LLM_SERVED_MODEL_NAME=nvidia/nemotron-3-super \
      LOCAL_LLM_BASE_URL=http://127.0.0.1:8000/v1 \
      LOCAL_LLM_API_KEY=local-dev-token \
      node /home/chopshopr/code/chopshopr/src/index.js
Host ops

NemoClaw + OpenShell bridge

Bounded doctor, status, logs, and sandbox operations live on their own MCP surface.

codex mcp add nemoclaw -- \
  node /home/chopshopr/code/chopshopr/src/nemoclaw-mcp.js
Local endpoint proof

Check health before prompts.

bun run wait:local-llm
curl -i http://127.0.0.1:8007/v1/models
curl -s -H "Authorization: Bearer local-dev-token" \
  http://127.0.0.1:8007/v1/models

A 401 from /v1/models means the server is up and the probe forgot credentials.

Doctor-state proof

Read NemoClaw literally.

bun run setup:nemoclaw:spark -- --onboard
nemoclaw_doctor
nemoclaw_run status

No sandboxes registered is a normal pre-onboarding state. It means the bridge answered.

Ship gate

Use the same contract the repo ships.

bun run worktree:check
bun run build
bun run ship:mainline

If a public route changed, deploy and verify the live URL instead of treating a pushed SHA as publish proof.