Skip to content

feat(nemo-agents-plugin): add codex adapter to NAT plugin#472

Draft
mmogallapalli wants to merge 5 commits into
mainfrom
mmogallapall/aircore-842-add-experimental-harness-adapters-to-nemo-agents
Draft

feat(nemo-agents-plugin): add codex adapter to NAT plugin#472
mmogallapalli wants to merge 5 commits into
mainfrom
mmogallapall/aircore-842-add-experimental-harness-adapters-to-nemo-agents

Conversation

@mmogallapalli

@mmogallapalli mmogallapalli commented Jun 25, 2026

Copy link
Copy Markdown

PR Description

Summary

Adds experimental Codex agent support to nemo-agents by vendoring the NAT
Codex adapter and wiring it into the plugin package.

This PR:

  • Updates NAT dependencies to the 1.8.x family
  • Vendors the upstream experimental Codex adapter into plugins/nemo-agents
  • Exposes the adapter through the nat.components entry point
  • Recognizes codex_agent in nemo-agents config validation
  • Adds a Codex example config and README
  • Adds tests for adapter registration and example config validation

Why vendor the Codex adapter?

The Codex adapter exists upstream in the NeMo Agent Toolkit repo under
examples/experimental/codex_agent_adapter, but it is not currently published
as an installable package that end users can depend on directly.

That means a normal user installation like:

uv pip install plugins/nemo-agents/

would not include the Codex adapter unless users also cloned the NAT repo and
manually installed the experimental example package. That is not a viable
product path for nemo-agents.

Vendoring gives us a shippable path now:

  • nemo-agents installs with Codex adapter support included
  • Users do not need a local NAT source checkout
  • The adapter is discoverable through normal NAT plugin entry points
  • The vendored source is pinned to an explicit upstream NAT commit for traceability
  • This follows the same general pattern already used for vendored Switchyard code

The vendored source records its upstream provenance in:

plugins/nemo-agents/vendor/codex_agent_adapter/README.md

User Flow

Users install/use nemo-agents as usual, then provide a config with:

workflow:
  _type: codex_agent

The included example is:

plugins/nemo-agents/examples/codex-agent/codex-agent.yml

The Codex adapter requires codex and nemo-relay to be installed on PATH.
Relay is used internally by the adapter to run Codex and bridge Codex events
into NAT telemetry.

Validation

Focused tests:

uv run --frozen pytest plugins/nemo-agents/tests/unit/test_codex_adapter_packaging.py plugins/nemo-agents/tests/unit/test_container.py -q

Result:

101 passed, 1 warning

Manual smoke tests:

  • nemo agents package --no-build validates the Codex example without unknown workflow warnings
  • nemo agents create --name codex-agent --agent-config plugins/nemo-agents/examples/codex-agent/codex-agent.yml
  • nemo agents deploy --agent codex-agent
  • nemo agents invoke --agent codex-agent --input "Read pyproject.toml and say only the project name. Do not edit files."

Invoke returned:

nemoplatform

@github-actions

github-actions Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor
Suite Lines Covered Line Rate Branch Rate
Unit Tests 21322/27924 76.4% 61.4%
Integration Tests 12350/26693 46.3% 19.7%

@mmogallapalli mmogallapalli changed the title Vendor Codex NAT adapter into nemo-agents feat(nemo-agents-plugin): add codex adapter to NAT plugin Jun 25, 2026
@github-actions github-actions Bot added the feat label Jun 25, 2026
@mmogallapalli mmogallapalli force-pushed the mmogallapall/aircore-842-add-experimental-harness-adapters-to-nemo-agents branch from 91bd341 to 453296c Compare June 25, 2026 21:11
Signed-off-by: Manjesh Mogallapalli <mmogallapall@nvidia.com>
Signed-off-by: Manjesh Mogallapalli <mmogallapall@nvidia.com>
Signed-off-by: Manjesh Mogallapalli <mmogallapall@nvidia.com>
Signed-off-by: Manjesh Mogallapalli <mmogallapall@nvidia.com>
@mmogallapalli mmogallapalli force-pushed the mmogallapall/aircore-842-add-experimental-harness-adapters-to-nemo-agents branch from 781d60e to 09c5e34 Compare June 25, 2026 22:31
Signed-off-by: Manjesh Mogallapalli <mmogallapall@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant