Vai al contenuto

Opencode Web: Usa opencode direttamente dal browser

Come trasformare opencode in una web app accessibile da browser, dalla configurazione del provider LLM all'avvio del server con autenticazione.

Opencode Web: Usa opencode direttamente dal browser

Testato il: 2026-07-29 Ambiente: Linux · Node.js v24.15.0 · opencode 1.18.9 · npm 11.6.1

Prerequisiti

  • Node.js 18 o superiore (verifica con node --version)
  • Una chiave API per almeno un provider LLM supportato da opencode (Anthropic, OpenAI, OpenRouter, Groq e decine di altri)
  • Un browser moderno (Firefox, Chrome, Edge o qualunque cosa usi)
  • Un terminale con supporto Unicode: WezTerm, Alacritty, Ghostty o Kitty vanno benissimo

1. Installa opencode

Se hai già Node.js, il metodo più diretto è npm:

npm install -g opencode-ai@latest

Altre strade possibili:

# Script di installazione ufficiale
curl -fsSL https://opencode.ai/install | bash

# Homebrew (macOS e Linux, sempre aggiornato)
brew install anomalyco/tap/opencode

Verifica che l'installazione sia riuscita:

opencode --version

Il comando restituisce 1.18.9 o superiore. Se non lo trova, chiudi e riapri il terminale, oppure controlla che la directory npm globale sia nel PATH.

2. Configura un provider LLM

A opencode serve una chiave API per parlare con un modello. Supporta oltre 75 provider: Anthropic, OpenAI, Groq, OpenRouter e molti altri.

Il metodo più immediato: il login interattivo.

opencode auth login

Ti guida nella scelta del provider (puoi scrivere parte del nome per filtrarlo) e ti chiede la chiave, che finisce in ~/.local/share/opencode/auth.json.

Se sai già quale provider vuoi usare, saltati la selezione iniziale:

opencode auth login --provider anthropic

Alcuni provider (OpenAI ChatGPT Plus/Pro, Anthropic Claude Pro/Max) supportano l'autenticazione OAuth: opencode auth login apre il browser per autorizzare l'accesso, niente chiavi da incollare.

Via variabile d'ambiente

Se hai già una chiave a portata di mano e preferisci non usare il comando interattivo, esportala e opencode la rileverà all'avvio:

export ANTHROPIC_API_KEY=sk-ant-api03-la-tua-chiave
# oppure
export OPENAI_API_KEY=sk-la-tua-chiave

Per aggiungerla in modo permanente, inserisci la stessa riga nel tuo ~/.bashrc o ~/.zshrc.

Verifica che il provider sia configurato:

opencode auth list

Il provider compare nella lista con stato configured.

3. Avvia il server web

Con un provider configurato, puoi avviare l'interfaccia web:

opencode web

Il comando avvia un server HTTP su 127.0.0.1 con una porta casuale, apre il browser all'URL del server e carica l'interfaccia web. Tutto in un colpo solo.

Nel terminale vedrai un output simile a:

  Local access:       http://127.0.0.1:38421

La porta cambia ogni volta se non la specifichi: per averla fissa, usa --port (lo vedremo al passo 5).

Server senza protezione — Senza `OPENCODE_SERVER_PASSWORD`, il server web di opencode **non richiede autenticazione**. Per uso locale su `127.0.0.1` va bene, ma se prevedi di esporlo sulla rete con `--hostname 0.0.0.0`, configura l'autenticazione **prima** di avviarlo: salta al **passo 7**.

4. Esplora l'interfaccia web

Il browser mostra la home page dell'interfaccia web di opencode, con due aree distinte.

A sinistra la lista delle sessioni: vuota al primo avvio. "New Session" per crearne una, scegliere il modello e iniziare a interagire con opencode come dalla TUI.

In alto "See Servers" apre la sezione server: stato del server, porta, hostname e connessioni attive.

Nel browser hai la stessa esperienza della TUI: chatti con opencode, carichi file con drag and drop, cambi modello e agente con Tab o /. Tutto quello che faresti da terminale.

5. Configura porta, hostname e mDNS

I flag da linea di comando ti danno il controllo su dove e come il server è accessibile.

Porta fissa

Per evitare porte casuali e avere sempre lo stesso indirizzo:

opencode web --port 4096

Accesso dalla rete locale

Di default il server ascolta solo su 127.0.0.1 (localhost). Per renderlo accessibile da altri dispositivi sulla tua rete:

opencode web --hostname 0.0.0.0 --port 4096

Il terminale ora mostrerà sia l'indirizzo locale che quello di rete:

  Local access:       http://localhost:4096
  Network access:     http://192.168.1.100:4096

mDNS discovery

Se vuoi raggiungere il server con un nome facile da ricordare invece dell'IP:

opencode web --mdns

Questo imposta automaticamente --hostname 0.0.0.0 e pubblica il server come opencode.local sulla rete locale. Per personalizzare il dominio:

opencode web --mdns --mdns-domain mio-progetto.local

Utile se hai più istanze di opencode in esecuzione contemporaneamente.

Configurazione via file

Se preferisci non ricordare i flag ogni volta, puoi mettere tutto in opencode.json nella root del tuo progetto (o in ~/.config/opencode/opencode.json per una config globale):

{
  "server": {
    "port": 4096,
    "hostname": "0.0.0.0",
    "mdns": true
  }
}

I flag da linea di comando hanno la precedenza sulle impostazioni del file: se il file dice "port": 4096 ma avvii con --port 3000, vince 3000.

6. Attacca la TUI al server web

Con il server web puoi collegare la TUI in qualsiasi momento, senza fermare nulla. Apri un altro terminale e lancia:

opencode attach http://localhost:4096

Aggancia l'interfaccia testuale al server già in esecuzione: TUI e web condividono sessioni e stato. Puoi iniziare una conversazione nel browser, continuarla da terminale e tornare indietro senza perdere nulla.

Se il server è protetto da password (passo 7), ti serviranno i flag --username e --password:

opencode attach http://localhost:4096 --username opencode --password la-tua-password

7. Proteggi l'accesso con autenticazione

Se esponi il server sulla rete (--hostname 0.0.0.0), proteggilo con due variabili d'ambiente:

OPENCODE_SERVER_PASSWORD=unasupersecret opencode web --hostname 0.0.0.0 --port 4096

Lo username di default è opencode. Per cambiarlo:

OPENCODE_SERVER_USERNAME=admin OPENCODE_SERVER_PASSWORD=unasupersecret opencode web --hostname 0.0.0.0 --port 4096

All'apertura del browser vengono chiesti username e password. Stessa autenticazione per opencode attach, opencode run --attach e qualsiasi altro client.

Verifica

Per verificare che tutto funzioni:

  1. Server in esecuzione: apri http://localhost:4096 (o la porta che hai scelto) nel browser. Devi vedere l'interfaccia web di opencode con la lista delle sessioni.
  2. Nuova sessione: clicca "New Session", seleziona un modello, scrivi un prompt di prova (ad esempio "Ciao, chi sei?") e invia. Dovresti ricevere una risposta dal modello.
  3. TUI collegata: da un altro terminale, lancia opencode attach http://localhost:4096. La TUI dovrebbe connettersi e mostrare le stesse sessioni visibili nell'interfaccia web.
  4. Autenticazione attiva (se l'hai configurata): chiudi la sessione del browser, riapri l'URL e verifica che ti venga chiesto username e password.

Limiti noti

  • Su Windows l'interfaccia web è più stabile da WSL che da PowerShell. Se sei su Windows e qualcosa non funziona, installa opencode dentro WSL e avvia il server da lì.
  • L'mDNS richiede che il servizio Avahi (Linux) o Bonjour (macOS) sia attivo sulla macchina che ospita il server e sui client che vogliono risolverlo.
OAuth: sessione a scadenza — Se usi provider via OAuth (ChatGPT Plus/Pro, Anthropic Claude Pro/Max), la sessione può scadere dopo alcune ore. Quando succede, opencode smette di rispondere e devi ripetere il login. La chiave API tradizionale non ha questo problema: se puoi, usa quella per sessioni lunghe.
SPONSORED

Usa il mio link di referral, se ti iscrivi e ti abboni a Go, entrambi riceveremo un credito di utilizzo di $5 da applicare ai limiti di utilizzo Go


Abbonati a Opencode a 5$ e riscatta 5$ di cretito
Condividi