Vai al contenuto principale

Tutorial su Claude Code: configurazione, refactoring e debugging nella pratica

Scopri come usare Claude Code di Anthropic per migliorare i flussi di sviluppo software con un esempio pratico basato sulla libreria Python di Supabase.
Aggiornato 22 ago 2026  · 12 min leggi

Esplora con l'AI

ChatGPTClaudePerplexity

Claude Code è uno strumento di coding agentico sviluppato da Anthropic che opera direttamente nel terminale, aiutando gli sviluppatori a fare refactoring, documentare e fare debug del codice in modo efficiente. Grazie alla comprensione dell’intera codebase, Claude Code aiuta a semplificare i flussi di lavoro lungo tutto il ciclo di vita dello sviluppo software. Da gennaio 2026, Anthropic ha reso disponibili Claude Code 2.1, Claude Cowork e Claude Opus 5 come modello predefinito per i piani Max.

In questo tutorial ti spiegherò come usare Claude Code per migliorare i flussi di sviluppo software facendo refactoring, documentando e facendo debug del codice. In particolare, vedremo come:

  • Fare refactoring di un file della repository supabase-py per migliorare leggibilità e manutenibilità del codice.
  • Aggiungere documentazione e commenti inline per migliorare la comprensione della codebase esistente.
  • Identificare e risolvere errori sfruttando le capacità di debugging di Claude Code.

Imparerai a integrare Claude Code nel tuo processo di sviluppo per un’esperienza più efficiente e automatizzata.

Se sei completamente nuovo a Claude Code, ti consiglio di seguire il corso Claude Code 101 insieme a questo tutorial.

TL;DR

  • Claude Code è l’assistente di coding agentico da terminale di Anthropic, ora basato su Claude Opus 4.7 nei piani Max
  • Installa con curl -fsSL https://claude.ai/install.sh | bash (macOS/Linux) o il comando equivalente PowerShell/CMD su Windows
  • Usa il linguaggio naturale per fare refactoring, documentare e fare debug del codice in tutta la tua codebase
  • Funzionalità chiave: plan mode, auto mode, hooks, plugin e Routines (agent cloud pianificati)
  • Cambia modello con /model e regola la profondità di ragionamento con /effort

Che cos'è Claude Code?

Claude Code è uno strumento che opera direttamente nel tuo terminale, comprende la tua codebase e ti assiste nelle attività di sviluppo con comandi in linguaggio naturale. Si integra nel tuo ambiente di sviluppo con una configurazione minima, così puoi concentrarti sullo scrivere e migliorare il codice.

funzionalità di Claude Code

Ecco alcune funzionalità chiave di Claude Code:

  • Editing e refactoring: modifica, ottimizza e migliora la tua codebase con suggerimenti potenziati dall’AI.
  • Bug fixing: identifica e risolve errori, dipendenze mancanti e colli di bottiglia prestazionali.
  • Comprensione del codice: fai domande sull’architettura, la logica e le dipendenze del tuo codice.
  • Testing e linting automatizzati: esegui e correggi test falliti, lancia i comandi di linting e migliora la qualità del codice.
  • Integrazione con Git: cerca nella cronologia git, risolvi conflitti di merge, crea commit e genera pull request senza sforzo.

Che tu stia lavorando a un progetto open-source o gestendo codebase di livello enterprise, Claude Code può aiutarti con un’automazione intelligente che si adatta al tuo stile di coding e ai requisiti del progetto. Gli aggiornamenti recenti hanno aggiunto l’auto mode (meno interruzioni per i permessi), il plan mode (workflow design-first) e le Routines (agent cloud pianificati che si avviano su trigger senza che il tuo computer sia acceso).

Ecco alcuni profili ideali per questo servizio:

  • Sviluppatori software: migliorare qualità e manutenibilità del codice.
  • Contributor open source: comprendere e migliorare codebase non familiari.
  • Ingegneri DevOps: automatizzare attività di code review e linting.

