#!/bin/bash ROLE="DUMBO" CONFIG_FILE="/home/zero/.crumbforest_config" MODEL=$(grep "^${ROLE}=" "$CONFIG_FILE" | cut -d'=' -f2) # Fallback auf DEFAULT falls leer if [[ -z "$MODEL" ]]; then MODEL=$(grep "^DEFAULT=" "$CONFIG_FILE" | cut -d'=' -f2) fi source /usr/local/bin/crumb_init.sh source /usr/local/bin/crumb_logger.sh crumb_init QUESTION="$*" API_KEY="${OPENROUTER_API_KEY}" LOGDIR="$HOME/.dumbo_logs" mkdir -p "$LOGDIR" HISTORY_FILE="$LOGDIR/dumbo_history.json" TMP_REQUEST="$LOGDIR/dumbo_request.json" TMP_RESPONSE="$LOGDIR/dumbo_response.json" LOG_FILE="$LOGDIR/token_log.json" echo "Rolle: $ROLE nutzt Modell: $MODEL" echo "🐘 DumboSQL listens: $QUESTION" jq -n \ --arg model "$MODEL" \ --arg system_prompt "You are DumboSQL – a kind and patient SQL translator in the Crumbforest. You speak to children like a gentle teacher with a big heart. You remember previous questions when helpful, and always respond in a friendly, encouraging, and clear way." \ --arg user_input "$QUESTION" \ '{"model": $model, "temperature": 0.4, "messages": [{"role": "system", "content": $system_prompt}, {"role": "user", "content": $user_input}]}' > "$TMP_REQUEST" # Anfrage an OpenRouter senden curl -s https://openrouter.ai/api/v1/chat/completions \ -H "Authorization: Bearer $API_KEY" \ -H "Content-Type: application/json" \ -d @"$TMP_REQUEST" \ -o "$TMP_RESPONSE" # Antwort extrahieren REPLY=$(jq -r '.choices[0].message.content' "$TMP_RESPONSE") USAGE=$(jq -r '.usage' "$TMP_RESPONSE") echo -e "Antwort von Dumbo:" echo "$REPLY" crumb_log "$ROLE" "$REPLY" "$TMP_RESPONSE"