ai-memory es brillante en un laptop y
torpe en un clúster. AI Memory Ops cierra esa brecha: empaqueta el engine para
ejecutarse en Kubernetes tal como lo pondrías de verdad en producción — detrás de
OIDC, con el tráfico de máquinas y de personas separado con claridad, un ETL
git→wiki programado alimentándolo y una web UI personalizada ya integrada. Un
helm upgrade y tienes una memoria compartida y autenticada para todo el equipo.
El problema que resuelve
De fábrica, ai-memory no tiene opinión sobre quién puede alcanzarlo, cómo se manejan los secretos o cómo entra el conocimiento. Ejecútalo tal cual en un clúster y acabarás improvisando ingress, auth e higiene de credenciales a mano. AI Memory Ops toma esas decisiones por ti y las codifica como un chart: los agentes se autentican con JWTs OIDC, los navegadores reciben un login interactivo, el token real del engine nunca sale del clúster y los secretos reales nunca tocan el repositorio.
Arquitectura
flowchart LR client([Client]) --> ingress[Traefik ingress] ingress -->|/web| oauth[oauth2-proxy] ingress -->|/mcp| auth["mcp-auth · JWT validate, inject bearer"] oauth --> engine["ai-memory · engine + SPA"] auth --> engine repos[(Source repos)] -->|git ETL · CronJob| engine
Dos puertas hacia un único engine. /mcp es para máquinas: el sidecar mcp-auth
valida el JWT OIDC de quien llama en el borde y lo cambia por el
AI_MEMORY_AUTH_TOKEN estático del engine, que nunca sale del pod. /web es para
personas: oauth2-proxy se encarga del login OIDC interactivo. Ambos llegan al
mismo engine de ai-memory, que además sirve la SPA integrada.
Qué incluye
- Helm chart (
charts/ai-memory-svc) — despliega el engine más un sidecar de auth, un CronJob de ETL, un oauth2-proxy opcional y un ingress Traefik. images/ai-memory— construye la imagen del engine y puede integrar una SPA de web UI personalizada vía--web-ui-dir.images/mcp-auth— un pequeño sidecar en Go que valida JWTs Keycloak/OIDC en el borde (TraefikforwardAuth) e inyecta el bearer token de upstream para/mcpy/hook.images/etl— un ETL git→wiki que clona repositorios de origen y los ingiere en ai-memory como páginas de wiki, ejecutado como CronJob.images/mcp-write— un proxy de escritura MCP opcional para escrituras duraderas de páginas.deploy/rbac-deployer.yaml— unRole/RoleBindingacotado para que una service account de CI ejecutehelm upgradesin necesitar cluster-admin.
Los secretos quedan fuera de git
El chart nunca plantilla secretos reales: secrets.create: false es el valor
por defecto, así que los creas fuera del repositorio. Los overrides de entorno
(values-*.yaml) están en gitignore, y una configuración .gitleaks.toml más un
hook de pre-commit evitan que las credenciales lleguen al repositorio. El mínimo
privilegio llega hasta el CI, que despliega con un role acotado en vez de
cluster-admin.
Stack
Go, Helm, Docker, Shell y Python. El frontend de referencia que puede integrar es AI Memory UI.
Disponibilidad
- Código: github.com/djalmajr/ai-memory-ops
- Relacionado: AI Memory UI — el frontend de referencia
Source-available; el engine de ai-memory está licenciado por el proyecto original.