ls -la ~/lab
Lab
Un diario, non un portfolio lucidato. Per ogni progetto: l'idea, come funziona davvero, e com'è andata — comprese le decisioni sbagliate. # 21 vivi + 3 esplorazioni
Relation F1 a 0.38: quando la lezione non era il modello, ma i dati
Diario tecnico di un fine-tuning: LoRA su un modello da 27B per estrarre knowledge graph da documenti disordinati. La svolta non è stata un modello più grande, ma ri-annotare i dati.
Sei LLM su un canale IRC privato, e l'unico op è un umano
Diario tecnico: più LLM eterogenei, ognuno su una postazione isolata, coordinati su un canale IRC privato. Il coordinamento non è nel prompt, è in IRC: modi di canale, ChanServ e branch protection come enforcement fuori dal modello.
foldcrumbs: memoria per agenti con grep, non con un vector DB
Diario tecnico di foldcrumbs: memoria persistente per agenti di coding basata su grep invece che su un vector DB. Zero dipendenze, un MCP server stdlib, e un indice deterministico che cavalca la prompt cache.
22 minuti per un sito WordPress, due giorni per non farlo sembrare brutto
Diario tecnico di un'agenzia web a 9 agenti Claude: dal brief al sito Divi 5 live in ~22 minuti su k8s bare-metal. La lezione: automatizzare la plumbing è facile, non farla sembrare brutta no.
Il dipartimento IT che litiga da solo: tre strati e un umano nel loop
Un dipartimento IT fatto di agenti AI — NOC, SOC, SRE, Architecture Board — che osservano un cluster k8s, si confutano a vicenda e preparano decisioni per un umano. Architettura a tre strati, gotcha onesti.
2194 affermazioni, tutte ferme a 0.30: insegnare a un grafo cosa conta
Ho costruito una pipeline multi-agente che monitora YouTube, Discord e RSS e sputa un digest italiano su WhatsApp. Funzionava tutto tranne la cosa che contava: il grafo non imparava mai cosa fosse importante.
L'avatar che parla prima di muovere le labbra
Diario di un avatar AI conversazionale in tempo reale: STT, LLM, TTS e lip-sync su GPU. La decisione dura è stata sganciare l'audio dal video.
Il consiglio dell'AI non conta: conta il guardrail che lo boccia
Come ho portato un piccolo cluster mail da DMARC p=none a enforcement reale senza bruciare la posta legittima: readiness score, rollout a onde e un advisor LLM che ho progettato per non contare.
Il 59%: perché ho smesso di lasciar fare tutto all'LLM
Diario di uno scaffold multi-agente su Agno: tre strati direttiva/orchestrazione/esecuzione, SOP in linguaggio naturale sopra, Python deterministico sotto. Perché e cosa ho imparato.
Il Wait che non tornava mai: perché ho buttato n8n per una griglia 3×3
Da un workflow n8n con polling infiniti a un sistema multi-agente per produrre reel: il grid method 3×3 per la consistenza dei personaggi, e i timeout che mancavano.
Un carattere sbagliato ha allagato la betulla: diario di un'irrigazione autonoma
Diario tecnico di un'irrigazione autonoma: modello agronomico FAO-56, un agente AI che rivede il piano ogni notte, e un protocollo proprietario decodificato da 246 flussi di rete.
Kochab: costruire fiducia in codice — la stella che non cancella mai
Diario tecnico di Kochab: agente outbound-only in Go, audit di sicurezza mappato CIS/NIST, task firmati Ed25519 e una regola — non cancella mai — garantita in quattro modi indipendenti.
Pragma, due volte: ho buttato sei agenti e due database, e ci ho guadagnato una feature che pesa 1
Ho ricostruito da zero un assistente di project management via WhatsApp per la PA: da sei agenti e tre database a uno solo. Diario su quale complessità si è guadagnata il posto.
NPMShield: ho disegnato un impero da 7 database, un agente me l'ha raso al suolo
Come ho sketchato in Claude Code una piattaforma anti-malware per npm — sandbox, AI, 7 database — e come una revisione avversariale l'ha ridotta a una CLI e una GitHub App.
Openbricks: quando il piano di governance è crollato al contatto con la realtà
Diario tecnico di Openbricks: un lakehouse open-source su OpenShift bare-metal via GitOps. Il piano 'Ranger unifica Trino e Spark' è crollato — ecco come l'identità Keycloak è diventata la spina dorsale.
Stavo per comprare una GPU. Ho prezzato tutto il mercato del noleggio e ho cambiato idea.
Diario tecnico: ho prezzato l'intero mercato delle GPU cloud (RunPod, Vast.ai, Lambda, Modal) per capire quando affittare batte comprare. Il prezzo headline mente: conta il metro di consumo.
Lo spam che passava DMARC: quando autenticare non vuol dire fidarsi
Ho migrato da zero un mail server self-hosted con Postfix, Dovecot e Rspamd. La lezione più dura non era TLS o DKIM: era una whitelist che dava -7 a chiunque passasse DMARC.
Un rename silenzioso, metà delle app a 404: RunPod fatto in casa su due H200
Ho ricostruito l'esperienza RunPod + Weights & Biases per un piccolo team su due H200, sopra Slurm. Poi un rename di modelli ha rotto tutto in silenzio.
Spectra: 29 agenti che litigano, e i cancelli Python che non si aggirano a parole
Diario tecnico di Spectra: 29 agenti di sicurezza AI orchestrati con architettura step-file, un War Room adversarial e cancelli Python deterministici che l'LLM non può aggirare.
Il bot ha giudicato sé stesso contro il mio staff per tre mesi. Non ha mai parlato con un ospite.
Ho costruito un tribunale a 3 agenti LLM per far competere un concierge WhatsApp contro lo staff vero. Ha misurato per tre mesi senza mai andare live. Poi ho buttato tutto e ricostruito da zero.
Ho congelato una wiki intera in un bundle Docker — e un URL dentro SQLite ha quasi rovinato tutto
Come ho reso portabile un'intera knowledge base OpenWebUI: bundle self-contained, vettori pre-calcolati, tool server OpenAPI e il port-pinning che tiene in piedi tutto.
## esplorazioni
# progetti di altri che ho studiato o a cui ho contribuito256 esperti, 512 righe: ho infilato un modello da 744B in un motore scritto per un altro
Esplorando DwarfStar, il motore C di inferenza per DeepSeek V4, ho fatto girare GLM-5.2 (744B) su 2× H200 — e ho scoperto quante costanti erano cablate sulla forma di un solo modello.
LLM Wiki: quando un prompt di una pagina diventa un'app da centomila righe
Esplorazione di nashsu/llm_wiki: come un pattern astratto di Karpathy per wiki mantenute da LLM diventa un'app desktop Tauri da 86 moduli, tra grafi, ingest a due passi e parser difensivi.
MiroFish: ho dato 80 capitoli a mille agenti per vedere come finivano il romanzo
Esplorazione di MiroFish, motore open-source di swarm intelligence: mille agenti che twittano il futuro. Come funziona il loop OASIS + GraphRAG + Zep, e cosa serve per farlo girare in casa.