🔓 OpenCode.ai: L’Hub degli Agenti Cross-Provider
::: info FILOSOFIA “OPEN” OpenCode.ai è un’interfaccia a riga di comando progettata per portare le capacità agentiche (lettura file, esecuzione test, editing multi-file) su qualsiasi modello linguistico. È lo strumento ideale per chi vuole le prestazioni di Claude Code senza i vincoli di fatturazione della Anthropic Console. :::
1. Architettura e Funzionamento
OpenCode agisce come un bridge tra il tuo terminale e le API dei modelli.
- Context Management: Scansiona automaticamente la cartella del progetto (rispettando il file
.gitignore). - Tool Use: È in grado di invocare comandi shell per verificare se il codice che ha scritto compila o passa i test.
2. Installazione e Primo Avvio
Essendo basato su Node.js, l’installazione è immediata su Linux (Mac Pro), Windows (WSL2) o macOS.
# Installazione globale tramite NPM
npm install -g @opencode/cli
# Inizializzazione e Login
opencode auth login
3. Collegare i tuoi Provider (Ingegneria dei Costi)
Questa è la sezione più importante per ottimizzare il tuo budget.
A. Sfruttare l’abbonamento GitHub Copilot Pro Plus
Dato che hai già Copilot, puoi accedere ai modelli (Claude 3.5 Sonnet, GPT-4o) tramite GitHub Models senza costi aggiuntivi:
- Vai su GitHub Marketplace / Models.
- Genera un Personal Access Token (PAT) con permessi di lettura per i modelli.
- In OpenCode, configura l’endpoint come “OpenAI Compatible” puntando a
https://models.inference.ai.azure.com.
B. Collegamento a Ollama (Local Agent)
Per lavorare su codice sensibile che non deve lasciare il tuo Mac Pro o il server Proxmox:
# Assicurati che Ollama sia attivo sulla porta 11434
opencode config set provider ollama
opencode config set model deepseek-coder-v2
4. Workflow Operativo: Esempi Pratici
Analisi di un Bug
Se hai un errore nel terminale, non copiarlo. Chiedi a OpenCode di leggerlo:
opencode ask "Analizza l'ultimo errore di compilazione e suggerisci una correzione"
Refactoring Multi-file (Agent Mode)
L’agente può modificare l’architettura del progetto:
opencode edit "Sposta la logica di validazione da main.py a un nuovo modulo validators.py e aggiorna tutti i riferimenti"
- Cosa succede: OpenCode leggerà
main.py, creeràvalidators.py, modificherà gli import e ti mostrerà un “Diff” per l’approvazione.
📉 Topologia di Integrazione (Mermaid 8.8.2)
🛠️ Configurazione dei Filtri (.opencodeignore)
Per evitare di consumare token inutilmente o inviare dati non necessari, crea un file .opencodeignore nella root del progetto:
# Escludi cartelle pesanti
node_modules/
.venv/
__pycache__/
dist/
build/
# Escludi file di dati giganti
*.csv
*.log
💡 Note dell’Architetto (Critical Thinking)
- Sicurezza: Quando colleghi il tuo abbonamento Copilot tramite GitHub Models, ricorda che ci sono dei Rate Limits giornalieri. Per lo sviluppo massivo, alterna l’uso con Ollama per task di routine e usa i modelli cloud solo per il ragionamento logico complesso.
- Validation: Anche se OpenCode può eseguire i test, non fidarti ciecamente. Usa sempre la nostra AI Code Review Checklist prima di fare il commit finale.
Tags: #OpenCode #AI #CLI #Copilot #Ollama #Automation*