v1.1 · GDPR-Ready · 21. April 2026 P-11 Notification System: GDPR Art. 6,7,17,20 ✓ · 29/29 Tests bestanden
a l i a n d o

Caliando ist die **Open-Source-Plattform für KI-Agenten und Menschen**. Der Kalender ist der erste Use-Case, der das Fundament beweist.

Jetzt einsetzen – Kontakt aufnehmen Use-Case Kalender ansehen ↓
localhost:3100 · Caliando Dashboard · Dark Theme
Caliando Dashboard mit Cali KI-Assistent, Team-Kalender und Direktbefehlen

Cali – der eingebaute KI-Assistent · links der Chat, rechts der Live-Kalender · Direktbefehle per Klick oder natürlicher Sprache

Use-Case #1 · Kalender & KI-Assistent

Der Kalender beweist das Fundament. Die Plattform ist das Produkt.

Caliando ist keine Kalender-App. Der Kalender ist der erste vollständige Use-Case auf einer generischen Plugin-Plattform – beweisbar, produktionsreif und sofort einsetzbar.

✦ Plattform-Kern · Bereits produktiv
Caliando: Die KI-Engine & der MCP-Server

Caliando nutzt das Model Context Protocol (MCP), um KI-Modellen sicheren Lese-, Schreib- und Ausführungszugriff zu gewähren. Die KI-Engine assembliert Kontexte dynamisch über Multi-Domain Intent Routing (ADR-0013) für Kalender, Zeiterfassung oder neue Plugins – vollständig getrennt und skalierbar. Der Kalender ist der erste Use-Case, der dies beweist.

MCP-Server JSON-RPC 2.0 read_file grep_search run_terminal ADR-0013
🌐
Gemini (Google)
Cloud-Modell · API-Key erforderlich · Schnell und leistungsstark
🤖
OpenAI (GPT)
Cloud-Modell · API-Key erforderlich · Breite Modellauswahl
🏠
Ollama (lokal)
Läuft vollständig lokal · Kein API-Key · Ideal für Self-Hosting und Raspberry Pi
📅
Drei Kalenderansichten – eigene Implementierung
Vollständig selbst entwickelt – kein FullCalendar (verifiziert: grep = 0 Treffer). Drag & Drop, Undo/Redo, responsive ab 320 px. WeekView mit Virtualisierung ab 200 Einträgen.
🐳
Docker-Deployment – ein Befehl
Multi-stage Dockerfile, SQLite on-device ohne externe DB. Läuft auf Raspberry Pi, VPS und in der Cloud. docker compose up -d – fertig.
🔗
Kalender-Sync (iCal / ICS)
Import/Export nach RFC 5545 inkl. RRULE-Wiederholungen. Getestet mit Outlook, Google und Apple. Zeitzonen via zoneinfo (TZID → UTC).
🖨️
PDF-Export mit Dashboard-Dialog
WeasyPrint + Jinja2-Template, SVG-Logo, Seitenzahl. Dashboard-Dialog mit Datumsbereich. ExportPDFButton per SlotRegistry – kein Core-Hardcode.
👥
Team-Kalender für Admins
Alle Mitarbeiter farbcodiert in einer Ansicht. Auftragsstatus (Offen / Laufend / Abgeschlossen / Intern) direkt aus dem Dashboard setzen.
⏱️
Automatische Zeiterfassung
Termine werden automatisch Zeiteinträge. Läuft als Plugin. KI-Badge im EventModal kennzeichnet KI-generierte Einträge, manuelles Speichern setzt die Quelle zurück.
📎
Anhänge & Timestamps im EventModal
Klickbare Anhänge im Termin, Add/Remove mit URL-Validierung. Timestamps „angelegt am / geändert am". KI-Badge für KI-generierte Einträge.
Tastatursteuerung & Barrierefreiheit
Kalenderansichten per Tastatur bedienbar, ARIA-Rollen, sichtbarer Fokusring. Vollständige WCAG‑2.1‑AA‑Konformität – inkl. Focus-Trap im Modal – ist in Arbeit.
💓
Health-Endpunkt & Structured Logging
/calendar/health mit status, db, plugins, uptime. JSON-Logging via structlog. ETag + 304 für alle Kalender-Abfragen.
Für wen

