JustJeff

AI nel Terminale: Guida Pratica

Per quelli, come me, che non ricordano mai come diavolo si usa tar, chmod, find.

half black and white half coloured steampunk robot with a pc

La Soffitta del Cervello

Sono sempre stato affascinato dagli investigatori, beh, non da sempre, c’è stato un inizio.

Quando ero piccolo i miei genitori lavoravano in un bar in centro città, dove passavo spesso le mie mattinate estive.
Uno dei miei compiti era andare in edicola per comprare i quotidiani nazionali per i clienti.

Ai tempi funzionava così. La gente leggeva il giornale.

Lo so, è impensabile pensare oggi ad un bambino che sgambetta solo in città per andare a comprare i giornali.
Ma questo è un altro discorso.

Data l’assenza di smartphone, schermi luminosi, doom scrolling, mi ritrovavo a frugare tra riviste patinate, fumetti colorati, quotidiani dalla carta dall’odore caratteristico.

In uno dei miei pellegrinaggi in edicola, l’edicolante, sapendo i miei gusti, mi consigliò la collana “Tutti i capolavori di Conan Doyle” di Fabbri Editore, dicendomi che mi sarei innamorato di un certo Sherlock Holmes.

Inutile dire che non sbagliò e ne divenni un avido lettore.

Ma perché ve lo sto raccontando?

Nella prima storia, Uno studio in rosso, espone la sua teoria sulla memoria attraverso la metafora della soffitta del cervello, dopo aver ammesso di non sapere che la Terra giri intorno al Sole:

…secondo me, il cervello d’un uomo, in origine, è come una soffitta vuota: la si deve riempire con mobilia a scelta. L’incauto v’immagazzina tutte le mercanzie che si trova tra i piedi: le nozioni che potrebbero essergli utili finiscono col non trovare più il loro posto o, nella migliore delle ipotesi, si mescolano e si confondono con una quantità d’altre cose, cosicché diventa molto difficile trovarle. Lo studioso accorto invece, seleziona accuratamente ciò che immagazzina nella soffitta del suo cervello. Mette solo gli strumenti che possono aiutarlo nel lavoro, ma di quelli tiene un vasto assortimento, e si sforza di sistemarli nel miglior ordine. È un errore illudersi che quella stanzetta abbia le pareti elastiche e possa ampliarsi a dismisura. Creda a me, viene sempre il momento in cui, per ogni nuova cognizione, se ne dimentica qualcuna appresa in passato. Per questo è molto importante evitare che un assortimento di fatti inutili possa togliere lo spazio di quelli utili.

La maggior parte delle persone che mi conoscono sanno che espongo spesso e volentieri questa teoria.

Quindi, per evitare di riempire la nostra soffitta di comandi unix e relative opzioni esoteriche, che nemmeno Rob ricorda1, implementiamo un modo rapido per farci aiutare da un LLM direttamente nel terminale, senza bisogno di alt-tabbare come dei pazzi.

Iniziamo

Rob screenshot Per procedere avremo bisogno di alcuni prerequisiti:

  • avere un API Key per l’utilizzo di Gemini / OpenAI / fAI tu;
  • dimenticarsi pedissequamente come si estrae un archivio .tar.gz

La soluzione si baserà su https://llm.datasette.io/, un tool CLI che permette di interagire con decine di LLM senza mai abbandonare il terminale.

Ci sono diversi modi per installarlo, a questo link li potete trovare, ma utilizzando uv come package manager Python ho preferito questa opzione:

Terminal window
uv tool install llm


Una volta installato, llm è lì, pronto.
Ora dobbiamo dargli un cervello, di qualcun altro.

Il cervello

llm supporta tantissimi modelli tramite dei plugin, anche modelli locali, nel caso non vogliate utilizzare servizi terzi.

Per questa guida useremo Gemini di Google che, dopo interminabili delusioni con le prime versioni, grazie al modello 2.5, si è riscattato.2

Per prima cosa è necessario installare il plugin specifico:

Terminal window
llm install llm-gemini

Ora dobbiamo dire a llm come autenticarsi con i servizi di Google. Serve una API Key.

  1. Vai su Google AI Studio.
  2. Accedi con il tuo account Google.
  3. Clicca su “Create API key”.
  4. Copia la chiave che viene generata.

Adesso, salviamo questa chiave in llm con questo semplice comando. Lui la cripterà e la salverà in modo sicuro.

Terminal window
llm keys set gemini

Ti verrà chiesto di inserire la API key generata precedentemente. Incolla e premi invio.

Ora puoi già interrogare l’AI.
Proviamo con il modello gemini-2.5-flash, che è veloce ed economico:

Terminal window
llm -m gemini-2.5-flash "Spiegami la soffitta del cervello di Sherlock Holmes in 50 parole"

Incrociando le dita, tutto dovrebbe funzionare.

llmsherlock screenshot

Come ultimo passo, impostiamo il nostro modello preferito come predefinito in modo da evitare di specificarlo ogni volta:

Terminal window
llm models default gemini-2.5-flash

La lobotomia

Ora abbiamo la possibilità di utilizzare Gemini direttamente da terminale, ma, come avrete visto/sperimentato/mifidodellautore, le risposte che riceviamo sono prolisse, non molto utili al nostro scopo: avere velocemente accesso ai comandi da utilizzare.

Noi vogliamo una risposta secca: il comando.

Per fare questo, usiamo una delle funzioni più potenti di llm: i template.
Creeremo un “system prompt”, cioè delle istruzioni di base che l’AI eseguirà sempre, per dirle di comportarsi come un esperto di terminale e non come un assistente virtuale.

Per farlo eseguiamo il seguente comando:

Terminal window
llm --system "Return commands suitable for copy/pasting into terminal on zsh macos.
Do NOT include commentary NOR Markdown triple-backtick code blocks as your whole response will be copied into my terminal automatically." --save howto

Ovviamente siete liberi di personalizzare il prompt a piacimento o creare altri template.

Ora ci basta utilizzare il template creato per ottenere i comandi dimenticati:

Terminal window
llm -t howto "comando per generare ssh key"

Il tocco finale

Potremmo aver finito ma, essendo io uno dei più rinomati pigri a livello europeo, non voglio certo scrivere llm -t howto "richiesta del caso" ogni volta. / Rischierei di dimenticare pure questo comando. / Per evitarlo creiamoci un bell’alias.

Apri il tuo file di configurazione della shell (~/.zshrc se usi Zsh, ~/.bashrc se usi Bash, ~/.vediunpotu) e aggiungi questa riga in fondo:

Terminal window
alias howto='llm -t howto'

Salva il file e ricarica la configurazione della shell oppure, semplicemente, riavvia il terminale.



La prova del nove. llmsherlock screenshot

Con qualche comando e buona volontà abbiamo integrato nel terminale l’utilizzo di un LLM per risparmiare tempo e pazienza evitando di cercare su Google, aprire client o webapp, alt-tabbare tra finestre differenti.

Abbiamo imparato anche una citazione interessante, utile per fare bella figura e giustificarvi nel caso abbiate il mio stesso problema: non ricordare la metà di un razzo.

Sipario!

Footnotes

  1. Povero Rob, avesse seguito questa guida…

  2. Anche il fatto di avere una subscription aziendale aiuta. WINK WINK