Pular para o conteúdo

Instalar o COGO

O COGO é um container (ou um binário). As únicas duas coisas que importam: monte um volume em /vault para que suas notas sobrevivam às atualizações, e — em um servidor — defina um token.

Com o Docker Desktop instalado:

Terminal window
docker run -d --name cogo -p 127.0.0.1:8095:8080 \
-v cogo-vault:/vault -e COGO_ALLOW_INSECURE=1 \
ghcr.io/diegoparras/cogo

Abra http://localhost:8095. Pronto — você vê seu vault pintado por confiança, captura e edita notas, tudo pelo navegador.

  • -p 127.0.0.1:8095:8080 o publica apenas na sua máquina — ninguém na sua rede o vê.
  • -v cogo-vault:/vault guarda suas notas em um volume para que elas não sejam apagadas.
  • -e COGO_ALLOW_INSECURE=1 significa “eu sei que é local, não peça um token”. Só local.

Sem Docker — um único binário estático, sem runtime:

Terminal window
cogo serve -http 127.0.0.1:8080 -vault ./vault

O EasyPanel não se dá bem com docker-compose — não use o tipo “Compose”. Use o tipo App, que é mais simples e adiciona HTTPS sozinho.

  1. No seu projeto do EasyPanel, + Add Service → App, nomeie-o cogo.
  2. Source — ou GitHub (repo diegoparras/cogo, branch main, Build = Dockerfile; sempre funciona), ou Docker Image ghcr.io/diegoparras/cogo:latest (exige que o pacote seja público).
  3. Environment:
    COGO_MCP_TOKEN=SEU-TOKEN
    COOKIE_SECURE=1
    (COGO_VAULT=/vault já é o padrão.)
  4. Mounts → Add Mount — tipo Volume, nome cogo-vault, mount path /vault. Pule isso e cada atualização apaga suas notas.
  5. Domains → Add Domain — seu domínio, porta 8080 (a porta interna do COGO). O EasyPanel emite o certificado HTTPS sozinho. Health check path, se perguntarem: /healthz.
  6. Deploy, abra seu domínio e cole SEU-TOKEN quando o visualizador pedir.

Se o app quebrar ao iniciar, você esqueceu o COGO_MCP_TOKEN — o COGO se recusa, de propósito, a ficar na internet desprotegido.

O formato mais seguro (nível bancário): não exponha a porta de jeito nenhum — vincule-a ao loopback e alcance-a por um túnel.

Terminal window
# no VPS:
docker run -d --name cogo -p 127.0.0.1:8080:8080 \
-v cogo-vault:/vault -e COGO_MCP_TOKEN=SEU-TOKEN \
ghcr.io/diegoparras/cogo
# na sua máquina (túnel SSH):
ssh -N -L 8080:127.0.0.1:8080 user@your-vps

Abra http://localhost:8080. O detalhe do deployment endurecido (túnel/VPN, TLS via proxy, limites) está em docs/seguridad.md.

Local — o mais simples: sem rede, cada sessão inicia o seu próprio COGO. Em um .mcp.json:

{ "mcpServers": { "cogo": { "command": "cogo", "args": ["serve", "-vault", "./vault"] } } }

Remoto — via HTTP, com o seu token no header:

{
"mcpServers": {
"cogo": {
"type": "http",
"url": "https://your-domain/mcp",
"headers": { "Authorization": "Bearer YOUR-TOKEN" }
}
}
}

A partir daí, em qualquer sessão você pede pack "<tema>" e recebe contexto colorido, ou faz capture de um achado. O que o Claude aprende hoje, o Cursor lê amanhã: o mesmo vault.

  • EasyPanel: clique em Deploy (ou Rebuild) de novo. Suas notas permanecem, graças ao volume /vault.
  • Docker puro: docker pull ghcr.io/diegoparras/cogo e recrie o container com o mesmo -v cogo-vault:/vault.

O COGO funciona perfeitamente sem um modelo. Se você quiser que ele detecte contradições entre notas e afie o Guard, abra o visualizador → menu → Configurações · Modelo de IA e conecte um modelo local (Ollama) ou remoto (OpenRouter, DeepSeek). O gasto de tokens aparece no mesmo menu.

Ler a documentação