Skip to content

Use Hermes native NeMo Relay integration#39

Draft
pastorsj wants to merge 3 commits into
NVIDIA:mainfrom
pastorsj:fix/update-nemo-relay-connector
Draft

Use Hermes native NeMo Relay integration#39
pastorsj wants to merge 3 commits into
NVIDIA:mainfrom
pastorsj:fix/update-nemo-relay-connector

Conversation

@pastorsj

@pastorsj pastorsj commented Jun 29, 2026

Copy link
Copy Markdown
Collaborator

Summary

Use Hermes's bundled observability/nemo_relay plugin instead of maintaining a second NeMo Relay integration in this example.

  • Removes the custom Hermes Relay plugin, Relay sidecar, and synthetic finalize hook.
  • Keeps local ATIF capture and optional Phoenix export.
  • Keeps atif-export-relay only for optional credential-isolated S3/MinIO export.
  • Makes local builds and trace downloads work with OpenShell 0.0.53.
  • Adds the missing SPDX headers from the retail-assistant example so the repository-wide license check passes.

Why the image rebuilds NeMo Relay 0.3

Hermes v2026.6.19 pins nemo-relay==0.3, so this example deliberately stays on Relay 0.3 instead of independently upgrading the runtime to 0.4. The published Python wheels for both 0.3.0 and 0.4.0 omit the core object-store feature: validating an ATIF S3 storage block returns observability.feature_disabled (ATIF storage support is not enabled in this build). Relay 0.4 therefore does not remove the need for a custom wheel, and using it would also move outside Hermes's tested dependency pin.

The image consequently rebuilds the same Hermes-pinned Relay 0.3.0 source with only nemo-relay/object-store added. It validates an S3 component while building and validates the complete generated plugins.toml at startup, preventing Hermes from silently falling back to local ATIF and dropping both S3 and Phoenix export.

Test plan

  1. Start clean and bring up the agent:

    bash scripts/tear-down.sh
    bash scripts/bring-up.sh

    Confirm bring-up finishes with Sandbox hermes-direct is ready.

  2. In Slack, ask the agent to use a tool—for example: What are the list of skills you have? Confirm Slack returns the list of skills and it runs the tool call.

  3. Open Phoenix at http://localhost:6006, select the personal-community-sentiment-triage project, and confirm the Slack interaction contains populated LLM and tool spans, including the tool input and output.

@pastorsj
pastorsj requested review from mpenn and slopp June 29, 2026 02:14
@pastorsj
pastorsj marked this pull request as ready for review June 29, 2026 23:09
@pastorsj
pastorsj marked this pull request as draft June 30, 2026 15:27
@pastorsj

Copy link
Copy Markdown
Collaborator Author

Back to draft, waiting on NeMo Relay v0.5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant