6858a5f13e
Se separan los scripts de gestión en dos categorías claras: - dev-scripts/server/ — operaciones del launcher (start, stop, restart, ps, logs, dashboard) - dev-scripts/agent/ — operaciones de agentes (new, register, verify, avatar, remove, list) Se añade create-full.sh como script unificado que ejecuta scaffold + build + register + verify. Se incluyen READMEs en cada subdirectorio documentando los scripts disponibles. Los scripts originales en la raíz de dev-scripts/ se eliminan. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
56 lines
1.6 KiB
Bash
Executable File
56 lines
1.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# logs.sh — sigue los logs de agentes (logs/<agent>/YYYY-MM-DD.jsonl)
|
|
#
|
|
# Uso:
|
|
# ./dev-scripts/server/logs.sh # tail -f de todos los agentes (hoy)
|
|
# ./dev-scripts/server/logs.sh assistant-bot # tail -f de un agente específico
|
|
# ./dev-scripts/server/logs.sh assistant-bot 100 # últimas 100 líneas
|
|
|
|
source "$(dirname "$0")/../_common.sh"
|
|
|
|
LOG_DIR="logs"
|
|
AGENT_ID="${1:-}"
|
|
LINES="${2:-50}"
|
|
|
|
if [[ ! -d "$LOG_DIR" ]]; then
|
|
fail "No hay logs todavía — inicia el launcher primero"
|
|
fi
|
|
|
|
TODAY="$(date -u +%Y-%m-%d)"
|
|
|
|
if [[ -n "$AGENT_ID" ]]; then
|
|
# Logs de un agente específico
|
|
LOG_FILE="$LOG_DIR/$AGENT_ID/$TODAY.jsonl"
|
|
if [[ ! -f "$LOG_FILE" ]]; then
|
|
# Try to find the latest log file for this agent
|
|
LATEST="$(ls -t "$LOG_DIR/$AGENT_ID/"*.jsonl 2>/dev/null | head -1)"
|
|
if [[ -z "$LATEST" ]]; then
|
|
fail "No hay logs para $AGENT_ID"
|
|
fi
|
|
LOG_FILE="$LATEST"
|
|
fi
|
|
info "Siguiendo logs: $LOG_FILE"
|
|
dim " Ctrl+C para salir"
|
|
echo ""
|
|
tail -n "$LINES" -f "$LOG_FILE"
|
|
else
|
|
# Logs de todos los agentes (archivos de hoy)
|
|
FILES=$(find "$LOG_DIR" -name "$TODAY.jsonl" 2>/dev/null)
|
|
if [[ -z "$FILES" ]]; then
|
|
# Fallback: latest file from each agent
|
|
FILES=""
|
|
for d in "$LOG_DIR"/*/; do
|
|
LATEST="$(ls -t "$d"*.jsonl 2>/dev/null | head -1)"
|
|
[[ -n "$LATEST" ]] && FILES="$FILES $LATEST"
|
|
done
|
|
fi
|
|
if [[ -z "$FILES" ]]; then
|
|
fail "No hay logs todavía — inicia el launcher primero"
|
|
fi
|
|
info "Siguiendo logs de todos los agentes (hoy: $TODAY)"
|
|
dim " Ctrl+C para salir"
|
|
echo ""
|
|
# shellcheck disable=SC2086
|
|
tail -n "$LINES" -f $FILES
|
|
fi
|