Metadata-Version: 2.4
Name: agentic-systems
Version: 2.1.3
Summary: Agentic Systems: a computational grammar for building, executing, observing, and evaluating intelligent systems.
Author-email: Jacobo Gerardo Gonzalez Leon <jacobogerardo.gonzalez@bbva.com>
License-Expression: MIT
Project-URL: Homepage, https://www.github.com/JacoboGGLeon/agentic_systems
Project-URL: Repository, https://www.github.com/JacoboGGLeon/agentic_systems
Project-URL: LinkedIn, https://www.linkedin.com/in/jacoboggleon/
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: pydantic<3,>=2.7.0
Requires-Dist: pandas>=2.0.0
Requires-Dist: typing-extensions>=4.10.0
Requires-Dist: rich>=13.0.0
Requires-Dist: jsonschema<5,>=4.23
Provides-Extra: bedrock
Requires-Dist: boto3>=1.39.0; extra == "bedrock"
Requires-Dist: botocore>=1.39.0; extra == "bedrock"
Provides-Extra: langgraph
Requires-Dist: langgraph>=0.2.0; extra == "langgraph"
Requires-Dist: typing-extensions>=4.10.0; extra == "langgraph"
Provides-Extra: openai
Requires-Dist: openai<3,>=2.45.0; extra == "openai"
Provides-Extra: openai-agents
Requires-Dist: openai-agents<0.19,>=0.18.3; extra == "openai-agents"
Provides-Extra: strands
Requires-Dist: strands-agents[a2a]<2,>=1.29.0; extra == "strands"
Requires-Dist: mcp<2,>=1; extra == "strands"
Provides-Extra: vllm
Requires-Dist: openai<3,>=2.45.0; extra == "vllm"
Provides-Extra: vllm-client
Requires-Dist: openai<3,>=2.45.0; extra == "vllm-client"
Provides-Extra: vllm-server
Requires-Dist: vllm>=0.9.0; extra == "vllm-server"
Requires-Dist: openai<3,>=2.45.0; extra == "vllm-server"
Provides-Extra: dev
Requires-Dist: pytest>=8.0.0; extra == "dev"
Requires-Dist: pytest-cov>=5.0.0; extra == "dev"
Requires-Dist: ruff==0.15.22; extra == "dev"
Requires-Dist: tomli>=2.1.0; python_version < "3.11" and extra == "dev"
Requires-Dist: ipykernel>=6.0.0; extra == "dev"
Requires-Dist: jupyterlab>=4.0.0; extra == "dev"
Requires-Dist: nbclient>=0.10.0; extra == "dev"
Requires-Dist: nbformat>=5.10.0; extra == "dev"
Requires-Dist: hypothesis>=6.100.0; extra == "dev"
Requires-Dist: pyright>=1.1.390; extra == "dev"
Requires-Dist: import-linter>=2.0.0; extra == "dev"
Requires-Dist: pip-audit>=2.7.0; extra == "dev"
Requires-Dist: radon>=6.0.1; extra == "dev"
Requires-Dist: cyclonedx-bom>=5.0.0; extra == "dev"
Requires-Dist: mutmut<4,>=3.7; extra == "dev"
Provides-Extra: all
Requires-Dist: boto3>=1.39.0; extra == "all"
Requires-Dist: botocore>=1.39.0; extra == "all"
Requires-Dist: langgraph>=0.2.0; extra == "all"
Requires-Dist: openai<3,>=2.45.0; extra == "all"
Requires-Dist: openai-agents<0.19,>=0.18.3; extra == "all"
Requires-Dist: strands-agents[a2a]<2,>=1.29.0; extra == "all"
Requires-Dist: mcp<2,>=1; extra == "all"
Requires-Dist: ipykernel>=6.0.0; extra == "all"
Requires-Dist: jupyterlab>=4.0.0; extra == "all"
Requires-Dist: nbclient>=0.10.0; extra == "all"
Requires-Dist: nbformat>=5.10.0; extra == "all"
Requires-Dist: pytest>=8.0.0; extra == "all"
Requires-Dist: pytest-cov>=5.0.0; extra == "all"
Requires-Dist: ruff==0.15.22; extra == "all"
Requires-Dist: hypothesis>=6.100.0; extra == "all"
Requires-Dist: pyright>=1.1.390; extra == "all"
Requires-Dist: import-linter>=2.0.0; extra == "all"
Requires-Dist: pip-audit>=2.7.0; extra == "all"
Requires-Dist: radon>=6.0.1; extra == "all"
Requires-Dist: cyclonedx-bom>=5.0.0; extra == "all"
Requires-Dist: mutmut<4,>=3.7; extra == "all"
Requires-Dist: tomli>=2.1.0; python_version < "3.11" and extra == "all"

# Agentic Systems

Construye agentes, coordínalos y comprueba sus resultados con una sola API.

```python
import agentic_systems as toolkit

worker = toolkit.Agent("total", toolkit.Action("sum", lambda data: {"total": sum(data["values"])}))
result = worker.run({"values": [2, 3, 5]})
result.data  # {"total": 10}
```

Para coordinar unidades, conserva la misma forma de ejecutar:

```python
app = toolkit.System("application", toolkit.Sequence((worker,)))
app.run({"values": [2, 3, 5]}).data
```

Agent y System admiten **Sequence**, **Parallel** y **Graph**. Las decisiones
son funciones Python. Tools implementan operaciones; Skills las agrupan;
Environment mantiene episodios y memoria; Eval comprueba el resultado.
`run()` es el recorrido habitual. `compile()` prepara una declaración para
reutilizarla cuando hace falta.

Empieza en [tutorials](tutorials/README.md), elige una tarea en
[examples](examples/README.md) o abre [Studio](examples/agentic_systems_studio/README.md).
Los [seis flujos](examples/grammar_tour/README.md) muestran la gramática completa
de Agent y System con entrada, proceso y salida.

El [notebook de toda la API](examples/api_walkthrough/01_api_user_guide.ipynb)
reúne el recorrido y la aplicación de pedidos. El [inventario de notebooks](docs/NOTEBOOK_INVENTORY_213.md)
distingue material vigente, referencias compartidas e historia.

La revisión **2.1.3** está en este repositorio y no se ha publicado en esta tarea.
Instala el wheel local proporcionado; [instalación](INSTALL.md) explica la
preparación inicial y los SDK opcionales. No hay aliases ni compatibilidad con
los constructores anteriores.

Para elegir un proveedor o framework, consulta [integraciones](docs/API_213.md#runtime-y-framework).
Hay pruebas actuales con Python, Ollama, Bedrock API key y OpenAI API key.
[La validación final](revisions/2.1.3/closeout-evidence/REPORT.md) especifica modelos,
casos, artefacto, consumo y límites. IAM y GPU siguen requiriendo su entorno.

[Guía de API](docs/API_213.md) · [Referencia completa](docs/API_213_SURFACE.md) ·
[Criterios de experiencia](docs/USER_EXPERIENCE_213.md) · [Validadores](docs/VALIDATION_213.md)
