| .codex/environments | ||
| .cursor/rules | ||
| backend | ||
| docs/architecture | ||
| frontend | ||
| scripts | ||
| .gitignore | ||
| AGENTS.md | ||
| kansho-writing-profile-improved.json | ||
| README.md | ||
Kanshō
Persönlicher KI-Reflexionsbegleiter innerhalb der Jinkendo-Produktfamilie.
Wahrnehmen → Reflektieren → Verstehen → Einordnen
Kanshō ist kein Tagebuch mit KI, keine Meditations-App und kein generischer Chatbot. Die Produktidentität ist ein langfristiger, dialogischer Reflexionsbegleiter. Journaling, Achtsamkeit und Meditation sind Werkzeuge, nicht der Kern.
Aktueller Stand
Fachliche Konzeption, technische Rahmenarchitektur und der erste vertikale MVP-Slice (dialoggeführtes Journal) auf dem lokalen Produktrahmen (frontend/, backend/). Identity bleibt lokal; persönlicher LLM-Egress nur über das Privacy Gateway.
| Bereich | Stand |
|---|---|
| Produktidentität | entschieden: Personal Reflection Companion |
| Technische Form | entschieden: PWA, Mobile First, Offline, Transkription |
| Fachliche Doku | Baseline in docs/architecture/functional/ |
| Technische Doku | vorläufiger Rahmen in docs/architecture/technical/ |
| App | MVP-Journal-Slice auf dem Produktrahmen; Dialog-IA und Target-Modell nicht eingefroren |
Remote: gitea.stommer.de/Lars/Kansho
Dokumentation zuerst laden
Nicht alle Kapitel gleichzeitig in den Kontext ziehen. Der Index beschreibt sinnvolle Bundles:
docs/architecture/functional/documentation_index.mddocs/architecture/technical/documentation_index.md
Führende Root-Dokumente:
docs/architecture/functional/fachliche_zielarchitektur.mddocs/architecture/functional/produktvision_und_produktidentitaet.mddocs/architecture/functional/interview_plan.mddocs/architecture/technical/technische_zielarchitektur.md
Nächster Konzeptblock: Abschluss und Outputs der Tagesreflexion (siehe Interviewplan).
Lokal starten
Ohne Docker. SQLite lokal, PostgreSQL bleibt das spätere Ziel. Python 3.12 unter %LOCALAPPDATA%\Programs\Python\Python312\python.exe, falls der Store-Alias python stört.
# einmalig
.\scripts\dev-setup.ps1
# Terminal 1
cd backend
.\.venv\Scripts\python -m uvicorn main:app --reload --port 8018
# Terminal 2
cd frontend
npm run dev
Kanshō nutzt eigene lokale Ports, nicht die Vite-/FastAPI-Defaults: Frontend 5188, Backend 8018 (strictPort, kein Ausweichen auf 5173/5174). Dann http://localhost:5188 – erster Start legt das Admin-Profil an. Frame-Test:
cd backend
.\.venv\Scripts\python tests\test_frame.py
.\.venv\Scripts\python tests\test_dialogue_memory.py
.\.venv\Scripts\python tests\test_mvp_journal.py
.\.venv\Scripts\python tests\test_privacy_detect.py
Zwei Provider. URL, Modell und ZDR/No-Train unter Admin → Schnittstellen. Der Secret-Key nur in backend/.env (Vorlage: backend/.env.example, wird nicht committet) oder ebenfalls dort eintragen, nie in der Datenbank.
Das Sprachmodell (Dialogzug und Journalentwurf) bleibt fail-closed ohne Key plus ZDR und Trainingsverbot. Maskierung ist lokal per Muster; ein Detect-LLM ist optional und sieht Klartext, deshalb klein oder später Ollama.
Tests: KANSHO_FAKE_PROVIDER=1, optional KANSHO_FAKE_DETECT=1. Zusätzlich tests/test_privacy_detect.py.
Lokal weiterarbeiten
git pull
Änderungen nach Gitea:
git add .
git commit -m "Kurze Begründung, warum die Änderung nötig ist"
git push
Cursor / Vibe Coding
Projektregeln liegen in .cursor/rules/ und in AGENTS.md. Sie halten Produktgrenzen, Dokumentationsprinzipien und Privacy-Guardrails im Agenten-Kontext.
Der Produktrahmen (React/Vite-PWA, FastAPI, PostgreSQL, Mitai-Auth- und Shell-Muster) ist in der technischen Zielarchitektur festgehalten und darf weitgehend von Mitai kopiert werden. Der fachliche Konzeptionsstand ist nicht final. Weiterhin nicht stillschweigend festlegen:
- Kanshō-Start-IA, Dialog- und Memory-Schemas
- Offline-Sync und konkrete Ports/Domains
- AI-Agentenzerlegung, Integrationsverträge, MVP-Schnitt