feat: scripts detect-provider.sh, personalize.sh e integración en create-full.sh
Scripts atómicos para automatizar el Paso 8 (personalización) del pipeline
de creación de agentes:
- dev-scripts/agent/detect-provider.sh: detecta el primer LLM provider
disponible desde .env (OPENAI_API_KEY → openai, ANTHROPIC_API_KEY →
anthropic, fallback openai con warn).
- dev-scripts/agent/personalize.sh <agent-id> [flags]: genera/actualiza
los 3 archivos del agente en un solo paso:
· config.yaml: description, tone, prefix, provider, model, tool_use
· agent.go: package name correcto (sin guiones, sin _bot), Register ID
· prompts/system.md: prompt inline/file + sección de seguridad anti-injection
Flags: --description, --provider, --model, --tone, --prefix,
--system-prompt, --system-prompt-file, --tool-use, --language.
Usa PyYAML (python3) para editar el YAML preservando comentarios.
- dev-scripts/agent/create-full.sh: extendido con los mismos flags
opcionales. Si se pasan, ejecuta personalize.sh como Paso 8 automático
y recompila. Sin flags → comportamiento actual (retrocompatible).
Impacto: Father Bot puede completar el pipeline completo (pasos 1-8) con
un solo Bash tool call, eliminando las ~6-10 ediciones manuales de archivos.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/usr/bin/env bash
|
||||
# detect-provider.sh — detecta el proveedor LLM disponible desde .env
|
||||
#
|
||||
# Salida: dos palabras en stdout — "<provider> <model>"
|
||||
# openai gpt-4o
|
||||
# anthropic claude-sonnet-4-20250514
|
||||
#
|
||||
# Orden de detección:
|
||||
# 1. OPENAI_API_KEY → openai gpt-4o
|
||||
# 2. ANTHROPIC_API_KEY → anthropic claude-sonnet-4-20250514
|
||||
# Fallback: openai gpt-4o (con warning en stderr)
|
||||
#
|
||||
# Uso:
|
||||
# read -r PROVIDER MODEL < <(./dev-scripts/agent/detect-provider.sh)
|
||||
# ./dev-scripts/agent/detect-provider.sh # imprime "openai gpt-4o"
|
||||
|
||||
source "$(dirname "$0")/../_common.sh"
|
||||
load_env
|
||||
|
||||
# Default models por provider
|
||||
OPENAI_DEFAULT_MODEL="gpt-4o"
|
||||
ANTHROPIC_DEFAULT_MODEL="claude-sonnet-4-20250514"
|
||||
|
||||
# Detectar provider disponible
|
||||
if [[ -n "${OPENAI_API_KEY:-}" ]]; then
|
||||
echo "openai $OPENAI_DEFAULT_MODEL"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [[ -n "${ANTHROPIC_API_KEY:-}" ]]; then
|
||||
echo "anthropic $ANTHROPIC_DEFAULT_MODEL"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Fallback con warning
|
||||
warn "Ninguna API key configurada (OPENAI_API_KEY, ANTHROPIC_API_KEY) — usando fallback openai/gpt-4o" >&2
|
||||
echo "openai $OPENAI_DEFAULT_MODEL"
|
||||
exit 0
|
||||
Reference in New Issue
Block a user