diff --git a/README.md b/README.md index 2bc2494..bcbcead 100644 --- a/README.md +++ b/README.md @@ -1,335 +1,142 @@
-![Atlas OS](./assets/header.svg) +Atlas OS -# Atlas OS +**A sovereign, browser-native AI operating system.** +Log in with your identity → your entire operation as apps on one desktop. No install. Any device. One login. -[![Status](https://img.shields.io/badge/status-live-4ec98a?style=flat-square&logo=checkmarx&logoColor=white)](https://command.atlascorporation.nl/os/) -[![Containers](https://img.shields.io/badge/containers-55-9b8cf0?style=flat-square&logo=docker&logoColor=white)](./SERVICES.md) -[![Apps](https://img.shields.io/badge/apps-39-e0a234?style=flat-square&logo=grid&logoColor=white)](./SERVICES.md) -[![Stack](https://img.shields.io/badge/stack-Caddy_·_Authentik_·_Docker-4a9fe2?style=flat-square&logo=cloudflare&logoColor=white)](./ARCHITECTURE.md) -[![AI](https://img.shields.io/badge/AI-LiteLLM_·_Ollama_·_Claude-e2655f?style=flat-square&logo=openai&logoColor=white)](./docs/ai-stack.md) - -**Your entire business running on one hardened Linux server.** -**One SSO identity. One browser login. One OS.** - -[🚀 Live Desktop](https://command.atlascorporation.nl/os/) · [📐 Architecture](./ARCHITECTURE.md) · [📦 Services](./SERVICES.md) · [🛠 Deploy](./deploy/) · [🤖 AI Stack](./docs/ai-stack.md) +[![status](https://img.shields.io/badge/status-live-1F6FE0?style=for-the-badge&labelColor=050810)](https://command.atlascorporation.nl/os/) +[![apps](https://img.shields.io/badge/apps-39-4EA0FF?style=for-the-badge&labelColor=050810)](#-the-app-catalog) +[![sovereignty](https://img.shields.io/badge/hosting-EU--sovereign-145ED2?style=for-the-badge&labelColor=050810)](./docs/security.md) +[![identity](https://img.shields.io/badge/SSO-Authentik-4EA0FF?style=for-the-badge&labelColor=050810)](https://auth.atlascorporation.nl) +[![license](https://img.shields.io/badge/license-MIT-8EC2FF?style=for-the-badge&labelColor=050810)](./LICENSE)
--- -## What is Atlas OS? +## What it is -Atlas OS is a self-hosted business operating system running on a single Hetzner VPS. One [Authentik](https://goauthentik.io) SSO identity unlocks **39 services** spanning CRM, finance, communications, AI, fleet management, document storage, and a full Linux remote desktop — all served behind [Caddy](https://caddyserver.com) with automatic HTTPS. +Atlas OS is what happens when one operator builds an entire private cloud and then puts **one front door** on it. Log in once with [Authentik](https://goauthentik.io) SSO and a desktop boots in your browser — your bank feed, CRM, mail, files, documents, fleet of POS terminals, automation engine and a real Linux remote desktop, all as apps on a single screen. -It's the operational spine of **Atlas Corporation** (Tilburg, NL) — built by and for a solo founder who needed a private cloud they actually own, styled like a space-grade command console. +Not a SaaS. Not a dashboard mockup. A **reviewed execution layer** above the tools you already run — sovereign by design, hostable in our EU cloud **or fully on-premise on your own server**, in the spirit of Citrix / ServiceNow but built for the solo founder and the small team. -> Think of it as a Citrix-style desktop, but it's your own server, your own identity, your own data. - -**What runs on it:** -- 🏢 Odoo 19 ERP/CRM — full business operations -- 💶 Firefly III + Enable Banking — bank sync and financial intelligence -- 📧 Stalwart — self-hosted mail (all domains) -- 🤖 Atlas Brain — AI that reads your mail, CRM, and bank every 15 minutes -- 🖥️ Remote Linux desktop — Webtop (XFCE + Claude Code + Chromium inside) -- 🔒 Authentik — SSO that gates every single service -- ...and 33 more +
+Atlas Workspace — every department, one screen +
Every department, one screen — apps on a sovereign desktop. +
--- -## 🖥️ The Desktop +## ✦ The experience -Open `https://command.atlascorporation.nl/os/` on any device. You get: - -``` -┌─────────────────────────────────────────────────────┐ -│ ⌂ Atlas OS 🛡 ✓ 21:47 Chaib ∨ │ -├──────────────────────────────────────────────────────│ -│ Cockpit │ Identity │ AI │ Work │ -│ ───────── │ ──────── │ ────── │ ──── │ -│ 📊 Today │ 🛡 Auth │ 💬 Chat │ 🏪 Odoo │ -│ 💰 Money │ 🔒 Vault │ 🧠 AI GW │ 💼 CFO │ -│ 📬 Inbox │ │ 🗺 Mind │ 🏦 Bank │ -│ 📈 Pipeline│ │ 🎓 Leer │ 📄 Paperless │ -│ 🚀 Fleet │ │ │ 📝 Office │ -│ ⚙ Control │ │ │ 📅 Calendar │ -│─────────────────────────────────────────────────────│ -│ Files & Comms │ Ops │ Sites │ -│ ───────────── │ ───────────── │ ───── │ -│ ☁ Nextcloud │ 🔀 Git (Forgejo) │ 11 websites │ -│ 📮 Mail Admin │ ⚡ n8n │ │ -│ 📡 Relay │ 📈 Uptime │ │ -│ │ 🌐 MeshCentral │ │ -│ │ 🖥 Desktop │ │ -└─────────────────────────────────────────────────────┘ -``` - -**Boot sequence:** space-themed boot screen → Authentik SSO login → live desktop with your real data. - -**Remote Linux desktop** (tailnet-only): -``` -http://atlas-01.tailab40ed.ts.net:8497 -``` -A real XFCE desktop in the browser. Claude Code and Chromium are pre-installed — OAuth login works because the browser is *inside* the desktop. Requires Tailscale to be active on your device. +| | | +|---|---| +| | | +| **One partner for every system** — ERP, POS, webshop, hardware, AI as one seamless whole. | **The Atlas platform** — surfaces → workspace → data sources, one reviewed control layer. | --- -## 📦 Service Catalog +## 🗺️ Architecture -### 🎯 Cockpit (live data panels) -| App | Description | URL | -|-----|-------------|-----| -| Today | AI daily brief + accountability level | `command.atlascorporation.nl/os/` | -| Money | Bank transactions via Enable Banking PSD2 | `command.atlascorporation.nl/os/` | -| Inbox | Email + WhatsApp drafts, flagged items | `command.atlascorporation.nl/os/` | -| Pipeline | Odoo CRM leads and deal status | `command.atlascorporation.nl/os/` | -| Fleet | POS terminals, health, last-seen (MeshCentral) | `command.atlascorporation.nl/os/` | -| Control | AI kill-switch, autonomy level, daily spend cap | `command.atlascorporation.nl/os/` | - -### 🛡️ Identity -| App | Description | URL | -|-----|-------------|-----| -| Authentik | SSO, OIDC, MFA — gates all services | [auth.atlascorporation.nl](https://auth.atlascorporation.nl) | -| Vaultwarden | Self-hosted Bitwarden (iOS Bitwarden app works) | [vault.atlascorporation.nl](https://vault.atlascorporation.nl) | - -### 🤖 AI -| App | Description | URL | -|-----|-------------|-----| -| Atlas Chat | Open-WebUI — ChatGPT-style on local + cloud models | [chat.atlascorporation.nl](https://chat.atlascorporation.nl) | -| AI Gateway | LiteLLM proxy — unified OpenAI-compat API | [llm.atlascorporation.nl](https://llm.atlascorporation.nl) | -| Mindmap | AI-powered visual thinking | [mindmap.atlascorporation.nl](https://mindmap.atlascorporation.nl) | -| Leeragent | Learning & knowledge agent | [leeragent.atlascorporation.nl](https://leeragent.atlascorporation.nl) | - -### 💼 Work -| App | Description | URL | -|-----|-------------|-----| -| Odoo | ERP + CRM (leads, invoices, customers) | [odoo.atlascorporation.nl](https://odoo.atlascorporation.nl) | -| CFO / Firefly III | Double-entry bookkeeping + budget intelligence | [cfo.atlascorporation.nl](https://cfo.atlascorporation.nl) | -| Bank / Enable Banking | PSD2 bank sync (ING, Knab, etc.) | [fidi.atlascorporation.nl](https://fidi.atlascorporation.nl) | -| Paperless-ngx | Document management + OCR | [paperless.atlascorporation.nl](https://paperless.atlascorporation.nl) | -| OnlyOffice | Full office suite (Writer, Sheets, Slides) | [office.atlascorporation.nl](https://office.atlascorporation.nl) | -| Calendar | Nextcloud Calendar (DAV sync to iOS) | [cloud.atlascorporation.nl/apps/calendar](https://cloud.atlascorporation.nl/apps/calendar) | - -### 📁 Files & Comms -| App | Description | URL | -|-----|-------------|-----| -| Nextcloud | File storage, DAV, photos | [cloud.atlascorporation.nl](https://cloud.atlascorporation.nl) | -| Stalwart Mail | Self-hosted email (SMTP/IMAP/JMAP) | [stalwart.atlascorporation.nl](https://stalwart.atlascorporation.nl) | -| Relay | Internal message relay service | [relay.atlascorporation.nl](https://relay.atlascorporation.nl) | - -### ⚙️ Ops -| App | Description | URL | -|-----|-------------|-----| -| Forgejo | Self-hosted Git — this very repo | [git.atlascorporation.nl](https://git.atlascorporation.nl) | -| n8n | Workflow automation | [n8n.atlascorporation.nl](https://n8n.atlascorporation.nl) | -| Uptime Kuma | Service health monitoring | [uptime.atlascorporation.nl](https://uptime.atlascorporation.nl) | -| MeshCentral | Fleet management + remote access | [mesh.atlascorporation.nl](https://mesh.atlascorporation.nl) | -| Command | Atlas command dashboard | [command.atlascorporation.nl](https://command.atlascorporation.nl) | -| Remote Desktop | Webtop full Linux desktop (tailnet-only) | `atlas-01.tailab40ed.ts.net:8497` | -| Architecture | Live system map | `/os/sitemap.html` | - -### 🌐 Managed Sites -`atlasworks.nl` · `atlascorporation.nl` · `atlasagency.nl` · `atlasacademy.nl` · `atlaspos.nl` · `atlashub.nl` · `bicosagency.nl` · `budgetenergiecoach.nl` · `hkintercare.nl` · `jouwenergieadvies.nl` · `reclamemans.nl` - ---- - -## 🏗️ Architecture +One box. One identity. Everything behind it. ```mermaid -graph LR - subgraph Internet - U([User Browser]) - iOS([iOS / Mobile]) - end +%%{init: {'theme':'base','themeVariables':{'primaryColor':'#0c1428','primaryTextColor':'#cfe2ff','primaryBorderColor':'#1F6FE0','lineColor':'#4EA0FF','fontFamily':'monospace'}}}%% +graph TB + User([Any device]):::u --> Caddy[Caddy · TLS + edge]:::edge + Caddy --> Auth{{Authentik SSO}}:::id + Auth --> OS[Atlas OS desktop]:::os + Auth --> Apps[39 apps]:::os + OS --> Mind[The Mind · cockpit + spine]:::ai + Mind --> Brain[Atlas Brain · reviewed execution]:::ai + Brain --> Router[LLM router · local → Groq → Claude]:::ai + Apps --> Stack[Odoo · Nextcloud · Firefly · Paperless · n8n · Forgejo · Vault · Stalwart]:::svc + Caddy --> Fleet[Fleet · MeshCentral + Tailscale + NATS mesh]:::fleet + Caddy --> Sites[Client sites · WordPress · POS · Academy]:::site - subgraph atlas-01["atlas-01 · Hetzner CPX32"] - direction TB - C[Caddy TLS] - A[Authentik SSO] - C -->|forward_auth| A - A -->|verified| OS[Atlas OS Desktop] - A -->|verified| OD[Odoo ERP] - A -->|verified| NC[Nextcloud] - A -->|verified| AI[AI Gateway LiteLLM] - A -->|verified| FG[Forgejo Git] - A -->|verified| N8[n8n] - A -->|verified| MC[MeshCentral] - A -->|verified| UP[Uptime Kuma] - - subgraph AI Stack - AI --> OL[Ollama Local Models] - AI --> GR[Groq Cloud] - AI --> CL[Claude API] - AB[Atlas Brain] -->|15min cycle| AI - AB --> ST[atlas-state.json] - ST --> OS - end - - subgraph Mesh - NATS[NATS Event Bus] - NATS --> TS[Tailscale Devices] - end - end - - U -->|HTTPS| C - iOS -->|Tailscale| TS + classDef u fill:#050810,stroke:#4EA0FF,color:#8EC2FF + classDef edge fill:#0c1428,stroke:#1F6FE0,color:#cfe2ff + classDef id fill:#145ED2,stroke:#4EA0FF,color:#fff + classDef os fill:#0c1428,stroke:#4EA0FF,color:#cfe2ff + classDef ai fill:#0c1428,stroke:#8EC2FF,color:#cfe2ff + classDef svc fill:#080c18,stroke:#1F6FE0,color:#9fb8e0 + classDef fleet fill:#080c18,stroke:#1F6FE0,color:#9fb8e0 + classDef site fill:#080c18,stroke:#145ED2,color:#9fb8e0 ``` ---- - -## 🤖 AI Stack - -Atlas OS has a 4-tier AI routing stack — zero-cost local first, paid cloud only when needed: - -| Tier | Model / Alias | Backing | Use | -|------|--------------|---------|-----| -| 0 — Local | `atlas-fast` | LLaMA 1B (RTX A2000) | Classification, routing, labels | -| 0 — Local | `atlas-free` | Hermes3 7B | Dutch copy, FAQ, product descriptions | -| 0 — Local | `atlas-code` | Qwen Coder | Code completion, simple fixes | -| 0 — Local | `atlas-auto` | Smart router | Picks best free local model | -| 1 — Free Cloud | `groq/llama-3.3-70b` | Groq | Fast 70B reasoning, bulk tasks | -| 1 — Free Cloud | `cerebras/llama-3.1-70b` | Cerebras | Fastest inference, free tier | -| 1 — Free Cloud | `gemini-2.5-pro` | OpenRouter | 1M context, vision, PDF | -| 2 — Paid | `claude-haiku-4-5` | Anthropic | Short copy, classification | -| 2 — Paid | `claude-sonnet-4-6` | Anthropic | Code, multi-step reasoning | -| 2 — Paid | `claude-opus-4-8` | Anthropic | Deep research, architecture | - -**Key AI services running 24/7:** - -| Service | What it does | -|---------|-------------| -| `atlas-brain` | Collects mail + CRM + bank every 15 min → synthesizes daily brief | -| `atlas-loop` | Background signal loop — publishes nudges to NATS | -| `atlas-meridian` | Autonomous decision engine / battle responder | -| `atlas-litellm` | Unified LLM proxy (OpenAI-compat API for all above models) | -| NATS mesh | Real-time event bus across all devices on the tailnet | -| Langfuse | Full LLM observability — every call traced | +Full write-up → **[ARCHITECTURE.md](./ARCHITECTURE.md)** · every container & service → **[SERVICES.md](./SERVICES.md)** · the AI layer → **[docs/ai-stack.md](./docs/ai-stack.md)** --- -## 🚀 Quick Deploy +## 🧩 The app catalog -> **Requirements:** Debian 12 or Ubuntu 24.04, a domain with DNS pointed at the server, a Tailscale account. +39 apps, live-verified (no dead tiles), grouped into a categorized launcher: + +| Group | Apps | +|---|---| +| **Cockpit** | Today · Money · Inbox · Pipeline · Fleet · Control | +| **Identity** | Authentik SSO · Vaultwarden | +| **AI** | Atlas Chat (Open WebUI) · AI Gateway · Mindmap · Leeragent | +| **Work** | Odoo 19 · CFO · Bank (Firefly) · Paperless · Office · Calendar | +| **Files & Comms** | Nextcloud · Mail Admin (Stalwart) · Relay | +| **Ops** | Git (Forgejo) · n8n · Uptime Kuma · MeshCentral · Command · **Remote Desktop** · Architecture | +| **Sites** | AtlasWorks · Atlas Corp · Agency · **Academy** · AtlasPOS · Hub + client sites | + +> **Remote Desktop** is a genuine Ubuntu XFCE desktop in the browser (Webtop) with Claude Code + Chromium pre-installed — boot Claude or any app, on a sovereign desktop. → [docs/remote-desktop.md](./docs/remote-desktop.md) + +--- + +## 🛰️ Fleet, mesh & sovereignty + +- **MeshCentral** — remote management of every client POS terminal and device. +- **Tailscale** — the private spine; internal services (`tailscale serve`) never touch the public internet. +- **NATS mesh** — node-to-node messaging across the Atlas estate (round-trip proven). +- **EU-sovereign** — Hetzner (NL/DE), no US Cloud Act exposure, MFA, nightly backups. → [docs/security.md](./docs/security.md) + +--- + +## 🎓 Atlas Academy + +[atlasacademy.nl](https://atlasacademy.nl) — the training arm. BiSL, startup, AI and ESF-funded tracks, coaching and a course catalog, with leads relayed straight into Odoo CRM. Part of the same one-identity estate; surfaced as a desktop app. + +## 🕌 Atlas Islamic layer + +A personal-sovereignty layer for the operator: Adhan at El Feth (Tilburg) salah times, Qur'an at logon, AdGuard Family DNS + content filtering, and sunnah reminders — proof that "sovereign" includes values, not just data residency. + +--- + +## 🚀 Deploy your own ```bash -git clone https://git.atlascorporation.nl/chaib/atlas-os +git clone https://git.atlascorporation.nl/chaib/atlas-os.git cd atlas-os -chmod +x deploy/install.sh -./deploy/install.sh --domain yourdomain.com --email admin@yourdomain.com +sudo bash deploy/install.sh # Debian/Ubuntu, Docker + Caddy ``` -The installer sets up Docker, Caddy, Tailscale, and the core compose stacks. After install, configure Authentik at `https://auth.yourdomain.com` to create your admin user, then log in to `https://command.yourdomain.com/os/`. - -See [deploy/README.md](./deploy/README.md) for full instructions. +Bring your own domain; point it at the box; Caddy issues certs and Authentik gates everything. Core stack compose lives in [`deploy/compose/atlas-core.yml`](./deploy/compose/atlas-core.yml). Full guide → **[docs/deployment.md](./docs/deployment.md)**. --- -## 📁 Repository Structure +## 📚 Docs & wiki -``` -atlas-os/ -├── assets/ -│ ├── header.svg # Animated space header (used in README) -│ └── logo.svg # Atlas A logo -├── web/ -│ ├── os/ -│ │ └── index.html # The browser OS desktop (production copy) -│ ├── sitemap.html # Live architecture map -│ ├── atlas-chat.html # Atlas Chat UI -│ ├── atlas-command.html # Command dashboard -│ └── atlas-hud.html # HUD overlay -├── server/ -│ ├── atlas_brain.py # Signal collector + AI brief synthesizer -│ ├── cockpit_shim.py # Feed API adapter -│ ├── intelligence.py # Intelligence layer -│ ├── meridian.py # Autonomous decision engine -│ ├── atlas_router_api.py # Local model router (port 8888) -│ ├── cli-atlas.py # Atlas CLI -│ └── systemd/ # Service unit files -├── scripts/ -│ ├── atlas_brain.py # Brain export scripts -│ ├── atlas_self_prompting_loop.py -│ ├── enis_monitor.py # WhatsApp auto-reply monitor -│ └── ... -├── deploy/ -│ ├── install.sh # One-command installer -│ ├── compose/ -│ │ ├── atlas-core.yml # Core services (Authentik, Nextcloud, Mail, Git, Vault) -│ │ └── atlas-ai.yml # AI stack (LiteLLM, Open-WebUI, Langfuse) -│ ├── caddy/ -│ │ └── Caddyfile.template -│ └── README.md -├── docs/ -│ ├── getting-started.md -│ ├── ai-stack.md -│ ├── security.md -│ ├── services.md -│ └── system-of-record.md -├── patterns/ -│ ├── ANTI_IMPULSE_RULES.md -│ └── CLUSTER_THEN_POLISH.md -├── ARCHITECTURE.md -├── SERVICES.md -├── CHANGELOG.md -└── README.md # This file -``` - ---- - -## 🔒 Security Model - -| Layer | Implementation | -|-------|---------------| -| Identity | Authentik SSO — single source of truth for all services | -| TLS | Caddy automatic HTTPS on every public endpoint | -| Network | Public services behind SSO · internal services on Tailscale only | -| Secrets | Vaultwarden (end-to-end encrypted) · age-encrypted vault for sync | -| File permissions | 600 on all secret files on atlas-01 | -| Remote desktop | Webtop is tailnet-only — never exposed to public internet | -| Backups | `atlas-backup-*` systemd services for Forgejo, Nextcloud, Authentik | - -**Rule:** anything root-level (remote desktop, server SSH) stays tailnet-only. Public services must pass through Authentik `forward_auth`. No bare basic-auth on the public internet. - ---- - -## 🛠️ Tech Stack - -| Component | Technology | -|-----------|------------| -| Reverse proxy + TLS | [Caddy](https://caddyserver.com) | -| Identity & SSO | [Authentik](https://goauthentik.io) | -| Containers | Docker + Docker Compose | -| Private mesh | [Tailscale](https://tailscale.com) | -| Event bus | [NATS](https://nats.io) | -| CRM / ERP | [Odoo 19](https://odoo.com) | -| File storage | [Nextcloud 31](https://nextcloud.com) | -| Finance | [Firefly III](https://firefly-iii.org) | -| Documents | [Paperless-ngx](https://docs.paperless-ngx.com) | -| Mail server | [Stalwart](https://stalw.art) | -| Git hosting | [Forgejo](https://forgejo.org) | -| Automation | [n8n](https://n8n.io) | -| Password manager | [Vaultwarden](https://github.com/dani-garcia/vaultwarden) | -| AI proxy | [LiteLLM](https://litellm.ai) | -| AI chat UI | [Open-WebUI](https://openwebui.com) | -| LLM observability | [Langfuse](https://langfuse.com) | -| Remote desktop | [Webtop](https://docs.linuxserver.io/images/docker-webtop/) (KasmVNC + XFCE) | -| Fleet management | [MeshCentral](https://meshcentral.com) | -| Monitoring | [Uptime Kuma](https://uptime.kuma.pet) | -| AI models (local) | [Ollama](https://ollama.com) on RTX A2000 | -| Brain / orchestrator | Python 3.12 + httpx + NATS.py | -| OS desktop | Vanilla JS (single HTML file, zero build step) | +| | | +|---|---| +| [ARCHITECTURE.md](./ARCHITECTURE.md) | One-box philosophy, topology, data flows | +| [SERVICES.md](./SERVICES.md) | All 55 containers + systemd services | +| [docs/ai-stack.md](./docs/ai-stack.md) | The Mind, the Brain, the LLM router | +| [docs/remote-desktop.md](./docs/remote-desktop.md) | Webtop desktop + Claude inside | +| [docs/security.md](./docs/security.md) | SSO gate, sovereignty, secrets model | +| [docs/deployment.md](./docs/deployment.md) | Stand up the whole stack | +| **[Wiki ↗](https://git.atlascorporation.nl/chaib/atlas-os/wiki)** | Browsable, page-per-topic | ---
---- +**Built by [Chaib Aarab](https://atlascorporation.nl) — Atlas Corporation, Tilburg NL** +Built incrementally, on the go, while running real client projects. The architecture emerged from constraints, not slides. -Built with obsession by **Chaib Aarab** · Atlas Corporation · Tilburg, NL - -⟡ [atlascorporation.nl](https://atlascorporation.nl) · [atlasworks.nl](https://atlasworks.nl) · [atlaspos.nl](https://atlaspos.nl) ⟡ - -*"Your business on one box — space grade."* +MIT licensed · EU-sovereign · one login for all of it
diff --git a/assets/header.svg b/assets/header.svg index 1165e34..2dd63a5 100644 --- a/assets/header.svg +++ b/assets/header.svg @@ -1,165 +1,71 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + - - + - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + - - - + + + + + + + + + + + + + - - + + + + + + + + + + - - - - - - - - - - - - - - - - - ATLAS OS - - - -YOUR BUSINESS · ONE BOX · BEYOND LIMITS - - - - - - - - - - - - - + + ATLAS OS + SOVEREIGN AI COMMAND CENTER · ONE LOGIN · ANY DEVICE diff --git a/assets/screenshots/hero.png b/assets/screenshots/hero.png new file mode 100644 index 0000000..818314f Binary files /dev/null and b/assets/screenshots/hero.png differ diff --git a/assets/screenshots/platform.png b/assets/screenshots/platform.png new file mode 100644 index 0000000..8f98f64 Binary files /dev/null and b/assets/screenshots/platform.png differ diff --git a/assets/screenshots/workspace.png b/assets/screenshots/workspace.png new file mode 100644 index 0000000..be21a64 Binary files /dev/null and b/assets/screenshots/workspace.png differ diff --git a/docs/ai-stack.md b/docs/ai-stack.md new file mode 100644 index 0000000..79ca90b --- /dev/null +++ b/docs/ai-stack.md @@ -0,0 +1,54 @@ +# 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). + +```mermaid +%%{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.