En esta página
Día 3 - Repos Git, dominios km0digital.com y bucle autoagents
Repositorio Git de OpenCloud, migración a km0digital.com, FAQ multidioma, navegación móvil, switchLocaleHref y bucle autoagents en ambos repos.
Introducción
El día 3 (ventana operativa del 26 al 27 de mayo de 2026, ~12 h en el VPS Debian) consolida dos frentes que conviven en el mismo host: OpenCloud pasa a tener un repositorio Git propio con despliegue versionado y plan de corte a cloud.km0digital.com, y la web corporativa migra de km0.amvara.de a km0digital.com con mejoras de producto.
En ambos repos se introduce el mismo bucle autoagents (GitHub Issues → tareas → cursor-agent) y, en OpenCloud, notas de cierre automáticas en Redmine al archivar tareas.
Resumen
Hitos del día
- OpenCloud: primer commit Git de activos KM0 (
km0-opencloud); alineación de plantillas acloud.km0digital.com; Collabora Online vía WOPI; bucle autoagents;redmine_sync.pyal archivarCLOSED-*. - Web corporativa: migración a km0digital.com; slugs de blog
day-*; FAQ multidioma; pie con semver; modal email «próximamente»; menú hamburguesa móvil;switchLocaleHref; versión 1.1.4. - Compartido: reglas Cursor,
autoagents/SKILL.md,scripts/git-sync-main.sh,docs/agent-loop.md.
Arquitectura
Coexistencia en un solo host
Internet :443
├── km0digital.com → nginx km0 → 127.0.0.1:9180 (km0-web Docker)
└── cloud.km0digital.com → nginx opencloud → 127.0.0.1:9200 (OpenCloud external-proxy)
└── /dex/* → 127.0.0.1:5556 (Dex OIDC)- Marketing: km0digital.com,
/opt/km0-web. - OpenCloud: cloud.km0digital.com,
/opt/opencloud. - Legado:
km0.amvara.de→ redirección 301 al apex.
OpenCloud
Repositorio Git (km0-opencloud)
Commit inicial (f454889, 26-may 21:13 CEST) en git@github.com:AMVARA-CONSULTING/km0-opencloud.git, rama main. Quedó versionado (63 ficheros), entre otros:
overrides/opencloud-compose/- CSP, overlay external-proxy, parche OIDC.dex/- compose Dex, tema KM0, plantillas de login.nginx/- plantilla vhost paracloud.km0digital.com.host-www/opencloud-auth/- login híbrido (login.html, JSON de auth).scripts/- backups,apply-opencloud-compose-overrides.sh.docs/- runbook, resumen Redmine.
opencloud-compose/, .env vivos, secretos OAuth, volúmenes Docker y /etc/letsencrypt/.OpenCloud
Migración de dominio y autoagents
Commit 0b27952 (27-may 00:06 CEST): alineación de OC_DOMAIN, emisor Dex, server_name nginx y plantillas a cloud.km0digital.com. Nuevo script scripts/issue-cloud-km0digital-cert.sh (comprobación DNS + Certbot webroot).
Se añade el bucle autoagents (versión 1.0.2): orquestador autoagents-loop.sh, agentes coder/tester/closer/committer, gh_issue_sync.py y move-agent-task-to-done.sh. Commit 7203b6f (00:37 CEST): redmine_sync.py publica en Redmine un resumen Textile al archivar tareas CLOSED-*.
OpenCloud
Collabora Online (WOPI)
El día 2 mantuvo el stack solo con core; durante el día 3 se conectó Collabora Online a OpenCloud mediante WOPI para abrir y editar documentos Office en el navegador en cloud.km0digital.com.
- Edición en navegador: gracias a Collabora, los usuarios pueden editar ficheros Office como
XLSX,PPTyDOCXsin aplicaciones de escritorio. - Coedición simultánea: varios usuarios pueden trabajar en el mismo documento a la vez; los cambios se sincronizan en tiempo real a través del puente WOPI.
- Stack: contenedor Collabora en la red Compose de OpenCloud; descubrimiento WOPI y actualizaciones CSP en el overlay external-proxy; Nginx enruta el editor bajo el vhost cloud.
Web corporativa
Contenido, hostname y producto
- Slugs de blog:
dia-*→day-*en todos los locales (src/content/doc/{ca,de,en,es}/). - Migración hostname (
bdc9e2c, 23:42 CEST): URLs principaleshttps://km0digital.com(ES en/),/ca/,/en/,/de/, blog en/doc/; redirección 301 desdekm0.amvara.de. - FAQ (
23ec0bf): sección multidioma con ancla#faq; pie con semver desdepackage.json; modal «próximamente» para el servicio de email. - Navegación (
e5cfa57, 1.1.3): menú hamburguesa enHeader.astro;switchLocaleHref/stripLocalePrefixensrc/i18n/paths.tspara cambiar idioma sin perder entrada de blog ni hash. - Documentación (
67b62cc, 1.1.4): README simplificado; tarea de humoCLOSED-4validó el pipeline (loopback + producción HTTP 200).
Autoagents
Tareas cerradas (km0-web)
- FAQ (GitHub #1): sección FAQ, 4 locales.
- Idioma (GitHub #2):
switchLocaleHref. - Menú móvil (GitHub #3): navegación hamburguesa.
- Humo (test): bucle autoagents - PASS en :9180 y producción.
Progresión de versión del sitio: baseline Astro 5 en :9180 → 1.1.3 (FAQ, pie semver, modal, nav móvil, locale) → 1.1.4 (README/docs).
Verificación
Comprobaciones de referencia
cd /opt/km0-web docker compose build && docker compose up -d curl -sI https://km0digital.com/ curl -sI http://127.0.0.1:9180/en/doc/day-0/cd /opt/opencloud docker compose -f opencloud-compose/docker-compose.yml ps curl -sI https://cloud.km0digital.com/login.html
.env, claves Redmine/GitHub, OAuth) no forman parte de esta entrada; viven solo en el servidor y en la documentación operativa privada del equipo.Siguiente paso
Día 4
El día 4 sustituye el almacén estático de contraseñas de Dex por un conector LDAP contra el IDM de OpenCloud, de modo que cualquier usuario del directorio pueda iniciar sesión con las mismas credenciales que en Ajustes. Mientras tanto, explora los servicios o el relato del día 4.