Claude Code ora usa di default Claude Opus 4.7 nei piani Max e Team Premium. Gli utenti Pro partono con Sonnet 4.6 ma possono passare ai modelli Opus per i task più impegnativi. Puoi cambiare modello a sessione in corso con il comando /model o regolare la profondità di ragionamento con lo slider /effort. Puoi anche creare agent AI standalone usando il Claude Agents SDK.

Anthropic ha introdotto anche Cowork per un aiuto in stile agent con attività quotidiane su file e documenti oltre al coding. È disponibile per tutti i piani a pagamento (Pro, Max, Team, Enterprise) nell’app desktop di Claude.

Se stai confrontando Claude Code con l’agente da terminale di xAI, il nostro confronto Grok Build vs. Claude Code mette alla prova entrambi sullo stesso task.

Iniziamo con il progetto pratico.

Passo 1: Configurare Claude Code

Per iniziare con Claude Code, ti serve un terminale, un progetto di codice su cui lavorare e un abbonamento a Claude (Pro/Max/Teams/Enterprise) oppure un account Claude Console con fatturazione attiva.

Installa Claude Code semplicemente eseguendo uno dei seguenti comandi nel terminale, in base al tuo sistema operativo e terminale.

macOS / Linux / WSL: 

curl -fsSL https://claude.ai/install.sh | bash

Windows PowerShell: 

irm https://claude.ai/install.ps1 | iex

Windows CMD:  

curl -fsSL https://claude.ai/install.cmd -o install.cmd && install.cmd && del install.cmd

Nota: L’installazione tramite npm install -g @anthropic-ai/claude-code esiste ancora ma è deprecata, quindi è preferibile il processo di installazione nativa indicato sopra. Se in passato hai installato via npm, puoi migrare con claude install.

Una volta installato, vai nella directory del tuo progetto e avvia Claude eseguendo:

cd your-project-directory
claude

Per l’autenticazione, ti verrà chiesto se vuoi usare Claude Code con un abbonamento a pagamento o con fatturazione via API.

Screenshot 2026-01-16 at 9.01.43.png

Successivamente riceverai un link di login che porta a un codice di verifica da inserire nel terminale in cui gira Claude Code. Poi hai finito, e uno workspace dedicato “Claude Code” viene creato automaticamente per il tracciamento dell’uso e la gestione dei costi.

Claude inizializzato nel terminale

Ora Claude Code è pronto all’uso.

Passo 2: Configurare l'ambiente di sviluppo

Per questa demo userò la libreria Python di Supabase supabase-py, un client Python open-source per interagire con Supabase, un backend-as-a-service basato su PostgreSQL. Supabase offre una suite di strumenti, tra cui autenticazione, sottoscrizioni in tempo reale, storage e API generate automaticamente.

Cominciamo clonando la repository e configurando l’ambiente di sviluppo.

1. Apri il terminale, vai nella directory in cui vuoi clonare la repository Supabase-py (ad es. cd Desktop) ed esegui il seguente comando:

git clone https://github.com/supabase/supabase-py.git
cd  supabase-py

2. Quindi, crea un ambiente virtuale e installa le dipendenze richieste eseguendo i seguenti comandi nel terminale, uno alla volta

python3 -m venv env
source env/bin/activate  # On Windows, use ./env/Scripts/activate
pip install -e .

Il tuo ambiente Python è ora configurato con tutte le dipendenze necessarie per eseguire la libreria Supabase e la tua repository è pronta per essere esplorata. 

Passo 3: Identificare le aree su cui contribuire

Un ottimo modo per contribuire è esplorare la scheda Issues su GitHub. Nella repository di Supabase ho individuato un’issue in client.py relativa a leggibilità del codice, struttura e mancanza di commenti significativi.

Ecco cosa faremo con Claude Code:

  • Faremo refactoring del codice per migliorarne leggibilità, manutenibilità e struttura.
  • Aggiungere docstring e commenti inline significativi per chiarire lo scopo dei vari componenti.
  • Identificare e correggere bug analizzando issue e altri potenziali errori.

Passo 4: Sperimentare con Claude Code

Dato che siamo già nella cartella supabase-py, vai nella directory supabase che contiene il file client.py ed esegui Claude Code:

