Installa COGO
COGO è un container (o un binario). Le uniche due cose che contano: monta un volume su
/vault perché le tue note sopravvivano agli aggiornamenti e — su un server — imposta un
token.
Sulla tua macchina (locale, 2 minuti)
Sezione intitolata “Sulla tua macchina (locale, 2 minuti)”Con Docker Desktop installato:
docker run -d --name cogo -p 127.0.0.1:8095:8080 \ -v cogo-vault:/vault -e COGO_ALLOW_INSECURE=1 \ ghcr.io/diegoparras/cogoApri http://localhost:8095. Fatto — vedi il tuo vault dipinto per confidenza, catturi e modifichi note, tutto dal browser.
-p 127.0.0.1:8095:8080lo pubblica solo sulla tua macchina — nessuno sulla tua rete lo vede.-v cogo-vault:/vaultconserva le tue note in un volume così non vengono cancellate.-e COGO_ALLOW_INSECURE=1significa “so che è locale, non chiedermi un token”. Solo in locale.
Senza Docker — un singolo binario statico, nessun runtime:
cogo serve -http 127.0.0.1:8080 -vault ./vaultSu un server con EasyPanel (consigliato)
Sezione intitolata “Su un server con EasyPanel (consigliato)”EasyPanel non va d’accordo con docker-compose — non usare il tipo “Compose”. Usa il tipo App, che è più semplice e aggiunge HTTPS da solo.
- Nel tuo progetto EasyPanel, + Add Service → App, chiamalo
cogo. - Source — o GitHub (repo
diegoparras/cogo, branchmain, Build = Dockerfile; funziona sempre), oppure Docker Imageghcr.io/diegoparras/cogo:latest(richiede che il pacchetto sia pubblico). - Environment:
(COGO_MCP_TOKEN=IL-TUO-TOKENCOOKIE_SECURE=1
COGO_VAULT=/vaultè già il valore predefinito.) - Mounts → Add Mount — tipo Volume, nome
cogo-vault, percorso di mount/vault. Saltalo e ogni aggiornamento cancella le tue note. - Domains → Add Domain — il tuo dominio, porta
8080(la porta interna di COGO). EasyPanel emette da solo il certificato HTTPS. Percorso di health check, se richiesto:/healthz. - Deploy, apri il tuo dominio e incolla IL-TUO-TOKEN quando il visualizzatore te lo chiede.
Se l’app va in crash all’avvio, hai dimenticato COGO_MCP_TOKEN — COGO si rifiuta, di
proposito, di stare su internet senza protezione.
Su un VPS a mano
Sezione intitolata “Su un VPS a mano”La forma più sicura (livello banca): non esporre affatto la porta — legala al loopback e raggiungila attraverso un tunnel.
# sul VPS:docker run -d --name cogo -p 127.0.0.1:8080:8080 \ -v cogo-vault:/vault -e COGO_MCP_TOKEN=IL-TUO-TOKEN \ ghcr.io/diegoparras/cogo
# sulla tua macchina (tunnel SSH):ssh -N -L 8080:127.0.0.1:8080 utente@il-tuo-vpsApri http://localhost:8080. Il dettaglio del deployment indurito (tunnel/VPN, TLS via proxy,
limiti) è in docs/seguridad.md.
Collega Claude Code (MCP)
Sezione intitolata “Collega Claude Code (MCP)”Locale — il più semplice: niente rete, ogni sessione avvia il proprio COGO. In un .mcp.json:
{ "mcpServers": { "cogo": { "command": "cogo", "args": ["serve", "-vault", "./vault"] } } }Remoto — via HTTP, con il tuo token nell’header:
{ "mcpServers": { "cogo": { "type": "http", "url": "https://tuo-dominio/mcp", "headers": { "Authorization": "Bearer IL-TUO-TOKEN" } } }}Da lì, in qualsiasi sessione chiedi pack "<argomento>" e ottieni contesto colorato, oppure
fai capture di una scoperta. Ciò che Claude impara oggi, Cursor lo legge domani: lo stesso
vault.
Aggiornare
Sezione intitolata “Aggiornare”- EasyPanel: premi di nuovo Deploy (o Rebuild). Le tue note restano, grazie al
volume
/vault. - Docker semplice:
docker pull ghcr.io/diegoparras/cogoe ricrea il container con lo stesso-v cogo-vault:/vault.
Opzionale: un modello IA
Sezione intitolata “Opzionale: un modello IA”COGO funziona perfettamente senza un modello. Se vuoi che rilevi le contraddizioni tra le note e affini il Guard, apri il visualizzatore → menu → Impostazioni · Modello IA e collega un modello locale (Ollama) o remoto (OpenRouter, DeepSeek). La spesa in token si vede nello stesso menu.
Leggi la documentazione