Files
OmniRoute/docs/i18n/lv/docs/frameworks/OPENCODE.md
Diego Rodrigues de Sa e Souza 8feea123bb feat(docs): mirror every docs/ page in all 65 locales (#14106)
* feat(docs): mirror every docs/ page in all 65 locales

Extends the documentation mirrors from the 22-page core set (#13940) to
every Markdown page under docs/: 152 sources x 65 locales = 9,880 mirrors
(6,208 new), language bars rewritten for the full locale list, state
adopted so the blocking drift gate now covers all 152 pages.

run-translation.mjs: an oversized block made only of table rows or list
items (PROVIDER_REFERENCE.md 244-row table, FREE_TIERS.md 71-item list) is
cut at item boundaries and rejoined without a blank line — the single
16-40 KB request outlived the backend socket for verbose scripts. 48
older mirrors whose tables had lost rows were retranslated with --force.

* docs(i18n): refresh mirrors for the sources the base changed since the branch cut

Section-level retranslation of the 29 docs (and README.md) whose source
or mirrors moved on release/v3.8.51 during the run, then state adoption;
the drift gate is green again on the merged tree.
2026-09-18 13:16:46 -03:00

12 KiB

OpenCode Integration (Latviešu)

🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW


Statuss: Vispārēji pieejams. Mērķauditorija: Operatori, kuri savieno OpenCode ar OmniRoute izvietojumu. Patiesais avots (konfigurācijas shēma): src/shared/services/opencodeConfig.ts Patiesais avots (npm pakotne): @omniroute/opencode-provider/ (publicējama darbvieta)

OpenCode ir aģentisks CLI/darbvirsmas MI klients. Tas nolasa savu nodrošinātāju katalogu no ~/.config/opencode/opencode.json (vai opencode.jsonc) un izmanto shēmu vietnē https://opencode.ai/config.json. OmniRoute sevi pakalpojumā OpenCode piedāvā kā vienu no šiem nodrošinātājiem — katrs pieprasījums plūst caur OmniRoute standarta, ar OpenAI saderīgo /v1 saskarni, tādēļ OpenCode automātiski izmanto Auto-Combo maršrutēšanas, ķēdes pārtraucēju, atslēgu politiku, novērojamības u.c. priekšrocības.

Tiek atbalstīti divi integrācijas veidi. Izvēlieties vienu — abi ģenerē vienādu konfigurāciju.


1. veids — CLI ģenerators (bez npm instalēšanas)

Ieteicams galalietotājiem. Iekļauts OmniRoute komplektācijā. Pārraksta opencode.json tā pašreizējā atrašanās vietā.

# Pēc OmniRoute instalēšanas (npm i -g @omniroute/cli vai lokāls klons)
omniroute config opencode \
  --base-url http://localhost:20128 \
  --api-key "$OMNIROUTE_API_KEY"

Fonā CLI izsauc mergeOpenCodeConfigText() (src/shared/services/opencodeConfig.ts:104), tādēļ esošajā opencode.json tiek saglabāti citi nodrošinātāji un komentāri. OmniRoute ieraksts tiek atomāri pievienots vai aizstāts.

Iegūtais fails (noklusējuma modeļu katalogs):

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "omniroute": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "OmniRoute",
      "options": {
        "baseURL": "http://localhost:20128/v1",
        "apiKey": "<jūsu-atslēga>",
      },
      "models": {
        "claude-opus-4-5-thinking": { "name": "claude-opus-4-5-thinking" },
        "claude-sonnet-4-5-thinking": { "name": "claude-sonnet-4-5-thinking" },
        "gemini-3.1-pro-high": { "name": "gemini-3.1-pro-high" },
        "gemini-3-flash": { "name": "gemini-3-flash" },
      },
    },
  },
}

2. veids — npm pakotne @omniroute/opencode-provider

Ieteicams, ja konfigurāciju skriptējat no Node/TS (CI konveijeri, monorepozitoriji, pielāgotas instalēšanas plūsmas).

npm install --save-dev @omniroute/opencode-provider
import { writeFileSync } from "node:fs";
import { buildOmniRouteOpenCodeConfig } from "@omniroute/opencode-provider";

const config = buildOmniRouteOpenCodeConfig({
  baseURL: "http://localhost:20128",
  apiKey: process.env.OMNIROUTE_API_KEY ?? "sk_omniroute",
  // Neobligāti: aizstājiet OpenCode pieejamo modeļu katalogu
  models: ["auto", "claude-opus-4-7", "gpt-5.5"],
  modelLabels: { auto: "Auto-Combo" },
});