cd supabase
claude

Claude Code nel terminale

Claude Code ora ha accesso a ogni file e cartella all’interno della cartella Supabase-py. Adesso, facciamo qualche prova.

Refactoring del codice

Come parte del miglioramento della SDK Python di Supabase, facciamo refactoring del file client.py per migliorarne leggibilità, manutenibilità e organizzazione. Inserisci semplicemente il seguente prompt nella riga di comando:

Prompt: Fai refactoring del codice nel file client.py presente nella cartella Supabase.

Claude chiederà conferma prima di procedere. Premi Invio per approvare le modifiche. Una volta terminato, Claude Code aggiornerà il file, mostrerà le modifiche nel terminale e fornirà un riepilogo delle modifiche effettuate.

Usando Claude Code abbiamo applicato i seguenti miglioramenti a client.py:

  • Import ordinati:  Claude Code ha raggruppato gli import correlati in sezioni logiche (errori di auth, tipi API, errori delle funzioni), rinominato import per chiarezza e rimosso alias ridondanti per coerenza.
  • Maggiore leggibilità: sono stati aggiunti commenti di sezione per classificare gli import e rimossa la duplicazione nella lista __all__ per una struttura più pulita.
  • Opzioni del client semplificate: sono state anche ridotte più righe combinando import simili in un’unica istruzione.

Ecco un confronto affiancato tra codice originale e refactor.

confronto tra codice originale e refactor

confronto tra codice originale e refactor

Documentare il codice

Oltre al refactoring, Claude Code può generare, aggiornare e standardizzare la documentazione del codice in un intero progetto. Può identificare sezioni non documentate, generare docstring o commenti strutturati e verificare la conformità agli standard di documentazione del progetto.

Abbiamo usato Claude Code per migliorare la documentazione in client.py, ottenendo:

  • Docstring a livello di modulo chiare che spiegano lo scopo del file.
  • Commenti di sezione dettagliati che categorizzano gli import (tipi di errori, implementazioni del client, servizi di storage).
  • Commenti inline per descrivere tipi di errore, funzioni del client e componenti importanti.

Ecco un confronto affiancato tra codice refactor e documentato.

Prompt: Documenta il codice di client.py aggiungendo commenti per migliorarne la comprensione.

confronto tra codice refactor e documentato.

Una volta aggiunta la documentazione, puoi verificarne la conformità agli standard del tuo progetto chiedendo a Claude:

Prompt: Verifica se la documentazione segue gli standard del nostro progetto.

Correggere i bug

Il debug può richiedere tempo, ma Claude Code accorcia il ciclo analizzando i messaggi di errore, identificando le cause radice e suggerendo correzioni. Che tu stia affrontando import mancanti, errori di runtime o problemi di logica, restringe lo spazio di ricerca e propone correzioni mirate.

Ecco come usare Claude Code per il debugging:

  1. Identifica il problema:  condividi il messaggio d’errore con Claude.
  2. Ottieni raccomandazioni per la correzione: chiedi a Claude possibili soluzioni.
  3. Applica e verifica la correzione:  implementa i suggerimenti di Claude e controlla se il problema è risolto.

Claude Code ha predisposto quanto segue per risolvere i problemi legati agli import nel file client.py

  • Commenti type ignore: aggiunto il commento # type: ignore per sopprimere avvisi di IDE e type-checking su import non risolti.
  • Categorizzazione coerente degli errori: Claude Code ha garantito che gli import degli errori da autenticazione, database, storage e funzioni siano chiaramente raggruppati.
  • Leggibilità del codice mantenuta: sono stati aggiunti commenti per indicare perché certi import sono stati ignorati invece di rimuoverli.

Ecco un confronto affiancato tra il codice originale e quello corretto.

Prompt: Vedo alcuni bug, ad esempio "Import gotrue.errors" non può essere risolto. Aiutami a correggere tutti gli errori in client.py.

confronto tra codice originale e codice con bug corretti.

Comandi di Claude Code

Ecco alcuni comandi da provare con Claude.

Comandi

Azione

/model

Passa tra i modelli disponibili (Opus 4.7, Sonnet 4.6, Haiku 4.5)

/effort

Regola la profondità di ragionamento (low, medium, high, xhigh, max)

/plan

Entra nel plan mode, in cui Claude progetta prima di costruire

/ultrareview

Code review multi-agent delle tue modifiche

/clear

Pulisci la cronologia della conversazione e libera contesto  

/compact

Pulisci la cronologia della conversazione, ma conserva un riepilogo nel contesto  

/cost

Mostra il costo totale e la durata della sessione corrente

/doctor

Controlla lo stato della tua installazione di Claude Code, inclusi versione e aggiornamenti

/help

Mostra l’aiuto e i comandi disponibili

/init

Inizializza un nuovo file CLAUDE.md con la documentazione della codebase

/hooks Configura e gestisci gli automation hook

/review

Recensisci una pull request

/config

Visualizza e modifica la configurazione di Claude Code, incluse le autorizzazioni

/usage

Mostra cosa sta influenzando i tuoi limiti d’uso (sessioni, cache, contesto)

Per approfondire, ti consiglio la nostra guida ai comandi slash di Claude Code.

Funzionalità avanzate di Claude Code

Quando hai preso confidenza con le basi di refactoring e debugging, puoi estendere le capacità di Claude Code personalizzandone il comportamento. Hooks e Plugin ti permettono di automatizzare attività ripetitive e integrare sistemi esterni.

Hook di Claude Code

Gli hook di Claude Code sono trigger automatici che eseguono comandi shell quando si verificano eventi specifici durante la tua sessione con Claude Code. Automatizzano attività ripetitive come formattazione del codice, esecuzione dei test e controlli di sicurezza che altrimenti Claude potrebbe saltare.

Gli hook usano un sistema evento-azione, in cui definisci tre cose:

  • L’evento: quando si attiva l’hook?

  • Il matcher: quali azioni sono interessate?

  • Il comando: cosa viene eseguito quando l’hook si attiva?

Ad esempio, un hook può attivarsi dopo che Claude scrive un file Python ed eseguire automaticamente black per formattare il codice. Gli hook ricevono contesto JSON su ciò che è accaduto, abilitando decisioni intelligenti basate su tipi di file o percorsi. Possono inviare output alla trascrizione di Claude o inviare messaggi d’errore direttamente a Claude per bloccare le operazioni.

Casi d’uso comuni per gli hook includono:

  • Formattazione del codice: esegui automaticamente linters e formatter dopo la scrittura del codice

  • Testing: esegui suite di test dopo le modifiche per intercettare bug presto

  • Sicurezza: blocca modifiche a file sensibili come config di produzione o API key

  • Documentazione: genera automaticamente la documentazione delle API quando cambiano i sorgenti

  • Automazione Git: crea commit intelligenti e valida le policy di protezione dei branch

  • Notifiche: avvisa il tuo team su Slack quando cambiano file importanti

  • Compliance: applica header di licenza o standard di coding prima di consentire modifiche

Configura gli hook con il comando /hooks in Claude Code oppure modifica direttamente ~/.claude/settings.json.

Plugin di Claude Code

I plugin sono estensioni che collegano Claude Code a strumenti, servizi e API esterni. Mentre gli hook automatizzano comandi shell locali, i plugin si integrano con il tuo ecosistema di sviluppo più ampio come pipeline CI/CD, strumenti di project management e piattaforme di comunicazione del team.

I plugin possono includere più componenti—subagent (assistenti Claude specializzati per task specifici), server MCP (integrazioni standardizzate degli strumenti) e hook—riuniti in un unico pacchetto che li orchestra insieme.

Un plugin può analizzare le modifiche al codice e aprire automaticamente issue in Jira, oppure connettersi alla tua infrastruttura di testing interna. I plugin rispondono agli stessi eventi degli hook ma inviano dati a servizi esterni ed elaborano le risposte per influenzare il flusso di lavoro di Claude.

