Skip to content

Restore version 1.5 on develop after forward merge#1324

Merged
mnajafian-nv merged 2 commits intodevelopfrom
fix/restore-version-1.5
Jan 5, 2026
Merged

Restore version 1.5 on develop after forward merge#1324
mnajafian-nv merged 2 commits intodevelopfrom
fix/restore-version-1.5

Conversation

@mnajafian-nv
Copy link
Contributor

@mnajafian-nv mnajafian-nv commented Jan 5, 2026

Description

The forward merge from release/1.4 into develop (#1302) overwrote the version in docs/source/versions1.json from 1.5 back to 1.4.

This PR restores the correct version (1.5) as the preferred version on develop.

Changes

  • Restored version 1.5 as preferred in docs/source/versions1.json
  • Added version 1.5 entry with correct URL
  • Kept version 1.4 entry (no longer preferred)

By Submitting this PR I confirm:

  • I am familiar with the Contributing Guidelines.
  • We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license.
    • Any contribution which contains commits that are not Signed-Off will not be accepted.
  • When the PR is ready for review, new or existing tests cover these changes.
  • When the PR is ready for review, the documentation is up to date with these changes.

Summary by CodeRabbit

  • Documentation
    • Version 1.5 is now available and accessible; Version 1.4 documentation has a dedicated URL for easy access.
  • Chores
    • Updated dependency constraints across examples and packages to require nvidia-nat 1.5 (was 1.4) to align examples and compatibility.

✏️ Tip: You can customize this high-level summary in your review settings.

Signed-off-by: mnajafian-nv <mnajafian@nvidia.com>
@mnajafian-nv mnajafian-nv requested a review from a team as a code owner January 5, 2026 13:55
@coderabbitai
Copy link

coderabbitai bot commented Jan 5, 2026

Walkthrough

Bumps the primary docs version from 1.4 → 1.5 in docs/source/versions1.json (adds a 1.4 archived URL). Updates many example and package pyproject.toml files to require nvidia-nat 1.5 instead of 1.4 across extras and variants.

Changes

Cohort / File(s) Summary
Docs version config
docs/source/versions1.json
Incremented primary version from 1.41.5 and added a new 1.4 entry with URL https://docs.nvidia.com/nemo/agent-toolkit/1.4/.
Examples (pyproject bumps)
examples/.../*.pyproject.toml
Updated nvidia-nat dependency version constraints from ~=1.4~=1.5 across many example projects (A2A, HITL, MCP, RAG, advanced_agents, config_inheritance, control_flow, custom_functions, documentation_guides, dynamo_integration, evaluation_and_profiling, finetuning, frameworks, front_ends, getting_started, object_store, observability, etc.).
Packages compat & plugins
packages/compat/.../pyproject.toml, packages/nvidia_nat_*/pyproject.toml
Updated nvidia-nat dependency version constraints from ~=1.4~=1.5 across compatibility toolkits and nvidia_nat plugin packages (many extras and feature variants updated).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Pre-merge checks

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Restore version 1.5 on develop after forward merge' clearly and concisely describes the main change—restoring version 1.5 documentation after a forward merge reverted it to 1.4.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@mnajafian-nv mnajafian-nv changed the title Restore version 1.5 on develop after forward merge #draft Restore version 1.5 on develop after forward merge Jan 5, 2026
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

Fix all issues with AI Agents 🤖
In @docs/source/versions1.json:
- Line 27: Add a single newline character at the end of the file versions1.json
so the file ends with exactly one trailing newline; open the file, ensure the
final closing bracket is followed by a single '\n' (no extra blank lines) and
save the file to comply with the coding guideline requiring JSON files to end
with one newline.
- Around line 2-6: Add a final newline to the JSON file so it ends with a
newline character; open versions1.json and ensure the file that contains the
object with "version": "1.5", "preferred": true, "url": "../1.5/" has a trailing
newline at the end of the file.
🧹 Nitpick comments (1)
docs/source/versions1.json (1)

7-10: Consider explicitly setting "preferred": false for version 1.4.

The PR description states that version 1.4 should be "marked as no longer preferred." Currently, the "preferred" field is absent from the version 1.4 entry. While the absence likely defaults to false, explicitly including "preferred": false would improve clarity and make the intent more obvious.

🔎 Proposed change for explicit clarity
 {
     "version": "1.4",
+    "preferred": false,
     "url": "https://docs.nvidia.com/nemo/agent-toolkit/1.4/"
 },
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a5bfa08 and a70bc03.

📒 Files selected for processing (1)
  • docs/source/versions1.json
🧰 Additional context used
📓 Path-based instructions (3)
**/*.{py,yaml,yml,md,json,toml}

📄 CodeRabbit inference engine (.cursor/rules/general.mdc)

Indent with 4 spaces, never tabs, and ensure every file ends with a single newline

Files:

  • docs/source/versions1.json
**/*

⚙️ CodeRabbit configuration file

**/*: # Code Review Instructions

  • Ensure the code follows best practices and coding standards. - For Python code, follow
    PEP 20 and
    PEP 8 for style guidelines.
  • Check for security vulnerabilities and potential issues. - Python methods should use type hints for all parameters and return values (except for return values of None,
    in that situation no return type hint is needed).
    Example:
    def my_function(param1: int, param2: str) -> bool:
        pass
  • For Python exception handling, ensure proper stack trace preservation:
    • When re-raising exceptions: use bare raise statements to maintain the original stack trace,
      and use logger.error() (not logger.exception()) to avoid duplicate stack trace output.
    • When catching and logging exceptions without re-raising: always use logger.exception()
      to capture the full stack trace information.

Documentation Review Instructions - Verify that documentation and comments are clear and comprehensive. - Verify that the documentation doesn't contain any TODOs, FIXMEs or placeholder text like "lorem ipsum". - Verify that the documentation doesn't contain any offensive or outdated terms. - Verify that documentation and comments are free of spelling mistakes, ensure the documentation doesn't contain any

words listed in the ci/vale/styles/config/vocabularies/nat/reject.txt file, words that might appear to be
spelling mistakes but are listed in the ci/vale/styles/config/vocabularies/nat/accept.txt file are OK.

Misc. - All code (except .mdc files that contain Cursor rules) should be licensed under the Apache License 2.0,

and should contain an Apache License 2.0 header comment at the top of each file.

  • Confirm that copyright years are up-to date whenever a file is changed.

Common Bugs to Look For - Pydantic models using one of the SecretStr, SerializableSecretStr, or `OptionalSecretS...

Files:

  • docs/source/versions1.json
docs/source/**/*

⚙️ CodeRabbit configuration file

docs/source/**/*: This directory contains the source code for the documentation. All documentation should be written in Markdown format. Any image files should be placed in the docs/source/_static directory.

Documentation Categories

Ensure documentation is placed in the correct category:

  • get-started/: Introductory documentation for new users
    • get-started/tutorials/: Step-by-step learning guides
  • build-workflows/: Workflow creation, configuration, adding remote MCP tools or A2A agents - run-workflows/: Execution, observability, serving workflows via MCP and A2A protocols - improve-workflows/: Evaluation and optimization guides - components/: Specific component implementations (agents, tools, connectors) - extend/: Custom component development and testing (not core library contributions) - reference/: Python and REST API documentation only - resources/: Project information (licensing, FAQs)
    • resources/contributing/: Development environment and contribution guides

Placement rules:

  1. Component implementations always belong in components/, not build-workflows/ 2. API documentation belongs only in reference/ 3. Using remote MCP tools or A2A agents should be placed in build-workflows/ 4. Serving workflows via MCP/A2A should be placed in run-workflows/

Files:

  • docs/source/versions1.json
🧠 Learnings (1)
📚 Learning: 2025-12-19T19:52:32.242Z
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2025-12-19T19:52:32.242Z
Learning: Applies to docs/**/*.md : Use 'NVIDIA NeMo Agent toolkit' as the full name (first use) in document titles, webpage headers, and public descriptions; use 'NeMo Agent toolkit' or 'the toolkit' for subsequent references

Applied to files:

  • docs/source/versions1.json
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: CI Pipeline / Check

@mnajafian-nv mnajafian-nv changed the title #draft Restore version 1.5 on develop after forward merge Restore version 1.5 on develop after forward merge Jan 5, 2026
@codecov
Copy link

codecov bot commented Jan 5, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 75.51%. Comparing base (a5bfa08) to head (5c98027).
⚠️ Report is 1 commits behind head on develop.

Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #1324   +/-   ##
========================================
  Coverage    75.51%   75.51%           
========================================
  Files          522      522           
  Lines        35656    35656           
========================================
  Hits         26927    26927           
  Misses        8729     8729           
Flag Coverage Δ
unittests 75.51% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Signed-off-by: mnajafian-nv <mnajafian@nvidia.com>
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Fix all issues with AI Agents 🤖
In @examples/config_inheritance/pyproject.toml:
- Line 15: The dependency "nvidia-nat[langchain]~=1.5" is invalid because
version 1.5 is not on PyPI; update the entry to a real released version (e.g.,
change "nvidia-nat[langchain]~=1.5" to "nvidia-nat[langchain]~=1.3.1") or remove
the line so the workspace editable install (the local editable dependency
referenced later) is the single source of truth; ensure the pyproject.toml no
longer includes the non-existent version constraint.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (4)
examples/front_ends/simple_auth/pyproject.toml (1)

1-3: Add the required SPDX Apache-2.0 header.

This file is missing the mandatory SPDX Apache-2.0 header. All source files including .toml files must start with the standard SPDX Apache-2.0 header with an up-to-date copyright year (2026, since the file is being modified).

As per coding guidelines, confirm that the SPDX header is added and copyright years are current.

🔎 Proposed fix: Add SPDX header
+# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: Apache-2.0
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 [build-system]
 build-backend = "setuptools.build_meta"
 requires = ["setuptools >= 64", "setuptools-scm>=8"]
examples/frameworks/adk_demo/pyproject.toml (1)

1-2: Update copyright year to include 2026.

The file is being modified in 2026, but the copyright year still shows only 2025. Per coding guidelines, copyright years should be updated whenever a file is changed.

🔎 Proposed fix
-## SPDX-FileCopyrightText: Copyright (c) 2025, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+## SPDX-FileCopyrightText: Copyright (c) 2025-2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
examples/custom_functions/automated_description_generation/pyproject.toml (1)

1-1: Add required SPDX Apache-2.0 header.

This file is missing the required SPDX Apache-2.0 header. As per coding guidelines, all source files matching **/*.toml must start with the standard SPDX Apache-2.0 header template, and copyright years should be confirmed up-to-date whenever a file is changed.

🔎 Add SPDX header at the beginning of the file
+# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: Apache-2.0
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 [build-system]
examples/config_inheritance/pyproject.toml (1)

1-1: Missing SPDX Apache-2.0 header.

Per coding guidelines, all .toml files must start with the standard SPDX Apache-2.0 header comment. This file is missing the required license header.

🔎 Proposed fix to add the SPDX header
+# SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: Apache-2.0
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 [build-system]

As per coding guidelines, all source files including .toml must include the Apache-2.0 header.

🧹 Nitpick comments (2)
examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml (1)

12-17: Pre-existing: Indentation uses 2 spaces instead of 4.

As per coding guidelines, TOML files should use 4-space indentation. This is a pre-existing issue not introduced by this PR, so it can be addressed separately if desired.

🔎 Optional fix for indentation
 dependencies = [
-  "nvidia-nat[langchain,phoenix]~=1.5",
-  "beautifulsoup4~=4.13",
-  "networkx~=3.4",
-  "openinference-instrumentation-langchain==0.1.29",
+    "nvidia-nat[langchain,phoenix]~=1.5",
+    "beautifulsoup4~=4.13",
+    "networkx~=3.4",
+    "openinference-instrumentation-langchain==0.1.29",
 ]
examples/MCP/simple_auth_mcp/pyproject.toml (1)

1-1: Add SPDX Apache-2.0 header for consistency.

This example file is missing the SPDX license header that other example files include (e.g., examples/A2A/calculator_a2a/pyproject.toml lines 1-14). According to coding guidelines, all .toml files should start with the standard SPDX Apache-2.0 header.

🔎 Proposed fix to add SPDX header
+# SPDX-FileCopyrightText: Copyright (c) 2025, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
+# SPDX-License-Identifier: Apache-2.0
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
 [build-system]
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a70bc03 and 5c98027.

📒 Files selected for processing (75)
  • docs/source/versions1.json
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/HITL/simple_calculator_hitl/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
  • examples/MCP/service_account_auth_mcp/pyproject.toml
  • examples/MCP/simple_auth_mcp/pyproject.toml
  • examples/MCP/simple_calculator_mcp/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • examples/custom_functions/automated_description_generation/pyproject.toml
  • examples/custom_functions/plot_charts/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml
  • examples/evaluation_and_profiling/simple_calculator_eval/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • examples/evaluation_and_profiling/swe_bench/pyproject.toml
  • examples/finetuning/dpo_tic_tac_toe/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • examples/frameworks/semantic_kernel_demo/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • examples/front_ends/simple_auth/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • examples/observability/simple_calculator_observability/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • packages/compat/aiqtoolkit_crewai/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/compat/aiqtoolkit_weave/pyproject.toml
  • packages/compat/aiqtoolkit_zep_cloud/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
✅ Files skipped from review due to trivial changes (1)
  • examples/observability/simple_calculator_observability/pyproject.toml
🚧 Files skipped from review as they are similar to previous changes (1)
  • docs/source/versions1.json
🧰 Additional context used
📓 Path-based instructions (7)
**/*.{py,yaml,yml,json,toml}

📄 CodeRabbit inference engine (.cursor/rules/general.mdc)

Indent with 4 spaces (never tabs) and ensure every file ends with a single newline

Files:

  • examples/front_ends/simple_auth/pyproject.toml
  • examples/evaluation_and_profiling/swe_bench/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml
  • examples/finetuning/dpo_tic_tac_toe/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • examples/custom_functions/automated_description_generation/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • examples/evaluation_and_profiling/simple_calculator_eval/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_crewai/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/compat/aiqtoolkit_zep_cloud/pyproject.toml
  • examples/HITL/simple_calculator_hitl/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • examples/MCP/service_account_auth_mcp/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/compat/aiqtoolkit_weave/pyproject.toml
  • examples/MCP/simple_calculator_mcp/pyproject.toml
  • examples/MCP/simple_auth_mcp/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • examples/custom_functions/plot_charts/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • examples/frameworks/semantic_kernel_demo/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
**/*.{py,js,ts,tsx,jsx,sh,yaml,yml,json,toml,md,mdx,rst}

📄 CodeRabbit inference engine (.cursor/rules/general.mdc)

**/*.{py,js,ts,tsx,jsx,sh,yaml,yml,json,toml,md,mdx,rst}: Every file must start with the standard SPDX Apache-2.0 header
Confirm that copyright years are up-to-date whenever a file is changed
All source files must include the SPDX Apache-2.0 header template

Files:

  • examples/front_ends/simple_auth/pyproject.toml
  • examples/evaluation_and_profiling/swe_bench/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml
  • examples/finetuning/dpo_tic_tac_toe/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • examples/custom_functions/automated_description_generation/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • examples/evaluation_and_profiling/simple_calculator_eval/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_crewai/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/compat/aiqtoolkit_zep_cloud/pyproject.toml
  • examples/HITL/simple_calculator_hitl/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • examples/MCP/service_account_auth_mcp/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/compat/aiqtoolkit_weave/pyproject.toml
  • examples/MCP/simple_calculator_mcp/pyproject.toml
  • examples/MCP/simple_auth_mcp/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • examples/custom_functions/plot_charts/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • examples/frameworks/semantic_kernel_demo/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
**/*

⚙️ CodeRabbit configuration file

**/*: # Code Review Instructions

  • Ensure the code follows best practices and coding standards. - For Python code, follow
    PEP 20 and
    PEP 8 for style guidelines.
  • Check for security vulnerabilities and potential issues. - Python methods should use type hints for all parameters and return values (except for return values of None,
    in that situation no return type hint is needed).
    Example:
    def my_function(param1: int, param2: str) -> bool:
        pass
  • For Python exception handling, ensure proper stack trace preservation:
    • When re-raising exceptions: use bare raise statements to maintain the original stack trace,
      and use logger.error() (not logger.exception()) to avoid duplicate stack trace output.
    • When catching and logging exceptions without re-raising: always use logger.exception()
      to capture the full stack trace information.

Documentation Review Instructions - Verify that documentation and comments are clear and comprehensive. - Verify that the documentation doesn't contain any TODOs, FIXMEs or placeholder text like "lorem ipsum". - Verify that the documentation doesn't contain any offensive or outdated terms. - Verify that documentation and comments are free of spelling mistakes, ensure the documentation doesn't contain any

words listed in the ci/vale/styles/config/vocabularies/nat/reject.txt file, words that might appear to be
spelling mistakes but are listed in the ci/vale/styles/config/vocabularies/nat/accept.txt file are OK.

Misc. - All code (except .mdc files that contain Cursor rules) should be licensed under the Apache License 2.0,

and should contain an Apache License 2.0 header comment at the top of each file.

  • Confirm that copyright years are up-to date whenever a file is changed.

Common Bugs to Look For - Pydantic models using one of the SecretStr, SerializableSecretStr, or `OptionalSecretS...

Files:

  • examples/front_ends/simple_auth/pyproject.toml
  • examples/evaluation_and_profiling/swe_bench/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml
  • examples/finetuning/dpo_tic_tac_toe/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • examples/custom_functions/automated_description_generation/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • examples/evaluation_and_profiling/simple_calculator_eval/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_crewai/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/compat/aiqtoolkit_zep_cloud/pyproject.toml
  • examples/HITL/simple_calculator_hitl/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • examples/MCP/service_account_auth_mcp/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/compat/aiqtoolkit_weave/pyproject.toml
  • examples/MCP/simple_calculator_mcp/pyproject.toml
  • examples/MCP/simple_auth_mcp/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • examples/custom_functions/plot_charts/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • examples/frameworks/semantic_kernel_demo/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
examples/**/*

⚙️ CodeRabbit configuration file

examples/**/*: - This directory contains example code and usage scenarios for the toolkit, at a minimum an example should
contain a README.md or file README.ipynb.

  • If an example contains Python code, it should be placed in a subdirectory named src/ and should
    contain a pyproject.toml file. Optionally, it might also contain scripts in a scripts/ directory.
  • If an example contains YAML files, they should be placed in a subdirectory named configs/. - If an example contains sample data files, they should be placed in a subdirectory named data/, and should
    be checked into git-lfs.

Files:

  • examples/front_ends/simple_auth/pyproject.toml
  • examples/evaluation_and_profiling/swe_bench/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml
  • examples/finetuning/dpo_tic_tac_toe/pyproject.toml
  • examples/custom_functions/automated_description_generation/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • examples/evaluation_and_profiling/simple_calculator_eval/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • examples/HITL/simple_calculator_hitl/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • examples/MCP/service_account_auth_mcp/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • examples/MCP/simple_calculator_mcp/pyproject.toml
  • examples/MCP/simple_auth_mcp/pyproject.toml
  • examples/custom_functions/plot_charts/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • examples/frameworks/semantic_kernel_demo/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
packages/*/pyproject.toml

📄 CodeRabbit inference engine (.cursor/rules/general.mdc)

Each package in 'packages/' should contain a 'pyproject.toml' file with a dependency on 'nvidia-nat' or another package with name starting with 'nvidia-nat-'

Files:

  • packages/nvidia_nat_profiling/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
{pyproject.toml,packages/*/pyproject.toml}

📄 CodeRabbit inference engine (.cursor/rules/general.mdc)

Package dependencies should use '=' format with two-digit versions (e.g., '=1.0')

Files:

  • packages/nvidia_nat_profiling/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
packages/**/*

⚙️ CodeRabbit configuration file

packages/**/*: - This directory contains optional plugin packages for the toolkit, each should contain a pyproject.toml file. - The pyproject.toml file should declare a dependency on nvidia-nat or another package with a name starting
with nvidia-nat-. This dependency should be declared using ~=<version>, and the version should be a two
digit version (ex: ~=1.0).

  • Not all packages contain Python code, if they do they should also contain their own set of tests, in a
    tests/ directory at the same level as the pyproject.toml file.
  • When adding a new package, that new package name (as defined in the pyproject.toml file) should
    be added as a dependency to the nvidia-nat-all package in packages/nvidia_nat_all/pyproject.toml

Files:

  • packages/nvidia_nat_profiling/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_crewai/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/compat/aiqtoolkit_zep_cloud/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/compat/aiqtoolkit_weave/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
🧠 Learnings (16)
📓 Common learnings
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2026-01-05T15:46:49.676Z
Learning: Applies to packages/*/pyproject.toml : Each package in 'packages/' should contain a 'pyproject.toml' file with a dependency on 'nvidia-nat' or another package with name starting with 'nvidia-nat-'
📚 Learning: 2026-01-05T15:46:49.676Z
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2026-01-05T15:46:49.676Z
Learning: Applies to packages/*/pyproject.toml : Each package in 'packages/' should contain a 'pyproject.toml' file with a dependency on 'nvidia-nat' or another package with name starting with 'nvidia-nat-'

Applied to files:

  • examples/front_ends/simple_auth/pyproject.toml
  • examples/evaluation_and_profiling/swe_bench/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml
  • examples/finetuning/dpo_tic_tac_toe/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • examples/custom_functions/automated_description_generation/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • examples/evaluation_and_profiling/simple_calculator_eval/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_crewai/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/compat/aiqtoolkit_zep_cloud/pyproject.toml
  • examples/HITL/simple_calculator_hitl/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • examples/MCP/service_account_auth_mcp/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/compat/aiqtoolkit_weave/pyproject.toml
  • examples/MCP/simple_calculator_mcp/pyproject.toml
  • examples/MCP/simple_auth_mcp/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • examples/custom_functions/plot_charts/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • examples/frameworks/semantic_kernel_demo/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
📚 Learning: 2025-11-10T21:26:35.059Z
Learnt from: jiaxiangr
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 974
File: packages/nvidia_nat_all/pyproject.toml:39-39
Timestamp: 2025-11-10T21:26:35.059Z
Learning: In packages/nvidia_nat_all/pyproject.toml, workspace dependencies (nvidia-nat-* plugin packages) should NOT have version constraints because they are managed as workspace dependencies. Version constraints are only applied to the base nvidia-nat package and external dependencies, not to internal workspace packages.

Applied to files:

  • examples/front_ends/simple_auth/pyproject.toml
  • examples/evaluation_and_profiling/swe_bench/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml
  • examples/finetuning/dpo_tic_tac_toe/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • examples/custom_functions/automated_description_generation/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • examples/evaluation_and_profiling/simple_calculator_eval/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_crewai/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/compat/aiqtoolkit_zep_cloud/pyproject.toml
  • examples/HITL/simple_calculator_hitl/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • examples/MCP/service_account_auth_mcp/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/compat/aiqtoolkit_weave/pyproject.toml
  • examples/MCP/simple_calculator_mcp/pyproject.toml
  • examples/MCP/simple_auth_mcp/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • examples/custom_functions/plot_charts/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • examples/frameworks/semantic_kernel_demo/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
📚 Learning: 2025-12-02T19:36:36.626Z
Learnt from: bbednarski9
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 1217
File: packages/nvidia_nat_adk/pyproject.toml:38-38
Timestamp: 2025-12-02T19:36:36.626Z
Learning: In pyproject.toml dependency declarations, while the general guideline is to use two-digit version format with ~= (e.g., ~=1.18), using three-digit format (e.g., ~=1.18.0) is appropriate when intentionally restricting to a specific minor version line to allow patch updates but exclude newer minor versions (e.g., allowing 1.18.1 but blocking 1.19.x).

Applied to files:

  • examples/front_ends/simple_auth/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/finetuning/dpo_tic_tac_toe/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • examples/custom_functions/plot_charts/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • examples/frameworks/semantic_kernel_demo/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
📚 Learning: 2025-12-03T18:42:23.494Z
Learnt from: AnuradhaKaruppiah
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 1147
File: packages/nvidia_nat_a2a/pyproject.toml:1-10
Timestamp: 2025-12-03T18:42:23.494Z
Learning: In the packages/ directory, pyproject.toml files typically do not include SPDX license headers. Out of 34 packages, only nvidia_nat_strands is an exception. This pattern differs from the requirement for SPDX headers in source code files (.py, .js, .ts, etc.).

Applied to files:

  • examples/evaluation_and_profiling/swe_bench/pyproject.toml
  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/evaluation_and_profiling/email_phishing_analyzer/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • examples/evaluation_and_profiling/simple_calculator_eval/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • examples/frameworks/haystack_deep_research_agent/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • examples/HITL/simple_calculator_hitl/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • examples/MCP/service_account_auth_mcp/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • packages/compat/aiqtoolkit_weave/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • packages/nvidia_nat_vanna/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • examples/advanced_agents/alert_triage_agent/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
  • examples/MCP/kaggle_mcp/pyproject.toml
📚 Learning: 2026-01-05T15:46:49.676Z
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2026-01-05T15:46:49.676Z
Learning: Applies to {pyproject.toml,packages/*/pyproject.toml} : Package dependencies should use '~=<version>' format with two-digit versions (e.g., '~=1.0')

Applied to files:

  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • packages/nvidia_nat_profiling/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • packages/nvidia_nat_ragaai/pyproject.toml
  • examples/advanced_agents/profiler_agent/pyproject.toml
  • packages/nvidia_nat_test/pyproject.toml
  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • examples/frameworks/multi_frameworks/pyproject.toml
  • packages/nvidia_nat_mem0ai/pyproject.toml
  • packages/compat/aiqtoolkit_langchain/pyproject.toml
  • packages/nvidia_nat_redis/pyproject.toml
  • examples/A2A/calculator_a2a/pyproject.toml
  • examples/config_inheritance/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/nvidia_nat_mysql/pyproject.toml
  • packages/nvidia_nat_agno/pyproject.toml
  • packages/nvidia_nat_langchain/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • examples/front_ends/simple_calculator_custom_routes/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • examples/evaluation_and_profiling/simple_web_query_eval/pyproject.toml
  • packages/nvidia_nat_s3/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/frameworks/adk_demo/pyproject.toml
  • packages/nvidia_nat_adk/pyproject.toml
  • packages/nvidia_nat_openpipe_art/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • packages/nvidia_nat_a2a/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • packages/nvidia_nat_phoenix/pyproject.toml
  • packages/nvidia_nat_zep_cloud/pyproject.toml
  • packages/nvidia_nat_weave/pyproject.toml
  • packages/nvidia_nat_mcp/pyproject.toml
  • packages/nvidia_nat_all/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • packages/nvidia_nat_strands/pyproject.toml
  • examples/documentation_guides/workflows/text_file_ingest/pyproject.toml
  • packages/nvidia_nat_crewai/pyproject.toml
  • packages/nvidia_nat_nemo_customizer/pyproject.toml
  • packages/nvidia_nat_llama_index/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
  • packages/nvidia_nat_opentelemetry/pyproject.toml
📚 Learning: 2026-01-05T15:46:49.676Z
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2026-01-05T15:46:49.676Z
Learning: Use technical identifiers: 'nat' for API namespace and CLI tool, 'nvidia-nat' for package name, 'NAT_' prefix for environment variables, 'NeMo-Agent-Toolkit' for URLs and directory names

Applied to files:

  • examples/finetuning/rl_with_openpipe_art/pyproject.toml
  • examples/HITL/por_to_jiratickets/pyproject.toml
  • examples/getting_started/simple_web_query/pyproject.toml
  • examples/front_ends/per_user_workflow/pyproject.toml
  • examples/control_flow/sequential_executor/pyproject.toml
  • examples/A2A/currency_agent_a2a/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • examples/object_store/user_report/pyproject.toml
  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • examples/frameworks/agno_personal_finance/pyproject.toml
  • examples/control_flow/router_agent/pyproject.toml
  • packages/nvidia_nat_ingestion/pyproject.toml
  • examples/getting_started/simple_calculator/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • examples/A2A/math_assistant_a2a/pyproject.toml
  • examples/RAG/simple_rag/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
📚 Learning: 2026-01-05T15:46:49.677Z
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2026-01-05T15:46:49.677Z
Learning: Applies to {pyproject.toml,uv.lock} : New dependencies must be added to both 'pyproject.toml' (alphabetically) and 'uv.lock' via 'uv pip install <pkg> --sync'

Applied to files:

  • packages/nvidia_nat_test/pyproject.toml
  • packages/nvidia_nat_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
📚 Learning: 2026-01-05T15:46:49.676Z
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2026-01-05T15:46:49.676Z
Learning: The project follows semantic versioning (MAJOR.MINOR.PATCH); patch releases must remain backward-compatible

Applied to files:

  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
📚 Learning: 2026-01-05T15:46:49.676Z
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2026-01-05T15:46:49.676Z
Learning: Applies to **/*.{md,mdx} : Never use deprecated names: 'Agent Intelligence toolkit', 'aiqtoolkit', 'AgentIQ', 'AIQ', or 'aiq' in documentation; update any occurrences unless intentionally referring to deprecated versions or implementing compatibility layers

Applied to files:

  • packages/compat/aiqtoolkit_semantic_kernel/pyproject.toml
  • packages/compat/aiqtoolkit_crewai/pyproject.toml
  • packages/compat/aiqtoolkit_llama_index/pyproject.toml
  • packages/compat/aiqtoolkit_mem0ai/pyproject.toml
  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
📚 Learning: 2025-11-14T20:33:53.944Z
Learnt from: AnuradhaKaruppiah
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 1181
File: packages/nvidia_nat_test/tests/test_test_llm.py:419-484
Timestamp: 2025-11-14T20:33:53.944Z
Learning: The NVIDIA NeMo-Agent-Toolkit project uses pytest-asyncio in strict mode (the default), which requires pytest.mark.asyncio decorator on all async test functions. All async tests in packages/nvidia_nat_test/tests/test_test_llm.py consistently follow this pattern.

Applied to files:

  • packages/nvidia_nat_data_flywheel/pyproject.toml
  • examples/dynamo_integration/react_benchmark_agent/pyproject.toml
  • packages/compat/aiqtoolkit_test/pyproject.toml
  • examples/frameworks/strands_demo/pyproject.toml
📚 Learning: 2025-09-17T05:34:04.696Z
Learnt from: AnuradhaKaruppiah
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 752
File: packages/nvidia_nat_mcp/src/nat/plugins/mcp/client_base.py:0-0
Timestamp: 2025-09-17T05:34:04.696Z
Learning: The user AnuradhaKaruppiah confirmed that request copying is not needed in the AuthAdapter.async_auth_flow method in packages/nvidia_nat_mcp/src/nat/plugins/mcp/client_base.py, suggesting that httpx handles request mutation safely or there are no concurrent usage concerns for this implementation.

Applied to files:

  • examples/MCP/simple_auth_mcp/pyproject.toml
📚 Learning: 2025-09-17T05:20:03.228Z
Learnt from: AnuradhaKaruppiah
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 752
File: packages/nvidia_nat_mcp/src/nat/plugins/mcp/client_base.py:99-121
Timestamp: 2025-09-17T05:20:03.228Z
Learning: The AuthAdapter class in packages/nvidia_nat_mcp/src/nat/plugins/mcp/client_base.py has a known concurrency race condition where `self.auth_provider.config.auth_request = auth_request` can be racy under concurrent requests. This should be addressed by either refactoring AuthProviderBase.authenticate() to accept AuthRequest as a parameter or using an asyncio.Lock to serialize access.

Applied to files:

  • examples/MCP/simple_auth_mcp/pyproject.toml
📚 Learning: 2026-01-05T15:46:49.676Z
Learnt from: CR
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 0
File: .cursor/rules/general.mdc:0-0
Timestamp: 2026-01-05T15:46:49.676Z
Learning: Source code in 'src/aiq/**/*' maintains backward compatibility with previous toolkit version and should almost never be modified

Applied to files:

  • packages/compat/aiqtoolkit_agno/pyproject.toml
  • packages/compat/aiqtoolkit/pyproject.toml
📚 Learning: 2025-11-05T11:45:35.119Z
Learnt from: thepatrickchin
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 1152
File: examples/config_inheritance/pyproject.toml:1-25
Timestamp: 2025-11-05T11:45:35.119Z
Learning: In the examples/ directory, pyproject.toml files typically do not include SPDX license headers, with only one exception (adk_demo). This is an established pattern that differs from the general guideline requiring SPDX headers in all .toml files.

Applied to files:

  • examples/frameworks/adk_demo/pyproject.toml
📚 Learning: 2025-10-09T22:21:15.944Z
Learnt from: onkkul
Repo: NVIDIA/NeMo-Agent-Toolkit PR: 859
File: packages/nvidia_nat_autogen/src/nat/plugins/autogen/tool_wrapper.py:115-118
Timestamp: 2025-10-09T22:21:15.944Z
Learning: In `packages/nvidia_nat_autogen/src/nat/plugins/autogen/tool_wrapper.py`, when extracting parameters from input_schema at line 136, the code must handle both dataclasses (standard and Pydantic) and Pydantic BaseModels differently. Pydantic dataclasses have `__pydantic_fields__` (not `model_fields`), so use `dataclasses.fields()` for dataclasses and `model_fields` for BaseModels to properly extract function parameters.

Applied to files:

  • packages/nvidia_nat_adk/pyproject.toml

Copy link
Member

@willkill07 willkill07 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me! Compared to aed0b16

@mnajafian-nv mnajafian-nv added improvement Improvement to existing functionality non-breaking Non-breaking change labels Jan 5, 2026
@mnajafian-nv mnajafian-nv merged commit bc97aff into develop Jan 5, 2026
22 of 23 checks passed
@mnajafian-nv mnajafian-nv deleted the fix/restore-version-1.5 branch January 5, 2026 18:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

improvement Improvement to existing functionality non-breaking Non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants