Ad aprile 2026, Andrej Karpathy ha pubblicato un GitHub gist. Non codice. Non una libreria. Un documento markdown che descrive un pattern: una cartella di pagine wiki mantenute da un LLM, che si arricchisce sessione dopo sessione e batte RAG. Già in apertura ti dice esattamente che tipo di artefatto è:
“This is an idea file, it is designed to be copy pasted to your own LLM Agent (e.g. OpenAI Codex, Claude Code, OpenCode / Pi, or etc.). Its goal is to communicate the high level idea, but your agent will build out the specifics in collaboration with you.”
In poche settimane: tutorial, fork v2, articoli “beyond RAG”, decine di implementazioni open source. La gente sta eseguendo questo software. L’artefatto è prosa. Niente npm install, niente versione, niente test suite. Leggi il gist, istruisci il tuo agente, l’agente ti costruisce un wiki.
Lo sto usando anche io. Anche tu, probabilmente, se hai mai modificato un CLAUDE.md.
Quello è un binario.
La riformulazione
Il codice è quello che scrivi. Un binario è quello che spedisci: la cosa che gli utenti effettivamente eseguono. Il software, fino a poco tempo fa, veniva distribuito come artefatto compilato con contratti precisi: signature di funzione, exit code, semver, build riproducibili. Una classe sempre più ampia di software ora viene distribuita come testo destinato a essere interpretato dall’LLM di qualcun altro a runtime. Niente tipi. Niente versione bloccata (quale modello? quale context window? quale umore?). Niente test nel senso classico. Solo parole e fiducia.
Il testo viene spedito. Il testo viene eseguito. Il testo è il binario.
Anche l’installazione è testo
Per decenni la sezione “installazione” di un README era una di due cose: un comando shell o un file di configurazione. npm install foo. curl … | bash. docker pull. Un’istruzione deterministica che l’umano (o la CI) esegue alla lettera.
Ora guarda l’installazione di awesome-agent-skills, una directory di skill per Claude, Codex e Copilot di aprile 2026:
“Claude Code:
/skills add <github-url>. Claude.ai: paste the raw SKILL.md URL in a new conversation. […] That’s it. No installation. No configuration. No coding required.”
Rileggi. Il comando di installazione è una frase in inglese: “paste the raw SKILL.md URL in a new conversation”. Non c’è uno script. Non c’è un pacchetto. C’è un file markdown a un URL, e un paragrafo che ti dice di passare l’URL al tuo agente, che poi legge il markdown e capisce il resto. L’istruzione di installazione è prosa; ciò a cui punta è prosa; ciò che la prosa configura è il comportamento dell’agente a runtime. È prosa fino in fondo.
Il gist di Karpathy ha la stessa forma: “copy paste this to your own LLM Agent” è il comando di installazione. Lo è ogni CLAUDE.md e ogni AGENTS.md, ormai uno standard della Linux Foundation adottato da oltre 60.000 progetti1: configurazione di progetto distribuita come prosa, senza installer richiesto. GitHub ha addirittura rilasciato gh skill install2 ad aprile 2026, un comando CLI di prima classe per installare file markdown.
Non è una moda passeggera. È uno spostamento ingegneristico reale, con motivi precisi:
- Modificabilità. Cambi un paragrafo, hai una v2.
- Evoluzione del modello. La stessa prosa diventa più precisa man mano che l’agente migliora.
- Personalizzazione a runtime. Non ti piace qualcosa del gist di Karpathy? Aggiungi una riga al tuo prompt. Esigenza specifica del tuo team? Diglielo all’agente. Ogni lettore della stessa prosa ottiene la propria build, modellata da quello che dice dopo. Nessun binario può farlo.
Il formato è markdown
Nota come tutto nella sezione precedente è markdown. Il gist di Karpathy, AGENTS.md, SKILL.md, il post che stai leggendo. Non è un caso: sta diventando il substrato.
A febbraio 2026, Cloudflare ha rilasciato Markdown for Agents:
“Markdown has quickly become the lingua franca for agents and AI systems as a whole.”
Qualsiasi sito dietro Cloudflare ora può servire una versione markdown di sé stesso quando la richiesta include Accept: text/markdown. Claude Code e OpenCode inviano già quell’header. Misurazione di Cloudflare stessa: un post di blog costa 16.180 token in HTML, 3.150 in markdown. Una riduzione dell’80%. Il web sta iniziando a tradursi da solo.
Se il testo è il nuovo binario, markdown è il suo instruction set.
Quando l’app è il file
L’escalation continua. Se l’installazione è prosa e il formato è markdown, interi prodotti iniziano a collassare in un file markdown.
Nel 2015, “tieni traccia di quello che mangio oggi” richiedeva che qualcuno ti costruisse un’app: uno sviluppatore, una designer, un backend, un listing sull’App Store. Mesi di lavoro, migliaia di euro. Nel 2026 è una frase detta a un agente. Niente download, niente onboarding, niente app.
Karpathy descrive questa traiettoria come Software 3.03: codice (1.0) → pesi appresi (2.0) → prompt (3.0). Il lavoro one-shot non ha nemmeno bisogno di un artefatto: dici cosa vuoi e l’agente lo fa. Il lavoro ricorrente ottiene un file markdown così non devi rispiegarti ogni volta. Solo il resto vuole ancora codice. Si stanno già distribuendo “skill graphs”: cartelle di markdown interconnessi che insegnano a un LLM come ragionare su un dominio, vendute non come SaaS ma come una cartella che possiedi. “Apps gave phones superpowers; skills give AI agents expertise.”4
Questo non sostituirà ogni app. Sostituirà la coda lunga il cui unico vero valore era codificare un workflow. La personalizzazione allunga la coda ancora di più: quando generare una versione su misura per un singolo utente costa poco, il mercato del SaaS one-size-fits-all si restringe5. Quella coda è enorme.
Il paradosso individuato da Karpathy
Ecco l’ironia nascosta nel gist stesso di Karpathy. L’intera tesi dell’LLM Wiki è una critica al modo in cui i sistemi RAG di oggi gestiscono la conoscenza:
“the LLM is rediscovering knowledge from scratch on every question. There’s no accumulation. […] The knowledge is compiled once and then kept current, not re-derived on every query.”
Ma “testo come binario” è strutturalmente identico a RAG. L’agente reinterpreta la stessa prosa ogni volta: ogni CLAUDE.md caricato in una nuova sessione, ogni SKILL.md fatto matchare con un prompt e letto nel contesto. La stessa critica che spinge Karpathy oltre RAG ci spingerà prima o poi oltre il testo-come-binario, per i carichi di lavoro in cui la ri-derivazione è troppo costosa: alta frequenza, basso margine, regolamentati, sottoposti ad audit.
È questa la vera forma dei prossimi anni. Siamo in una fase esuberante. Il testo-come-binario sta entrando in posti dai quali dovrà poi ritirarsi. Prova a fare debug di un agente che ha deciso di saltare un passaggio nel tuo workflow, o a fare audit di un rimborso emesso perché un CLAUDE.md diceva “sii utile”. Allo stesso tempo il binario deterministico siede ancora in posti che dovrà cedere: ogni workflow simile all’80% a uno che già supporti, ma non esattamente.
La discussione è rumorosa perché l’equilibrio non è ancora arrivato. Entrambi gli approcci sono sopravvalutati e poco specificati al confine. È una condizione temporanea.
Dove cade la linea
Un’euristica:
- Il testo vince quando la superficie è infinita e la correttezza è sfumata.
- Il codice vince quando il contratto deve essere auditabile, il conto è reale, oppure la ri-derivazione è troppo costosa.
La maggior parte dei sistemi in produzione avrà bisogno di entrambi: testo ai bordi (interpretazione, dispatch), codice al centro (esecuzione, denaro, sicurezza). L’ingegneria interessante dei prossimi cinque anni non sta nello scegliere una parte. Sta nel trovare dove cade la linea per il tuo problema specifico.
Questo blog è un esempio concreto. Stai leggendo prosa: un file markdown in una cartella src/content/blog/, compilato in HTML da Astro al momento della build. Testo al bordo (la scrittura), codice deterministico al centro (la pipeline di build). Nessun LLM mediatore a runtime. La linea cade lì. Per il mio CLAUDE.md, cade in un altro posto. Per il gist di Karpathy, in un altro ancora.
Karpathy stesso lo ammette nella chiusura del gist:
“The document’s only job is to communicate the pattern. Your LLM can figure out the rest.”
Quella frase fa due cose insieme. È la confessione che l’artefatto ha dei limiti. Ed è una scommessa: che, per questo carico di lavoro, i limiti valgano la leva. Possono essere vere entrambe. È lì che la linea si stabilizzerà alla fine, non sul testo o sul codice, ma su quale dei due porta una leva che vale i suoi limiti, per il problema che hai davanti.
Footnotes
-
AGENTS.md, originariamente reso popolare dal Codex CLI di OpenAI, è stato donato all’Agentic AI Foundation della Linux Foundation a dicembre 2025 come uno dei tre progetti fondativi (insieme al Model Context Protocol di Anthropic e a goose di Block). Adottato da oltre 60.000 progetti open source e framework per agenti. ↩
-
Changelog di
gh skill installsu GitHub, 16 aprile 2026. ↩ -
Andrej Karpathy, “Software 3.0”, keynote alla YC AI Startup School, 2025. Trascrizione e discussione su Latent Space. ↩
-
Da “AI Skills Are the New Apps”, OpenClaw, 2026. ↩
-
Gli ETF software sono scesi di circa il 30% all’inizio del 2026, con Salesforce, Adobe e ServiceNow in calo del 25-30% ciascuno. Gli analisti la chiamano “AI eating software”. Vedi la copertura di Fortune del “SaaSpocalypse” e “Notes on AI Apps in 2026” di a16z. ↩