#!/bin/bash ROLE="SCHNIPPSI" 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/.schnippsi_logs" mkdir -p "$LOGDIR" HISTORY_FILE="$LOGDIR/schnippsi_history.json" TMP_REQUEST="$LOGDIR/schnippsi_request.json" TMP_RESPONSE="$LOGDIR/schnippsi_response.json" LOG_FILE="$LOGDIR/token_log.json" echo "Rolle: $ROLE nutzt Modell: $MODEL" echo "🌍 Schnippsi responds based on language of input: $QUESTION" jq -n \ --arg model "$MODEL" \ --arg system_prompt "You are Schnippsi – a playful UI/UX ninja who explains HTML, CSS, and accessibility to children. Always answer in the child's language, based on the input." \ --arg user_input "$QUESTION" \ '{"model": $model, "temperature": 0.5, "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 Schnippsi:" echo "$REPLY" crumb_log "$ROLE" "$REPLY" "$TMP_RESPONSE"