NeMo Relay
nemo-relay-cli installs the NeMo Relay CLI, the nemo-relay binary for local
coding-agent observability. It can configure supported coding-agent hooks, run
agents through an ephemeral gateway, and diagnose local agent and exporter
readiness.
The CLI is a Rust package in this repository, but most users should interact
with the installed nemo-relay command rather than link against the crate.
Why Use It?
The CLI is designed for these tasks:
- Observe existing coding agents: Run Claude Code, Codex, or Hermes Agent through a local NeMo Relay gateway without changing the agent itself.
- Configure transparent runs interactively: Use the setup wizard to write project or user configuration for supported agents.
- Export local sessions: Write ATIF trajectory files, ATOF event JSONL streams, or OpenInference spans from one shared config model.
- Diagnose setup readiness: Check config layers,
plugins.tomldiscovery, agent binaries, persistent coding-agent integrations, hook status, observability outputs, and shell completions withnemo-relay doctor.
What You Get
The CLI provides these capabilities:
nemo-relaybinary: The executable installed by thenemo-relay-cliCargo package.- First-run setup: Bare
nemo-relaylaunches setup when no config exists, then runs doctor once config is present. - Agent shortcuts:
nemo-relay claude,nemo-relay codex, andnemo-relay hermesstart observed agent runs. - Config-driven launch:
nemo-relay runresolves config, environment, and CLI overrides for deterministic non-interactive use. - Hook forwarding server: A local gateway accepts agent hook events and provider-shaped OpenAI or Anthropic requests.
- Persistent agent integration:
nemo-relay installconfigures Codex, Claude Code, or Hermes Agent with one generated MCP bootstrap and the host's canonical lifecycle hooks. - Shared gateway lifecycle: Every persistent integration launches the same
host-neutral
nemo-relay mcpclient. Concurrent clients share one native gateway on127.0.0.1:47632.
Installation Options
Cargo:
Unix curl:
|
Windows PowerShell:
irm https://raw.githubusercontent.com/NVIDIA/NeMo-Relay/main/install.ps1 | iex
For version pinning, custom installation directories, verification, troubleshooting, and CLI usage, refer to the NeMo Relay installation guide.
After installation, verify the binary with:
Getting Started
Run the first-time setup wizard:
After setup, inspect local readiness:
Run a supported agent through the gateway:
Install persistent integrations for the supported agent CLIs on PATH:
Use run --dry-run to inspect resolved config without spawning the agent:
Configuration
Project config lives at ./.nemo-relay/config.toml; user config lives at
~/.config/nemo-relay/config.toml or $XDG_CONFIG_HOME/nemo-relay/config.toml.
The project layer overrides system config, and the user layer overrides the
project layer.
General options are configured through the top-level config. Edit the config with:
Observability exporters are configured through the plugin config. Edit the user plugin config with:
The top-level editor menu contains one entry per supported built-in, followed by
the dynamic plugin references in the selected physical plugins.toml. Dynamic
plugins with a manifest-declared JSON Schema provide structured field controls.
Other dynamic plugins use a raw JSON object editor.
The canonical plugin file is plugins.toml; user config lives at
~/.config/nemo-relay/plugins.toml or
$XDG_CONFIG_HOME/nemo-relay/plugins.toml. Project config lives at
.nemo-relay/plugins.toml.
Minimal ATIF example:
= 1
[[]]
= "observability"
= true
[]
= true
= "./atif"
Documentation
NeMo Relay Documentation: https://docs.nvidia.com/nemo/relay