Metadata-Version: 2.4
Name: orka-reasoning
Version: 0.9.14
Summary: Modular agent orchestrator for reasoning pipelines
Author-email: Marco Somma <marcosomma.work@gmail.com>
License-Expression: Apache-2.0
Project-URL: Homepage, https://orkacore.com
Project-URL: Documentation, https://docs.orkacore.com
Project-URL: Repository, https://github.com/marcosomma/orka-reasoning
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: redis[async,search]==4.5.5
Requires-Dist: redis-om==0.3.5
Requires-Dist: rmtest>=0.7.0
Requires-Dist: pyyaml>=6.0.2
Requires-Dist: python-dotenv>=0.19.0
Requires-Dist: GPUtil>=1.4.0
Requires-Dist: psutil>=7.0.0
Requires-Dist: click<9.0.0,>=8.1.8
Requires-Dist: openai>=1.0.0
Requires-Dist: litellm>=1.0.0
Requires-Dist: numpy>=2.3.1
Requires-Dist: sentence_transformers>=5.0.0
Requires-Dist: ddgs>=3.0.0
Requires-Dist: fastapi>=0.68.0
Requires-Dist: uvicorn>=0.15.0
Requires-Dist: pydantic>=1.8.0
Requires-Dist: httpx>=0.24.0
Requires-Dist: jinja2>=3.0.0
Requires-Dist: async-timeout>=4.0.0
Requires-Dist: json-repair>=0.25.0
Requires-Dist: jsonschema>=4.20.0
Requires-Dist: rich>=13.0.0
Requires-Dist: textual>=0.40.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: pytest-cov>=4.0.0; extra == "dev"
Requires-Dist: coverage>=7.0.0; extra == "dev"
Requires-Dist: fakeredis>=2.0.0; extra == "dev"
Requires-Dist: black>=24.2.0; extra == "dev"
Requires-Dist: flake8>=7.0.0; extra == "dev"
Requires-Dist: flake8-docstrings>=1.7.0; extra == "dev"
Requires-Dist: flake8-bugbear>=24.1.0; extra == "dev"
Requires-Dist: flake8-comprehensions>=3.14.0; extra == "dev"
Requires-Dist: flake8-pytest-style>=1.7.0; extra == "dev"
Requires-Dist: mypy>=1.17.0; extra == "dev"
Requires-Dist: types-redis>=4.2.0; extra == "dev"
Requires-Dist: types-PyYAML>=6.0.12; extra == "dev"
Requires-Dist: types-requests>=2.32.0; extra == "dev"
Requires-Dist: types-psutil>=7.0.0; extra == "dev"
Requires-Dist: sphinx>=7.0.0; extra == "dev"
Requires-Dist: sphinx-rtd-theme>=1.0.0; extra == "dev"
Provides-Extra: extra
Provides-Extra: prod
Requires-Dist: gunicorn>=21.0.0; extra == "prod"
Requires-Dist: supervisor>=4.2.0; extra == "prod"
Provides-Extra: ml
Requires-Dist: sentence-transformers>=2.2.0; extra == "ml"
Requires-Dist: numpy>=1.21.0; extra == "ml"
Provides-Extra: all
Requires-Dist: orka-reasoning[dev,ml,prod,schema]; extra == "all"
Dynamic: license-file

<p align="center">

<img src="https://orkacore.com/assets/orka_logo_white.png" alt="OrKa Logo" style="border-radius: 25px; width: 400px; height:400px" />

[![GitHub Tag](https://img.shields.io/github/v/tag/marcosomma/orka-reasoning?color=blue)](https://github.com/marcosomma/orka-reasoning/tags)
[![PyPI - License](https://img.shields.io/pypi/l/orka-reasoning?color=blue)](https://pypi.org/project/orka-reasoning/)

[![Unit Tests](https://github.com/marcosomma/orka-reasoning/actions/workflows/tests.yml/badge.svg)](https://github.com/marcosomma/orka-reasoning/actions/workflows/tests.yml) [![Lint](https://github.com/marcosomma/orka-reasoning/actions/workflows/lint.yml/badge.svg)](https://github.com/marcosomma/orka-reasoning/actions/workflows/lint.yml)

<!-- [![codecov](https://img.shields.io/badge/codecov-76.97%25-yellow?&amp;logo=codecov)](https://codecov.io/gh/marcosomma/orka-reasoning) -->
[![codecov](https://codecov.io/github/marcosomma/orka-reasoning/branch/master/graph/badge.svg?token=V91X4WGBBZ)](https://codecov.io/github/marcosomma/orka-reasoning)
[![orka-reasoning](https://snyk.io/advisor/python/orka-reasoning/badge.svg)](https://snyk.io/advisor/python/orka-reasoning)

[![PyPi](https://img.shields.io/badge/pypi-%23ececec.svg?style=for-the-badge&amp;logo=pypi&amp;logoColor=1f73b7)](https://pypi.org/project/orka-reasoning/)[![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&amp;logo=docker&amp;logoColor=white)](https://hub.docker.com/r/marcosomma/orka-ui)[![Documentation](https://img.shields.io/badge/Docs-blue?style=for-the-badge&amp;logo=googledocs&amp;logoColor=%23fff&amp;link=https%3A%2F%2Forkacore.com%2Fdocs%2Findex.html)](https://orkacore.com/docs/index.html)

[![orkacore](https://img.shields.io/badge/orkacore-.com-green?labelColor=blue&amp;style=for-the-badge&amp;link=https://orkacore.com/)](https://orkacore.com/)


[![Pepy Total Downloads](https://img.shields.io/pepy/dt/orka-reasoning?style=for-the-badge&amp;label=Downloads%20from%20April%202025&amp;color=blue&amp;link=https%3A%2F%2Fpiptrends.com%2Fpackage%2Forka-reasoning)](https://clickpy.clickhouse.com/dashboard/orka-reasoning)
</p>

## Overview
OrKA-reasoning is a open-source, local‑first, YAML‑driven system for composing AI workflows. Define agents and control‑flow in configuration, run them with a single command, and keep everything observable and reproducible.

Think of it as a streamlined, open-source experimental framework with a strong focus on:
- YAML‑first workflows: declarative configs over code > see [YAML Configuration](docs/YAML_CONFIGURATION.md)
- Visual builder and runner (drag‑and‑drop) > see [OrKa UI](docs/orka-ui.md)
- Built‑in memory with vector search and decay > see [Memory System](docs/MEMORY_SYSTEM_GUIDE.md)
- Local and cloud LLM support with cost controls > see [Backends](docs/README_BACKENDS.md)
- Rich control flow (router, fork/join, loop, failover, plan validation) > see [Agents & Nodes](docs/AGENT_NODE_TOOL_INDEX.md)
- Path discovery with GraphScout (beta) > see [GraphScout](docs/GRAPH_SCOUT_AGENT.md)
- Structured JSON inputs for complex data > see [JSON Inputs](docs/JSON_INPUTS.md)
- Observability and tracing > see [Observability](docs/observability.md)
- Testing guidance and examples > see [Testing Guide](docs/TESTING.md)

## Get started

- Quickstart: [docs/quickstart.md](docs/quickstart.md)
- Documentation index: [docs/index.md](docs/index.md)
- Examples: [examples/](examples)

## Community

- Issues & feature requests: https://github.com/marcosomma/orka-reasoning/issues
- Contributing guide: [CONTRIBUTING.md](CONTRIBUTING.md)

## License

Apache 2.0 — see [LICENSE](LICENSE)
