📊 Logs jetzt im Repo statt User-Verzeichnis!
**Änderung: Option A - logs/ im Repo**
Vorher:
- Logs in ~/.{character}_logs/ (User Home Directory)
- Multi-Projekt aber verstreut
- Nicht im Repo sichtbar
Nachher:
- Logs in logs/{character}/ (Repo Directory)
- Projekt-spezifisch & übersichtlich
- Mit Fallback: ${CRUMB_LOGS_DIR:-$HOME/.{character}_logs}
- Für Standalone-Nutzung
**Geänderte Files:**
- lib/waldwaechter.sh: CRUMB_LOGS_DIR exportiert
- Alle 17 crumbforest_roles/*: LOGDIR updated
- missions/robots/*: Mission logs → logs/missions/
- .gitignore: logs/ hinzugefügt
**Log-Struktur:**
```
logs/
├── tobi/
│ ├── tobi_history.json
│ ├── token_log.json
│ └── ...
├── crabbyrust/
├── mayaeule/
└── missions/
```
**Tested:** ✅ Tobi funktioniert, Logs landen in logs/tobi/
🌲 "Was kostet die Frage eines Kindes?" - jetzt transparent im Repo!
🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
5
.gitignore
vendored
5
.gitignore
vendored
@@ -1,7 +1,10 @@
|
||||
# === CF_Zero_V1 .gitignore ===
|
||||
|
||||
# AI Assistant Logs (contain conversation history and token usage)
|
||||
# Die 15 Waldwächter + Legacy
|
||||
# Repo-based logs directory
|
||||
logs/
|
||||
|
||||
# Legacy: Home directory logs (deprecated, now using logs/)
|
||||
.mayaeule_logs/
|
||||
.eule_logs/
|
||||
.deepbit_logs/
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.asciimonster_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.asciimonster_logs}/asciimonster"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/asciimonster_history.json"
|
||||
|
||||
@@ -3,7 +3,7 @@ QUESTION="$*"
|
||||
MODEL="openai/gpt-3.5-turbo"
|
||||
API_KEY="${OPENROUTER_API_KEY}"
|
||||
|
||||
LOGDIR="$HOME/.bugsy_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.bugsy_logs}/bugsy"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/bugsy_history.json"
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.crabbyrust_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.crabbyrust_logs}/crabbyrust"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/crabbyrust_history.json"
|
||||
|
||||
@@ -3,7 +3,7 @@ QUESTION="$*"
|
||||
MODEL="openai/gpt-3.5-turbo"
|
||||
API_KEY="${OPENROUTER_API_KEY}"
|
||||
|
||||
LOGDIR="$HOME/.deepbit_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.deepbit_logs}/deepbit"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/deepbit_history.json"
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.dumbosql_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.dumbosql_logs}/dumbosql"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/dumbosql_history.json"
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.funkfox_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.funkfox_logs}/funkfox"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/funkfox_history.json"
|
||||
|
||||
@@ -23,7 +23,7 @@ QDRANT_COLLECTION="${QDRANT_COLLECTION:-crumbforest_memory}"
|
||||
QDRANT_API_KEY="${QDRANT_API_KEY}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.eule_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.eule_logs}/mayaeule"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/eule_history.json"
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.pepperphp_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.pepperphp_logs}/pepperphp"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/pepperphp_history.json"
|
||||
|
||||
@@ -18,7 +18,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.schnecki_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.schnecki_logs}/schnecki"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/schnecki_history.json"
|
||||
|
||||
@@ -3,7 +3,7 @@ QUESTION="$*"
|
||||
MODEL="openai/gpt-3.5-turbo"
|
||||
API_KEY="${OPENROUTER_API_KEY}"
|
||||
|
||||
LOGDIR="$HOME/.schnippsi_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.schnippsi_logs}/schnippsi"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/schnippsi_history.json"
|
||||
|
||||
@@ -18,7 +18,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.schraubaer_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.schraubaer_logs}/schraubaer"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/schraubaer_history.json"
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.snakepy_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.snakepy_logs}/snakepy"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/snakepy_history.json"
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.spider_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.spider_logs}/spider"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/spider_history.json"
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.taichitaube_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.taichitaube_logs}/taichitaube"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/taichitaube_history.json"
|
||||
|
||||
@@ -3,7 +3,7 @@ QUESTION="$*"
|
||||
MODEL="openai/gpt-3.5-turbo"
|
||||
API_KEY="${OPENROUTER_API_KEY}"
|
||||
|
||||
LOGDIR="$HOME/.tobi_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.tobi_logs}/tobi"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/tobi_history.json"
|
||||
|
||||
@@ -17,7 +17,7 @@ API_KEY="${OPENROUTER_API_KEY}"
|
||||
MODEL="${OPENROUTER_MODEL:-openai/gpt-3.5-turbo}"
|
||||
|
||||
# Logs
|
||||
LOGDIR="$HOME/.vektor_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.vektor_logs}/vektor"
|
||||
mkdir -p "$LOGDIR"
|
||||
|
||||
HISTORY_FILE="$LOGDIR/vektor_history.json"
|
||||
|
||||
@@ -2,10 +2,15 @@
|
||||
# 🌲 Waldwächter Library - AI Assistants for Crumbforest Missions
|
||||
# Source this file to make all AI characters available as commands
|
||||
|
||||
# Determine the script directory
|
||||
WALDWAECHTER_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
# Determine the repo root directory (lib/ is inside repo root)
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
WALDWAECHTER_DIR="$(dirname "$SCRIPT_DIR")"
|
||||
ROLES_DIR="${WALDWAECHTER_DIR}/crumbforest_roles"
|
||||
|
||||
# Set logs directory in repo
|
||||
export CRUMB_LOGS_DIR="${WALDWAECHTER_DIR}/logs"
|
||||
mkdir -p "${CRUMB_LOGS_DIR}"
|
||||
|
||||
# Load .env if it exists
|
||||
ENV_FILE="${WALDWAECHTER_DIR}/.env"
|
||||
if [[ -f "${ENV_FILE}" ]]; then
|
||||
|
||||
@@ -339,7 +339,7 @@ echo ""
|
||||
|
||||
# === LOG ===
|
||||
|
||||
LOGDIR="$HOME/.crumbrobots_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.crumbrobots_logs}/missions"
|
||||
mkdir -p "$LOGDIR"
|
||||
TIMESTAMP=$(date -Iseconds)
|
||||
|
||||
|
||||
@@ -218,7 +218,7 @@ echo ""
|
||||
|
||||
# === LOG ===
|
||||
|
||||
LOGDIR="$HOME/.crumbrobots_logs"
|
||||
LOGDIR="${CRUMB_LOGS_DIR:-$HOME/.crumbrobots_logs}/missions"
|
||||
mkdir -p "$LOGDIR"
|
||||
TIMESTAMP=$(date -Iseconds)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user