{ "version": 1, "entries": [ { "id": "2026-09-20-omniroute-arranque-fiable-tarea-programada-vigilante", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "omniroute", "titulo": "OmniRoute arranque fiable (tarea programada + vigilante)", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "Tarea 'OmniRoute Watchdog' al iniciar sesion + omniroute_watchdog.ps1 (puerto 20128 cada 120s, autocuracion). Sustituye el .vbs fragil." }, { "id": "2026-09-20-omniroute-505-modelos-expuestos-en-opencode", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "omniroute", "titulo": "OmniRoute: 505 modelos expuestos en OpenCode", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "setup-opencode --only de 5 conexiones probadas (antigravity, claude, opencode-go, opencode, aihorde) + auto/*. Quitar BOM de opencode.jsonc." }, { "id": "2026-09-20-plugin-global-opencode-relanza-omniroute", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "opencode", "titulo": "Plugin global OpenCode relanza OmniRoute", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "omniroute-bootstrap.ts en ~/.config/opencode/plugins/ lanza el vigilante -Once al arrancar OpenCode en cualquier repo." }, { "id": "2026-09-20-gitea-caido-502-contenedor-en-bucle-de-reinicio", "fecha": "2026-09-20", "equipo": "VPS", "categoria": "servicios", "titulo": "Gitea caido (502) - contenedor en bucle de reinicio", "transferible": false, "aplicado_en": [ "VPS" ], "detalle": "git.v-encore-lab.com (185.187.169.109) devolvia 502. Causa: contenedor gitea con capa de escritura corrupta (/app/gitea/gitea Permission denied, 3595 reinicios). Fix: recrear solo el contenedor desde /root/docker-compose.yml (docker compose up -d --force-recreate --no-deps gitea). Datos intactos en /root/gitea/data. Gitea 1.25.5, healthz pass." }, { "id": "2026-09-20-gitea-watchdog-systemd-recrea-contenedor-fix-url-monitor-kum", "fecha": "2026-09-20", "equipo": "VPS", "categoria": "servicios", "titulo": "Gitea: watchdog systemd (recrea contenedor) + fix URL monitor Kuma", "transferible": false, "aplicado_en": [ "VPS" ], "detalle": "VPS: /opt/gitea-watchdog/gitea_watchdog.sh + timer systemd cada 2min (recrea gitea si falla 2 veces). Verificado parando gitea. Monitor Uptime-Kuma 'Gitea - Repositorios' corregido (URL tenia punto final) con alerta email SMTP. Ficheros en INFRAESTRUCTURA/vps/gitea/." }, { "id": "2026-09-20-migracion-de-watchers-telegram-recordatorios-a-infraestructu", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "watchers", "titulo": "Migracion de watchers (Telegram + recordatorios) a INFRAESTRUCTURA", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "telegram_watcher.py, recordatorios_msgbox.py y recordatorio.cmd movidos de biblioteca_negocio_prolongo/scripts a INFRAESTRUCTURA/scripts. Rutas resueltas con scripts/infra_paths.py: estado en INFRAESTRUCTURA/estado; pendientes.json y modulos compartidos (idd_channel, netatmo_tool, alarma_twilio) desde el repo hermano (override BIBLIOTECA_REPO). Tareas programadas nuevas (Telegram Watcher, Recordatorios Msgbox) via scripts/instalar_watchers.ps1 (integrado en instalar_global.ps1). En el portatil: git clone INFRAESTRUCTURA, ejecutar scripts/instalar_global.ps1, copiar ~/.telegram-agent y ~/.omniroute, y eliminar el autostart .lnk antiguo si existe. Estado migrado a INFRAESTRUCTURA/estado/." }, { "id": "2026-09-20-primera-version-de-morning-routine-wol-tapo-autologon-y-arra", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "scripts", "titulo": "Primera version de Morning Routine (WoL, Tapo, AutoLogon y Arranque Apps)", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "Scripts para encender PC via RPi+Tapo, hacer autologon en Windows y lanzar Chrome, Edge, WhatsApp y Telegram al arrancar" }, { "id": "2026-09-20-fix-bot-telegram-control-pc-confirmacion-watchdog", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "scripts", "titulo": "Fix bot Telegram control PC: confirmacion + watchdog", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "Corregidos 4 problemas del bot telegram_bot_pc.py: (1) confirmacion obligatoria antes de apagar, (2) watchdog automatico de estado tras apagar (30s + ping), (3) watchdog de encendido con 3 reintentos (90s + 3x15s ping), (4) documentado problema autologon usuario nuevo. Archivos: telegram_bot_pc.py (corregido), docs/TELEGRAM_BOT_PC_FIXES.md, docs/FIX_PROBLEMA_AUTOLOGON_USUARIO_NUEVO.md" }, { "id": "2026-09-20-bot-idd-desplegado-en-vps-con-control-pc", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "servicios", "titulo": "Bot IDD desplegado en VPS con control PC", "transferible": false, "aplicado_en": [ "sobremesa" ], "detalle": "Bot Telegram IDD en /opt/telegram_bot_idd (VPS 185.187.169.109), servicio telegram-idd-bot.service, control remoto PC (apagar/encender/estado WoL). Panel IDD actualizado con botones de control PC." }, { "id": "2026-09-20-shutdown-listener-instalado-como-tarea-programada", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "watchers", "titulo": "Shutdown listener instalado como tarea programada", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "shutdown_listener.py añadido a instalar_watchers.ps1. Escucha puerto 5555, arranca al login, reinicio automático. Recibe comandos de Home Assistant para apagar el PC." }, { "id": "2026-09-20-pc-status-proxy-en-vps-via-t-nel-rpi", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "servicios", "titulo": "PC Status Proxy en VPS via túnel RPi", "transferible": false, "aplicado_en": [ "sobremesa" ], "detalle": "Servicio pc-status-proxy.service en VPS verifica estado PC via SSH a RPi (puerto 2222) → curl a 192.168.1.239:5555. Bot IDD usa localhost:15555 para consultar estado real del PC." }, { "id": "2026-09-20-timeout-home-assistant-aumentado-5s-15s-para-proxy-shutdown", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "servicios", "titulo": "Timeout Home Assistant aumentado 5s→15s para proxy shutdown", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "rest_command.shutdown_pc_local timeout aumentado de 5s a 15s en /opt/homeassistant/config/configuration.yaml. El proxy VPS tarda ~5s por túnel SSH→RPi→PC. Evita timeout que abortaba script completo de apagado." }, { "id": "2026-09-20-scripts-test-apagado-luces-sin-regleta-continue-on-error", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "servicios", "titulo": "Scripts test apagado luces sin regleta (continue_on_error)", "transferible": false, "aplicado_en": [ "sobremesa" ], "detalle": "Creados scripts V2 en Home Assistant para probar apagado de luces sin apagar regleta: apagar_pc_test_luces_v2 con continue_on_error: true. Webhook: test-luces-v2-juanjo. Problema detectado: comandos Alexa custom no se ejecutan (requiere investigación)." }, { "id": "2026-09-20-usuario-temporal-juan-m-en-login-script-fix-autologon-ps1-li", "fecha": "2026-09-20", "equipo": "sobremesa", "categoria": "scripts", "titulo": "Usuario temporal Juan M en login - script fix_autologon.ps1 listo", "transferible": false, "aplicado_en": [ "sobremesa" ], "detalle": "Documentado problema usuario temporal Juan M en pantalla login. No es usuario real, es perfil corrupto de Windows. Solución: ejecutar scripts\\fix_autologon.ps1 como Admin y reiniciar. Autologon correctamente configurado pero perfil persiste en caché." }, { "id": "2026-09-29-migraci-n-de-watchers-al-vps", "fecha": "2026-09-29", "equipo": "sobremesa", "categoria": "servicios", "titulo": "Migración de watchers al VPS", "transferible": true, "aplicado_en": [ "sobremesa", "portatil" ], "detalle": "Telegram Watcher y Shutdown Listener migrados al VPS. Recordatorios Msgbox eliminado. Ver INFRAESTRUCTURA/vps/MIGRACION_SERVICIOS_VPS.md para instrucciones." }, { "id": "2026-09-30-fix-telegram-watcher-telethon-1-44-encoding-utf-8", "fecha": "2026-09-30", "equipo": "portatil", "categoria": "watchers", "titulo": "Fix telegram_watcher (telethon 1.44 + encoding UTF-8)", "transferible": true, "aplicado_en": [ "portatil" ], "detalle": "MessageRead(outbox=True) rompe en telethon 1.44 (kwarg eliminado) -> usar MessageRead(). Anadido reconfigure UTF-8 en stdout/stderr para evitar UnicodeEncodeError cp1252 al lanzar desde tarea programada sin PYTHONUTF8." }, { "id": "2026-10-02-superguardado-py-protocolo-guardado-total-automatico-portati", "fecha": "2026-10-02", "equipo": "portatil", "categoria": "scripts", "titulo": "superguardado.py: protocolo guardado total automatico portatil+sobremesa", "transferible": true, "aplicado_en": [ "portatil" ], "detalle": "Script scripts/superguardado.py en biblioteca_negocio_prolongo. 7 pasos: ESTADO_DIARIO + git biblioteca + engram cloud + sync_continuo + obsidian + git INFRAESTRUCTURA + aviso sonoro. Palabra clave: superguardado/guarda/memoria. Descripcion auto si no se indica." }, { "id": "2026-10-03-superwhisper-enter-ahk-f13-boton-auxiliar-logitech-tarea-pro", "fecha": "2026-10-03", "equipo": "portatil", "categoria": "scripts", "titulo": "SuperWhisper Enter: AHK F13 boton auxiliar Logitech + tarea programada", "transferible": true, "aplicado_en": [ "portatil" ], "detalle": "Script superwhisper_enter.ahk: F13 (boton auxiliar Logitech asignado en Logi Options+) espera cambio portapapeles (Super Whisper pega) y manda Enter + devuelve foco a OpenCode. Tarea programada SuperWhisper Enter al inicio de sesion. Rueda central = toggle Super Whisper (inicio/parar). F13 = Enter automatico." }, { "id": "2026-10-03-monitor-de-estado-telegram-correo-jira-en-segundo-plano", "fecha": "2026-10-03", "equipo": "portatil", "categoria": "servicios", "titulo": "Monitor de estado (Telegram + correo + Jira) en segundo plano", "transferible": true, "aplicado_en": [ "portatil" ], "detalle": "Proceso Python (scripts/monitor_estado.py) que cada 30 min recoge Telegram (5 fuentes), correo jminguez@prolongo.es y Jira DS (nuevos + sin asignar), archiva por fuente, resume con IA (OmniRoute) y avisa por voz local. Arranque por tarea programada 'Monitor Estado' + plugin global monitor-estado-bootstrap.ts; watchdog idempotente; sesion Telegram dedicada (sessions/monitor, login por QR); tests pytest en tests/. Requiere en el otro equipo: pip install pytest qrcode, login Telegram QR y re-ejecutar instalar_global.ps1." }, { "id": "2026-10-03-acceso-remoto-al-sobremesa-openssh-server-tailscale-ssh-powe", "fecha": "2026-10-03", "equipo": "portatil", "categoria": "servicios", "titulo": "Acceso remoto al sobremesa: OpenSSH Server + Tailscale (ssh -> PowerShell)", "transferible": true, "aplicado_en": [ "portatil" ], "detalle": "Scripts en scripts/acceso_remoto/: setup_tailscale.ps1 (malla privada) y setup_ssh_server.ps1 (OpenSSH Server, shell PowerShell, firewall solo Tailscale+LAN, instala clave publica). Clave SSH del portatil: ~/.ssh/id_ed25519. Doc: docs/ACCESO_REMOTO_SOBREMESA.md. Permite ssh juanm@sobremesa desde cualquier red sin abrir puertos. Requiere en cada equipo: ejecutar setup_tailscale; en el sobremesa ademas setup_ssh_server (admin)." }, { "id": "2026-10-03-voicemonkey-sustituido-por-home-assistant-alexa", "fecha": "2026-10-03", "equipo": "portatil", "categoria": "servicios", "titulo": "VoiceMonkey sustituido por Home Assistant (Alexa)", "transferible": true, "aplicado_en": [ "portatil" ], "detalle": "Validado con efecto real (anuncio por voz + comando 'apaga/enciende barras'). Nuevo helper biblioteca/scripts/ha_alexa.py (announce/command via HA REST). Migrados: netatmo_tool.notificar_alexa, telegram_read_tracker.notificar_alexa, protocolo_apagado.py y protocolo_apagado_test.py (apagar_luces_alexa). .env: +HOMEASSISTANT_URL/TOKEN (long-lived), -VOICEMONKEY_TOKEN/DEVICE. Obsoletos: alexa_notify.js, configurar_voicemonkey.py. Requiere en el otro equipo: git pull + tener HOMEASSISTANT_TOKEN en .env." }, { "id": "2026-10-03-omniroute-3-8-48-3-8-51-fix-catalogo-live-antigravity", "fecha": "2026-10-03", "equipo": "portatil", "categoria": "omniroute", "titulo": "OmniRoute 3.8.48 -> 3.8.51: fix catalogo live antigravity", "transferible": true, "aplicado_en": [ "portatil" ], "detalle": "Actualizado omniroute a 3.8.51 (npm i -g omniroute@latest). Ahora valida contra el 'active live catalog' de Antigravity: los modelos deprecados (gemini-3.5-flash-*, gemini-2.5-*, claude-* en antigravity) devuelven HTTP 400 en vez de texto de deprecacion. Funcionan: gemini-3.1-pro-low/high, gemini-3.1-flash-lite, gemini-pro-agent, gpt-oss-120b-medium. Servidor relanzado via omniroute_watchdog.ps1 -Once." }, { "id": "2026-10-03-fix-acl-setup-ssh-server-ps1-sids-no-nombres-en-ingles", "fecha": "2026-10-03", "equipo": "sobremesa", "categoria": "scripts", "titulo": "Fix ACL setup_ssh_server.ps1 (SIDs, no nombres en ingles)", "transferible": false, "aplicado_en": [ "sobremesa" ], "detalle": "icacls fallaba en Windows es-ES al usar BUILTIN\\Administrators; ahora usa *S-1-5-18 y *S-1-5-32-544. Aplicado y verificado en sobremesa (sshd Automatic/Running, key portatil autorizada)." } ] }