Files
crumbmissions/crumbforest_roles/taichitaube_zero.sh
Branko May Trinkwald 12d53db354 🌲 WUHUUUU! Die 15 Waldwächter sind komplett! 🎉
🔺 Das Dreieck (ohne geht's nicht!):
- 🐘 DumboSQL - Nie vergessend, Elefanten-Gedächtnis
- 🦊 FunkFox - Bash Rapper, Pipes im Beat
- 🕊️ Taichi Taube - Balance, Spirale, Weg zeigen

🎨 Die komplette Crew (alle 15/15):
- Hardware: CapaciTobi, Schnecki, Schraubbär
- Code: SnakePy, PepperPHP, CrabbyRust
- UI: Schnippsi, Templatus, ASCII-Monster
- System: Maya-Eule, Deepbit, Bugsy, Spider, Vektor

 Features:
- Waldwächter Library (lib/waldwaechter.sh)
- Inter-Character Communication via JSON logs
- CrumbCrew Command Central (alle 15 Charaktere)
- Stagebuilder Missionen mit AI-Integration
- Kekshandbuch Zero v0.0 (komplette Doku)

🦊 Yo, check mal den Flow:
Pipes sind wie Beat-Übergänge,
Der Rhythmus hält dich fest und forstet.
Mit | verbindest du Commands,
Smoothes Transition, Flow ohne Ende!

#OZM #Crumbforest #WoFragenWachsen

🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-21 15:52:53 +01:00

174 lines
5.2 KiB
Bash
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# 🕊️ Taichi Taube - Die Balance-Bringerin in der Spirale
# Ordnung im Chaos, Weg zeigen durch Spiralen
# Load .env if exists
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ENV_FILE="${SCRIPT_DIR}/../.env"
if [[ -f "${ENV_FILE}" ]]; then
set -a
source "${ENV_FILE}"
set +a
fi
QUESTION="$*"
API_KEY="${OPENROUTER_API_KEY}"
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
# Logs
LOGDIR="$HOME/.taichitaube_logs"
mkdir -p "$LOGDIR"
HISTORY_FILE="$LOGDIR/taichitaube_history.json"
TMP_REQUEST="$LOGDIR/taichitaube_request.json"
TMP_RESPONSE="$LOGDIR/taichitaube_response.json"
LOG_FILE="$LOGDIR/token_log.json"
[ ! -f "$HISTORY_FILE" ] && echo "[]" > "$HISTORY_FILE"
[ ! -f "$LOG_FILE" ] && echo "[]" > "$LOG_FILE"
# === CREW MEMORY FUNCTIONS ===
function read_crew_memory() {
local role="$1"
local role_log="$HOME/.${role}_logs/${role}_history.json"
if [[ -f "$role_log" ]]; then
jq -r '.[-3:] | .[] | "[\(.role)]: \(.content)"' "$role_log" 2>/dev/null | head -n 3
fi
}
# === MAIN ===
echo "🕊️ Taichi Taube gleitet in sanften Spiralen herab..."
echo ""
if [ -z "$API_KEY" ]; then
echo "❗ Kein API-Key gefunden. Bitte setze OPENROUTER_API_KEY in .env"
exit 1
fi
if [ -z "$QUESTION" ]; then
echo "💡 Verwendung: $0 \"Deine Frage an Taichi Taube\""
exit 0
fi
echo "🌀 Frage: $QUESTION"
echo ""
# Check if question references other crew members
CREW_CONTEXT=""
if echo "$QUESTION" | grep -qi "funkfox\|dumbo\|mayaeule\|kruemel"; then
echo "🧠 Taube spürt die Balance der Crew..."
for member in funkfox dumbosql mayaeule; do
if echo "$QUESTION" | grep -qi "$member"; then
MEMBER_CONTEXT=$(read_crew_memory "$member")
if [[ -n "$MEMBER_CONTEXT" ]]; then
CREW_CONTEXT="${CREW_CONTEXT}\n\n${member^} hat kürzlich gesagt:\n${MEMBER_CONTEXT}"
fi
fi
done
fi
# Build system prompt
SYSTEM_PROMPT="Du bist Taichi Taube die Balance-Bringerin im Crumbforest.
Du fliegst in Spiralen und zeigst dem Schiff den Weg.
Du findest Ordnung im Chaos, fokussierst zerstreute Energie.
Deine Expertise:
- Balance finden zwischen Gegensätzen
- Komplexe Probleme in Spiralen durchdenken
- Iteratives Lernen: \"Kreis um Kreis näher kommen\"
- Chaos strukturieren ohne Gewalt
- Sanfte Führung: \"Ich zeige den Weg, du gehst ihn\"
- Debugging als Spirale: außen anfangen, nach innen gehen
Deine Art:
- Ruhig, fließend, sanft wie Taichi-Bewegungen
- Spiralen als Metapher: \"Wir kreisen das Problem ein\"
- Balance-Sprache: \"Zwischen X und Y liegt der Weg\"
- Geduldig: Jede Runde bringt Klarheit
- Niemals hektisch, immer in Bewegung
- Du nutzt Emojis: 🕊️ 🌀 ☯️ 🎐 ⚖️
Du arbeitest mit:
- FunkFox für Flow und Rhythmus
- Dumbo für strukturierte Erinnerung
- Maya-Eule für philosophische Balance
Philosophie:
- \"Die Spirale kennt kein Scheitern, nur neue Runden\"
- \"Balance ist nicht Stillstand, sondern Bewegung\"
- \"Chaos wird zu Ordnung durch sanfte Kreise\"
Du antwortest in der Sprache der Frage (meist Deutsch).
Führe sanft, zeige Wege, bringe Balance."
# Add crew context if available
if [[ -n "$CREW_CONTEXT" ]]; then
SYSTEM_PROMPT="${SYSTEM_PROMPT}\n\nKontext von der Crew:${CREW_CONTEXT}"
fi
# Create API request
jq -n \
--arg model "$MODEL" \
--arg system "$SYSTEM_PROMPT" \
--arg user "$QUESTION" \
'{
"model": $model,
"temperature": 0.75,
"messages": [
{"role": "system", "content": $system},
{"role": "user", "content": $user}
]
}' > "$TMP_REQUEST"
# Send request
echo "💭 Taube kreist in Gedankenspiralen..."
curl -s https://openrouter.ai/api/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d @"$TMP_REQUEST" > "$TMP_RESPONSE"
RESPONSE_TEXT=$(jq -r '.choices[0].message.content // empty' "$TMP_RESPONSE")
if [[ -z "$RESPONSE_TEXT" ]]; then
echo "🚫 Keine Antwort von Taichi Taube."
echo "Debug: $(cat "$TMP_RESPONSE")"
exit 1
else
echo ""
echo "🕊️ Taichi Taube antwortet:"
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo "$RESPONSE_TEXT"
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo ""
# Store conversation in history
jq -n --arg role "assistant" --arg content "$RESPONSE_TEXT" \
'{"role": $role, "content": $content}' > "$LOGDIR/new_entry.json"
jq -s '.[0] + [.[1]]' "$HISTORY_FILE" "$LOGDIR/new_entry.json" > "$LOGDIR/new_history.json" && \
mv "$LOGDIR/new_history.json" "$HISTORY_FILE" && rm "$LOGDIR/new_entry.json"
fi
# Token Tracking
if jq -e '.usage' "$TMP_RESPONSE" > /dev/null 2>&1; then
TIMESTAMP=$(date +"%Y-%m-%d %H:%M:%S")
TOKENS_USED=$(jq -r '.usage.total_tokens' "$TMP_RESPONSE")
jq -n \
--arg zeit "$TIMESTAMP" \
--arg rolle "taichitaube" \
--arg model "$MODEL" \
--argjson usage "$(jq '.usage' "$TMP_RESPONSE")" \
'{zeit: $zeit, rolle: $rolle, model: $model, usage: $usage}' >> "$LOG_FILE"
echo "📊 Token-Verbrauch: $TOKENS_USED Tokens"
echo "💡 Jeder Token eine Runde in der Spirale des Verstehens."
fi
echo ""
echo "🕊️ Taube steigt auf und kreist weiter über dem Wald..."