- assets/header.svg: rebuilt in true Atlas blue (#4EA0FF/#1F6FE0/#145ED2) on deep-space gradient, animated starfield + orbital system; gold demoted to 1 accent - assets/screenshots/: 3 real captures (hero, Atlas Workspace, platform diagram) - README.md: blue-branded, embeds header + screenshots + blue Mermaid diagrams, full 39-app catalog, Fleet/Mesh/Tailscale, Academy + Islamic layer, wiki links - docs/ai-stack.md: NEW — fixes the dead AI badge link (spine/Brain/router)
3.2 KiB
The Atlas AI stack
Atlas runs AI on three principles: route by cost (free/local first, paid last), review before write (no autonomous money/comms/self-modify), and keep a permanent spine (every decision and event is logged and linkable).
%%{init: {'theme':'base','themeVariables':{'primaryColor':'#0c1428','primaryTextColor':'#cfe2ff','primaryBorderColor':'#1F6FE0','lineColor':'#4EA0FF','fontFamily':'monospace'}}}%%
flowchart TB
Senses[Senses · email · news · WhatsApp · bank]:::a --> Spine[(kernel.sqlite · the spine)]:::b
Spine --> Brain[Atlas Brain · autonomous core]:::a
Brain --> Gate{Policy gate}:::g
Gate -->|money / comms / self-modify| Human[Human approval · Control screen]:::h
Gate -->|safe| Router[LLM router :8888]:::a
Router --> Local[Local · LLaMA · hermes3 · Qwen]:::c
Router --> Cloud[Free cloud · Groq · Cerebras · OpenRouter]:::c
Router --> Claude[Claude · paid · last resort]:::c
classDef a fill:#0c1428,stroke:#4EA0FF,color:#cfe2ff
classDef b fill:#145ED2,stroke:#8EC2FF,color:#fff
classDef c fill:#080c18,stroke:#1F6FE0,color:#9fb8e0
classDef g fill:#0c1428,stroke:#D4A24C,color:#D4A24C
classDef h fill:#080c18,stroke:#4EA0FF,color:#cfe2ff
The spine — kernel.sqlite
The single source of operational memory. Senses feed it continuously; the Brain reads from it; every decision and event is appended and stays linkable across time. It is the answer to "why did this happen?" — one place, queryable, durable.
The Brain — reviewed execution
The autonomous core reasons over the spine and proposes actions. It never writes to money, external communications, or its own configuration without explicit human approval through the Control screen. Daily brief at 07:45; accountability loop morning / midday / evening. A kill-switch lives in the app.
The router — cost-tiered model selection
A single OpenAI-compatible endpoint (localhost:8888) picks the cheapest model that can do the job:
| Tier | Models | Used for |
|---|---|---|
| Local (free) | LLaMA 1B · hermes3 · Qwen Coder · Qwen 7B | classification, Dutch copy, code, summaries |
| Free cloud | Groq llama-3.3-70b · Cerebras · OpenRouter |
bulk 70B reasoning |
| Paid | Claude (Sonnet / Opus) | multi-step reasoning, architecture — last resort |
The rule: never spend a paid token on a task a free model can handle.
Context compression
A Headroom proxy sits in front of the Anthropic endpoint to compress context (fewer tokens per call) before requests leave the box — applied transparently to the Brain via ANTHROPIC_BASE_URL.
Where AI surfaces in the OS
- Atlas Chat (Open WebUI) — ChatGPT-style UI over the local models or Claude.
- AI Gateway — the router's HTTP face.
- Remote Desktop — Claude Code runs inside the in-browser Linux desktop; the OAuth login works because the desktop has a real browser.
- Today / Inbox / Pipeline — the Brain's briefs, drafts and lead reasoning rendered as cockpit panels.
Honest status: the spine and router are live; full cross-device chat-history consolidation into the spine is a tracked follow-up, not yet complete.