Arc OS — Roadmap
Native-First AI Office. Claude Code Agent Teams + CLI-First-Architektur + Kanäle. 70+ Endpunkte, SQLite SSOT, Sage Worker + Benchmarks + Marketplace Discovery + Knowledge Harvester. Zuletzt aktualisiert: 2026-05-04 (Phase 52.1 FERTIG — F&F Einladungscodes + Beta-Tarif; Phase 52.2-7 IN BEARBEITUNG)
Phasen-Timeline
timeline
title Arc OS — Von der nativen Geburt zur Public Beta
section Foundation (Feb 2026)
18 : Native Birth + Phaser
19 : Rich Integration
20 : Federated Bots
section Intelligence (Mar 2026)
21 : Binary Evals + Context Router + Learnings
22 : CRM Dashboard
24-26 : Dual Agent + Dynamic Workers
28-30 : Auto-ingest + Knowledge Harvester
section Marketplace (Apr 2026)
32-35 : Knowledge Dashboard + Live Terminal
36 : Cloud PM + NotebookLM Bridge
38 : ARC CLI compiled
40 : Sage + A/B + Marketplace Discovery
section Hardening (Apr 2026)
41 : UI Refresh + Context Rail
42 : Multi-tenancy + Loopback bind
44 : Analytics + Docs Coverage 95%
45 : Zero-Knowledge E2EE
section Architecture (Late Apr 2026)
47 : Timeline + Issues Redesign
48 : Decomposition 10779→373 LOC + Worker lazy lifecycle
49 : Doc-coverage pre-push hook
section Beta (May 2026)
50 : Trial Credits
51 : Stripe Billing Stage 1
52.1 : F&F Invite Codes + beta plan
52.2-7 : Sample Project · Funnel · Status · Uptime
Aktueller Stand: Phase 52.1 abgeschlossen (Einladungs-gesperrte Registrierung,
arc-XXXX-XXXX-Codes, Beta-Tarif unbegrenzt). Öffentlicher Launch hängt von F&F-Erfolgskriterien ab — siehe §Phase 52.
Phase 18: The Native Birth (ABGESCHLOSSEN)
18.0 — Repository Bootstrap (FERTIG)
- Repo, CLAUDE.md, .clauderules erstellen
- IP-Assets übertragen (Konfigurationen, Blueprints, Skills)
- Umbrella-Issue #35 in Claude-CEO erstellen
18.1 — Agent Teams Foundation
- Agent Teams mit TeamCreate aktivieren
- Initiale Aufgaben für Morty, Squanchy, Beth erstellen
- Working Agreements pro Agent definieren
- Inter-Agenten-Messaging testen
- Zustandsupdate-Protokoll (office-state.json)
18.2 — Telegram Native Channel
- Neuer Bot via @BotFather
- Offizielles Telegram Channel Plugin
- Textbefehle: /status, /tasks, Delegation
- Datei-Uploads → automatisch klassifizieren → an Agent weiterleiten
- Fortschritt via edit_message, Reaktionen
18.3 — Arc OS Bridge MCP Server
- Bun + TypeScript MCP-Server
- 4 MCP-Tools: get_office_state, update_agent_state, get_tasks, get_knowledge
- HTTP API: /api/state, /api/tasks, /api/knowledge, /api/events
- SSE-Stream für Echtzeit-Frontend-Updates
- Datei-Watcher auf state/-Verzeichnis
18.4 — Visual Restoration (Phaser Frontend)
- Phaser 3.80 + Vite 6 frisches Setup
- OfficeScene, UIScene, Agent-Entitäten
- StatePoller (SSE vom MCP-Server)
- HD-Text (Systemschriften, High DPI)
- Agent-Sprites (Pixel-Art oder farbiger Fallback)
- Keine Befehlseingabe-UI (Telegram ist das Interface)
18.5 — VPS Deployment & 24/7
- Docker Compose (3 Services: session, bridge, frontend)
- Nginx Reverse Proxy (:18888 → frontend, :19200 → API)
- Zustandspersistenz via Docker Volumes
- Heartbeat-Integration mit Morty SRE
- SSL via Let's Encrypt (optional)
Phase 19: Rich Integration (ABGESCHLOSSEN)
19.1 — Delta State Polling (FERTIG)
- Frontend pollt nur geänderten Zustand via
?since=-Parameter - StateManager verfolgt
lastModifiedpro Datei - SSE sendet Delta-Events, keine vollen Zustandsdumps
19.2 — Context Bar & Canvas Theme (FERTIG)
- CTX-Leiste zeigt aktiven Agenten, Aufgabe, Sitzungsinfo
- Canvas-natives Phaser-Theme (keine HTML-Overlays)
- Async-Boot-Sequenz-Fix
19.3 — Lifecycle Hooks (FERTIG)
SubagentStop-Hook → agent=idle in office-state.jsonStop-Hook → Sitzungs-Wrapup + alle Agenten idle- In
~/.claude/settings.jsonregistriert
19.4 — Library / NotebookLM Integration (FERTIG)
/citadel-wrapup-CLI-Befehl → Export nach docs/library-export//citadel-recall <query>-CLI-Befehl → lokale grep-Suche- README mit NotebookLM-Setup-Anweisungen
- Dateibasierte Bridge (API für vollständige Integration ausstehend)
19.5 — CLI Operation Skills (FERTIG)
/citadel-status— Agent-Dashboard (arbeitend/idle, Aufgaben, Bibliotheksstats)/citadel-task <text>— WISC-strukturierte Aufgabenerstellung aus Klartext/citadel-deploy— VPS-Deployment (git push, SSH, Docker rebuild, Health Check)
Phase 20: Federated Bot Architecture (ABGESCHLOSSEN)
Architekturdokument:
docs/architecture/PHASE_20_FEDERATION.mdEntscheidung: Föderation (Master + Children) statt Single Bot + Switcher.
20.1 — Master Bot Foundation (FERTIG)
- Bun + TypeScript Telegram-Bot (Long-Polling, KEINE Claude-Sitzung)
config/bot_registry.json— Child-Registry- Befehle:
/status,/emergency-stop,/list,/deploy,/health - Docker-Container in
docker/docker-compose.yml - Health-Endpunkt:
/api/master/health
20.2 — Child Bot Protocol (FERTIG)
child-bot/bot.ts— Telegram ↔ Claude CLI-Proxy (claude -p)- Heartbeat-Datei alle 60s nach
state/heartbeat_<name>.json - Smart Context Middleware:
reply_to_message→ GSD CONTEXT-Injektion - Thread-Verlauf: letzte 50 Nachrichten in
state/thread_history.json - Graceful Shutdown (SIGINT/SIGTERM für emergency-stop)
- Health-Endpunkt:
/api/child/healthauf Port 19211 - Läuft auf HOST (benötigt
claude-CLI), nicht Docker - Gehärtet: 5-min-Timeout, Wiederholung bei Fehler, max-turns-Limit (20), Diagnose
20.3 — Onboarding Engine (FERTIG)
/new_project <name>— interaktives Interview (4 Schritte: Beschreibung → Links → Token → Bestätigen)- Skill-Matching: automatische Erkennung aus Registry + Bibliothek
- Blueprint-Erkennung: web, gamedev, debug, legal, service
- Auto-Provisioning: mkdir, CLAUDE.md, MANIFEST.md, .env, git clone, Registry, tmux
- Port-Zuteilung aus Registry
- Datei-Upload-Unterstützung für
.md-Projektbeschreibungen
20.4 — Skill Library & Project Removal (FERTIG)
/remove_project <name>— dreifache Bestätigungssicherheit mit geschützten Namen- Library-Skills:
skills/library/*.mdautomatisch beim Onboarding zugeordnet - Ins
skills/-Verzeichnis des neuen Projekts während der Bereitstellung kopiert - Registry-Reload-Hook: In-Memory-Update nach Bereitstellung/Entfernung
20.5 — Phantom-Ready Infrastructure (FERTIG)
shared/logger.ts— JSONL-strukturierter Logger mit doppelter Ausgabe (Datei + Konsole)- Tägliche Dateitrennung:
system-YYYY-MM-DD.log,dialog-YYYY-MM-DD.log,error-YYYY-MM-DD.log - Kategorien: system (Lebenszyklus), dialog (Nutzer↔Claude), error (→ beide error + system)
- Keine externen Abhängigkeiten — pure Bun APIs
- Tägliche Dateitrennung:
shared/vault.ts— AES-256-GCM-verschlüsselter Geheimnisspeicher- Schlüssel: Umgebungsvariable →
config/vault-key-Datei → automatisch generiert - In-Memory-Cache nach Init, Fallback auf
process.env - Atomare Schreibvorgänge (tmp + mv)
- Schlüssel: Umgebungsvariable →
master-bot/watchdog.ts— selbstheilender Hintergrundmonitor- HTTP-Health-Check alle 30s (5s Timeout)
- Automatischer Neustart abgestürzter Children via tmux (Token aus Vault)
- Exponentieller Backoff: 30s → 1m → 5m → 15m → 60m (Cap)
- Permanente Deaktivierung nach 10 aufeinanderfolgenden Fehlern
- CEO-Benachrichtigungen: erster Neustart, Fehler, permanente Deaktivierung
- Zustand in
config/watchdog-state.jsongespeichert
/watchdog-Befehl — Echtzeit-Child-Bot-Health-Status in Telegram- Onboarding speichert Tokens im Vault (nicht
.env), erstellt/var/log/citadel/<name>/ config/logrotate-citadel.conf— tägliche Rotation, 7-Tage-Aufbewahrung, Komprimierungscripts/setup-vps-logging.sh— VPS-Log-Infrastruktur-Setup- Alle
console.log/console.error→ strukturierter Logger (child-bot + master-bot)
Phase 21: Arc OS Command Interface (ABGESCHLOSSEN)
Telegram wird zu einem vollständigen interaktiven Dashboard mit Inline-Tastaturen, Subprocess-Steuerung und CRM-Link-Stubs.
21.0 — Tactical UI Layer (FERTIG)
shared/ui_templates.ts— zentrales Tastatur-Builder-ModulmasterMainMenu()— persistente 2×2-Reply-TastaturprojectCard(name, crmBase)— 4-Reihen-Inline-Tastatur (Restart/Delete/Manifest/Skills/CRM)deleteConfirm(name)— Inline JA/ABBRECHENchildResponseButtons(skills?, crmBase?, projectName?)— STOP/PAUSE/RESUME/BTW/FixItparseCallback(data)—"action:target"-Parser
- Master-Bot-Upgrades:
- Reply-Tastatur-Text-Routing (Meine Projekte → Projektkarten, Web UI → CRM-Link)
handleCallbackQuery()— Neustart, Löschen-Flow, MANIFEST-Viewer, Skills-ListetgSendMarkup,tgEditMessage,tgAnswerCallback,tgSetMyCommands-Helfer/startsendet Hilfe MIT Reply-Tastatur- CRM-URL-Schaltflächen (konfigurierbares
CRM_BASE_URL, dev:http://62.171.128.248:18888)
- Child-Bot-Upgrades:
- Module-Level
currentProc/isPaused/btwQueue-Zustand handleStop()→ SIGKILL,handlePause()→ SIGSTOP,handleResume()→ SIGCONT- BTW-Modus: Kontext sammeln → dem nächsten GSD-Prompt voranstellen
- FixIt: Fix-Prompt aus letzter Bot-Antwort im Thread-Verlauf erstellen
- Inline-Schaltflächen nur beim letzten Antwort-Chunk
- Zusammengeführtes Skill-Laden: Manifest JSON + skills/-Verzeichnis, dedupliziert
- Module-Level
21.5 — Evolutionary Intelligence (FERTIG)
shared/evals.ts— Binary Eval Engine: 6 Regeltypen, pro-Skill.evals.json, nicht-blockierende Warnungenshared/context-router.ts— Context Router: Trigger/Keyword-Scoring, Top-5 SKILLS_HINT-Injektionshared/learnings.ts— Persistente Learnings: Fix It / Daumen runter →learnings.md→ jeder zukünftige Promptscripts/nightly-improve.ts— Karpathy Loop: nächtliche Metrikanalyse → Verbesserungsvorschläge → CEO-Genehmigung- Pilot-Evals: code-review, git-manager, system-audit (9 Regeln gesamt)
- Keywords zu 11 Registry-Skills hinzugefügt
docs/public/— 8 öffentliche Dokumentationsdateien mit Navigationsindex
Phase 22: Bun CRM & Observability Hub (ABGESCHLOSSEN)
Architektur:
docs/planning/phase-22-bun-crm.md| Backend:docs/architecture/crm-backend.md
22.0 — CRM REST API (FERTIG)
shared/auth.ts— HMAC-SHA256-Token-Auth, Vault-gespeicherter CRM_SECRET, TTL 24hshared/crm-routes.ts— 5 CRM-Handler: Projekte, Detail, Logs, Dateien, Skills- Bun.serve-Router: async fetch, Auth-Middleware, CORS auf allen /api/crm/*-Routen
infra/nginx/citadel-crm.conf— einheitlicher Reverse Proxyscripts/vps-sync.sh— automatisiertes VPS-Deployment: git-Sync, nginx-Swap, Bot-Neustart, Health Checks
22.1 — Real-time Observability (FERTIG)
- SSE-Log-Streaming:
/api/sse/logs/:name— JSONL-Logs live im Browser tailing (1s-Poll) - Quality-Metriken-Endpunkt:
GET /api/crm/projects/:name/metrics?days=7 - CrmPoller-Frontend-Integration: pollt
/api/crm/projects(15s)
22.2 — Unified Command Center (FERTIG)
- CRM→Phaser-Bridge: CrmPoller → ProjectPod-Entitäten in Server-Room-Szene
- Glassmorphismus-LogPanel: SSE-Log-Consumer mit Kategorie-Filter + Auto-Scroll
- Sidebar-PROJEKTE-Bereich mit Live-Health-Dots (grün/gelb/rot)
22.3 — Metrics Charts, WebSocket Terminal & Power Controls (FERTIG)
frontend/src/ui/Sparkline.js— Canvas-gestapeltes Balkendiagrammfrontend/src/ui/TerminalPanel.js— xterm.js WebSocket-Terminal mit ANSI-Farben + FitAddon- WebSocket-Terminal:
/ws/terminal/:name— tmux capture-pane-Polling (200ms) - Neustart-Endpunkt:
POST /api/crm/projects/:name/restart— 30s-Cooldown
Phase 24: Dual-Agent Flow & CRM Enhancement (ABGESCHLOSSEN)
24.5 — Dual-Agent Flow (FERTIG)
/c→ Consultant (Sonnet, read-only),/d→ Developer (Opus, voller Zugriff)- Kein Präfix → geht an aktive Rolle
- Specs automatisch aus
### SPEC:-Muster in Consultant-Ausgabe extrahiert /approve <id>/ Ablehnen-Workflow via CRM Dashboard- 7 neue CRM-Endpunkte: Specs CRUD, Active-Role GET/POST, Consultant SSE, Message POST
- Frontend: 4 Log-Panel-Tabs (Logs / Terminal / Consultant / Specs)
Phase 25: Tech Debt Resolution + Local Gateway Foundation (ABGESCHLOSSEN)
25.0 — Tech Debt Sweep (FERTIG)
- DEBT-4: Terminal-Poll 200ms→500ms — 60% CPU-Reduktion
- DEBT-1:
telegram.ts-Monolith (881 Zeilen) in 4 Module aufgeteilt
25.1 — Bridge CLI Foundation (FERTIG)
bridge/-Verzeichnis mitbin/citadel-bridge.ts-CLI (commander.js)- 5 Befehle:
connect,disconnect,pull,push,status
25.2 — VPS API Extensions (FERTIG)
- 4 neue Endpunkte: skills-bundle, learnings GET/POST, heartbeat
25.3 — Security Hardening (FERTIG)
- Bot-Tokens von
.envin verschlüsselten Vault migriert - CORS gesperrt: Wildcard
"*"→CRM_ALLOWED_ORIGINS-Whitelist
Phase 23: The Local Gateway — Hybrid Workspace (GEPLANT)
Architekturentwurf:
docs/planning/local-gateway.md(v3 — Body/Brain-Trennung)
Entwickler verbindet lokale IDE mit Arc OS VPS. Code lebt lokal; Intelligenz wird von Bridge CLI + .citadel/-Konfigurationsverzeichnis geliefert.
23.1 — Bridge CLI + API Foundation (FERTIG → Phase 25)
23.2 — Local Intelligence (GEPLANT)
shared/evals.ts,shared/learnings.ts,shared/context-router.tsin bridge/src/ vendorncitadel-bridge eval— Evals lokal ausführen, kein Netzwerk- Docs-Aufteilung (2026-05-14):
docs/public/guides/local-bridge.mdin Landing + 3 OS-Unterseiten aufgeteilt
23.3 — CRM Integration (GEPLANT)
local_sync_status-Feld in Projekt-API-Antwort
23.4 — Distribution & Polish (GEPLANT)
- Bun-Kompilierung zu Single Binary
- npm-Paket-Veröffentlichung (
@citadel/bridge)
Phase 26: Dynamic Workers (ABGESCHLOSSEN)
26.0 — Stage 1: Worker Registry Foundation (FERTIG)
config/workers_registry.json— deklarative Worker-Definitionen- 3 Worker registriert: Consultant (Chat, Sonnet), Developer (Terminal, Opus), UI/UX Designer (Chat, Sonnet)
child-bot/bot.ts— 175-Zeilen-if/elsedurch einheitlichencallWorker()-Dispatch ersetzt
26.1 — Stage 2: Dynamic Grid Activation (FERTIG)
- Worker-Pills anklickbar —
toggleWorker(id)fügt Panels dynamisch hinzu/entfernt sie - Workspace-Layout-Persistenz:
localStorage
Phase 27: Knowledge Base & Wiki (ABGESCHLOSSEN)
27.0 — Wiki Viewer (FERTIG)
- 2 neue CRM API-Endpunkte: Wiki-Baum, Wiki-Datei-Lesen
Phase 28: Auto-Ingest Watcher (ABGESCHLOSSEN)
28.0 — Auto-Ingest Watcher (FERTIG)
- Neues Modul
child-bot/ingest-watcher.ts fs.watch()aufknowledge-base/raw/mit 3s Debounce pro Datei
Phase 29: i18n — EN/UK Internationalization (ABGESCHLOSSEN)
29.0 — i18n Infrastructure + Full Translation (FERTIG)
- Bibliothek: @lingui/react v5 + @lingui/core + @lingui/vite-plugin + babel macro
- 186 übersetzte Strings über 25 Komponenten
Phase 30: Onboarding Wizard (ABGESCHLOSSEN)
30.0 — Self-Service Workspace Creation (FERTIG)
POST /api/crm/onboarding/setupakzeptiert FormData- 5-Schritte-Wizard: Willkommen → Projekt → Team → API-Schlüssel → Integrationen
Phase 31: Web Authentication (ABGESCHLOSSEN)
31.0 — Session Auth + Multi-Tenancy (FERTIG)
canAccessProject()-Eigentümerschutz auf allen CRM-Routen
31.5 — ARC CLI + Knowledge MCP (FERTIG)
arc login/logout/projects/start-CLI-Befehle
Phase 32: Knowledge Dashboard (ABGESCHLOSSEN)
32.0 — Reports, Skills, Wiki, NotebookLM (FERTIG)
Phase 33: Multi-Tenant Project Creation (ABGESCHLOSSEN)
33.0 — Account-Level Keys + Lightweight Modal (FERTIG)
Phase 34: Autonomous Project Manager (ABGESCHLOSSEN)
34.1 — Local Issue Tracking (FERTIG)
34.2 — Wiki Sync Tool (FERTIG)
34.3 — Roadmap Engine (FERTIG)
34.7 — Init Injection (FERTIG)
Phase 35: Live Terminal Sync (ABGESCHLOSSEN)
35.1 — Backend Log Ingest (FERTIG)
35.2 — arc-cli Stdout Interceptor (FERTIG)
35.3 — Frontend Live Terminal (FERTIG)
Phase 36: Cloud Project Manager (ABGESCHLOSSEN)
36.1 — Backend SSE Chat Endpoint (FERTIG)
36.2 — Frontend Cloud PM Chat (FERTIG)
36.3 — NotebookLM Bridge (FERTIG)
- Python FastAPI-Service unter
services/notebooklm-bridge/(Port 19213, nur localhost)
36.6 — Neural Skill Generator Wizard (FERTIG)
36.7 — Neural Memory Sidebar (FERTIG)
Phase 37: SSO & Social Auth (ABGESCHLOSSEN)
37.0 — OAuth Google + GitHub (FERTIG)
- Google + GitHub OAuth in
shared/auth.ts - 5 neue Routen: Google/GitHub OAuth + Callbacks + Providers
Phase 38: CLI-First Architecture (ABGESCHLOSSEN)
38.0 — MCP → CLI Migration (FERTIG)
- 8 MCP-Tools → 8 CLI-Unterbefehle (
arc skill/report/kb/learnings/issue/issues/wiki/roadmap) - Token-Impact: ~800 Token MCP-Schema → ~120 Token CLI-Ref = 85% Reduktion
38.1 — SKILL.md Standard (FERTIG)
38.2 — Artifact Bridge (FERTIG)
38.8 — Admin Whitelist (FERTIG)
Phase 39: Mobile Responsive Dashboard + Workspace Hub (ABGESCHLOSSEN)
39.0 — Responsive Layout (FERTIG)
useIsMobile()-Hook —matchMedia-basiert, Breakpoint bei 768px- Sidebar als Overlay auf Mobilgeräten
39.3 — Workspace Hub & Lifecycle Management (FERTIG)
39.4 — Live Memory Cycle (FERTIG)
Phase 40: Tabula Rasa — SQLite SSOT + Protocol System (ABGESCHLOSSEN)
40.0 — SQLite Migration (FERTIG)
shared/db.ts— bun:sqlite-Singleton, WAL-Modeshared/migrations/001_initial_schema.ts— users/projects/account_settings-Tabellen
40.7 — Three-Level Protocol System (FERTIG)
40.8 — Centralized WorkspaceSelector & Health Monitor (FERTIG)
40.10 — Persistent Chat History / Immortal Chat (FERTIG)
Phase 40.11: Evolutionary Skill System + Sage Worker + Data-Driven Approvals (ABGESCHLOSSEN)
40.11 — Evolutionary Skill System (FERTIG)
shared/migrations/004_skill_system.ts— 4 Tabellen:skills_global,skills_project_forks,skill_evolution_logs,skill_update_requests
40.11c — Sage Worker (Autonomous Skill Improvement) (FERTIG)
shared/sage.ts(~220 Zeilen):runSageAnalysis()+callSageModel()+ Haiku-Modell
40.11d — Data-Driven Approvals (Benchmarks) (FERTIG)
shared/migrations/005_skill_benchmarks.ts—skill_benchmarks-Tabelle
Phase 40.12: Marketplace Discovery (ABGESCHLOSSEN)
Gemeinschafts-Skills von claudemarketplaces.com finden, analysieren und installieren.
Phase 40.12.1: Smart Rank — Compatibility Sorting & Quick Scan Cache (ABGESCHLOSSEN)
Phase 40.13: Autonomous Knowledge Harvester (ABGESCHLOSSEN)
Phase 40.14: CRM Roadmap & Issues UI (ABGESCHLOSSEN)
Phase 40.15: Lucide React Icons (ABGESCHLOSSEN)
Alle Unicode/Emoji-Icons durch Lucide React SVG-Icons ersetzen.
Phase 40.16: Per-Worker Telegram Bot Token UI (ABGESCHLOSSEN)
Phase 40.17: Knowledge Graph + Open in Obsidian (ABGESCHLOSSEN)
Phase 40.18: Deploy Safety — DB SSOT for Ownership (ABGESCHLOSSEN)
Phase 40.19: Auth Completion — Full Login Form (FERTIG)
40.19a — Google OAuth Credentials (FERTIG)
40.19b — Telegram OTP Login (ENTFERNT)
40.19c — Password Reset Flow (FERTIG)
40.19d — Email Verification (FERTIG)
40.19e — Email Delivery Infrastructure (FERTIG)
Phase 41: UI Refresh — Vercel Redesign Adaptation (ABGESCHLOSSEN)
41.1 — Design Tokens (FERTIG) — Issue #10
- OKLCH-Farbraum in
frontend/src/crm/styles/globals.css
41.2 — Worker Selector Pills (FERTIG) — Issue #11
41.3 — Chat Message Bubbles + Action Bar (FERTIG) — Issue #12
41.4 — Chat Composer Refresh (FERTIG) — Issue #13
41.5 — Sidebar Badge Counters + Recent Activity (FERTIG) — Issue #14
41.6 — TopBar Search mit ⌘K (FERTIG) — Issue #15
41.7 — Context Rail (FERTIG) — Issue #16
- Neues 320px rechtes Panel in CrmMainLayout
41.8 — Pinned Notes Feature (FERTIG) — Issue #17
Phase 42: Security Hardening — Sentinel Audit 2026-04-23 (ABGESCHLOSSEN)
Referenz:
docs/security/audit-2026-04-23.md(3 kritische + 2 schwerwiegende + kleinere Befunde). Entsperrt Multi-User-Produktion. Urteil nach Patches: GRÜN.
42.1 — Multi-tenancy: SSE owner_id guard (FERTIG)
42.2 — Multi-tenancy: WS terminal guard + admin-only interactive (FERTIG)
42.3 — Multi-tenancy: CLI/MCP block guard (FERTIG)
42.4 — Bun.serve bind to 127.0.0.1 (FERTIG)
42.5 — chat/save project_name validation (FERTIG)
42.6 — Minor hardening (FERTIG)
42.7 — Sentinel re-audit remediation (FERTIG)
42.8 — Hotfix SEC-REG1 (FERTIG)
42.9 — SSRF hotfix + relay hardening (FERTIG)
42.10 — Redirect-based SSRF close-out (FERTIG)
42.11 — Sentinel 4th pass: Non-blocker hardening (FERTIG)
42.12 — Worker identity + model wiring (FERTIG)
Phase 42 FINALER ABSCHLUSS
| Metrik | Wert |
|---|---|
| Sicherheitsprobleme über 5 Audit-Durchläufe gefunden | 16 |
| Behoben | 16 |
| Sicherheits-Schulden (Blocker) | 0 |
| Urteil | 🟢 GRÜN — Multi-User-bereit |
Phase 43: UI/UX Audit Implementation (ABGESCHLOSSEN)
Referenz:
docs/design/ui-ux-audit-2026-04-23.md21 Issues erstellt (#13–#33), alle geschlossen. Re-Audit-Score: A- (95/100).
43.1 — Accessibility (WCAG 2.1 Level A) — FERTIG
43.2 — Navigation & Layout Cleanup — FERTIG
43.3 — Design System & Architecture — FERTIG
43.4 — UX Improvements — FERTIG
43.5 — Documented / Deferred — FERTIG
43.6 — Re-audit Polish (Phase 43.1) — FERTIG
Phase 44: Analytics Page Redesign (ABGESCHLOSSEN)
44.1 — DB Migration & Backend (FERTIG)
44.2 — Frontend Components (FERTIG)
44.3 — Polish & i18n (FERTIG)
44.4 — Token Economy Benchmark + Optimization (FERTIG)
Finale Ergebnisse:
- CLAUDE.md reduziert: 6.702 → 5.430 Token (−19%)
- Overhead gesenkt: 24,1% → 3,7% (−82% Verbesserung!)
Phase 44.6: Workspace Redesign — Evolution (ABGESCHLOSSEN)
44.6.1 — Centralized Design System (FERTIG) — Issue #6
frontend/src/crm/styles/design-system.csserstellt (OKLCH-Farben, Abstände, Typografie)- Warm Clay Accent (#c25b3f) ersetzt Teal (#44627A)
44.6.2 — Worker Status Dots with Glow (FERTIG) — Issue #7
44.6.3 — ActionBar Component (FERTIG) — Issue #8
44.6.4 — Slash Command Hints (FERTIG) — Issue #9
44.6.5 — A/B Test: Warm Clay vs Teal (AUSSTEHEND) — Issue #10
Phase 45: Zero-Knowledge E2EE Architecture (FERTIG ✅)
„Wir können deine Daten nicht lesen, selbst wenn wir wollten" — Verschlüsselung at rest für Nutzer-Privatsphäre.
45.1 — E2EE Foundation (FERTIG ✅, 2026-04-28)
- WebCrypto API-Wrapper (
frontend/src/crm/crypto/e2ee.ts, 214 Zeilen) - PBKDF2-Schlüsselableitung (100k Iterationen, SHA-256) → AES-256-GCM
45.2 — API Key Encryption (FERTIG ✅, 2026-04-28)
45.3 — Chat Message Encryption (FERTIG ✅, 2026-04-28)
45.4 — Recovery Keys & Backup (FERTIG ✅, 2026-04-28)
- Recovery-Keys im 1Password-Format:
XXXX-XXXX-XXXX-XXXX-XXXX
45.5 — Security Hardening (FERTIG ✅, 2026-04-28)
- CSP-Header auf allen CRM API-Antworten
shared/pii-sanitizer.ts: redigiert E-Mails, API-Schlüssel, JWTs, Kartennummern aus Logs
45.6 — Advanced Features — GEPLANT
Phase 44.5: Documentation Coverage Expansion (ABGESCHLOSSEN)
Docs-Coverage: 65% → ~95%. Acht neue öffentliche Docs, Index aktualisiert.
Phase 46: Parallel Worker Execution (ABGESCHLOSSEN)
Jeder Worker = separater Prozess. Kein globaler
isProcessing-Mutex mehr.
46.1 — Registry Schema Evolution (FERTIG) — Issue #57
46.2 — Worker Spawn Utility (FERTIG) — Issue #58
46.3 — Worker-Specific Inbox Routing (FERTIG) — Issue #59
46.4 — Watchdog Multi-Worker (FERTIG) — Issue #60
46.5 — Restart API Per-Worker (FERTIG) — Issue #61
46.6 — Telegram Routing + /status (FERTIG) — Issue #62
46.7 — Activate for arc-v2 (FERTIG) — Issue #63
Impact: Echte gleichzeitige Worker-Ausführung. Kein Queuing mehr.
Phase 47: Timeline Observability — DAW für AI Teams (ABGESCHLOSSEN ✓)
47.1 — Message Timestamps (FERTIG ✓)
47.2 — Timeline Events Table (FERTIG ✓)
47.3 — Timeline Frontend Components (FERTIG ✓)
- 7 neue Komponenten (1009 Zeilen gesamt)
47.4 — Feature Flag & Route (FERTIG ✓)
47.5 — Documentation (FERTIG ✓)
47.6 — Color Themes & Pastel Palette (FERTIG ✓)
- ThemeSelector-Komponente (168 Zeilen): 4 pastell-Farbpaletten
47.7 — Custom Theme Builder + Gemini UX (FERTIG ✓)
47.8 — Issues Redesign (Variant B Hybrid) (FERTIG ✓)
- IssuesRedesign.jsx (1100+ Zeilen) — vollständige UI-Neugestaltung
47.9 — Favicon Redesign + Branding Cleanup (FERTIG ✓)
47.10 — Resizable Worker Panels (FERTIG ✓)
47.11 — Token Error Banner + CLI Promo (FERTIG ✓)
47.12 — Slim Gemini-Style Footer (FERTIG ✓)
47.13 — Easter Eggs (1 von N) (FERTIG ✓)
47.14 — Easter Eggs (5 weitere) (FERTIG ✓)
47.15 — Per-mode Theme Presets + Custom Colors (FERTIG ✓)
47.16 — Issue Detail Wizard with Inline Editing (FERTIG ✓)
Anwendungsfälle (Timeline):
- Multi-Worker-Interaktionen debuggen
- Lange Worker-Flotten mit 4-6+ Workern überwachen
- Retrospektive Analyse (zurückscrollen, Event anklicken → vollständiger Kontext)
Impact: Einzigartiges Observability-Feature. Nur Desktop (1440px+), experimentelle Beta.
Phase 48: Architecture Decomposition — Logical Service Boundaries (P0 ABGESCHLOSSEN)
Vom Monolith zur logischen Architektur. Drei monolithische Dateien (10.779 Zeilen) in 30 Domain-Module aufgeteilt (373 Zeilen in Dispatchern). Deployt: 2026-04-28. Keine Verhaltensänderungen — reines Refactoring mit Backwards-Compat-Re-Exports.
Vorher / Nachher
graph LR
subgraph "Vorher (10.779 LOC)"
M1[crm-routes.ts<br/>6.181 LOC<br/>~120 Handler]
M2[api-server.ts<br/>1.464 LOC]
M3[Workspace.jsx<br/>~3.134 LOC]
end
subgraph "Nachher (373 LOC Dispatcher + Module)"
R[router.ts<br/>512 LOC Dispatch]
AS[api-server.ts<br/>196 LOC]
WP[Workspace.jsx<br/>168 LOC Orchestrator]
subgraph "shared/routes 17 Module"
S1[projects · files · workers · skills · chat]
S2[wiki · sage · onboarding · pins · docs]
S3[learnings · specs · restart · system · analytics]
end
subgraph "master-bot/routes 4 Module"
B1[auth · internal · cli · websocket]
end
subgraph "pages/workspace 9 Module"
W1[ChatThread · Composer · TerminalPanel · CloudPmPanel]
W2[WorkerSelector · WorkerStudio · ThinkingTips]
W3[QuickActionBar · useSSEStream]
end
end
M1 -.refactor.-> R
R --> S1 & S2 & S3
M2 -.refactor.-> AS
AS --> B1
M3 -.refactor.-> WP
WP --> W1 & W2 & W3
Netto-Ergebnis: jedes Modul ≤900 LOC, Single Responsibility. Schnelleres Hot-Reload, kleinere Code-Reviews, engere Konfliktoberfläche.
48.1 — Decompose crm-routes.ts (FERTIG ✅)
48.2 — Decompose api-server.ts (FERTIG ✅)
48.3 — Decompose child-bot/bot.ts (FERTIG ✅)
48.4 — Frontend Workspace Decomposition (FERTIG ✅)
48.5 — Event-Driven Inbox via fs.watch (FERTIG ✅, 2026-04-28)
startInboxWatcher()—fs.watch(stateDir)mit Filter aufcrm_inbox*.jsonl- Ergebnis: Latenz 500ms→~5ms (100×), keine neuen Abhängigkeiten
48.6 — Worker Lazy Lifecycle (idle-kill + wake-up) (FERTIG ✅, 2026-04-28)
- Worker-Self-Idle-Shutdown nach 10 Min Stille + Wake-Up auf Anfrage
- Ergebnis: ~425MB RAM pro Nutzer freigegeben. Kapazität 2 → 6-10 gleichzeitige Nutzer.
48.6.1 — Single-mode wake-up parity (FERTIG ✅, 2026-04-30)
48.7 (umbenannt) — Service Entry Points & Docker Compose — BACKLOG
Ergebnis: 12.731 → 1.420 Zeilen in Dispatchern. 34 Domain-Module, alle ≤900 Zeilen. Deployt 2026-04-28.
Phase 49: Doc Enforcement & GitHub Integration (ABGESCHLOSSEN)
49.1 — Pre-push doc coverage hook (FERTIG ✅, 2026-04-28)
scripts/check-docs-coverage.ts— Bun-Script.githooks/pre-push— ruft check-docs-coverage im Hook-Modus aufscripts/setup-hooks.sh—git config core.hooksPath .githooks(einmalig pro Clone)
49.2 — arc wrapup-CLI-Helfer (FERTIG ✅, 2026-04-28)
49.2.1 — arc wrapup --from-summary für forschungsgetriebene Arbeit (FERTIG ✅, 2026-04-28)
49.3 — GitHub Light integration (FERTIG ✅, 2026-04-28)
- Migration 017:
github_links-Tabelle POST /api/webhooks/github— öffentlicher Empfänger, HMAC-SHA256 validiert, Rate-Limited 100 req/min- Unterstützte Events:
push,pull_request,workflow_run,issues
49.3.1 — GitHub UI sidebar feed (FERTIG ✅, 2026-04-28)
49.3.2 — Public guides for Phase 49 features (FERTIG ✅, 2026-04-28)
49.4 — GitHub Medium (BACKLOG, P2)
49.5 — GitHub Heavy (BACKLOG, P2)
Phase 50: Registration Conversion Lift (ABGESCHLOSSEN)
Konversion 4% → Ziel 9,5% (+138%). Audit:
docs/design/REGISTRATION_UX_AUDIT.md.
50.1 — Auth gate removal + trial credits scaffolding (FERTIG ✅, 2026-04-28)
50.1 — Stage 2 (token tracking + UI banner) (FERTIG ✅, 2026-04-28)
Ergebnis: Vollständiges Trial-Onboarding live. Neuer E-Mail/Passwort-Nutzer: Registrierung → Dashboard ✓ → E-Mail verifizieren → Trial gewährt → Projekt erstellen (API-Schlüssel überspringen) → trial_mode=1 → Worker spawnen mit PLATFORM_ANTHROPIC_KEY → Tokens werden bei jedem Claude-Aufruf dekrementiert → Banner zeigt Nutzung in Echtzeit.
50.2 — Wizard 5→3 Schritte (FERTIG ✅, 2026-04-28)
Altes Ablauf (5 Schritte, 5-8 Minuten):
- Willkommen (Name + Rolle)
- Projekt (Name, Nische, Ton, Dateien, URLs)
- Team-Preset
- API-Schlüssel (BLOCKER — erforderlich)
- Integrationen
Neuer Ablauf (3 Schritte, ~50 Sekunden):
- Quick Start — Name + projectName (fusioniert 1+2, ~30s)
- API-Schlüssel — optional mit Trial-Fallback
- Integrationen — Local Bridge / Telegram (~10s)
50.2.1 — Quick Start ReferenceError fix (FERTIG ✅, 2026-04-30)
50.3 — Roadmap Redesign (Variant A) (FERTIG ✅, 2026-04-28)
Phase 50.4 — Audit Trail + OAuth Last-Login (FERTIG ✅)
Phase 51: Stripe Billing — Stage 1 (DB + Middleware + Status) (FERTIG ✅, 2026-04-29)
Issue #20 (P0). Atomare Foundation: DB-Schema, Plan-Limit-Middleware, Status-Endpunkt.
Preismodell (OR-Semantik-Limits):
| Tarif | Preis | Projekte | Worker |
|---|---|---|---|
| Free | $0 | 1 | 5 |
| Min | $4,99/Monat | 5 ODER 25 gesamt | OR-Semantik |
| Max | $11,99/Monat | 20 ODER 150 gesamt | OR-Semantik |
Stage-1-Komponenten:
- Migration 020:
subscriptions-Tabelle +stripe_events PLAN_LIMITS-Konstante — Single Source of Truth für Tarif→Limits→Features-MappingcheckPlanLimit(userId, action)— OR-Semantik-Middleware- 402 Payment Required — strukturierter Fehler bei Limit-Überschreitung
Außerhalb von Stage 1 (später):
- Stage 2: Stripe SDK (Checkout, Webhooks, Customer Portal)
- Stage 3: Frontend Billing UI
- Stage 4: Polish (TOS, DSGVO-Einwilligungsdialog)
Phase 52: Friends & Family Beta Launch (IN BEARBEITUNG)
Öffentlicher Launch verschoben bis F&F-Validierung die Erfolgskriterien bestätigt.
Erfolgskriterien (vor öffentlichem Launch)
- ≥70% Registrierung → first_message_sent Konversion
- ≥40% returned_after_24h (Day-1-Retention)
- ≥25% returned_after_7d (Day-7-Stickiness)
- 0 P0-Bugs in den letzten 3 Beta-Tagen
- Durchschnittliche Onboarding-Zeit <10 Min
- ≥80% F&F-Nutzer bewerten Erfahrung mit 4-5/5
Feedback-Triage-Protokoll
- 🔴 P0 (gleichen Tag beheben): Blocker-Bugs, Datenverlust, Sicherheit
- 🟡 P1 (vor öffentlichem Launch beheben): UX-Reibung von ≥50% F&F erwähnt
- 🟢 P2 (Backlog): Nice-to-have, Randfälle, <20% Erwähnung
Rekrutierung + Rhythmus + Anreiz
- Rekrutierung: 10-20 persönliche Telegram/E-Mail-Outreach (CEO-Netzwerk + LinkedIn-Gründer/Ingenieure). KEIN Twitter/Discord-Broadcast.
- Rhythmus: Wöchentlicher Digest (Freitag) im Telegram-Kanal. Echtzeit-DM für P0-Bugs.
- Anreiz: Lebenslanger 50%-Rabatt + „Founding Member"-Profilbadge + direkter Slack/Discord-Zugang nach dem Launch + Name auf öffentlicher Founders Wall.
Sub-Phasen
52.1.1 — Documentation Overhaul (P0/P1) — FERTIG ✅ (2026-05-04)
52.1 UK debt closure (#32, #33, #34) — FERTIG ✅ (2026-05-17)
52.1.5 — Video walkthrough scripts (P2) — FERTIG ✅ (2026-05-06)
- 10 produktionsreife Storyboards unter
docs/public/media/scripts/
52.1.4 — Bulk UK translation pass (P1) — FERTIG ✅ (2026-05-05)
- 17/17 Dateien übersetzt, 0 Fehler.
52.1.3 — Docs UX Polish (P1) — FERTIG ✅ (2026-05-05)
52.1.2 — overview.md How-It-Works clarity (P2) — FERTIG ✅ (2026-05-04)
52.1 — Invite Codes + Feedback Channel (P0, 1 Tag) — FERTIG ✅ (2026-04-29)
- Migration 021:
invites-Tabelle - Code-Format:
arc-XXXX-XXXX(8 Hex-Zeichen, crypto.randomBytes) - Registrierungs-Gate:
/api/auth/registererfordertinvite_code
52.1.1 — beta-Tarif für F&F-Tester (FERTIG ✅, 2026-04-30)
52.2 — Sample Project + Onboarding Tour (P0, 0,5 Tage)
- Demo-Projekt „Welcome to Arc OS" nach erster Registrierung automatisch erstellen
- React-Joyride-Tour: 5 Schritte
52.3 — Funnel Analytics (P0, 1 Tag)
- 5 Events in
activity_logverfolgt
52.4 — Error UX + Status Page (P1, 1 Tag)
52.5 — Doc Cleanup (P2, 0,5 Tage)
52.6 — Uptime Monitoring (P1, 0,5 Tage)
- UptimeRobot Free Tier —
/api/master/healthalle 5 Min pingen
52.7 — Buffer Day (P0, 0,5 Tage)
Gesamt: 5 Tage bis F&F-bereit.
Phase 53: Post-F&F Notifications (IN BEARBEITUNG)
Mobile UX-Lücke: wenn CEO über CRM/CLI/Bridge arbeitet, schweigen die Worker-TG-Bots. Phase 53 fügt einen parallelen events-only-Kanal hinzu, der das Gate umgeht.
53.11.1 — Bot Creation Wizard (FERTIG ✅, 2026-05-10)
- F&F-Beta-Daten: Median 3-7 Worker pro Projekt = 3-7 manuelle @BotFather-Erstellungen × ~4-5 Min = 20-25 Min Onboarding-Schmerz.
- Frontend:
BotCreationWizard.jsx(~505 LOC) — 3-Schritte-Modal mit Fortschrittsbalken, Copy-to-Clipboard-Hilfen, BotFather Deep-Link-Schaltfläche
53.11 — Multi-Worker TG UX Overhaul (IN BEARBEITUNG, 2026-05-10)
- 53.11.2 (#49) — Telegram Topics Mode, P1, ~12-15 Tage nach Design-Genehmigung. BLOCKIERT auf Design-Dokument
53.21 — Sentinel P2 Batch 2 (FERTIG ✅, 2026-05-12)
53.20 — Sentinel P2 fast-wins batch (FERTIG ✅, 2026-05-12)
53.19 — mTLS CF Authenticated Origin Pulls (FERTIG ✅, 2026-05-11)
53.18.2 — Secret rotation runbook + script (FERTIG ✅, 2026-05-11)
53.18.1 — Wrapper-script fix for secret leak (FERTIG ✅, 2026-05-11)
53.18 — tmux -e flag refactor (SUPERSEDED by 53.18.1)