Metadata-Version: 2.4
Name: adi-agentic-agi
Version: 0.5.1
Summary: LLM-agnostic agentic cognitive bus framework (ADI-Agentic-AGI)
Author: Adi's American Soft LLC
License: Apache-2.0
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pydantic>=2.6
Provides-Extra: dev
Requires-Dist: pytest>=8; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
Requires-Dist: ruff>=0.5; extra == "dev"
Requires-Dist: mypy>=1.8; extra == "dev"
Requires-Dist: build>=1.2; extra == "dev"
Requires-Dist: twine>=5.0; extra == "dev"
Provides-Extra: openai
Requires-Dist: openai>=1.0; extra == "openai"
Provides-Extra: anthropic
Requires-Dist: anthropic>=0.30; extra == "anthropic"
Provides-Extra: gemini
Requires-Dist: google-generativeai>=0.7; extra == "gemini"
Provides-Extra: http
Requires-Dist: httpx>=0.27; extra == "http"
Provides-Extra: db
Requires-Dist: sqlalchemy>=2.0; extra == "db"
Requires-Dist: aiosqlite>=0.20; extra == "db"
Requires-Dist: asyncpg>=0.29; extra == "db"
Provides-Extra: redis
Requires-Dist: redis>=5.0; extra == "redis"
Provides-Extra: ui
Requires-Dist: fastapi>=0.110; extra == "ui"
Requires-Dist: uvicorn>=0.27; extra == "ui"
Requires-Dist: jinja2>=3.1; extra == "ui"
Requires-Dist: python-multipart>=0.0.9; extra == "ui"
Provides-Extra: otel
Requires-Dist: opentelemetry-api>=1.25; extra == "otel"
Requires-Dist: opentelemetry-sdk>=1.25; extra == "otel"
Requires-Dist: opentelemetry-exporter-otlp>=1.25; extra == "otel"
Dynamic: license-file

# adi-agentic-agi

A cognitive, policy-driven, multi-agent framework built on a **Cognitive Bus (Blackboard)**.

## v0.5.0 Additions
- **SQL adapters**: SQLite/Postgres event store (`SqlEventStore`) *(extras: [db])*
- **Redis adapter**: Redis event store (`RedisEventStore`) *(extras: [redis])*
- **Web UI Dashboard** (FastAPI) *(extras: [ui])*:
  - HITL approvals (Approve/Reject gates)
  - Visual trace explorer (live timeline)
  - Council status view (threads + realtime events)

## Run the Dashboard
```bash
pip install "adi-agentic-agi[ui]"
```

```python
import uvicorn
from adi_agentic_agi.core.bus import CognitiveBus
from adi_agentic_agi import create_app

bus = CognitiveBus()
app = create_app(bus=bus)

uvicorn.run(app, host="0.0.0.0", port=8080)
```

Open: http://localhost:8080

## Use Postgres for durable threads
```bash
pip install "adi-agentic-agi[db]"
```

```python
from adi_agentic_agi.core.bus import CognitiveBus
from adi_agentic_agi.memory.sql_store import SqlEventStore

store = SqlEventStore("postgresql+asyncpg://user:pass@host:5432/db")
bus = CognitiveBus(store=store)
```

## Use Redis for durable threads
```bash
pip install "adi-agentic-agi[redis]"
```

```python
from adi_agentic_agi.core.bus import CognitiveBus
from adi_agentic_agi.memory.redis_store import RedisEventStore

store = RedisEventStore("redis://localhost:6379/0")
bus = CognitiveBus(store=store)
```

## Local integration testing (Postgres + Redis)

Start services:
```bash
docker-compose up -d
```

Run tests with extras:
```bash
pip install -e ".[dev,db,redis,ui,http]"
export DATABASE_URL="postgresql+asyncpg://adi:adi@localhost:5432/adi_agentic_agi"
export REDIS_URL="redis://localhost:6379/0"
pytest -q
```