Eine Plattform. Drei Perspektiven.

Der Kalender ist der Einstieg. Die Plattform ist das Ziel. Je nach Perspektive sieht Caliando anders aus – aber das Fundament ist dasselbe.

👩‍💻
Für Entwickler
Kein Vendor Lock-in. DB-Swap ohne Core-Änderung. mypy strict, 366 Backend-Tests + 212 Frontend-Tests, 86,2 % Coverage. OpenAPI 3.1.0 auto-generiert. Multi-Stage Docker-Image. Inklusive separatem MCP-Server: Verbinde lokale KIs (Ollama) oder Copilot über JSON-RPC sicher mit dem Projekt.
📋
Für Teams & Entscheider
Heute: Kalender, Team-Übersicht, Zeiterfassung, KI-Assistent. Morgen: jeder Workflow, der sich per Plugin abbilden lässt. Caliando wächst mit dem Bedarf – ohne Plattformwechsel. Absolute Datenhoheit dank On-Premise-Deployment und optionaler 100 % lokaler KI (Ollama).
🤖
Für KI-Agenten & Entwickler
KI-Agenten nutzen dieselbe REST-API. source=\'ai\\' erstklassiger Typ. Headless-Modus. Ollama für lokale KI ohne API-Key oder Cloud-Anbindung. Native MCP-Infrastruktur. Die REST-API (OpenAPI 3.1.0) ist vollständig im MCP-Server gespiegelt. Jedes Plugin kann eigene MCP-Tools sicher über die `mcp_registry` registrieren.
Warum Caliando?

Die Lücke zwischen Workflow und Agent schließen.

Bisherige Lösungen trennen oft Business-Logik und KI-Tools. Caliando vereint beides nativ in einer offenen Plattform – 100 % DSGVO-konform.

Vollständige Business-Infrastruktur
Entwickler starten nicht bei null. Auth (JWT/API-Key), Datenbank (SQLite/PostgreSQL), EventBus und ein modernes React-Frontend sind bereits da. Ein neues Plugin fokussiert sich zu 100% auf die Domain-Logik – die Infrastruktur steht.

Beweis: Integrierter Tech-Stack (FastAPI + React 18). Multi-Stage Docker-Image sofort deploybar.
🤖
Der direkte Draht für KI-Agenten
Externe Agenten-Tools müssen nicht aufwändig nachgebaut werden. Über das Plugin-System (ADR-0011) werden Funktionalitäten direkt und sicher via Model Context Protocol (MCP) als JSON-RPC 2.0 an lokale (Ollama) oder Cloud-Modelle (OpenAI, Gemini) exponiert.

Beweis: Integrierter caliando-mcp-server übersetzt Plugins automatisch in MCP-Tools.
🔒
100 % DSGVO-konform: Deine Daten, deine KI
On-Premise oder in deiner Cloud. Lokale KI (Ollama) ohne API-Key oder Cloud-Anbindung. Selbst Fonts lokal (Privacy by Design). P-11: Soft-Delete + Consent Tracking + Audit Trail + Data Export.

Beweis: Vollständig lokal lauffähig. Scope-basierte API-Keys (ADR-0010), Sandboxed MCP-Registry (ADR-0011) + P-11 Notification Compliance (29/29 Tests ✓).
Entwicklungshistorie

Wie die Plattform entstand: 7+ Sprints, Schicht für Schicht

6 Sprints + 1 Architektur-Sprint = Fundament. Sprint 8 brachte GDPR-Compliance (P-11). v1.0 → v1.1 in 5 Wochen.

