Nella lezione precedente abbiamo mosso i primi passi nel mondo di Cursor, esplorando le sue funzionalità fondamentali, le opzioni di installazione, i piani tariffari e una panoramica del suo funzionamento tramite il "Quick Start". Ora che abbiamo installato l'ambiente e familiarizzato con l'interfaccia, è arrivato il momento di affrontare uno degli aspetti più rivoluzionari di Cursor: la collaborazione con l'intelligenza artificiale integrata.
Lavorare fianco a fianco con l'AI
Siamo abituati a vedere l'AI come uno strumento da interrogare di tanto in tanto, un assistente che ci offre suggerimenti quando glieli chiediamo esplicitamente. Cursor, invece, cambia paradigma: qui, l'intelligenza artificiale è presente e attiva direttamente all'interno del nostro flusso di lavoro.
Non si tratta solo di autocompletamento evoluto (che affronteremo più avanti): qui parliamo di una collaborazione continua, quasi simbiotica, in cui possiamo chiedere chiarimenti, suggerimenti, refactoring, spiegazioni, traduzioni, test e molto altro. Il tutto direttamente all'interno del nostro editor.
Chattare con l'IA con Cursor
All'interno di Cursor troviamo una chat AI laterale, molto simile a un'interfaccia di messaggistica, ma con funzionalità straordinarie. Questa chat è contestuale, il che significa che può accedere direttamente ai file con cui stiamo lavorando, conoscere la struttura del nostro progetto, e reagire in modo intelligente alle nostre richieste.
Per sfruttare appieno le funzionalità dell'AI, è utile partire con un progetto aperto. Possiamo crearne uno nuovo in pochi passaggi:
- Apriamo Cursor.
- Dalla schermata iniziale clicchiamo su "Open Folder" e selezioniamo o creiamo una nuova cartella vuota.
- Una volta aperta la cartella, facciamo clic con il tasto destro nel file explorer laterale e scegliamo "New Text File".
- Salviamo il file con nome
main.py
(o un altro nome con estensione.py
). - Appena creiamo un file
.py
, Cursor capisce che si tratta di un progetto Python e attiva automaticamente il supporto linguistico e l'intelligenza contestuale.
Nel nuovo file main.py
, possiamo iniziare scrivendo qualcosa di semplice, come:
def hello():
print("Hello, Cursor!")
Da questo momento in poi possiamo iniziare a usare la Chat AI e la modalità "Chiedi" per interagire con il nostro codice. Per aprire la chat, ci basta cliccare sull'icona della chat nella barra laterale sinistra, oppure usare la scorciatoia Cmd+Shift+P
(o Ctrl+Shift+P
su Windows) e cercare "Open Chat", come mostrato in figura.

Chattare con l'AI
Una volta aperta, vedremo sulla destra una chat in cui possiamo iniziare a digitare come se stessimo scrivendo a un collega: "Mi spieghi cosa fa questo metodo?", oppure "Puoi ottimizzare questa funzione in termini di performance?". Cursor analizzerà automaticamente il contesto e ci risponderà in modo preciso e utile.

Dialogare con Cursor
Cosa possiamo chiedere
La chat di Cursor è sorprendentemente versatile. Ecco alcuni esempi concreti di richieste utili:
-
Comprensione del codice:
Cosa fa questo script Python?
Spiegami riga per riga questo algoritmo.
-
Refactoring:
Riscrivi questa funzione in modo più leggibile.
Dividi questo file in moduli più piccoli e riutilizzabili.
-
Testing:
Scrivi dei test unitari per questo componente React.
Aggiungi dei controlli edge case a questa funzione.
-
Debugging:
C'è un errore in questo codice?
Perché questa funzione restituisce None invece del valore atteso?
-
Traduzioni di linguaggi:
Converti questa funzione da JavaScript a Python.
-
Ottimizzazione:
Rendi questa query SQL più efficiente.
Puoi migliorare le performance di questo algoritmo di sorting?
Il bello è che possiamo combinare più richieste in una singola interazione, e l'AI si adatterà al nostro stile, alle nostre preferenze e al nostro contesto.
Modalità Chiedi (Ask Mode): intelligenza direttamente nel codice
Oltre alla chat laterale, Cursor ci mette a disposizione una modalità ancora più potente: la modalità "Chiedi", che possiamo attivare con un semplice clic destro sul codice o con la scorciatoia Cmd+K
(o Ctrl+K
).

