Frontend (items 1-10):
- WebSocket streaming integration with useWebSocket hook
- Admin Dashboard UI (status, voices, agents, governance tabs)
- Voice playback UI (TTS/STT integration)
- Settings/Preferences page (conversation style, sliders)
- Responsive/mobile layout (breakpoints at 480px, 768px)
- Dark/light theme with CSS variables and localStorage
- Error handling & loading states (retry, empty state, disabled input)
- Authentication UI (login page, Bearer token, logout)
- Head visualization improvements (active/speaking states, animations)
- Consequence/Ethics dashboard (lessons, consequences, insights tabs)
Backend stubs (items 11-21):
- Tool connectors: DocsConnector (text/md/PDF), DBConnector (SQLite/Postgres), CodeRunnerConnector (Python/JS/Bash/Ruby sandboxed)
- STT adapter: WhisperSTTAdapter, AzureSTTAdapter
- Multi-modal interface adapters: Visual, Haptic, Gesture, Biometric
- SSE streaming endpoint (/v1/sessions/{id}/stream/sse)
- Multi-tenant support (X-Tenant-ID header, tenant CRUD)
- Plugin marketplace/registry (register, install, list)
- Backup/restore endpoints
- Versioned API negotiation (Accept-Version header, deprecation)
Infrastructure (items 22-26):
- docker-compose.yml (API + Postgres + Redis + frontend)
- .env.example with all configurable vars
- gunicorn.conf.py production ASGI config
- Prometheus metrics collector and /metrics endpoint
- Structured JSON logging configuration
Documentation (items 27-29):
- Architecture docs with module layout and subsystem descriptions
- Quickstart guide with setup, API tour, and test instructions
Tests (items 30-32):
- Integration tests: 25 end-to-end API tests
- Frontend tests: 10 Vitest tests for hooks (useTheme, useAuth)
- Load/performance tests: latency and throughput benchmarks
- Connector tests: 16 tests for Docs, DB, CodeRunner
- Multi-modal adapter tests: 9 tests
- Metrics collector tests: 5 tests
- STT adapter tests: 2 tests
511 Python tests passing, 10 frontend tests passing, 0 ruff errors.
Co-Authored-By: Nakamoto, S <defi@defi-oracle.io>
121 lines
2.3 KiB
Markdown
121 lines
2.3 KiB
Markdown
# FusionAGI Quickstart Guide
|
|
|
|
## Prerequisites
|
|
|
|
- Python 3.10+
|
|
- Node.js 20+ (for frontend)
|
|
- Git
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
# Clone the repository
|
|
git clone https://gitea.d-bis.org/d-bis/FusionAGI.git
|
|
cd FusionAGI
|
|
|
|
# Install Python dependencies (dev + API extras)
|
|
pip install -e ".[dev,api]"
|
|
|
|
# Install frontend dependencies
|
|
cd frontend && npm install && cd ..
|
|
```
|
|
|
|
## Configuration
|
|
|
|
```bash
|
|
# Copy environment template
|
|
cp .env.example .env
|
|
|
|
# Edit .env with your settings:
|
|
# - OPENAI_API_KEY for LLM support
|
|
# - FUSIONAGI_API_KEY for API authentication (optional)
|
|
```
|
|
|
|
## Running the API
|
|
|
|
```bash
|
|
# Development
|
|
python -m uvicorn fusionagi.api.app:app --reload --port 8000
|
|
|
|
# Production
|
|
gunicorn fusionagi.api.app:app -c gunicorn.conf.py
|
|
```
|
|
|
|
API docs available at: http://localhost:8000/docs
|
|
|
|
## Running the Frontend
|
|
|
|
```bash
|
|
cd frontend
|
|
npm run dev
|
|
```
|
|
|
|
Frontend available at: http://localhost:5173
|
|
|
|
## Using Docker Compose
|
|
|
|
```bash
|
|
# Start full stack (API + Postgres + Redis + Frontend)
|
|
docker compose up -d
|
|
|
|
# View logs
|
|
docker compose logs -f api
|
|
```
|
|
|
|
## Quick API Tour
|
|
|
|
### Create a session
|
|
```bash
|
|
curl -X POST http://localhost:8000/v1/sessions \
|
|
-H "Content-Type: application/json" \
|
|
-d '{"user_id": "demo"}'
|
|
```
|
|
|
|
### Send a prompt
|
|
```bash
|
|
curl -X POST http://localhost:8000/v1/sessions/{session_id}/prompt \
|
|
-H "Content-Type: application/json" \
|
|
-d '{"prompt": "Explain quantum computing"}'
|
|
```
|
|
|
|
### Stream a response (SSE)
|
|
```bash
|
|
curl -N -X POST http://localhost:8000/v1/sessions/{session_id}/stream/sse \
|
|
-H "Content-Type: application/json" \
|
|
-d '{"prompt": "Write a poem about AI"}'
|
|
```
|
|
|
|
### Check system status
|
|
```bash
|
|
curl http://localhost:8000/v1/admin/status
|
|
```
|
|
|
|
## Frontend Pages
|
|
|
|
| Page | Description |
|
|
|---|---|
|
|
| **Chat** | Main conversation interface with 12-head reasoning display |
|
|
| **Admin** | System monitoring, voice library, agent configuration |
|
|
| **Ethics** | Consequence tracking, ethical lessons, cross-head insights |
|
|
| **Settings** | Theme, conversation style, and personality preferences |
|
|
|
|
## Running Tests
|
|
|
|
```bash
|
|
# Python tests
|
|
pytest tests/ -q --tb=short
|
|
|
|
# Lint
|
|
ruff check fusionagi/ tests/
|
|
|
|
# Type check
|
|
mypy fusionagi/ --strict
|
|
|
|
# Frontend build check
|
|
cd frontend && npx tsc --noEmit
|
|
```
|
|
|
|
## Architecture
|
|
|
|
See [docs/architecture.md](architecture.md) for the full system architecture.
|