Sprint 1 · Daten-Fundament
✓ Abgeschlossen
IActivityRepository, 3 DB-Adapter, Timeline-Index (≤ 10 ms für 500 Termine), Migration-Interface, Konformitäts-Testsuite.
W1–W246 SP10 Stories
Sprint 2 · Kern, API & Plugins
✓ Abgeschlossen
CalendarKernel (3 Modi), JWT-Auth, REST-API, Plugin-Registry, EventBus, Plugin-Sandbox mit Whitelist-Proxy, Conflict-Resolution-Framework.
W3–W450 SP10 Stories
Sprint 3 · Oberfläche & Themes
✓ Abgeschlossen
4 Themes inkl. WCAG-AAA-High-Contrast, versionierte Design-Tokens, Theme-Wechsel ohne Reload, HolidayLayer für alle 16 Bundesländer.
W5–W644 SP6 Stories
Sprint 4 · Kalenderansichten
✓ Abgeschlossen
MonthView, WeekView, DayView – ohne FullCalendar. EventModal, Drag & Drop, Undo/Redo, Responsive ab 320 px, Farbkodierung nach Auftragsstatus.
W7–W843 SP6 Stories
Sprint 5 · Integrationen & Tests
✓ Abgeschlossen
✓ Zeiterfassung · ✓ iCal + RRULE · ✓ PDF-Export · ✓ Team-Kalender · ✓ Sync-Panel · ✓ WCAG 2.1 AA · ✓ E2E-Tests (Chromium + Firefox)
W9–W1044 SP7 Stories
Sprint 5.5 · KI-Engine (Bonus)
✓ Bonus
AIAdapter Protocol, Gemini + OpenAI + Ollama (lokal), ContextManager, Phasen-Module 1–4, Orchestrator, CLI, CaliAgentPlugin – direkt ins Plugin-System integriert.
Ungeplant8 Stories
Sprint 6 · Produktionsreife
✓ Abgeschlossen
✓ Virtualisierung + Code-Splitting + ETag/304 · ✓ Docker · ✓ FullCalendar entfernt (grep = 0) · ✓ Health-Endpunkt + JSON-Logging · ✓ Demo-Seed + Abnahme-Protokoll
W11–W11.524 SP5 Stories
Sprint 7 · Architektur & P-11 Planning
✓ Abgeschlossen
✓ Architektur-Review (ADR-0008, ADR-0012, ADR-0013) · ✓ P-11 Spezifikation + Domain-Design · ✓ EventBus-Integration · ✓ GDPR-Anforderungen · ✓ Retention Policy Design
W12–W1532 SPPlanning/Arch
Sprint 8 · Notification System & GDPR Compliance
✓ Abgeschlossen
✓ Domain Model (5 Dataclasses, Self-Validating) · ✓ INotificationRepository + SQLite Implementation (5 Tabellen) · ✓ Soft-Delete + Audit Trail · ✓ Consent Tracking (IP/UA) · ✓ Data Export (JSON) · ✓ AlertManager (5 Event Handler) · ✓ 29/29 Tests · ✓ i18n Support
W1610 SP1 Story (P-11)
Qualitätssicherung

Zahlen, die für sich sprechen

Produktionsreife ist keine Behauptung – sie ist messbar. Alle Kriterien wurden am 16.–17. März 2026 formal abgenommen.

366
Backend-Tests
pytest
✓ 366 / 366 grün
212
Frontend-Tests
Vitest
✓ 212 / 212 grün
86,2%
Test-Coverage
Mindestziel: 80 %
✓ Ziel übertroffen
0
TypeScript-Fehler
tsc --noEmit
✓ Vollständig typisiert
E2E
Playwright
Chromium + Firefox
✓ Beide Browser grün
0
FullCalendar-Treffer
grep im gesamten Repo
✓ Vollständig entfernt
16
API-Endpunkte
OpenAPI 3.1.0
✓ Vollständig dokumentiert
0
mypy-Fehler
--strict Modus
✓ Vollständig typisiert
Plattform-Architektur

Sauber geschichtet. Klar getrennt.

