Ir al contenido

Instalar COGO

COGO es un contenedor (o un binario). Las únicas dos cosas que importan: monta un volumen en /vault para que tus notas sobrevivan a las actualizaciones, y — en un servidor — define un token.

Con Docker Desktop instalado:

Ventana de terminal
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

Abre http://localhost:8095. Listo — ves tu vault pintado por confianza, capturas y editas notas, todo desde el navegador.

  • -p 127.0.0.1:8095:8080 lo publica solo en tu máquina — nadie en tu red lo ve.
  • -v cogo-vault:/vault guarda tus notas en un volumen para que no se borren.
  • -e COGO_ALLOW_INSECURE=1 significa “sé que es local, no me pidas token”. Solo local.

Sin Docker — un único binario estático, sin runtime:

Ventana de terminal
cogo serve -http 127.0.0.1:8080 -vault ./vault

EasyPanel no se lleva bien con docker-compose — no uses el tipo “Compose”. Usa el tipo App, que es más simple y agrega HTTPS por su cuenta.

  1. En tu proyecto de EasyPanel, + Add Service → App, llámalo cogo.
  2. Source — o bien GitHub (repo diegoparras/cogo, rama main, Build = Dockerfile; siempre funciona), o Docker Image ghcr.io/diegoparras/cogo:latest (requiere que el paquete sea público).
  3. Environment:
    COGO_MCP_TOKEN=TU-TOKEN
    COOKIE_SECURE=1
    (COGO_VAULT=/vault ya es el valor por defecto.)
  4. Mounts → Add Mount — tipo Volume, nombre cogo-vault, ruta de montaje /vault. Si te lo saltas, cada actualización borra tus notas.
  5. Domains → Add Domain — tu dominio, puerto 8080 (el puerto interno de COGO). EasyPanel emite el certificado HTTPS por sí mismo. Ruta de health check, si la pide: /healthz.
  6. Deploy, abre tu dominio y pega TU-TOKEN cuando el visor te lo pida.

Si la app se cae al arrancar, olvidaste COGO_MCP_TOKEN — COGO se niega, a propósito, a quedarse en internet sin protección.

La forma más segura (grado bancario): no expongas el puerto en absoluto — átalo a loopback y alcánzalo a través de un túnel.

Ventana de terminal
# en el VPS:
docker run -d --name cogo -p 127.0.0.1:8080:8080 \
-v cogo-vault:/vault -e COGO_MCP_TOKEN=TU-TOKEN \
ghcr.io/diegoparras/cogo
# en tu máquina (túnel SSH):
ssh -N -L 8080:127.0.0.1:8080 usuario@tu-vps

Abre http://localhost:8080. El detalle del despliegue endurecido (túnel/VPN, TLS vía proxy, límites) está en docs/seguridad.md.

Local — lo más simple: sin red, cada sesión arranca su propio COGO. En un .mcp.json:

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

Remoto — por HTTP, con tu token en la cabecera:

{
"mcpServers": {
"cogo": {
"type": "http",
"url": "https://tu-dominio/mcp",
"headers": { "Authorization": "Bearer TU-TOKEN" }
}
}
}

Desde ahí, en cualquier sesión pides pack "<tema>" y obtienes contexto coloreado, o capturas un hallazgo con capture. Lo que Claude aprende hoy, Cursor lo lee mañana: el mismo vault.

  • EasyPanel: presiona Deploy (o Rebuild) de nuevo. Tus notas se quedan, gracias al volumen /vault.
  • Docker plano: docker pull ghcr.io/diegoparras/cogo y recrea el contenedor con el mismo -v cogo-vault:/vault.

COGO funciona perfectamente sin modelo. Si quieres que detecte contradicciones entre notas y afile el Guard, abre el visor → menú → Ajustes · Modelo de IA y conecta un modelo local (Ollama) o remoto (OpenRouter, DeepSeek). El gasto de tokens se muestra en el mismo menú.

Leer la documentación