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
6 changes: 3 additions & 3 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ default-members = [
resolver = "2"

[workspace.package]
version = "0.2.0"
version = "0.3.0"
edition = "2024"
license = "Apache-2.0"
repository = "https://github.com/NVIDIA/nemo-fabric"

[workspace.dependencies]
nemo-fabric-core = { path = "crates/fabric-core", version = "0.2.0" }
nemo-fabric-core = { path = "crates/fabric-core", version = "0.3.0" }

clap = { version = "4", default-features = false, features = ["derive", "std", "help", "usage", "error-context", "suggestions"] }
# Validate adapter-owned JSON Schema in Rust while preserving precise instance paths.
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -161,7 +161,7 @@ selected adapter, and the harness inside an isolated task environment such as a
Docker container or Daytona sandbox. Adapter discovery and task-path resolution
occur inside that sandbox.

Install `nemo-fabric[harbor]==0.2.0` in the host environment. For a Hermes
Install `nemo-fabric[harbor]==0.3.0` in the host environment. For a Hermes
Agent task, use a task image that installs Hermes Agent according to its
installation guide, then install `nemo-fabric`, `nemo-fabric-adapters-hermes`,
and optionally `nemo-fabric[relay]` in that environment. For Claude or Codex
Expand All @@ -181,7 +181,7 @@ Create an environment for the NeMo Fabric runtime:
```bash
python -m venv .venv-fabric
source .venv-fabric/bin/activate
python -m pip install "nemo-fabric==0.2.0"
python -m pip install "nemo-fabric==0.3.0"
```

Install Hermes Agent by following its
Expand All @@ -201,7 +201,7 @@ if [ ! -x "$ADAPTER_PYTHON" ]; then
exit 1
fi
export ADAPTER_PYTHON
"$ADAPTER_PYTHON" -m pip install "nemo-fabric-adapters-hermes==0.2.0"
"$ADAPTER_PYTHON" -m pip install "nemo-fabric-adapters-hermes==0.3.0"
```

The adapter package keeps the Hermes environment independent from the
Expand Down
2 changes: 1 addition & 1 deletion adapter-contract/python/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "nemo-fabric-adapter-contract"
version = "0.2.0"
version = "0.3.0"
description = "Typed Python contract for NeMo Fabric adapters"
authors = [
{ name = "NVIDIA Corporation" },
Expand Down
2 changes: 1 addition & 1 deletion adapter-contract/python/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions adapter-contract/typescript/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion adapter-contract/typescript/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "nemo-fabric-adapter-contract",
"version": "0.2.0",
"version": "0.3.0",
"description": "Dependency-free TypeScript types for the NVIDIA NeMo Fabric adapter contract.",
"license": "Apache-2.0",
"type": "module",
Expand Down
6 changes: 3 additions & 3 deletions adapters/claude/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "nemo-fabric-adapters-claude"
version = "0.2.0"
version = "0.3.0"
description = "Claude adapter for NeMo Fabric"
authors = [
{ name = "NVIDIA Corporation" },
Expand All @@ -25,8 +25,8 @@ license-files = ["LICENSE"]
readme = "pypi.md"
requires-python = ">=3.11"
dependencies = [
"nemo-fabric-adapter-contract == 0.2.0",
"nemo-fabric-adapters-common == 0.2.0",
"nemo-fabric-adapter-contract == 0.3.0",
"nemo-fabric-adapters-common == 0.3.0",
"tomli-w~=1.2",
]

Expand Down
6 changes: 3 additions & 3 deletions adapters/claude/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions adapters/codex/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "nemo-fabric-adapters-codex"
version = "0.2.0"
version = "0.3.0"
description = "Codex adapter for NeMo Fabric"
authors = [
{ name = "NVIDIA Corporation" },
Expand All @@ -25,8 +25,8 @@ license-files = ["LICENSE"]
readme = "pypi.md"
requires-python = ">=3.11"
dependencies = [
"nemo-fabric-adapter-contract == 0.2.0",
"nemo-fabric-adapters-common == 0.2.0",
"nemo-fabric-adapter-contract == 0.3.0",
"nemo-fabric-adapters-common == 0.3.0",
"tomli-w~=1.2",
]

Expand Down
6 changes: 3 additions & 3 deletions adapters/codex/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion adapters/common/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "nemo-fabric-adapters-common"
version = "0.2.0"
version = "0.3.0"
description = "Shared Python helpers for NeMo Fabric adapters"
authors = [
{ name = "NVIDIA Corporation" },
Expand Down
2 changes: 1 addition & 1 deletion adapters/common/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions adapters/deepagents/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "nemo-fabric-adapters-deepagents"
version = "0.2.0"
version = "0.3.0"
description = "LangChain Deep Agents adapter for NeMo Fabric"
authors = [
{ name = "NVIDIA Corporation" },
Expand All @@ -25,8 +25,8 @@ license-files = ["LICENSE"]
readme = "pypi.md"
requires-python = ">=3.11"
dependencies = [
"nemo-fabric-adapter-contract == 0.2.0",
"nemo-fabric-adapters-common == 0.2.0",
"nemo-fabric-adapter-contract == 0.3.0",
"nemo-fabric-adapters-common == 0.3.0",
"langchain-mcp-adapters>=0.1,<0.3.0",
"langchain-openai>=0.3",
# Requires 3.x: the 2.x line is incompatible with the langgraph core deepagents
Expand Down
6 changes: 3 additions & 3 deletions adapters/deepagents/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions adapters/hermes/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "nemo-fabric-adapters-hermes"
version = "0.2.0"
version = "0.3.0"
description = "Hermes Agent adapter for NeMo Fabric"
authors = [
{ name = "NVIDIA Corporation" },
Expand All @@ -26,8 +26,8 @@ readme = "pypi.md"
# Hermes Agent does not currently support Python 3.14 or later.
requires-python = ">=3.11,<3.14"
dependencies = [
"nemo-fabric-adapter-contract == 0.2.0",
"nemo-fabric-adapters-common == 0.2.0",
"nemo-fabric-adapter-contract == 0.3.0",
"nemo-fabric-adapters-common == 0.3.0",
]

[project.optional-dependencies]
Expand Down
6 changes: 3 additions & 3 deletions adapters/hermes/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions adapters/mini-swe-agent/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"

[project]
name = "nemo-fabric-adapters-mini-swe-agent"
version = "0.2.0"
version = "0.3.0"
description = "mini-SWE-agent adapter for NeMo Fabric"
authors = [
{ name = "NVIDIA Corporation" },
Expand All @@ -25,8 +25,8 @@ license-files = ["LICENSE"]
readme = "pypi.md"
requires-python = ">=3.11"
dependencies = [
"nemo-fabric-adapter-contract == 0.2.0",
"nemo-fabric-adapters-common == 0.2.0",
"nemo-fabric-adapter-contract == 0.3.0",
"nemo-fabric-adapters-common == 0.3.0",
]

[project.optional-dependencies]
Expand Down
6 changes: 3 additions & 3 deletions adapters/mini-swe-agent/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 5 additions & 5 deletions examples/harbor/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,14 +67,14 @@ not read task paths; adapter and asset resolution is deferred to

Use the following package requirements for the two-environment model. Pin the
host and task packages to the same NeMo Fabric release. These examples use
version `0.2.0`.
version `0.3.0`.

| Environment | Required Dependencies | Purpose |
| --- | --- | --- |
| Harbor host | `nemo-fabric[harbor]==0.2.0` | Harbor CLI, `FabricAgent`, and typed `FabricConfig` construction |
| Claude task without Relay | `nemo-fabric[claude]==0.2.0` | NeMo Fabric runner, Claude adapter, and supported Claude harness |
| Claude task with Relay | `nemo-fabric[claude]==0.2.0` plus a NeMo Relay CLI in the `>=0.7.2,<0.8` range on `PATH` | NeMo Fabric runner, Claude adapter and harness, and the adapter-managed Relay gateway and hooks |
| Hermes Agent task with Relay | Task image with Hermes Agent, `nemo-fabric==0.2.0`, `nemo-fabric-adapters-hermes==0.2.0`, and `nemo-relay>=0.7.2,<0.8` | NeMo Fabric runner, preinstalled Hermes Agent and adapter, and the NeMo Relay Python package |
| Harbor host | `nemo-fabric[harbor]==0.3.0` | Harbor CLI, `FabricAgent`, and typed `FabricConfig` construction |
| Claude task without Relay | `nemo-fabric[claude]==0.3.0` | NeMo Fabric runner, Claude adapter, and supported Claude harness |
| Claude task with Relay | `nemo-fabric[claude]==0.3.0` plus a NeMo Relay CLI in the `>=0.7.2,<0.8` range on `PATH` | NeMo Fabric runner, Claude adapter and harness, and the adapter-managed Relay gateway and hooks |
| Hermes Agent task with Relay | Task image with Hermes Agent, `nemo-fabric==0.3.0`, `nemo-fabric-adapters-hermes==0.3.0`, and `nemo-relay>=0.7.2,<0.8` | NeMo Fabric runner, preinstalled Hermes Agent and adapter, and the NeMo Relay Python package |

The `nemo-fabric` package installs the runtime. The `relay` extra installs the
NeMo Relay Python package, not the CLI required by Claude.
Expand Down
2 changes: 1 addition & 1 deletion examples/harbor/swebench/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ cd "$(git rev-parse --show-toplevel)"

export FABRIC_AGENT='nemo_fabric.integrations.harbor:FabricAgent'
export FABRIC_BUNDLE="$PWD/examples/harbor/swebench"
export FABRIC_PACKAGE='nemo-fabric[claude,hermes-agent,relay]==0.2.0'
export FABRIC_PACKAGE='nemo-fabric[claude,hermes-agent,relay]==0.3.0'
export RUNS_DIR="$PWD/.tmp/harbor/fabric-swebench"

curl -fsSL https://raw.githubusercontent.com/NVIDIA/NeMo-Relay/main/install.sh |
Expand Down
2 changes: 1 addition & 1 deletion examples/notebooks/01_quickstart.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@
"%%bash\n",
"set -euo pipefail\n",
"\n",
"NEMO_FABRIC_VERSION=\"0.2.0\"\n",
"NEMO_FABRIC_VERSION=\"0.3.0\"\n",
"\n",
"if [ \"$(\"$FABRIC_PYTHON\" -c 'from importlib.metadata import version; print(version(\"nemo-fabric\"))' 2>/dev/null || true)\" != \"$NEMO_FABRIC_VERSION\" ]; then\n",
" \"$FABRIC_PYTHON\" -m pip install \"nemo-fabric==$NEMO_FABRIC_VERSION\"\n",
Expand Down
2 changes: 1 addition & 1 deletion examples/notebooks/02_variations.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@
"%%bash\n",
"set -euo pipefail\n",
"\n",
"NEMO_FABRIC_VERSION=\"0.2.0\"\n",
"NEMO_FABRIC_VERSION=\"0.3.0\"\n",
"\"$FABRIC_PYTHON\" -m pip install \"nemo-fabric[claude,codex,deepagents,relay]==$NEMO_FABRIC_VERSION\"\n",
"\n",
"if [ \"$(\"$HERMES_PYTHON\" -c 'from importlib.metadata import version; print(version(\"nemo-fabric-adapters-hermes\"))' 2>/dev/null || true)\" != \"$NEMO_FABRIC_VERSION\" ]; then\n",
Expand Down
Loading
Loading