TechneOS Architecture Diagram CLIENTS Web Portal Next.js 16 · React 19 · Tailwind v4 CLI techneos · Typer · Rich REST clients CI, notebooks, scripts techneos-catalog separate repo — no source dependency on the platform registers via the REST API API Gateway :8000 — the single front door FastAPI · API docs at /redoc reverse proxy auth middleware routing DOMAIN SERVICES FastAPI · SQLAlchemy 2.0 async · Pydantic v2 auth:8001 dataset:8002 tool:8003 pipeline:8004 agent:8005 notification:8006 app:8007 task:8008 Shared Library models · schemas · auth · storage · cache · events · agent bridge every service builds on it EXECUTION LAYER Apache Airflow DAGs · ToolOperator status callbacks PLUGGABLE COMPUTE BACKENDS — same tool definition, different target Docker local / single node AWS Batch elastic cloud Slurm on-prem HPC Human wet lab experiments INFRASTRUCTURE PostgreSQL 16 system of record MinIO artifacts & datasets Valkey cache & events Package Index tool & platform wheels Docker Registry tool & platform images Keycloak SSO — Google · GitHub RBAC own · team · org · platform Reproducibility pipeline versions pin tool versions + parameters Deployment SaaS multi-tenant · self-hosted on-premises Tooling uv · Ruff · mypy strict · pytest Python 3.12 · FastAPI · PydanticAI · Alembic — the portal, CLI, and catalog reach the platform only through the gateway REST API