Pular para o conteúdo
Djalma Jr.
Portfólio

AI Memory Ops

Self-hosting de produção do ai-memory em Kubernetes — um Helm chart e imagens de container que rodam o engine atrás de OIDC, com ETL git→wiki e uma web UI embutida.

Ver projeto →

O ai-memory é genial no laptop e desajeitado no cluster. O AI Memory Ops fecha essa lacuna: empacota o engine para rodar em Kubernetes do jeito que você de fato colocaria em produção — atrás de OIDC, com o tráfego de máquinas e de pessoas separado de forma limpa, um ETL git→wiki agendado o alimentando e uma web UI customizada já embutida. Um helm upgrade e você tem uma memória compartilhada e autenticada para o time inteiro.

O problema que resolve

Por padrão, o ai-memory não tem opinião sobre quem pode acessá-lo, como os segredos são tratados ou como o conhecimento entra. Rode-o como está em um cluster e você acaba improvisando ingress, auth e higiene de credenciais na mão. O AI Memory Ops toma essas decisões por você e as codifica em um chart: agentes se autenticam com JWTs OIDC, navegadores recebem um login interativo, o token real do engine nunca sai do cluster e segredos reais nunca encostam no repositório.

Arquitetura

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

Duas portas para um único engine. O /mcp é para máquinas: o sidecar mcp-auth valida o JWT OIDC do chamador na borda e o troca pelo AI_MEMORY_AUTH_TOKEN estático do engine, que nunca sai do pod. O /web é para pessoas: o oauth2-proxy cuida do login OIDC interativo. Ambos chegam ao mesmo engine do ai-memory, que também serve a SPA embutida.

O que tem dentro

Segredos ficam fora do git

O chart nunca templa segredos reais: secrets.create: false é o padrão, então você os cria fora do repositório. Os overrides de ambiente (values-*.yaml) são gitignored, e uma configuração .gitleaks.toml mais um hook de pre-commit impedem que credenciais cheguem ao repositório. O menor privilégio segue até o CI, que faz o deploy com um role escopado em vez de cluster-admin.

Stack

Go, Helm, Docker, Shell e Python. O frontend de referência que ele pode embutir é o AI Memory UI.

Disponibilidade

Source-available; o engine do ai-memory é licenciado pelo projeto original.