Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

15 changes: 6 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,17 @@ evaluation products, see [the Ecosystem guide](https://docs.nvidia.com/nemo/rela

| Goal | Start With |
|---|---|
| Observe Codex, Claude Code, or Hermes locally with the CLI | [Quick Start CLI](https://docs.nvidia.com/nemo/relay/nemo-relay-cli/about) |
| Observe Codex or Claude Code locally with the CLI | [Quick Start CLI](https://docs.nvidia.com/nemo/relay/nemo-relay-cli/about) |
| Instrument app-owned LLM or tool calls | [Quick Start Application](https://docs.nvidia.com/nemo/relay/getting-started/quick-start) |
| Use LangChain, LangGraph, Deep Agents, or OpenClaw | [Supported Integrations](https://docs.nvidia.com/nemo/relay/supported-integrations/about) |
| Build a framework or provider integration | [Integrate into Frameworks](https://docs.nvidia.com/nemo/relay/integrate-into-frameworks/about) |
| Export ATOF, ATIF, or typed OpenTelemetry projections | [Observability Plugin](https://docs.nvidia.com/nemo/relay/configure-plugins/observability/about) |
| Package reusable middleware or exporters | [Build Plugins](https://docs.nvidia.com/nemo/relay/build-plugins/about) |
| Develop or test this repository from source | [CONTRIBUTING.md](CONTRIBUTING.md) |

Hermes Agent understands NeMo Relay plugin configurations. NeMo Relay is built
into Hermes Agent, so no separate observability plugin or Relay CLI setup is
required.

## Quick Start CLI

Expand All @@ -45,7 +48,7 @@ trajectory file, you have concrete data to inspect, debug, and build on.
### Local Agent Trajectory

This walkthrough shows an end-to-end quick success setup. Install the
NeMo Relay CLI, turn on local exporters, run Codex, Claude Code, or Hermes
NeMo Relay CLI, turn on local exporters, run Codex or Claude Code
through Relay, and check that Relay wrote both raw events and normalized
trajectories.

Expand Down Expand Up @@ -129,12 +132,6 @@ For Claude Code, run:
nemo-relay claude -- "Summarize this repository."
```

For Hermes, run:

```bash
nemo-relay hermes -- -z "Summarize this repository."
```

Refer to the full [Quick Start CLI](https://docs.nvidia.com/nemo/relay/nemo-relay-cli/about) docs for more options.

The transparent wrapper starts a local Relay gateway, injects host-specific hook
Expand Down Expand Up @@ -318,7 +315,7 @@ coverage.
|:--|:--:|:--:|:--:|:--|
| Claude Code | Yes | Yes | Partial | Hook forwarding, pre-tool blocking, and gateway-routed LLM observability are supported. |
| Codex | Yes | Yes | Partial | Persistent install verifies the exact plugin hooks. Each `Stop` finalizes a turn snapshot; the supported generated schema does not install `SessionEnd`. |
| Hermes Agent | Yes | Yes | Partial | User config installs the shared native MCP gateway lifecycle plus exact trusted hooks; gateway-routed or hook-backed LLM observability is supported. |
| Hermes Agent | Yes | Yes | Partial | NeMo Relay is built into Hermes Agent, and Hermes Agent understands NeMo Relay plugin configurations. No separate observability plugin or Relay CLI setup is required. |

### Public API Integrations

Expand Down
1 change: 0 additions & 1 deletion crates/cli/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ async-stream = "0.3"
axum = "0.8"
base64 = "0.22"
bytes = "1"
chrono = "0.4"
clap = { version = "4", features = ["derive", "env"] }
clap_complete = "4"
console = "0.16"
Expand Down
12 changes: 6 additions & 6 deletions crates/cli/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ with the installed `nemo-relay` command rather than link against the crate.

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
- **Observe existing coding agents**: Run Claude Code or Codex 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.
Expand All @@ -47,14 +47,14 @@ The CLI provides these capabilities:
Cargo package.
- **First-run setup**: Bare `nemo-relay` launches setup when no config exists,
then runs doctor once config is present.
- **Agent shortcuts**: `nemo-relay claude`, `nemo-relay codex`, and
`nemo-relay hermes` start observed agent runs.
- **Agent shortcuts**: `nemo-relay claude` and `nemo-relay codex` start
observed agent runs.
- **Config-driven launch**: `nemo-relay run` resolves 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 install` configures Codex,
Claude Code, or Hermes Agent with one generated MCP bootstrap and the host's
- **Persistent agent integration**: `nemo-relay install` configures Codex or
Claude Code 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 mcp` client. Concurrent clients share one native
Expand Down
1 change: 0 additions & 1 deletion crates/cli/src/agents/claude/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ pub(super) const DESCRIPTOR: AgentDescriptor = AgentDescriptor {
"PostCompact",
"SessionEnd",
],
direct_hook_entries: false,
};

pub(super) fn parse_version(raw: &str) -> Option<Version> {
Expand Down
1 change: 0 additions & 1 deletion crates/cli/src/agents/codex/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ pub(super) const DESCRIPTOR: AgentDescriptor = AgentDescriptor {
"PreCompact",
"PostCompact",
],
direct_hook_entries: false,
};

pub(super) fn parse_version(raw: &str) -> Option<Version> {
Expand Down
Loading
Loading