Instalarea OpenCode și configurarea OmniProxy
Dorești un asistent de codare care să îți înțeleagă proiectul fără a te bloca la instalare și configurare? OpenCode poate fi lansat dintr-un terminal, IDE sau desktop, apoi conectat pas cu pas la serviciul de model pe care îl folosești.
OpenCode este un asistent de codare open-source care îți permite să scrii cod dintr-un terminal, IDE sau desktop. Acesta nu stochează codul sau contextul tău, făcându-l potrivit pentru proiecte sensibile la confidențialitate. build este folosit pentru a modifica un proiect, în timp ce plan este doar pentru citire în mod implicit și este util pentru înțelegerea codului necunoscut și planificarea modificărilor înainte de a le face. Poți alege un serviciu de model în funcție de nevoile tale.
Înainte de a începe
Scriptul de instalare este cea mai ușoară opțiune. Ai nevoie de un terminal modern—o aplicație de terminal care poate rula comenzi și lucra cu fișiere de proiect—cum ar fi WezTerm, Alacritty, Ghostty sau Kitty. Pe Windows, WSL este preferat. Acesta oferă un mediu Linux în interiorul Windows cu performanță și funcționalitate mai complete.
Cel mai ușor
Script de instalare
- curl opencode.ai/install
- Folosește direct pe macOS Linux
- WSL este recomandat pe Windows
macOS Linux
Homebrew tap
- anomalyco/tap/opencode
- Actualizat mai frecvent decât formula
- Un pachet este disponibil și pentru Arch
Windows nativ
Manager de pachete
- choco sau scoop
- Sau instalează global cu npm
- Poți, de asemenea, să îl descarci din Releases
Pregătește, de asemenea, ID-ul modelului din lista curentă de modele. Un ID de model este numele pe care serviciul îl folosește pentru a identifica precis un anumit model.
Instalare și prima lansare
Cea mai ușoară comandă de instalare este:
curl -fsSL https://opencode.ai/install | bash
Poți folosi, de asemenea, una dintre aceste metode de instalare:
- Node.js:
npm install -g opencode-ai. Bun, pnpm și Yarn au, de asemenea, comenzi de instalare globală corespunzătoare; vezi pagina de introducere la sfârșitul acestui ghid. - Homebrew pe macOS și Linux:
brew install anomalyco/tap/opencode. Folosește acest tap deoarece este actualizat mai frecvent decâtbrew install opencode, care este întreținut de echipa Homebrew. - Arch Linux: folosește
sudo pacman -S opencodepentru versiunea stabilă sau pachetul AURopencode-binpentru o versiune mai nouă. - Windows: folosește
choco install opencodesauscoop install opencode. Poți folosi șinpm install -g opencode-ai. Fișierele binare pot fi descărcate și din Releases. Suportul pentru instalarea cu Bun pe Windows este încă în lucru.
Intră în directorul proiectului tău, apoi lansează OpenCode:
cd /path/to/project
opencode
Când îl folosești pentru prima dată, poți rula /init. Acesta analizează proiectul și creează AGENTS.md în rădăcina proiectului. Acest fișier poate fi trimis (commit) la Git, astfel încât proiectul să păstreze aceste instrucțiuni.
Obținerea valorilor de conexiune de la OmniProxy
baseURL: https://your-omniproxy-origin.example/v1
API Key: <YOUR_OMNIPROXY_API_KEY>
Model ID: Copy from the current OmniProxy model list
baseURL este adresa serviciului, API Key este credențialul de acces și Model ID este numele complet al modelului.
Când folosești /v1/chat/completions, setează pachetul npm la @ai-sdk/openai-compatible. Chat Completions este un tip de interfață pentru cereri de chat. Comută la @ai-sdk/openai doar când modelul folosește /v1/responses. Când OmniProxy este utilizat prin endpoint-ul de chat completions, păstrează pachetul de compatibilitate.
Copiază întregul ID al modelului din lista curentă a OmniProxy, incluzând orice slash-uri. La data de 09-10-2026, două ID-uri de referință au fost claude-sonnet-5-5 și gpt-6-luna. gpt-6-luna suportă Chat Completions; apelarea funcțiilor prin Chat Completions este suportată doar când reasoning_effort este none. Nu copia un ID care nu este în listă.
Introducerea configurației instrumentului
Un Furnizor (Provider) poate fi înțeles ca un set de valori de configurare pe care OpenCode le folosește pentru a se conecta la un serviciu de model. Documentația Furnizorului tratează un serviciu compatibil OpenAI care nu este listat sub /connect ca un Furnizor personalizat. Un serviciu compatibil OpenAI folosește același format de cerere și poate fi apelat de același tip de client.
- Rulează
/connectîn OpenCode și derulează până la Other. - Introdu un ID de Furnizor. Exemplul de mai jos folosește
omniproxy. Alege un ID ușor de reținut deoarece trebuie să folosești același ID în fișierul de configurare. - Introdu Cheia API OmniProxy. Acest pas salvează doar credențialul; adresa și modelele trebuie adăugate în
opencode.json. Credențialul este stocat în~/.local/share/opencode/auth.json. - Creează sau modifică
opencode.jsonîn directorul proiectului:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"omniproxy": {
"npm": "@ai-sdk/openai-compatible",
"name": "OmniProxy",
"options": {
"baseURL": "https://your-omniproxy-origin.example/v1"
},
"models": {
"claude-sonnet-5-5": { "name": "Claude Sonnet 5.5" },
"gpt-6-luna": { "name": "GPT-6 Luna" }
}
}
}
}
- Rulează
/models. Furnizorul personalizat și modelele sale vor apărea în listă.
ID-ul introdus sub /connect trebuie să se potrivească cu cheia din opencode.json. Nu pune o cheie secretă reală în acest fișier. Dacă nu folosești /connect, poți folosi sintaxa variabilelor de mediu în options.apiKey, cum ar fi {env:VARIABLE_NAME}. În testele din 09-10-2026 cu OpenCode 1.18.34, punerea cheii direct în options.apiKey al proiectului fără a folosi /connect s-a conectat de asemenea cu succes. Dacă gateway-ul nu validează cheia, această valoare poate fi un șir de tip placeholder utilizat doar pe mașina locală. Cheile sub models trebuie să folosească ID-urile complete din listă.
Cheie
/connect
- Selectează Other în partea de jos
- Alege propriul tău ID de Furnizor
- Stocat în auth.json
Proiect
opencode.json
- Cheia furnizorului trebuie să folosească același nume
- Folosește un pachet npm compatibil
- baseURL se termină cu /v1
Selectează
/models
- Modelul apare în listă
- Selectează unul înainte de a pune o întrebare
- Folosește ID-ul din lista gateway-ului
Verificarea cu o sarcină reală
Rulează mai întâi o sarcină reală din directorul proiectului. Formatul referinței modelului este Provider ID/model ID; păstrează orice slash-uri din interiorul ID-ului modelului:
opencode run --model omniproxy/claude-sonnet-5-5 --auto "Explain what a file you specify does. Do not modify the file."
--auto permite acestei rulări să folosească instrumente precum instrumentele de citire a fișierelor. În testele din 09-10-2026 cu OpenCode 1.18.34, a citit cu succes conținutul fișierului specificat. Prima rulare a durat aproximativ două minute.
Pentru utilizare interactivă, rulează opencode, apoi selectează un model cu /models. Poți folosi @ pentru a căuta fișiere. Folosește opencode auth list pentru a confirma credențialul salvat prin /connect, apoi verifică înregistrările de cereri ale OmniProxy pentru a verifica sursa și ID-ul modelului.
Lansare
opencode lansează
- Mai întâi cd în proiect
- auth list arată ID-ul
- Fișierul de configurare este în proiect
Sarcină
A citit codul
- Întreabă despre un fișier specific
- Revizuiește explicația sa
- Folosește /undo dacă este greșit
Jurnale
Vizibil în gateway
- Sursa este OpenCode
- ID-ul modelului se potrivește
- Nu trimite cheia
Erori comune
- OmniProxy nu apare sub
/models: Verifică dacă ID-ul introdus sub/connectse potrivește cu cheia dinopencode.json, cănpmeste setat la@ai-sdk/openai-compatible, și căbaseURLse termină cu/v1. - Credențialul lipsește: Rulează
opencode auth list. Furnizorii precum Bedrock care se bazează pe variabile de mediu nu apar aici; un Furnizor personalizat configurat prin/connectar trebui să fie vizibil. - Funcționalitatea Windows este incompletă: Folosește scriptul de instalare în interiorul WSL.
- ID-ul modelului este invalid: Copiază-l din nou din lista curentă a OmniProxy și actualizează cheia corespunzătoare sub
models. - Cererile merg la endpoint-ul greșit: Păstrează
@ai-sdk/openai-compatiblepentru chat completions. Nu schimba pachetul pentru interfața Responses decât dacă acel model de pe OmniProxy folosește efectiv/v1/responses.
Referințe oficiale
Pentru instalare, vezi OpenCode introduction. Pentru Furnizori personalizați, vezi Providers. Pentru ID-urile de model folosite în exemple, vezi Claude model overview și GPT-6 Luna.
Înlocuiește fiecare spațiu rezervat cu valori din propria ta configurare OmniProxy. Nu publica niciodată o cheie reală.
Un rezultat salvat sau HTTP 200 singur nu dovedește compatibilitatea completă a Agentului. Verifică sursa și modelul în înregistrarea de apeluri OmniProxy.