Ecco alcuni task in cui i plugin di Claude Code sono particolarmente utili:

  • Integrazione CI/CD: avvia build, test e deployment quando i file cambiano

  • Project management: crea o aggiorna automaticamente issue in Jira, GitHub o Linear

  • Comunicazione del team: pubblica aggiornamenti su Slack o Teams quando avvengono modifiche

  • Code review: crea automaticamente pull request e gestisci le review su GitHub/GitLab

  • Analisi esterne: chiama SonarQube, CodeClimate o Snyk per scanning del codice a livello enterprise

  • Strumenti personalizzati: integra sistemi e workflow proprietari dell’azienda

  • Estensioni IDE: aggiungi comandi personalizzati e aiuti alla navigazione

Installa plugin da un registro o sviluppali internamente per la tua organizzazione, quindi configura gli eventi a cui devono rispondere. Insieme, hook e plugin creano una piattaforma estensibile che adatta Claude Code alla tua infrastruttura esistente.

Altre funzionalità avanzate

Nel 2026 Claude Code ha aggiunto diverse altre funzionalità importanti che ampliano come e dove puoi usarlo:

  • Plan mode: un workflow design-first in cui Claude crea un piano di implementazione dettagliato prima di scrivere qualsiasi codice. Lo uso per ogni task non banale.
  • Auto mode: un classificatore dei permessi che permette a Claude di lavorare con meno interruzioni, utile per task più lunghi in cui non vuoi approvare ogni scrittura su file.
  • Routines: agent cloud pianificati che si attivano con una schedulazione cron, un evento GitHub (come apertura di una PR) o una chiamata webhook. La tua macchina non deve essere accesa.
  • Integrazione IDE: Claude Code ha estensioni ufficiali per VS Code, Cursor e IDE JetBrains con diff inline, checkpoint e supporto multi-sessione.
  • Controllo remoto e Channels: esegui sessioni di Claude Code e interagisci con esse dal tuo telefono o da altri dispositivi.

Considerazioni finali

In questo tutorial ho usato Claude Code per fare refactoring, documentare e fare debug di un file nella SDK Python di Supabase. Abbiamo migliorato la leggibilità del codice, aggiunto documentazione strutturata e risolto problemi di import.

Claude Code è in continua evoluzione con funzionalità come plan mode, auto mode e Routines, quindi vale la pena sperimentarlo nei tuoi progetti per capire come si adatta al tuo workflow.

Per fare il passo successivo, ti invito a leggere il nostro tutorial sulle Best practice di Claude Code, che ti insegna a sfruttare al meglio la finestra di contesto di Claude. Se vuoi creare un progetto da zero, ti consiglio il nostro tutorial su Spec-Driven Development con Claude Code.

FAQ su Claude Code

Ho bisogno di un abbonamento a pagamento a Claude per usare Claude Code?

Sì, Claude Code richiede un abbonamento a pagamento a Claude (piani Pro, Max, Teams o Enterprise) oppure un account Claude Console con fatturazione API attiva. Non puoi usare Claude Code con il piano gratuito di Claude. Durante la configurazione ti verrà chiesto di scegliere tra abbonamento o fatturazione a consumo via API e di autenticarti con un codice di verifica. Questo aiuta Claude a tracciare l’uso e gestire i costi delle tue sessioni con Claude Code.

Claude Code funziona con qualsiasi linguaggio di programmazione o solo con Python?

Claude Code funziona praticamente con qualsiasi linguaggio di programmazione: Python, JavaScript, TypeScript, Java, C++, Go, Rust e altro. Gli esempi in questo tutorial usano Python (Supabase-py), ma Claude Code eccelle nel fare refactoring, documentare e fare debug del codice in qualsiasi linguaggio. Gli stessi workflow (refactoring, aggiunta di documentazione, correzione dei bug) si applicano a prescindere da ciò che stai costruendo.

Qual è la differenza tra hook e plugin di Claude Code?