writeFileSync("opencode.json", JSON.stringify(config, null, 2));

Lai veiktu nesagraujošu sapludināšanu ar esošu failu, atkārtojiet mergeOpenCodeConfigText() no opencodeConfig.ts vai izsauciet CLI ģeneratoru.

Pilnu API aprakstu skatiet pakotnes README.


Ko izpildlaika vide faktiski dara

Abi veidi izveido vienādu provider.omniroute.npm: "@ai-sdk/openai-compatible". Izpildlaikā OpenCode ielādē @ai-sdk/openai-compatible (kas jau ir OpenCode tranzitīvā atkarība) un konfigurē to ar baseURL + apiKey. Tālāk:

OpenCode lietotāja saskarne/aģents
   → @ai-sdk/openai-compatible
      → HTTP POST {baseURL}/chat/completions          (OmniRoute OpenAI saskarne)
         → OmniRoute /v1/chat/completions apdarinātājs (open-sse/handlers/chatCore.ts)
            → kombinētā maršrutēšana / Auto-Combo / izpildītājs
               → augšupējais nodrošinātājs

Spraudnis nekad neveic HTTP pieprasījumus. Tas tikai ģenerē konfigurāciju.


Modeļu kataloga noklusējumi

export const OMNIROUTE_DEFAULT_OPENCODE_MODELS = [
  "claude-opus-4-5-thinking",
  "claude-sonnet-4-5-thinking",
  "gemini-3.1-pro-high",
  "gemini-3-flash",
] as const;

Varat tos pārrakstīt, izmantojot models: [...]. Ieteicamie papildinājumi:

  • "auto" — padara pieejamu OmniRoute Auto-Combo maršrutētāju, kam nav nepieciešama konfigurācija. Ļauj OpenCode izvēlēties „labāko pieejamo modeli”, neveicot kataloga vērtību tiešu iestatīšanu kodā.
  • "<combo-name>" — jebkura kombinācija, ko esat definējis informācijas panelī; OmniRoute to atrisina pārskatāmi.

URL normalizācija

Palīgfunkcija pieņem abas formas un izvada tieši vienu /v1:

Ievade Izvade (options.baseURL)
http://localhost:20128 http://localhost:20128/v1
http://localhost:20128/ http://localhost:20128/v1
http://localhost:20128/v1 http://localhost:20128/v1
http://localhost:20128/v1/// http://localhost:20128/v1

Šī dublikātu novēršana attiecas uz visbiežāk sastopamo problēmu vecākās konfigurācijās. Ja jums ir opencode.json, kas izveidots pirms v3.8.0 un norāda uz /v1/v1/..., atkārtoti palaidiet ģeneratoru vai vēlreiz izsauciet createOmniRouteProvider.


Autentifikācijas režīmi

OmniRoute iestatījums Ieteicamā apiKey vērtība
REQUIRE_API_KEY=false (lokāli pēc noklusējuma) sk_omniroute (literāla viettura vērtība)
REQUIRE_API_KEY=true Īsta katram lietotājam paredzēta API atslēga no informācijas paneļa → API atslēgas.

Anthropic stila klientiem, kas nosūta x-api-key un anthropic-version, OmniRoute funkcija extractApiKey pieņem arī atslēgu no x-api-key. OpenCode izmanto OpenAI saskarni, tādēļ tas vienmēr nosūtīs Authorization: Bearer ${apiKey} — šeit nav piemērojams neviens īpašs Anthropic gadījums.


Problēmu novēršana

Pazīme Cēlonis Risinājums
404 katram pieprasījumam, kura URL satur /v1/v1/ Novecojusi konfigurācija no spraudņa pirms v3.8, kas divreiz pievienoja /v1. Atkārtoti ģenerējiet, izmantojot 1. vai 2. ceļu.
401 Invalid API key OmniRoute iestatījums ir REQUIRE_API_KEY=true, un atslēga nav zināma. Izveidojiet atslēgu informācijas panelī vai iestatiet REQUIRE_API_KEY=false (tikai lokāli) un izmantojiet sk_omniroute.
Modeļu saraksts OpenCode lietotāja saskarnē ir tukšs Visi 4 noklusējuma modeļi ir paslēpti OmniRoute nodrošinātāja redzamības iestatījumos. Norādiet models: ["auto", ...], lai padarītu redzamus iespējotos modeļus.
OpenCode 500 ar cannot read property 'models' Vecāka OpenCode versija (< 0.1.x) nepieņēma iekļauto models. Jauniniet OpenCode uz versiju, kas atbilst v1 shēmai (opencode.ai/config.json).

Skatiet arī