Il server

Il server di Caliu è piccolo per scelta. Gran parte del lavoro lo fanno i tuoi dispositivi, quindi il server ha pochi compiti: conservare una copia delle tue note, passare le modifiche tra i tuoi dispositivi e rispondere agli strumenti che colleghi.

Costruito su Cloudflare Workers

Il server è scritto in TypeScript e gira su Cloudflare Workers. Invece di vivere su una sola macchina in un solo paese, il codice gira nei data center di Cloudflare in tutto il mondo, e ogni richiesta riceve risposta da quello più vicino a te. Non ci sono server da aggiornare e niente resta inattivo ad aspettare traffico.

Si appoggia ad alcuni mattoncini di Cloudflare, ognuno con un solo compito:

PezzoCosa fa per Caliu
D1Il database (SQLite) che contiene le tue note, i tag e il registro delle modifiche letto dalla sincronizzazione
R2L'archivio per le immagini e i file che alleghi
Durable ObjectsPiccoli aiutanti di lunga durata, come quello dedicato a ogni sessione di uno strumento AI
KVUn archivio chiave-valore veloce per dati di breve durata, come i controlli di accesso

Un'unica API per tutto

Le app, l'API pubblica e il server MCP per gli strumenti AI passano tutti dalla stessa API, con le stesse regole e gli stessi controlli dei permessi. Non esiste una porta sul retro riservata alle app. Se puoi fare qualcosa in Caliu, l'API la fa nello stesso modo, ed è anche per questo che la documentazione dell'API su caliuapp.com/docs descrive esattamente ciò che usano le app.

Gli strumenti AI che si collegano via MCP non vedono mai la tua password. Li approvi in una schermata di consenso, ognuno riceve una chiave propria e puoi revocarla in qualsiasi momento da App connesse.

Manutenzione ordinaria

Alcune attività pianificate tengono tutto in ordine:

  • Ogni ora vengono rimossi i tag che non hanno più nessuna nota.
  • Ogni notte le note rimaste nel cestino per 30 giorni vengono eliminate definitivamente, e i dispositivi non usati da 90 giorni vengono disconnessi.

Ognuna di queste modifiche viene scritta nel registro delle modifiche, così i tuoi dispositivi la scoprono alla sincronizzazione successiva.

Persino questo centro assistenza

Gli articoli che stai leggendo sono scritti come file Markdown, integrati nel server e inviati alle app, che ne tengono una copia perché l'assistenza funzioni anche offline.