Drawing 00 — Project Atlas
LLM Runner
LLM Runner
+ Homelab IaC.
Two parallel infrastructure projects, built from scratch in five macro stages. Each stage is a self-contained drawing — paste it into Kiro one phase at a time.
SCOPE
2Repos
5Stages
11Phases
550Credit Budget
llm-runner
homelab-iac
Kiro · Auto model
Terraform + Ansible + Compose
Created 2026-05-05
Drawings 01 — 05
Each tile opens a full-detail drawing.
Five Stages, In Order.
01 / Gate
Precheck
S3 backups, vault snapshot, restore spot-check. The gate before any wipe.
12 sign-offs
02 / Base
Foundations
Terraform infra, Ansible roles, Runner scaffolding + providers. Compose starts clean.
Homelab P1–2
Runner P1
03 / Online
Services
Homelab stack live. Runner worker + chat UI streaming. SearXNG over Tailscale.
Homelab P3
Runner P2–3
04 / Smart
Intelligence
MCP tools, RAG library on Qdrant, LangGraph retrieval graph. Research mode armed.
Runner P4–5
05 / Hardened
Polish
Agents, backup + tested restore, GitLab CI. Reproducible from zero.
Runner P6
Homelab P4–5
Project Telemetry
llm-runner
0%
0 / 38
6 phases · ~148 credits projected
homelab-iac
0%
0 / 29
5 phases · ~62 credits projected
precheck
0%
0 / 12
Sign-off gate · run first
Build Sequence (Phase, not Calendar)
Phase ticks, not dates. Homelab Phase 3 must complete before Runner Phase 4 (the SearXNG-on-Tailscale dependency).
Routing & Restore Logic
Model Routing — runtime
Restore — emergency path
Defaults Set, Doors Left Ajar
Every row has a chosen default ▸. Other options listed for the day you regret it.
| Decision | Default ▸ | Alternates | Why |
|---|---|---|---|
| Chat history | ▸ SQLite | DynamoDB · PostgreSQL | One file, zero ops |
| Vector store | ▸ Qdrant | ChromaDB · pgvector | Stable, REST API, good docs |
| Reverse proxy | ▸ nginx | Traefik · Caddy | Already known |
| MCP framework | ▸ fastmcp | Official MCP SDK | Pythonic, less boilerplate |
| Embedding model | ▸ nomic-embed-text (Ollama) | OpenAI · Gemini | Free, local, no rate limit |
| CI registry | ▸ GitLab Registry | AWS ECR | Already integrated |
Doors Closed (For Now)
DEFERRED
K3s
Role exists, flag off. Flip when basics work.
DEFERRED
Immich
One Ansible role away. Add on demand.
DEFERRED
Voice UI
Future project. Not MVP.
DEFERRED
DynamoDB
SQLite first, upgrade path exists.
REJECTED
HuggingFace
Free tier too unreliable.
REJECTED
Image gen
Off-goal entirely.
REJECTED
Fine-tuning
Too complex. Out of scope.
FUTURE
Multi-agent
Architecture supports it, build toward it.