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
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -66,4 +66,4 @@ repos:
language: system
files: '(^|/)(Cargo\.toml|Cargo\.lock|pyproject\.toml|uv\.lock)$'
pass_filenames: false
verbose: true
verbose: false
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ uv pip install --find-links dist nemo-fabric
Adapters are distributed as optional extras. For example, install the Hermes Agent adapter with:

```bash
uv pip install --find-links dist "nemo-fabric[adapters-hermes]"
uv pip install --find-links dist "nemo-fabric[hermes]"
```

Refer to the [installation guide](docs/getting-started/install.mdx) for the
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ Install NeMo Fabric, Hermes Agent, and the Hermes Agent adapter into an environm
```bash
# Use any Python 3.11-3.13 interpreter for Hermes Agent.
python3 -m venv .tmp/hermes-venv
.tmp/hermes-venv/bin/python -m pip install --find-links dist "nemo-fabric[hermes]"
.tmp/hermes-venv/bin/python -m pip install --find-links dist "nemo-fabric[hermes, hermes-agent]"
```

If you are working from a local Hermes Agent checkout, replace the final install line
Expand Down
12 changes: 9 additions & 3 deletions adapters/hermes/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,19 @@ This adapter runs Hermes Agent through its Python SDK.
To install just the Hermes Agent adapter by itself:

```bash
pip install "nemo-fabric[adapters-hermes]"
pip install "nemo-fabric[hermes]"
```

To install just the Hermes Agent adapter along with the NeMo Fabric Runtime:
To install the Hermes Agent adapter along with the NeMo Fabric Runtime:

```bash
pip install "nemo-fabric[adapters-hermes, runtime]"
pip install "nemo-fabric[hermes, runtime]"
```

To install the Hermes Agent adapter along with a compatible version of Hermes Agent:

```bash
pip install "nemo-fabric[hermes, hermes-agent]"
```

## What It Maps
Expand Down
12 changes: 6 additions & 6 deletions docs/getting-started/install.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@ intentionally have minimal dependencies and belong in the same environment as
the agent harness. That environment can differ from the NeMo Fabric runtime
environment.

The following adapter packages are available:
The following adapter extras are available:

- `adapters-claude`
- `adapters-codex`
- `adapters-deepagents`
- `adapters-hermes`
- `claude`
- `codex`
- `deepagents`
- `hermes`

