====== OpenCode: Kontextová okna GPT ====== //Vytvořeno: **12.9.2026** | Aktualizováno: **~~LASTMOD~~**// [[https://github.com/anomalyco/opencode|OpenCode]] může být přihlášený přímo k OpenAI přes ChatGPT OAuth. Konfigurační profil modelu pak určuje, kdy agent začne komprimovat kontext a jak velký vstup vůbec odešle. Tento zápisek popisuje ověřenou konfiguraci v ''~/.config/opencode/opencode.json''; pro Claude Code za [[ai:integrace:cli:cli-proxy-api|CLIProxyAPI]] je samostatný postup v navazujícím článku. ===== Proč nestačí výchozí katalog OpenCode ===== V ověřené instalaci OpenCode 1.18.30 nešel provoz přes CLIProxyAPI, ale přímo přes OpenAI OAuth. Změna OAuth tokenu nebo katalogu proxy proto neměnila jeho kontextová okna. OpenCode měl pro GPT-5.5 a GPT-5.6 natvrdo nastavené ''context: 400000'', ''input: 272000'' a ''output: 128000''. Naopak katalog ''models.dev'' uváděl pro ''gpt-6-astra'' 1 050 000 tokenů. Ani jedna hodnota nebyla bezpečným limitem pro použitý ChatGPT účet: * ''gpt-5.6-luna'', ''gpt-5.6-sol'', ''gpt-5.6-terra'' a ''gpt-6-astra'' přijaly vstup o 900 314 tokenech; * luna a astra odmítly vstup o 1 000 314 tokenech; luna odmítla i 950 314 tokenů; * ''gpt-5.5'' neprošel přes 350 314 tokenů a ''gpt-5.3-codex-spark'' přes 200 314 tokenů. Velké okno tedy nelze určit jen podle obecného katalogu modelu. Příliš vysoká hodnota je horší než konzervativní hodnota: OpenCode by komprimoval pozdě a požadavek by mohl selhat až při odeslání k API. ===== Dva profily pro stejný model ===== Praktické řešení je mít pro model dva profily: * běžný profil s kontextem 272 000 tokenů; * explicitně zvolený profil ''-max'' s kontextem 921 000 tokenů a bezpečně nižším vstupem 793 000 tokenů. Profil ''-max'' používá stejné upstream ID. Nejde tedy o jiný model, ale o vědomě zvolený rozpočet kontextu. Tím se dlouhé okno nezapne omylem pro každý nový běh. ==== Příklad konfigurace ==== Tady je zkrácený vzor pro lunu. Stejný pár profilů je definovaný pro ''gpt-5.6-sol'', ''gpt-5.6-terra'' a ''gpt-6-astra''. { "provider": { "openai": { "models": { "gpt-5.6-luna": { "limit": { "context": 272000, "input": 144000, "output": 128000 } }, "gpt-5.6-luna-max": { "id": "gpt-5.6-luna", "name": "gpt-5.6-luna-max", "limit": { "context": 921000, "input": 793000, "output": 128000 } } } } } } Hodnota ''input'' je nižší než ''context'', protože výstupní rozpočet 128 000 tokenů musí zůstat dostupný pro odpověď. Nastavení 793 000 tokenů zároveň zůstává pod ověřeným vstupem 900 314 tokenů. Po úpravě konfigurace je nutný restart ''opencode serve'' nebo jiného běžícího procesu OpenCode. Konfigurace se čte při startu, proto běžící server dál oznamuje předchozí limity. ===== Výběr provozního režimu ===== Výchozí limit 272 000 tokenů není technický strop velkých modelů ani hranice prompt cache. Při opakování stejného vstupu o 400 314 tokenech byla GPT cacheovaná z 99,95 %. Hranice proto cache nevypíná. Hodnota 272 000 tokenů slouží jako úsporná provozní volba. Ve veřejné debatě se objevuje souvislost s dražšími dlouhými vstupy placeného API, ale dopad dlouhého kontextu na kvótu konkrétního ChatGPT předplatného zde změřený nebyl. ''-max'' profil má být použitý, až když je velký kontext pro konkrétní práci skutečně potřeba. Při přepnutí modelu v rozhraní OpenCode vybírej buď základní ID, například ''gpt-6-astra'', nebo vědomě jeho variantu ''gpt-6-astra-max''. Chování změny limitu u již běžící konverzace nebylo ověřené; bezpečný postup je vybrat profil před začátkem nové práce. ===== Vztah ke CLIProxyAPI a claudexu ===== [[ai:integrace:cli:cli-proxy-api#podminena-oprava-astry-a-volba-plneho-okna|Wrapper claudex]] řeší stejnou volbu jinak: výchozí ''CLAUDEX_CTX_ECO'' je 272 000 a plné okno se vyžádá parametrem ''--ctx-max''. U Astry navíc opravuje chybný údaj 272 000 z [[https://github.com/router-for-me/models|komunitního katalogu router-for-me/models]] podmíněným pravidlem. OpenCode a claudex není vhodné směšovat: v této instalaci OpenCode používá přímý OpenAI OAuth, zatímco claudex komunikuje přes CLIProxyAPI. Jejich modelové katalogy, přihlášení i limity je potřeba ověřovat odděleně. ===== Zdroje ===== * [[https://github.com/anomalyco/opencode|OpenCode – zdrojový kód a dokumentace]] * [[ai:integrace:cli:cli-proxy-api|CLIProxyAPI – konfigurace claudexu, cache a kontextová okna]] * [[https://github.com/router-for-me/models|router-for-me/models – komunitní katalog modelů]] * [[https://github.com/router-for-me/models/issues/53|router-for-me/models issue #53 – nesoulad kontextového okna Astry]]