Your agent is a Python class, and its docstring is the prompt
NOOA treats an AI agent as a plain Python class—state as fields, tools as methods, and prompts as docstrings—to cut the abstraction clutter of typical frameworks.
What it does
NOOA is a model-agnostic Python framework that builds AI agents through ordinary object-oriented patterns. An agent is a class that inherits from Agent: typed fields hold state, methods with real bodies run as deterministic Python, and methods written with ... are implemented at runtime by an LLM using the signature and docstring as guidance. It routes model calls through LiteLLM and traces every invocation by default.
The interesting bit
Instead of maintaining separate YAML schemas, prompt templates, and tool definitions, the framework lets type annotations and docstrings double as the model’s contract. The LLM writes Python in a sandboxed REPL with access to self and imports, collapsing the boundary between orchestration and application logic into something that looks like normal software engineering.
Key highlights
- Agents are Python objects where fields are state, methods are capabilities, and docstrings are prompts
- Deterministic logic and LLM-driven behavior coexist in the same class;
...marks the difference - Type annotations define the model’s callable interface, reducing separate tool-schema boilerplate
- Built-in tracing for LLM calls, code execution, and method invocations with preserved parent-child spans
- Optional packages add CLI tools, a trace viewer, long-term memory, and benchmark runners
Caveats
- The framework is explicitly labeled research software with expected rough edges
- LLM-generated code execution requires OS-level sandboxing; the in-process validators are described as “defense-in-depth guardrails, not a containment boundary”
Verdict This is for Python developers who would rather refactor an agent with ordinary IDE tooling than manage a separate prompt-and-tool stack. If you are not comfortable sandboxing arbitrary generated code, or you need a polished production framework, this is not yet your stop.
Frequently asked
- What is NVIDIA-NeMo/labs-OO-Agents?
- NOOA treats an AI agent as a plain Python class—state as fields, tools as methods, and prompts as docstrings—to cut the abstraction clutter of typical frameworks.
- Is labs-OO-Agents open source?
- Yes — NVIDIA-NeMo/labs-OO-Agents is an open-source project tracked on heatdrop.
- What language is labs-OO-Agents written in?
- NVIDIA-NeMo/labs-OO-Agents is primarily written in Python.
- How popular is labs-OO-Agents?
- NVIDIA-NeMo/labs-OO-Agents has 1.9k stars on GitHub and is currently accelerating.
- Where can I find labs-OO-Agents?
- NVIDIA-NeMo/labs-OO-Agents is on GitHub at https://github.com/NVIDIA-NeMo/labs-OO-Agents.