```bash
pip install "nemo-fabric[<adapter_name>]"
Expand All @@ -48,7 +48,7 @@ pip install "nemo-fabric[<adapter_name>]"
For example, to install the Hermes Agent adapter:

```bash
pip install "nemo-fabric[adapters-hermes]"
pip install "nemo-fabric[hermes]"
Comment thread
lbliii marked this conversation as resolved.
```

### Install NeMo Relay
Expand Down
2 changes: 1 addition & 1 deletion docs/getting-started/quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Create a Python virtual environment and install NeMo Fabric with Hermes Agent an
```bash
python -m venv .venv
source .venv/bin/activate
pip install "nemo-fabric[adapters-hermes]"
pip install "nemo-fabric[hermes, hermes-agent]"
```

Refer to [the installation guide](https://github.com/NVIDIA/NeMo-Fabric#installation) for more details.
Expand Down
2 changes: 1 addition & 1 deletion examples/harbor/calculator/task/environment/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ RUN pip install --no-cache-dir \
-e /opt/nemo-fabric/adapters/common \
-e /opt/nemo-fabric/adapters/claude \
-e /opt/nemo-fabric/adapters/hermes \
-e "/opt/nemo-fabric[harbor,hermes,relay,runtime]"
-e "/opt/nemo-fabric[harbor,hermes,hermes-agent,relay,runtime]"

COPY calculator.py /app/calculator.py
COPY fabric /opt/fabric-calculator
Expand Down
2 changes: 1 addition & 1 deletion examples/harbor/prepare_swebench.sh
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ if [[ -z "$fabric_wheel" ]]; then
fi

printf '%s\n' \
"nemo-fabric[claude,harbor,hermes,relay,runtime] @ file:///tmp/nemo-fabric-config/.wheelhouse/$fabric_wheel" \
"nemo-fabric[claude,harbor,hermes,hermes-agent,relay,runtime] @ file:///tmp/nemo-fabric-config/.wheelhouse/$fabric_wheel" \
> "$bundle_dir/.fabric-package"

echo "Prepared $bundle_dir"
Expand Down
25 changes: 5 additions & 20 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -36,25 +36,6 @@ Documentation = "https://nvidia-nemo-fabric.docs.buildwithfern.com/nemo/fabric"
packages = []

[project.optional-dependencies]
adapters-common = [
"nemo-fabric-adapters-common == 0.1.0",
]

adapters-codex = [
"nemo-fabric-adapters-codex == 0.1.0",
]

adapters-claude = [
"nemo-fabric-adapters-claude == 0.1.0",
]

adapters-deepagents = [
"nemo-fabric-adapters-deepagents == 0.1.0",
]

adapters-hermes = [
"nemo-fabric-adapters-hermes == 0.1.0; python_version < '3.14'",
]

codex = [
"nemo-fabric-adapters-codex == 0.1.0",
Expand All @@ -75,7 +56,11 @@ harbor = [

hermes = [
"nemo-fabric-adapters-hermes == 0.1.0; python_version < '3.14'",
"hermes-agent>=0.17.0; python_version < '3.14'",
]

hermes-agent = [
"nemo-fabric-adapters-hermes == 0.1.0; python_version < '3.14'",
"hermes-agent>=0.17.0; python_version < '3.14'",
]

relay = [
Expand Down
13 changes: 5 additions & 8 deletions skills/nemo-fabric-integrate/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,18 +44,15 @@ that stay hidden behind this boundary.
The consumer or its execution environment owns installation; NeMo Fabric validates
runtime assumptions but never installs harnesses or credentials at run time.

- NeMo Fabric is not published on PyPI yet. From a source checkout, `just build-all`
builds the native extension and installs the SDK. To install into another
environment, build wheels with `just wheels`, then
- From a source checkout, `just build-all` builds the native extension and installs the SDK. To install into another environment, build wheels with `just wheels`, then
`uv pip install --find-links <dist_dir> nemo-fabric` (add the
`harbor` extra for the Harbor integration). See the
`harbor` extra for the Harbor integration). Refer to the
[installation guide](https://github.com/NVIDIA/NeMo-Fabric/blob/main/docs/getting-started/install.mdx).
- Select a harness adapter — the `adapter_id` set in `HarnessConfig`, for example
`nvidia.fabric.hermes` — and install its extra the same way, for example
`uv pip install --find-links <dist_dir> "nemo-fabric[adapters-hermes]"`
(available extras: `adapters-hermes`, `adapters-codex`,
`adapters-deepagents`, `adapters-claude`), plus the adapter's own harness
binaries and dependencies.
`uv pip install --find-links <dist_dir> "nemo-fabric[hermes]"`
(available extras: `hermes`, `codex`, `deepagents`, `claude`), plus the
corresponding harness binaries and dependencies.
- Provide model credentials through environment variables named by the config
(`ModelConfig.api_key_env`), never as literals in code.
Comment thread
dagardner-nv marked this conversation as resolved.
- Confirm the native extension is importable; SDK calls raise
Expand Down
2 changes: 1 addition & 1 deletion tests/integrations/test_harbor_runner.py
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ def test_claude_calculator_run_uses_current_adapter_contract():
dockerfile = CALCULATOR_DOCKERFILE.read_text(encoding="utf-8")
assert "-e /opt/nemo-fabric/adapters/claude" in dockerfile
assert "-e /opt/nemo-fabric/adapters/hermes" in dockerfile
assert "nemo-fabric[harbor,hermes,relay,runtime]" in dockerfile
assert "nemo-fabric[harbor,hermes,hermes-agent,relay,runtime]" in dockerfile
assert "@openai/codex" not in dockerfile


Expand Down
Loading
Loading