> This page is for version 0.10.
> For other versions, use one of these documentation indexes:
> - Latest (default): https://docs.nvidia.com/nemo-helix/latest/llms.txt
> - 0.10: https://docs.nvidia.com/nemo-helix/v0.10/llms.txt
> - 0.9: https://docs.nvidia.com/nemo-helix/v0.9/llms.txt
> - 0.8: https://docs.nvidia.com/nemo-helix/v0.8/llms.txt
> - 0.7: https://docs.nvidia.com/nemo-helix/v0.7/llms.txt
> - 0.6: https://docs.nvidia.com/nemo-helix/v0.6/llms.txt
> - 0.5: https://docs.nvidia.com/nemo-helix/v0.5/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo-helix/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo-helix/_mcp/server.

# NeMo Studio Agents

Use **Agents** in the NeMo Studio workspace sidebar to review and operate agent workflows managed by NeMo Helix.

## Current Agent Experience

New agents use the NeMo Helix-managed `nemo-agents-spec-v1` `agent.yaml` format. NeMo Helix translates this durable configuration into the NVIDIA Agent Intelligence Toolkit Fabric runtime configuration when it deploys the agent. Fabric is the execution layer; `nemo-agents-spec-v1` remains the configuration contract that you author and store.

This Fabric-first path is recommended for new agents. Studio can also display legacy `nat-workflow-v1` agents, so the fields shown on the **Details** tab depend on the agent's config format. Register an agent from Studio with **Register Agent**, or through the `nemo agents` CLI or Agents API. Studio does not currently provide a general-purpose editor for authoring an arbitrary `agent.yaml`.

## Agent List

The Agents table shows the agents in the selected workspace, including their deployment state and creation time. Select an agent to open its details page.