Gli hook sono strumenti di automazione più semplici che eseguono comandi shell locali quando accadono eventi specifici (ad esempio, formattare il codice dopo la scrittura di un file). I plugin sono estensioni più potenti che integrano Claude Code con sistemi esterni come Jira, Slack, GitHub o strumenti interni della tua azienda. I plugin possono includere hook, subagent e server MCP, risultando ideali per workflow complessi in più fasi. Usa gli hook per l’automazione locale e i plugin per l’integrazione con l’ecosistema.

Claude Code ha accesso all'intera mia codebase?

Sì, Claude Code ha accesso a tutti i file e le cartelle nella directory in cui esegui il comando claude e nelle sue sottodirectory. Per questo dovresti spostarti nella root del progetto prima di avviare Claude Code. Tuttavia, puoi configurare i permessi usando il comando /config per limitare ciò a cui Claude può accedere o che può modificare, utile per proteggere file sensibili come .env o configurazioni di produzione.

Posso usare Claude Code in un ambiente di team o è solo personale?

Claude Code funziona bene in team. Puoi condividere configurazioni a livello di progetto (come server MCP e hook) salvandole nel file .claude/settings.json del tuo progetto, che può essere versionato. I plugin installati nel team avranno un comportamento coerente. Ogni membro del team, però, ha bisogno del proprio abbonamento a Claude o della propria fatturazione API. Per gli ambienti enterprise, Anthropic offre piani Teams ed Enterprise con gestione centralizzata e workspace condivisi.

Quale modello usa Claude Code nel 2026?

Di default, ad aprile 2026 Claude Code usa Claude Opus 4.7 sui piani Max e Team Premium. I piani inferiori (Pro) usano come default Sonnet 4.6. Puoi cambiare modello durante la sessione con il comando /model e regolare la profondità di ragionamento con lo slider /effort. Il livello di effort xhigh è consigliato per la maggior parte dei task di coding.

Qual è la differenza tra plan mode e auto mode di Claude Code?

Il plan mode chiede a Claude di creare un piano di implementazione dettagliato prima di scrivere qualsiasi codice. Tu rivedi e approvi il piano, poi Claude lo realizza. È ideale per funzionalità complesse o quando vuoi guidare l’architettura.

L’auto mode è un’impostazione dei permessi che consente a Claude di prendere decisioni su modifiche ai file ed esecuzione di comandi con meno interruzioni. Usa un classificatore di sicurezza per decidere cosa necessita della tua approvazione, riducendo il ping-pong sulle operazioni di routine pur bloccando le azioni rischiose.


Aashi Dutt's photo
Author
Aashi Dutt

Sono una Google Developers Expert in ML (Gen AI), una Kaggle 3x Expert e una Women Techmakers Ambassador con oltre 3 anni di esperienza nel tech. Ho co-fondato una startup health-tech nel 2020 e sto conseguendo un master in informatica al Georgia Tech, con specializzazione in machine learning.

Argomenti

Impara l'AI con questi corsi!

Corso

Introduzione ai modelli Claude

3 h
13.6K
Scopri come usare Claude con l'API di Anthropic per risolvere problemi del mondo reale e creare app basate sull'intelligenza artificiale.
Vedi dettagli
Inizia Il Corso
Mostra altro
Correlato

blog

I 15 migliori server MCP remoti che ogni AI builder dovrebbe conoscere nel 2026

Scopri i 15 migliori server MCP remoti che stanno trasformando lo sviluppo AI nel 2026. Scopri come migliorano automazione, ragionamento, sicurezza e velocità dei workflow.
Abid Ali Awan's photo

Abid Ali Awan

15 min

blog

Tokenizzazione nel NLP: come funziona, sfide e casi d'uso

Guida al preprocessing NLP nel machine learning. Copriamo spaCy, i transformer di Hugging Face e come funziona la tokenizzazione in casi d'uso reali.
Abid Ali Awan's photo

Abid Ali Awan

10 min

blog

Che cos'è Snowflake? Guida per principianti alla piattaforma dati cloud

Esplora le basi di Snowflake, la piattaforma dati cloud. Scopri la sua architettura, le sue funzionalità e come integrarla nelle tue pipeline di dati.
Tim Lu's photo

Tim Lu

12 min

Mostra AltroMostra Altro