Ask Mode
Supponiamo di avere una funzione JavaScript che non ci convince del tutto. Selezioniamo il codice, premiamo la scorciatoia, e appare un campo di testo dove possiamo scrivere una domanda come:
Puoi renderlo più leggibile?
Questo codice è sicuro?
Come posso renderlo compatibile con TypeScript?
Cursor analizzerà il blocco selezionato e ci offrirà una risposta direttamente in linea, con la possibilità di accettare, modificare o rigettare il suggerimento.
Questo sistema rende l'interazione fluida e continua, senza interruzioni o cambi di finestra. Non dobbiamo uscire dal flusso per cercare risposte su StackOverflow o ChatGPT: abbiamo già tutto a portata di tastiera.
Alcuni scenari d'uso pratici
-
Stiamo lavorando a una funzione che interagisce con un'API esterna. Non siamo sicuri che la gestione degli errori sia corretta. Selezioniamo il codice e chiediamo:
Gestisco correttamente tutti i casi d'errore?
-
Stiamo scrivendo un algoritmo di ricerca binaria ma non ricordiamo perfettamente la logica. Chiediamo direttamente:
Puoi completare questa funzione di ricerca binaria?
-
Abbiamo scritto una funzione in italiano e vogliamo tradurre i commenti in inglese. Basta selezionare e chiedere:
Traduci tutti i commenti in inglese.
In tutti questi casi, il nostro flusso di lavoro rimane integro, veloce, efficiente.

Scenari d'uso pratici
Prompt efficaci: l'arte di fare le domande giuste
Come ogni collaborazione, anche quella con un'AI richiede una certa sensibilità. Più siamo chiari nelle nostre richieste, più riceveremo risposte pertinenti. Alcuni consigli utili:
- Essere specifici: invece di "Rendi questo codice migliore", è meglio dire "Rendi questa funzione più leggibile usando nomi di variabili descrittivi".
-
Fornire contesto: se il codice è parte di un sistema più ampio, possiamo specificarlo.
Questa funzione viene usata per calcolare il totale nel carrello di un e-commerce.
-
Iterare: se la prima risposta non ci soddisfa, possiamo fare follow-up mirati.
Ok, ma puoi farlo senza usare librerie esterne?
Con il tempo, sviluppiamo una nostra grammatica conversazionale per parlare con l'AI in modo naturale ma efficace.
I limiti (e come gestirli)
Sebbene l'AI di Cursor sia molto potente, è importante ricordare che non è infallibile. Alcuni limiti comuni includono:
- Interpretazioni errate del contesto, specialmente se il codice è troppo frammentato o mancano import.
- Suggerimenti troppo verbosi o generici, se le richieste sono poco precise.
- Rischio di introdurre bug, se si accettano suggerimenti senza revisionarli.
Per questo, è fondamentale mantenere un ruolo attivo nel processo: l'AI ci aiuta, ma siamo noi a guidare.
Best practice per l'uso quotidiano
Ecco alcune abitudini che abbiamo trovato estremamente utili nel nostro lavoro quotidiano:
- Iniziare ogni giornata con una domanda all'AI: per esempio, "Qual è il modo più semplice per fare X in Y?".
- Usare la modalità "Chiedi" per ogni revisione di codice, come se stessimo chiedendo una code review automatica.
- Creare una cronologia di domande frequenti nel nostro team, da condividere come base comune.
- Non fidarsi ciecamente: anche se il suggerimento è buono, è sempre bene validarlo con test, linting e buonsenso.
- Integrare l'AI nei processi di onboarding: i nuovi membri del team possono imparare chiedendo direttamente a Cursor, anziché impegnare i colleghi.
Conclusioni
Questa seconda lezione ci ha portato nel cuore del vantaggio competitivo che Cursor offre rispetto agli editor tradizionali: una collaborazione intelligente, continua e contestuale con l'AI. La Chat e la modalità Chiedi sono strumenti che ci permettono non solo di risolvere problemi più velocemente, ma anche di imparare, scoprire e migliorare costantemente.
Nella prossima lezione entreremo nel mondo degli Agenti AI, strumenti ancora più avanzati che possono compiere azioni automatizzate e intelligenti all'interno del nostro progetto, come se fossero veri e propri collaboratori digitali.