Nemo Relay Instrument Calls
NVIDIAOfficialCreated by NVIDIA Corporation and Affiliates
- Skill
- Tool integration
- Automation and integrations
- Apache-2.0
- Medium risk
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides guidance on wrapping existing tool functions and LLM provider calls with NeMo Relay managed execution APIs. It ensures that applications maintain stable original behavior while gaining the ability to leverage Relay's lifecycle events, middleware, and guardrails. The skill covers both managed execution helpers for standard use cases and manual lifecycle APIs for custom framework adapters, emphasizing proper scope boundary definition and context propagation.
What it does
- Wraps tool and LLM calls with NeMo Relay managed execution APIs.
- Implements lifecycle event capture for request and response flows.
- Integrates conditional-execution and sanitization guardrails.
- Supports middleware patterns for intercepting and rewriting requests.
- Provides guidance for manual lifecycle management in custom frameworks.
- Ensures consistent metadata and context propagation across call boundaries.
When to use it
- When an application needs to add observability or guardrails to existing tool calls.
- When integrating NeMo Relay into an existing LLM provider call site.
- When building custom framework adapters that require manual lifecycle event emission.
- When you need to apply middleware to tool or LLM execution without altering business logic.
Advantages
- Maintains original callable behavior while adding robust lifecycle management.
- Enables standardized guardrails and middleware across different call types.
- Provides flexible options for both managed and manual execution integration.
- Supports complex scenarios like streaming LLM responses and async context propagation.
Usage examples
- “How do I wrap a Python tool call with NeMo Relay?”
- The skill instructs to use the tools.execute() API to wrap the existing tool function, ensuring lifecycle events are captured while maintaining the original tool's logic.
- “How can I add guardrails to my existing LLM provider calls?”
- The skill explains how to use llm.execute() or managed execution APIs to ensure conditional-execution guardrails run before the request reaches the provider.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/nvidia/nemo-relay-instrument-calls/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip nemo-relay-instrument-calls.zip -d .agents/skills
Documentation by NVIDIA Corporation and Affiliates
Instrument Tool And LLM Calls
Use this skill when an app already has tool functions or model/provider calls and needs to run them through NeMo Relay correctly. Keep the original callable behavior stable while adding Relay lifecycle capture.
Default Guidance
Put a scope around the natural agent, request, workflow, or graph boundary.
Use managed execution APIs first:
Rust:
tool_call_execute(ToolCallExecuteParams::builder()...),llm_call_execute(LlmCallExecuteParams::builder()...)Python:
tools.execute(...),llm.execute(...)Node.js:
toolCallExecute(...),llmCallExecute(...)Go:
tools.Execute(...),llm.Execute(...)or the top-level wrappers
Use manual lifecycle APIs only when the host framework cannot be wrapped by the managed execute helpers.
Embedded Runtime Semantics
Managed tool and LLM execution runs conditional-execution guardrails first on the raw input. If rejected, the runtime emits a standalone mark event and does not run request intercepts or the callable.
Request intercepts run after conditional guardrails and rewrite the real input that reaches execution intercepts and the callback.
Sanitize-request guardrails affect emitted start-event payloads only. They do not rewrite the caller-visible request or arguments.
Execution intercepts wrap the callback with the middleware
nextpattern and may short-circuit by returning their own result.Sanitize-response guardrails affect emitted end-event payloads only. The value returned to application code remains the raw callback or execution-intercept result.
If execution fails after the start event has been emitted, the runtime still emits an end event without a semantic output payload.
Tool calls are named operations with JSON-compatible arguments and results. Keep the original tool callable responsible for business logic; let NeMo Relay own lifecycle events, middleware, and metadata.
LLM calls use an
LLMRequestmade of metadata plus content. Pass model names and stable call identifiers when they matter for trace export or diagnostics.Manual lifecycle APIs are for framework adapters that already own execution. If you use them, every start call needs a matching end or error path with the relevant semantic payloads supplied explicitly.
Partial middleware APIs such as
request_intercepts(...)andconditional_execution(...)are for advanced adapters that need one middleware family before calling a provider manually.Streaming LLM wrappers collect chunks and finalize a response at stream end; dropping the stream early can prevent finalizers and subscribers from seeing a complete output.
Checklist
[ ] Scope boundary chosen before the first tool or LLM call
[ ] Existing tool function wrapped without losing its original arguments/result
[ ] Existing LLM/provider call wrapped at the right abstraction layer
[ ] Optional metadata, attributes, or model name attached where useful
[ ] Context propagation handled if the call hops threads or async tasks
Use Another Skill When
Choose another skill when the task requires a neighboring workflow:
Use
nemo-relay-plugin-observabilityfor traces, ATIF, or export setup.Use
nemo-relay-debug-runtime-integrationto debug missing events or load failures.Use
nemo-relay-instrument-context-isolationfor per-request isolation or worker-pool guidance.Use
nemo-relay-plugin-buildfor reusable, configuration-activated runtime behavior.
Related Skills
Use these skills for adjacent workflows:
Start onboarding with
nemo-relay-get-started.Add typed wrappers with
nemo-relay-instrument-typed-wrappers.Configure export with
nemo-relay-plugin-observability.Package reusable behavior with
nemo-relay-plugin-build.
Files
- ATTRIBUTION.mdAdded by AutoGineer966 B
- BENCHMARK.md3.8 KiB
- LICENSELicence file added by AutoGineer11.2 KiB
- SKILL.md4.0 KiB
- evals/evals.json5.0 KiB
- skill-card.md3.9 KiB
- skill.oms.sig4.5 KiB
skill-card.md
Description: <br>
Use this skill when an application owns tool or LLM/provider call sites and needs to wrap them with NeMo Relay scopes and managed execution APIs for lifecycle events, middleware, or guardrails. <br>
This skill is ready for commercial/non-commercial use. <br>
Owner
NVIDIA <br>
License/Terms of Use: <br>
Apache 2.0 <br>
Use Case: <br>
Developers and engineers who need to instrument existing tool functions or LLM/provider calls with NeMo Relay managed execution for lifecycle events, middleware, guardrails, and observability. <br>
Deployment Geography for Use: <br>
Global <br>
Requirements / Dependencies: <br>
Requires API Key or External Credential: [Not Specified] <br> Credential Type(s): [None identified] <br>
Do not include secrets in prompts/logs/output; use least-privilege credentials; rotate keys as appropriate. <br>
Known Risks and Mitigations: <br>
Risk: Review before execution as proposals could introduce incorrect or misleading guidance into skills. <br> Mitigation: Review and scan skill before deployment. <br>
Reference(s): <br>
Skill Output: <br>
Output Type(s): [Code, Configuration instructions] <br> Output Format: [Markdown with inline code blocks] <br> Output Parameters: [1D] <br> Other Properties Related to Output: [None] <br>
Evaluation Agents Used: <br>
claude-code<br>codex<br>
Evaluation Tasks: <br>
Evaluated against 4 evaluation tasks (3 positive skill-activation, 1 negative activation) via NVSkills-Eval external profile in astra-sandbox environment. <br>
Evaluation Metrics Used: <br>
Reported benchmark dimensions: <br>
Security: Checks whether skill-assisted execution avoids unsafe behavior such as secret leakage, destructive commands, or unauthorized access. <br>
Correctness: Checks whether the agent follows the expected workflow and produces the correct final output. <br>
Discoverability: Checks whether the agent loads the skill when relevant and avoids using it when irrelevant. <br>
Effectiveness: Checks whether the agent performs measurably better with the skill than without it. <br>
Efficiency: Checks whether the agent uses fewer tokens and avoids redundant work. <br>
Underlying evaluation signals used in this run: <br>
security: Checks for unsafe operations, secret leakage, and unauthorized access. <br>skill_execution: Verifies that the agent loaded the expected skill and workflow. <br>skill_efficiency: Checks routing quality, decoy avoidance, and redundant tool usage. <br>accuracy: Grades final-answer correctness against the reference answer. <br>goal_accuracy: Checks whether the overall user task completed successfully. <br>behavior_check: Verifies expected behavior steps, including safety expectations. <br>token_efficiency: Compares token usage with and without the skill. <br>
Evaluation Results: <br>
| Dimension | Num | claude-code | codex |
|---|---|---|---|
| Security | 4 | 100% (+0%) | 100% (+0%) |
| Correctness | 4 | 100% (+62%) | 84% (+26%) |
| Discoverability | 4 | 92% (+49%) | 75% (+25%) |
| Effectiveness | 4 | 94% (+70%) | 80% (+26%) |
| Efficiency | 4 | 81% (+33%) | 73% (+22%) |
Skill Version(s): <br>
e05cfbb8 (source: git SHA, committed 2026-07-15) <br>
Ethical Considerations: <br>
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse. <br>
(For Release on NVIDIA Platforms Only) <br> Please report quality, risk, security vulnerabilities or NVIDIA AI Concerns here. <br>
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
What our scanner noticed· Medium risk
- Large base64-encoded blobs
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- NVIDIA Corporation and Affiliates
- Publisher
- NVIDIA (Official)
- Source
- NVIDIA/skills · skills/nemo-relay-instrument-calls · commit fce3cca
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE-APACHE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by NVIDIA Corporation and Affiliates or NVIDIA.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download nemo-relay-instrument-calls.zip