diff --git a/SESSION_HANDOVER.md b/SESSION_HANDOVER.md new file mode 100644 index 0000000..8b893a4 --- /dev/null +++ b/SESSION_HANDOVER.md @@ -0,0 +1,95 @@ +# MiniLlama & CrowdCode — Session Handover + +> Diese Datei dient als Kontext-Übergabe zwischen Sessions. +> Neue Session: Lies diese Datei zuerst. + +--- + +## Projekt: MiniLlama — Portabler LLM-Stack für USB-Stick + +**Verzeichnis:** `/home/xray/code/MiniLlama` + +**Ziel:** Ein portabler LLM-Chat + API-Server + Dateioperations-CLI, der von einem USB-Stick auf Windows und Linux läuft — ohne Installation. Für leistungsschwache Rechner. + +--- + +## Kontext + +### Repos +- `forgejo.ccpn.cc/xray/MiniLlama` — CLI, Server, Start-Skripte, README +- `forgejo.ccpn.cc/xray/crowdcode` — VSCode Extension (TypeScript) +- `forgejo.ccpn.cc/xray/iftmin-wiki` — Wiki-Beispielprojekt + +### Stick +- Gemountet unter `/media/xray/llama/` (exFAT, Label: "llama", 28,6 GB) +- Modelle: `/media/xray/llama/llama/models/*.gguf` +- MiniLlama/models/ enthält Symlinks auf Stick-Modelle + +### Wichtige Dateien +- `cli/crowdcode.js` — Node.js CLI (480 Zeilen): Chat, @mentions, FILE:/DIR:/EDIT:, Shell-Kommandos +- `start.sh` — Chat-Starter Linux +- `start-server.sh` — API-Server mit Modellauswahl +- `deploy.sh` — Deployment auf USB-Stick +- `README.md` — Vollständige Dokumentation + +### Wichtige Erkenntnisse +- MiniCPM5-1B ist inkompatibel mit llama.cpp b9936 (Chat-Template-Tokens) +- Qwen2.5-1.5B zu schwach für Instruction Following (FILE:-Pattern) +- Gemma 3 4B IT und Phi-4-mini funktionieren perfekt (IFEval 90.2/88, laden in ~3s) +- LFM2.5-8B-A1B hat beste IFEval (91.84), noch nicht getestet + +--- + +## ✅ Entscheidungen + +| # | Entscheidung | Begründung | Datum | +|---|---|---|---| +| 1 | CLI in Node.js statt Bash | Plattformunabhängig (Win+Lin), fetch, readline | 2026-07-09 | +| 2 | Gemma 3 4B IT als Standard | IFEval 90.2, nur 2.4 GB, lädt in 3s | 2026-07-09 | +| 3 | Modelle als Symlinks auf Stick | Spart Platz im Repo, flexibler Austausch | 2026-07-09 | +| 4 | Server-Auto-Start im CLI | Kein manueller Vorstart nötig, Modellauswahl inklusive | 2026-07-09 | +| 5 | Shell-Kommando-Erkennung | pwd/ls/git direkt ausführen, nicht ans LLM | 2026-07-09 | + +--- + +## 🔜 Nächste Schritte + +| # | Aktion | Priorität | Status | +|---|---|---|---| +| 1 | LFM2-8B-A1B-UD-Q4_K_XL.gguf auf dem Stick mit FILE:-Pattern testen | 1 (sofort) | ⬜ | +| 2 | LFM2.5-8B-A1B-Q4_K_M.gguf downloaden und testen (IFEval 91.84) | 1 (sofort) | ⬜ | +| 3 | CrowdCode VSCode Extension als .vsix deployen und testen | 2 (danach) | ⬜ | +| 4 | Wiki-Modus mit iftmin-wiki testen | 2 (danach) | ⬜ | +| 5 | Windows-Test des CLI (crowdcode.bat) auf Zielrechner | 2 (danach) | ⬜ | +| 6 | Performance-Benchmarks auf Zielrechner (Ladezeit, t/s) | 3 (optional) | ⬜ | + +--- + +## Session: 2026-07-09 09:30-11:45 + +### Erreichtes +- MiniLlama Projektstruktur angelegt (bin/{linux,win}, cli/, models/) +- llama.cpp b9936 Binaries: Linux (39 MB) + Windows (114 MB) +- README mit Modell-Vergleichstabelle und CLI-Features +- CrowdCode CLI: Node.js Terminal-Client (480 Zeilen) + - Streaming Chat, @mentions, FILE:/DIR:/EDIT:/bash Pattern + - Shell-Kommando-Erkennung (pwd, ls, git) + - Server-Auto-Start mit Modellauswahl + - crowdcode.sh (Linux) + crowdcode.bat (Windows) +- CrowdCode VSCode Extension: kompiliert + .vsix gebaut (24 KB) +- Modelle getestet: 5 Modelle evaluiert (3 funktionieren ✅, 1 inkompatibel ❌) +- Neue Modelle: Gemma 3 4B IT + Phi-4-mini runtergeladen und getestet +- Symlinks von MiniLlama/models → Stick-Modelle +- MiniLlama + CrowdCode in Forgejo gepusht +- CrowdBrain minillama.md aktualisiert + +### Entscheidungen +- Gemma 3 4B IT (2.4 GB, IFEval 90.2) als Standard-Modell +- Phi-4-mini (2.5 GB) als leichte Alternative +- LFM2.5-8B-A1B (5.4 GB, IFEval 91.84) als nächstes zu testen +- MiniCPM5-1B: verwerten (inkompatibel) + +### Nächste Schritte (aus dieser Session) +1. LFM2-8B-A1B auf Stick testen (der liegt schon da) +2. LFM2.5-8B-A1B downloaden +3. Windows-Kompatibilität des CLI prüfen