Rama JARVIS-GREEN, independiente de master (el nucleo naranja queda intacto). - README propio del carril verde con diagrama de arquitectura y capturas del panel. - verde/: arranque, panel web, puente de voz (escucha local con faster-whisper + habla con la voz del naranja), pruebas (07 voz, 08 escucha), config y notas. - Integracion RAG: nucleo/saber/busca_cli.py + skill buscar-en-apuntes, para que el agente consulte el mismo indice que el nucleo. - Todo local (127.0.0.1); sin datos personales (rutas y modelo de GPU scrubeados).
39 lines
1.3 KiB
Bash
Executable file
39 lines
1.3 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
# Pasa las pruebas del verde y resume.
|
|
#
|
|
# ./ejecutar.sh todas
|
|
# ./ejecutar.sh 04 05 solo esas
|
|
#
|
|
# NINGUNA abre el TUI ni suena por el altavoz. Lo que no se puede automatizar
|
|
# —si contesta bien, si encadena herramientas, si la voz convence— esta en
|
|
# ESCALERA.md, que se recorre a mano.
|
|
#
|
|
# Van en este orden porque cada una explica los fallos de la siguiente: sin
|
|
# tarjeta libre (01) no carga el modelo (02), sin modelo no hay tool calling
|
|
# (04), y sin que quepa el prompt (05) el TUI dara respuestas truncadas que
|
|
# parecen otra cosa.
|
|
|
|
cd "$(dirname "$0")"
|
|
|
|
if [ $# -gt 0 ]; then
|
|
PRUEBAS=()
|
|
for n in "$@"; do PRUEBAS+=("$(ls "${n}"_*.sh 2>/dev/null | head -1)"); done
|
|
else
|
|
PRUEBAS=($(ls [0-9][0-9]_*.sh))
|
|
fi
|
|
|
|
FALLADAS=()
|
|
for p in "${PRUEBAS[@]}"; do
|
|
[ -n "$p" ] || continue
|
|
[ -x "$p" ] || chmod +x "$p" 2>/dev/null
|
|
"./$p" || FALLADAS+=("$p")
|
|
done
|
|
|
|
printf '\n\033[1m════════════════════════════════════\033[0m\n'
|
|
if [ ${#FALLADAS[@]} -eq 0 ]; then
|
|
printf '\033[32m todo en orden\033[0m\n'
|
|
printf '\033[90m siguiente: ../verde-launcher.sh y seguir ../ESCALERA.md\033[0m\n'
|
|
exit 0
|
|
fi
|
|
printf '\033[31m fallan: %s\033[0m\n' "${FALLADAS[*]}"
|
|
exit 1
|