Superpod orchestrates a Chainlit frontend (backed by Postgres and MinIO) with an Agno OS backend, providing the execution layer for multi-agent coordination and intelligence.
📖 This repository is the codebase for the article: Building an Engineering AI Stack for Multi-Agent Systems - Designing a Private, Observable Multi-Agent Execution Layer with Chainlit, Agno, and Langfuse.
- Frontend: Chainlit
- Backend: Agno OS
- LLM Engineering Platform: Langfuse
- Database: PostgreSQL
- Object Storage: MinIO (S3-compatible)
- Dependency Management: uv
- Containerization: Docker
- Vector Database: Qdrant (shipped together but not integrated)
Requirements:
Note
After Ollama is installed, pull models llama3.2:latest, qwen3:latest and nomic-embed-text:v1.5
ollama pull llama3.2:latest && ollama pull qwen3:latest && ollama pull nomic-embed-text:v1.5Install all dependencies for both frontend and backend:
make venv
source .venv/bin/activate # Activate the virtual environment
make env
make init-backend # run this first which creates the docker network
make init-frontendAgno AgentOS: create your free account at https://os.agno.com and connect your local agents - http://localhost:13300 (image below)
Langfuse: http://localhost:13303
No need to setup Langfuse thanks to Headless Initialization.
Chainlit: http://localhost:13201
To modify the Chainlit app, start a local dev environment from the repo root and open http://localhost:13200 in your browser:
uv run --package chainlit-app --directory frontend chainlit run app.py -w --port 13200When you're satisfied with the changes, rebuild and redeploy the Docker image:
docker compose --file frontend/compose.yaml build chainlit-app --no-cache
docker compose --file frontend/compose.yaml up chainlit-app -d --force-recreate- Run
uv syncfrom root to update all projects at once. - All projects share a single
.venvat the root. - If using Docker, each service (frontend/backend) has its own Dockerfile pointing to its respective
pyproject.toml.
This project is open-source and available under the MIT License.