| Action                 | Where                                             | Result                                                                                        |
| ---------------------- | ------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| Review details         | Select an agent                                   | Opens the agent details page with deployment, log, chat, evaluation, and configuration views. |
| Register an agent      | **Register Agent**                                | Opens **Register an agent with NeMo Helix**. See [Register an Agent](#register-an-agent).     |
| Deploy an agent        | Row actions > **Deploy**                          | Creates a deployment for the selected agent.                                                  |
| Clone an agent         | Row actions > **Clone**                           | Creates a copy of the agent definition with a new name.                                       |
| Chat with a deployment | Agent details page > **Chat** tab                 | Opens chat for a running deployment.                                                          |
| Delete a deployment    | Agent details page > **Deployments** > **Delete** | Removes that deployment.                                                                      |
| Delete an agent        | Row actions > **Delete**                          | Removes the stored agent definition from the workspace.                                       |

## Register an Agent

Select **Register Agent** to open **Register an agent with NeMo Helix**. The dialog offers four ways to register an agent:

| Tab                       | What it does                                                                                                                                                                                                                                        |
| ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Register with code upload | Choose or drop a folder containing `agent.yaml`, or select **Choose files instead** to pick individual files, then enter a **Name**.                                                                                                                |
| Register from GitHub      | Enter a **Repository** (`github.com/owner/repo`, optionally with `@branch` and `#sub/directory`) and a **Name**. Select an **Access token secret** for a private repository. Studio reads the files from GitHub on demand rather than copying them. |
| Register from traces      | Select an unregistered agent that appears in ingested traces, identified by the `agent.name` attribute. The agent is registered without a configuration, so it needs one before you can deploy or chat with it.                                     |
| Coding agent prompt       | Shows a prompt to give a coding agent so it can connect your agent to NeMo Helix.                                                                                                                                                                   |

On the upload and GitHub tabs, turn on **Deploy after creating** to deploy the agent as soon as it is registered. Select **Register** to register the agent.

## Agent Details

The agent details page has the following tabs:

* **Overview**, when enabled, summarizes the agent, models, and recent activity.
* **Deployments** lists active and historical deployments for the agent. Use this tab to deploy the agent, open chat for a running deployment, view logs, or delete a deployment.
* **Logs** shows deployment logs.
* **Chat** opens an interactive chat with a running deployment.
* **Evaluations** lists this agent's evaluations, including runs still in progress, and can group them by experiment. Start a new evaluation from this tab.
* **Optimizations**, when enabled, lists optimization runs for the agent and lets you start a new one. See [Optimize an Agent](#optimize-an-agent).
* **Insights**, when enabled, configures **Insights analysis** for this agent: whether to **Run periodic analysis**, and the **Default model** and **Fast model** the analysis uses. See [NeMo Studio Insights](/nemo-helix/v0.10/documentation/studio/insights).
* **Details** shows a **Summary** of the agent (name, workspace, models, config format, and timestamps) and its stored configuration. Legacy NAT agents show their `workflow`, `llms`, and `functions` sections in **Workflow**, **Models**, and **Tools** panels. All other top-level fields, including every `nemo-agents-spec-v1` field such as the harness, models, instructions, skills, and MCP servers, are listed in a collapsed **Additional configuration** panel.

## Evaluate an Agent

Agent evaluations are not a separate item under the **Agents** navigation parent. To open them, use this path:

1. Select **Agents** in the workspace sidebar.
2. Select an agent.
3. Select the **Evaluations** tab.

Select **Run Evaluation** in the page header to open the **Run Agent Evaluation** wizard. The button is available whenever the agent has a stored configuration; the agent doesn't need a running deployment. The wizard has these steps:

1. **Begin**: Choose **Re-run an existing evaluation** or **Create a new experiment**. Re-running reuses the eval config from a previous run, adds the new run to that run's experiment, and skips directly to **Run Evaluation**.
2. **Create experiment**: Enter a **Name** for the new experiment and, optionally, its description and default sort order.
3. **Run Evaluation**: Name the run and set **Parallel requests**. When re-running, select the evaluation to base the run on and enter a **New Evaluation Name**. When creating an experiment, enter an **Evaluation Name** and choose the evaluation dataset and evaluator config. Upload the dataset or choose it from a fileset; datasets can be `.jsonl`, `.json`, `.csv`, or `.parquet` files, and you can upload several Parquet files to combine them. When a fileset folder holds more than one Parquet file, the file list also offers all of them as one dataset, which the evaluator reads through a `<folder>/*.parquet` pattern. Upload the evaluator config as a JSON or YAML file, or choose one from a fileset.

The tab's **Evaluations** view lists completed evaluations and in-progress runs in a single table. Switch to **Experiments** to group the runs by experiment. This agent-scoped view differs from **Models > Evaluations**, which shows model evaluation results.

## Optimize an Agent

The **Optimizations** tab on an agent's detail page in NeMo Studio runs the same strategies as the [`nemo agents optimize`](/nemo-helix/v0.10/documentation/agents/optimize-agents) CLI. The tab lists the agent's optimization runs with their **Name**, **Config**, **Status**, and **Created** columns, and you can search them by name. Select a run to open it. A finished run can be deleted from its row actions. Select **Optimize** in the page header, or the call to action in the empty list, to start a new run.

The launch flow starts with a strategy picker. It shows one tile per strategy the platform has installed, titled and described by the plugin that provides it, plus an **Upload a config** tile when `config-tuning` is installed. What happens next depends on the strategy:

| Choice                                            | What opens                                                                                                                                                      |
| ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Upload a config**                               | A dialog to choose a `config-tuning` optimize bundle from your computer or a fileset.                                                                           |
| **Hyperparameter optimization** (`config-tuning`) | A guided form on the tab.                                                                                                                                       |
| **Model routing using Switchyard**                | The routing form described below.                                                                                                                               |
| Any other installed strategy                      | A dialog titled with the strategy's title. Its bundle section is labeled **Config bundle**, or **Config bundle (optional)** when the strategy runs without one. |

> **Note**
>
> The **Optimizations** tab is enabled by default. An administrator can hide it by setting `studio.feature_flags.agent_optimizations_enabled: false`. The strategy picker and in-tab forms are also on by default; with `studio.feature_flags.agent_optimization_form_enabled: false`, **Optimize** opens only the dialog for uploading a `config-tuning` bundle, and the Switchyard form isn't available. Restart Studio after changing either flag.

### Set Up a Switchyard Run

The Switchyard form takes the same inputs as the `switchyard` strategy's `--spec` in the [CLI](/nemo-helix/v0.10/documentation/agents/optimize-agents#switchyard):

1. Enter a **Name** for the run. It defaults to a name built from the agent's name and a timestamp, and the form shows the entity name it will create.
2. Under **Which models can it use?**, add the models to route between from the workspace's models, most capable first. The first and last models carry **Most capable** and **Most efficient** badges. Use the arrows to reorder and the remove button to drop one. You need at least two models, and each can be added once. Every model is paired with each model below it, so the first model of a pair is its capable model and the second is its efficient model.
3. Under **How should each pair route?**, pick one or more routing strategies (Random routing is selected by default) and set each one's threshold with its slider or text box, a number from 0 to 1 that defaults to 0.5. A strategy's settings appear once you select it:

   | Strategy       | Threshold                                                                                                                                                                                                                                |
   | -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
   | Random routing | **Capable model share**: the share of requests sent to the capable model.                                                                                                                                                                |
   | Stage router   | **Confidence threshold**: the confidence below which a request escalates to the capable model.                                                                                                                                           |
   | LLM classifier | **Capability threshold**: the capability score above which a request escalates to the capable model. Optionally select a **Judge model**; by default each pair's capable model judges. The judge setting only appears for this strategy. |

The summary beside the form shows the model pairs and how many routed models the run will build, which is the number of pairs times the number of strategies. **Run optimization** stays disabled, with the reason shown above it, until the form is valid. Selecting it submits a `switchyard` run-strategy job for the agent, shows an "Optimization submitted" toast, and returns you to the **Optimizations** tab, where the new run appears in the list. The stored agent is never modified. The agent must have a registered configuration in the `nemo-agents-spec-v1` format, or the run fails. A virtual model name that would exceed the name length limit is rejected, so use a shorter agent name if the job fails for that reason.

### Review Switchyard Results

Select a run in the list to open its page at `/agents/optimizations/<run>`. The breadcrumb shows the agent's name and links back to its **Optimizations** tab. While the run is in progress the page shows the submitted models and routing strategies and the job's step progress. A run that fails shows its error. In every state the page also shows the run's **Logs** and **Artifacts**.

When the run completes, the page shows the number of virtual models and routing strategies it built, then lists one row per virtual model with its **Virtual model**, **Routing strategy**, **Capable model**, **Efficient model**, and **Setting** (the strategy's threshold, plus the judge model when it differs from the capable model). You can search and sort the list. From a row you can:

* **Test routing**: select the row to open the **Test routing** panel, and the row is marked **Testing**. The panel is a chat that sends requests through that virtual model, with a popover for inference parameters, with a **Routing split** that tallies how many responses came from the capable model, the efficient model, or neither (**Other**). **Clear** resets the tally, and **How this route decides** explains the selected strategy so you can read the observed split against it. Selecting the virtual model's name opens its [virtual model](/nemo-helix/v0.10/documentation/studio/virtual-models) page instead.
* **Deploy**: select **Deploy** to open **Deploy route as a new agent**. The dialog summarizes the route, and the **New agent name** defaults to the virtual model's name. It creates a new agent whose models all call that virtual model, and, with **Deploy after creating** selected (the default, shown when deployment is available), deploys it as soon as it's created. The original agent isn't changed. The new agent uses the agent configuration the run captured, so the dialog warns you if the original agent changed after the run. **Deploy** is unavailable for a route whose agent config the run didn't save.

You can also create and update agents through the `nemo agents` CLI or Agents API. NeMo Studio reflects the current workspace state after the Helix services refresh.

## Related Topics

* [About Agents](/nemo-helix/v0.10/documentation/agents)
* [Register Agents](/nemo-helix/v0.10/documentation/agents/register-agents)
* [Optimize Agents](/nemo-helix/v0.10/documentation/agents/optimize-agents)
* [Virtual Models](/nemo-helix/v0.10/documentation/models-and-inference/virtual-models)