Metadata-Version: 2.4
Name: matrx-ai
Version: 0.1.1
Summary: Matrx AI Engine — unified AI orchestration backend with multi-provider LLM support, streaming, tool execution, and conversation persistence.
Project-URL: Homepage, https://github.com/armanisadeghi/matrx-ai
Project-URL: Repository, https://github.com/armanisadeghi/matrx-ai
Project-URL: Issues, https://github.com/armanisadeghi/matrx-ai/issues
Author-email: Matrx <admin@aimatrx.com>
Maintainer-email: Matrx <admin@aimatrx.com>
License: MIT
Keywords: agents,ai,anthropic,fastapi,llm,openai,orchestration,streaming,supabase,tools
Classifier: Development Status :: 4 - Beta
Classifier: Framework :: FastAPI
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.13
Requires-Dist: aiofiles
Requires-Dist: anthropic
Requires-Dist: cerebras-cloud-sdk
Requires-Dist: google-genai
Requires-Dist: groq
Requires-Dist: httpx>=0.28.0
Requires-Dist: matrx-orm>=2.0.37
Requires-Dist: matrx-utils>=1.0.9
Requires-Dist: openai
Requires-Dist: pip>=26.0.1
Requires-Dist: pydantic-settings>=2.7.0
Requires-Dist: pydantic>=2.10.0
Requires-Dist: python-dotenv>=1.0.0
Requires-Dist: rich
Requires-Dist: supabase
Requires-Dist: tiktoken
Requires-Dist: together
Requires-Dist: xai-sdk
Provides-Extra: dev
Requires-Dist: httpx>=0.28.0; extra == 'dev'
Requires-Dist: pyright>=1.1.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.25.0; extra == 'dev'
Requires-Dist: pytest>=8.3.0; extra == 'dev'
Requires-Dist: ruff>=0.9.0; extra == 'dev'
Provides-Extra: server
Requires-Dist: fastapi[standard]>=0.115.0; extra == 'server'
Requires-Dist: orjson>=3.10.0; extra == 'server'
Requires-Dist: sse-starlette>=2.2.0; extra == 'server'
Requires-Dist: uvicorn[standard]>=0.34.0; extra == 'server'
Requires-Dist: uvloop>=0.21.0; extra == 'server'
Description-Content-Type: text/markdown

# matrx-ai

Matrx AI Engine — unified AI orchestration backend with multi-provider LLM support, streaming, tool execution, and conversation persistence.

## Installation

```bash
# Core library only (AI providers, tools, conversation management)
pip install matrx-ai

# With the FastAPI server layer
pip install "matrx-ai[server]"

# Or with uv
uv add matrx-ai
uv add "matrx-ai[server]"
```

## Quick Start (library)

```python
import matrx_ai

# Initialize once at startup (registers the database connection)
matrx_ai.initialize()

# Use the AI engine directly
from matrx_ai.orchestrator import execute_ai_request
from matrx_ai.config.unified_config import UnifiedConfig
```

## Quick Start (server)

```bash
uv sync --extra server   # install with server deps
cp .env.example .env     # fill in your API keys
make dev                 # start dev server on :8000
```

## Environment Variables

Copy `.env.example` to `.env` and fill in the required keys:

- AI provider keys: `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, `GEMINI_API_KEY`, `GROQ_API_KEY`, etc.
- Supabase: `SUPABASE_URL`, `SUPABASE_ANON_KEY`, `SUPABASE_SERVICE_ROLE_KEY`, `SUPABASE_MATRIX_*`

## Common Commands

```bash
make dev        # dev server with reload on :8000
make run        # production mode (matrx-ai-server)
make lint       # ruff check
make fmt        # ruff format
make typecheck  # pyright
make test       # pytest -v
```

## Publishing a New Release

```bash
./scripts/publish.sh              # patch bump  0.1.0 → 0.1.1
./scripts/publish.sh --minor      # minor bump  0.1.0 → 0.2.0
./scripts/publish.sh --major      # major bump  0.1.0 → 1.0.0
./scripts/publish.sh --message "feat: add new provider"
./scripts/publish.sh --dry-run    # preview without committing
```

## Version History

| Version | Highlights |
|---|---|
| **v0.1.1** | Patch release |
| **v0.1.0** | Initial release — multi-provider AI orchestration, streaming, tool system, conversation persistence |