KI-Clients (extern) Ollama · Gemini · OpenAI · Copilot
Caliando MCP-Server ✓ JSON-RPC 2.0 · REST Isolation (ADR-0009) · stdio + HTTP Server
KI-Engine (Core) — Sprint 5.5 ✓ AIAdapter · Gemini/OpenAI/Ollama · ContextManager · Orchestrator
Notification & Audit — Sprint 8 ✓ Domain Model · Repository · EventBus Integration · GDPR Art. 6,7,17,20
Plugin-Layer MCPToolRegistry (ADR-0011) · EventBus · Sandbox
Locale-Layer (i18n) — v2.0 LocaleAdapter · LocaleRegistry · useT()
UI (Frontend) React 18 · TypeScript · Vite · Tailwind
API FastAPI · JWT · Pydantic v2 · OpenAPI 3.1.0
Core (Service) Python 3.11 · mypy strict · Framework-unabhängig
Repository-Layer IActivityRepository (typing.Protocol)
DB-Adapter SQLite (v1.0) · PostgreSQL (v1.1) · MySQL (v1.1)
Docker / Bash
# Produktions-Deployment in 3 Schritten
cp .env.example .env
# JWT_SECRET, CALIANDO_TOKEN und optional GEMINI_API_KEY setzen

docker compose up -d
# → http://localhost:3100

# Demo-Daten laden (optional)
docker exec -it caliando-calendar-1 \
  python scripts/seed_demo.py --db /app/data/caliando.db
Betriebsmodi

Drei Deployment-Modi. Derselbe Plattform-Kern.

Derselbe Kern läuft in drei völlig verschiedenen Kontexten. Kein Umbau, keine Duplizierung.

🚀
Standalone
FastAPI + React SPA + Docker. SQLite on-device, kein externes System. Läuft auf Raspberry Pi, VPS oder in der Cloud.
mode="standalone"
🧱
Embedded
Exportiert Router und Komponenten. Bestehende DB wird durchgereicht. Passt sich dem Host-App-Design an – kein separates Deployment.
mode="embedded"
⚙️
Headless
Nur die API, kein Frontend. 16 REST-Endpunkte (OpenAPI 3.1.0). Für Mobile, KI-Agenten oder SSR.
mode="headless"
Was als nächstes kommt

Der Kalender ist Use-Case #1.
Die Plattform entsteht jetzt.

Das Fundament ist fertig und bewiesen. Der nächste Schritt macht aus dem Kalender-Plugin-System eine domain-agnostische Plattform – auf der jeder Workflow zuhause ist.

Plattform-Sprint 1 · Kernel-Generalisierung
▶ Nächster Schritt
CalendarKernel wird zu CaliandoKernel. Migration auf generisches Event-Schema domain.entity.action (ADR-0008). 8-Wochen Deprecation-Fenster für v1.0-Interfaces (ADR-0012).
Aufwand: 1 Sprint Arch-Status: ADR-0008, ADR-0012 verabschiedet
Plattform-Sprint 2 · MCP-Server Paket-Isolation & Scope-Auth
Geplant
Vollständige Entkopplung: Der MCP-Server wird ein separates Adapter-Paket, das via REST kommuniziert (ADR-0009). API-Keys mit Scope-basierter Authorization regeln den Tool-Zugriff (ADR-0010).
Aufwand: 1 Sprint Arch-Status: ADR-0009, ADR-0010 verabschiedet
Plattform-Sprint 3 · Multi-Domain Intent Routing
Geplant
Dezentrales Context-Parsing. Die KI-Engine entscheidet heuristisch, welche Domains (Kalender, Zeiterfassung, Benachrichtigungen) relevant sind und assembliert den Kontext via MCP-Tools (ADR-0013).
Aufwand: 1 Sprint Arch-Status: ADR-0013 verabschiedet
Use-Case #2 · Notifications Plugin (Der Beweis)
Sprint 8 ✓
Das erste kalenderunabhängige Plugin ist produktionsreif. Domain-Modell mit Selbstvalidation, SQLite-Repository mit Audit-Trail, AlertManager mit Event-Driven Integration. GDPR Art. 6, 7, 17, 20 implementiert. 29/29 Tests bestanden (16 Unit + 13 Integration).
Abgeschlossen: 21. April 2026 350 LOC Domain + 850 LOC Repository + 350 LOC Services
Das Fundament steht.

Der Kalender läuft.
Die Plattform entsteht. Sei dabei.

Use-Case #1 + #2 sind produktionsreif (Sprint 8 ✓ GDPR Art. 6,7,17,20). Das Plugin-SDK und Use-Case #3 kommen als nächstes. Wer heute dabei ist, gestaltet mit, welche Workflows die Plattform weiter wachsen lassen.

Kontakt aufnehmen