Metadata-Version: 2.4
Name: astra-server
Version: 0.1.1
Summary: Astra Runtime - Embedded server for running AI agents
Project-URL: Homepage, https://github.com/HeeManSu/astra-agi
Project-URL: Documentation, https://github.com/HeeManSu/astra-agi#readme
Project-URL: Repository, https://github.com/HeeManSu/astra-agi
Author-email: Himanshu Sharma <himanshu.kumarr07@gmail.com>
License: MIT
Keywords: agents,ai,fastapi,llm,runtime,server
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.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Typing :: Typed
Requires-Python: <3.14,>=3.10
Requires-Dist: astra-framework>=0.1.0
Requires-Dist: astra-observability>=0.1.0
Requires-Dist: fastapi>=0.109.0
Requires-Dist: pydantic-settings>=2.0.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: pyjwt>=2.8.0
Requires-Dist: uvicorn[standard]>=0.27.0
Provides-Extra: investment-team
Requires-Dist: fredapi>=0.5.0; extra == 'investment-team'
Requires-Dist: google-genai>=1.0.0; extra == 'investment-team'
Requires-Dist: python-dotenv>=1.0.0; extra == 'investment-team'
Requires-Dist: yfinance>=1.2.0; extra == 'investment-team'
Provides-Extra: test
Requires-Dist: httpx>=0.26.0; extra == 'test'
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'test'
Requires-Dist: pytest>=8.0.0; extra == 'test'
Description-Content-Type: text/markdown

# Astra Runtime

Embedded server for running AI agents.

## Installation

```bash
pip install astra-server
```

## Quick Start

```python
from runtime import AstraServer
from framework import Agent

# Create your agent
my_agent = Agent(
    name="assistant",
    model=...,
    system_prompt="You are a helpful assistant.",
)

# Create server
server = AstraServer(
    agents=[my_agent],
)

# Get FastAPI app
app = server.get_app()
```

Then run with:

```bash
uvicorn main:app --reload
```

## API Endpoints

| Endpoint                 | Method | Description           |
| ------------------------ | ------ | --------------------- |
| `/health`                | GET    | Health check          |
| `/agents`                | GET    | List agents           |
| `/agents/{id}`           | GET    | Get agent             |
| `/agents/{id}/run`       | POST   | Run agent             |
| `/teams`                 | GET    | List teams            |
| `/teams/{id}/run`        | POST   | Run team              |
| `/threads`               | POST   | Create thread         |
| `/threads/{id}/messages` | GET    | Get messages          |
| `/chat/stream`           | POST   | Stream response (SSE) |
