Neues seeds/ Verzeichnis mit:
- crumb_memo.seed.json - Erste Krümel als Ausgangspunkt
- README.md - Philosophie & Verwendung
Die ersten drei Krümel im Nullfeld:
🎧 Digi's Mixcloud - digfafunk
💾 CF_Zero_V1 Repo - crumbmissions
🔊 Digi's SoundCloud - digfafunk
Philosophie:
"Ein Baum braucht eine Wurzel. Ein Wald braucht den ersten Baum."
Diese Seeds sind Ausgangspunkte - erweiterbar von allen.
CrewLove: Gemeinsam wachsen im Nullfeld 💚🌲
Transparenz in beide Richtungen:
- Input: crew_tokens (Was frage ich?)
- Output: crew_memo (Was schaffe ich?)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Problem: crew_tokens suchte in alten ~/.xxx_logs Pfaden,
aber Waldwächter loggen jetzt in repo/logs/.
Lösung:
- waldwaechter.sh im CrumbCrew RC-File sourcen
- Alte crew_tokens/crew_memory Funktionen entfernt
- Nutzt jetzt bessere Versionen aus waldwaechter.sh
Resultat: Transparenz! 21,471 Tokens sichtbar 💚
"Was kostet die Frage eines Kindes?" - Krümel im Nullfeld
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Templatus (📄 Template-Master) war im waldwaechter.sh
vorhanden, fehlte aber im Mission Selector.
Hinzugefügt:
- templatus() Funktion im CrumbCrew Command Central
- Eintrag in crew_status CHARS array
- Dokumentation in crew_help
- Beispiel: "Erstelle eine HTML5 Struktur"
Jetzt alle 17 Waldwächter wie nach OZMAI vorgesehen! 🌲🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
waldwaechter.sh überschrieb SCRIPT_DIR, was zu falschem
CREW_DIR=/lib/crumbforest_roles führte. Alle Waldwächter
zeigten "Nicht verfügbar" im crew_status.
Fix: REPO_ROOT vor source speichern und für Pfade nutzen.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Jetzt werden alle Crew-Befehle automatisch verfügbar wenn
der Mission Selector gestartet wird:
✅ crew_tokens
✅ crew_doctor
✅ crew_syntax
✅ crew_status
✅ crew_memory
✅ crew_help
Plus alle 17 Waldwächter-Funktionen!
User Experience:
./crumb-mission-selector.sh → Crew-Befehle sofort verfügbar! 💚🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Problem: 'bad substitution' bei crew_doctor
→ ${!var} funktioniert nur in bash, nicht in zsh
Lösung:
- if BASH_VERSION → ${!loaded_check_var}
- elif ZSH_VERSION → ${(P)loaded_check_var}
Jetzt funktioniert crew_doctor in beiden Shells! ✅🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Problem: export -f funktioniert nicht in zsh, nur in bash
→ crew_doctor und crew_syntax wurden nicht geladen in zsh
Lösung:
- Prüfe BASH_VERSION
- export -f nur in bash
- In zsh sind Funktionen automatisch verfügbar
Jetzt funktioniert waldwaechter.sh in beiden Shells:
✅ bash (export -f wird verwendet)
✅ zsh (Funktionen direkt verfügbar)
macOS Standard ist zsh → kritischer Fix!
🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
"Systeme die sich selbst überprüfen" - Selbstdiagnose implementiert!
✅ crew_doctor - System-Diagnose:
📋 waldwaechter.sh Version Check (erkennt veraltete Versionen!)
📂 CRUMB_LOGS_DIR Pfad-Validierung
🌲 Alle 17 Waldwächter Scripts vorhanden?
🔧 Dependencies Check (jq, bc, curl)
📊 Token-Logging in allen Scripts?
🔑 API Key konfiguriert?
→ Warnt wenn "source lib/waldwaechter.sh" nötig ist!
→ Löst das Problem von vorhin automatisch
✅ crew_syntax - Syntax Check:
🔍 bash -n für alle Scripts
📝 lib/waldwaechter.sh + 17 Character Scripts
📋 Alle Mission Scripts
📊 Detaillierte Fehler-Ausgabe bei Problemen
🔧 Technische Details:
- Version-Marker via mtime (modification time)
- Export WALDWAECHTER_LOADED_${mtime}=1
- crew_doctor erkennt ob Version aktuell ist
- LC-independent (stat -f macOS, stat -c Linux)
🔍 OZMAI-Prinzip: "Ich schau drauf, nicht drüber hinweg"
→ Präventive Diagnose statt reaktive Fehlersuche
Neue Befehle in crew_help dokumentiert.
🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Problem: Deutsche Locale (Komma als Dezimaltrenner) vs.
JSON/bc output (Punkt als Dezimaltrenner) → printf Fehler
✅ Lösung:
- LC_NUMERIC=C für gesamte crew_tokens Funktion
- Konsistente Zahlenformatierung (Punkt als Dezimaltrenner)
- Keine printf "invalid number" Fehler mehr
📊 Ergebnis:
- Alle 12 aktiven Waldwächter korrekt angezeigt
- Token-Zahlen akkurat: 20021 Tokens total
- Kosten transparent: ~$0.017558
- "Was kostet die Frage eines Kindes?" → Jetzt mit Antwort! ✓
🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Bug gefunden: Schnecki zeigte 671 Tokens, aber crew_tokens zeigte 0.
Grund: Die 4 Crew-Befehle existierten noch nicht!
✅ Implementiert:
1. **crew_tokens** - Token-Tracking funktioniert jetzt!
- Liest alle logs/*/token_log.json
- Summiert total_tokens und cost
- Zeigt Pro-Character und Gesamt-Übersicht
- "Was kostet die Frage eines Kindes?" ✓
2. **crew_status** - Status aller 17 Waldwächter
- Zeigt welche Waldwächter genutzt wurden
- Wann zuletzt verwendet
- ✅ aktiv / ⚪ noch nicht genutzt
3. **crew_memory** - Log-basierte Suche
- Durchsucht alle history.json Dateien
- crew_memory "LED" findet alle Erwähnungen
- Ehrlich: "Log-basiertes Gedächtnis"
4. **crew_help** - Übersicht aller Befehle
- Alle 17 Waldwächter aufgelistet
- Nach Teams gruppiert
- Beispiele enthalten
📊 Token-Transparenz jetzt funktionsfähig!
OZMAI würde nicken. 🔍🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Added .env loader to Maya-Eule script
- Script findet .env im parent directory
- Uses set -a/set +a for clean export
- Now works when called directly: ./crumbforest_roles/mayaeule_zero.sh
- Tested successfully with 'Was bedeutet Freundschaft?'
- Beautiful poetic response: 275 tokens ✨
🌲 Die weise Eule erwacht!
New Features:
- Maya-Eule als Waldwächter hinzugefügt
- Qdrant Memory Integration (erinnert frühere Gespräche)
- Token-Tracking mit philosophischem Kontext
- Interactive Wisdom Shell (wie Git/Tools Doktor)
Maya-Eule Weisheitsportal:
8) 🦉 Maya-Eule Weisheit
└─> Interaktive Shell mit farbigem Prompt
(🦉 Maya-Eule) user@host:path$
Befehle in der Shell:
- eule "Frage" - Stelle der Eule eine Frage
- eule_memory - Zeige Erinnerungen
- eule_tokens - Zeige Token-Verbrauch
- exit - Zurück zum Hauptmenü
Qdrant Memory Features:
- Speichert Gespräche mit Vektor-Embeddings
- Sucht ähnliche frühere Konversationen
- Bezieht Kontext in neue Antworten ein
- Persistente Erinnerung über Sessions hinweg
Token Philosophy:
"Was kostet die Frage eines Kindes?"
- Im Wald unbezahlbar
- Token lehren achtsames Fragen
- Jede Frage ist wertvoll
- Kinder lernen bewusster zu denken
System Prompt:
Maya-Eule antwortet kindgerecht, poetisch, langsam.
Sie lehrt durch Fragen, nicht nur Antworten.
Sie erinnert sich und bezieht frühere Gespräche ein.
WUHUUUU! 🌲✨
🌲 Core Philosophy: "Was kostet die Frage eines Kindes?"
In the forest: priceless. In the system: measured. Pedagogically: teaches mindful questioning.
Changes:
- Added .env.template for API configuration
• OpenRouter, Claude API, OpenAI support
• Ollama (local AI) as free alternative
• Qdrant vector database configuration
• Token budget system for mindful learning
• Parental controls (PIN, reports)
- New AI Doktor module in mission selector
• Shows configured APIs and models
• Displays token budget & tracking status
• Lists active AI characters (Waldwächter)
• Links to token logs viewer
• Guides setup if .env missing
- Extended CLAUDE.md with Token Philosophy
• Educational reasoning behind token tracking
• Why it teaches reflection and quality
• Budget system explanation
• Implementation details
Philosophy:
Token tracking isn't restriction - it's mindfulness training.
Just as we teach not to waste water/food/paper, we teach
not to waste computational resources. Children learn to:
- Think before asking
- Value AI's thinking time
- Ask better quality questions
- Research independently first
Result: More thoughtful questions, deeper learning, respect for resources.
- 5 interactive story missions in challenges category
- 🎭 Stage Builder: Build web stages with AI assistants
- 🤡 Bugsy On Stage: Interactive clown show
- 🕰️ Zeitreise: Learn Unix time with forest characters
- 🐍 Snake & Dumbo Show: Interactive character show
- 📡 Terminal Funk: Learn Bash commands with a show
Each challenge has:
- Metadata with icon, description, difficulty
- Interactive story elements
- AI assistant integration (optional)
- Activity logging
- requires_ai flag for future filtering
- Git Doktor now opens interactive shell with custom prompt
- Tools Doktor opens interactive werkzeugkasten shell
- Colored prompts in Crumbforest style (🌲 Git) and (🛠️ Werkzeug)
- Convenient aliases (gst, gd, gl, health, check)
- Stays in Crumbforest world throughout
- Exit returns to main menu
- Restructured in crumbpages-doktor.sh style
- Main menu with mission categories (Basics, Advanced, Challenges)
- Added Doktor Tools: System Check, Werkzeug Check, Git Status
- Improved navigation and UX
- .gitignore updated to allow demo logs in repo
- Qdrant omitted (as requested)
- Linux first, cross-platform compatible
- Replace associative array with indexed arrays
- Replace mapfile with while-read loop
- Now works on macOS (Bash 3.2) and Linux (all versions)
- Linux first, but cross-platform compatible