> ## Documentation Index
> Fetch the complete documentation index at: https://docs.teamsoclo.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Vianmääritys

> Oire → syy → korjaus sekä usein kysytyt kysymykset

## Pikahaku

| Sovellus sanoo | Lähes varmasti | Korjaus |
| - | - | - |
| `401 Unauthorized`, `Invalid token` | Väärä avain, puuttuvia merkkejä, vanhentunut tai poistettu käytöstä | Liitä avain [tarkistussivulle](https://gpt.teamsoclo.site/check) |
| `404 Not Found` | Base URL:stä puuttuu `/v1` (tai se on kaksinkertaistunut `/v1/v1`:ksi) | Korjaa Base URL |
| `No available channel for model ... under group ...` | Yhden paketin avain kutsuu toisen paketin mallia | Käytä pakettisi mallia, katso [Mallit](/fi/models) |
| `model not found`, välitön mallinimiovirhe | Kirjoitusvirhe mallin nimessä | Kopioi nimi [mallitaulukosta](/fi/models) |
| `429 Too Many Requests` | Ylitetty avaimen pyyntöraja per minuutti | Odota seuraavaa minuuttia, hidasta |
| `insufficient quota` | Avain on käyttänyt kaikki tokeninsa | Osta uusi koodi |
| Konfiguraatio muokattu mutta mikään ei muutu | Sovellusta ei suljettu kokonaan tai terminaalia ei avattu uudelleen | Sulje kokonaan ja avaa uudelleen |

## Avaimet ja kiintiö

### Väärä tai katkaistu avain

Yleisin ongelma ei ole rikki oleva avain vaan **muutama merkki kadonnut** tekstiä hiirellä valittaessa. Käytä aina **Copy**-painiketta lunastussivulla. Liitä avain [tarkistussivulle](https://gpt.teamsoclo.site/check): jos se sanoo kelvollisuuden, avain on kunnossa ja ongelma on sovelluksen konfiguraatiossa.

### Avain vanhentunut

Jokaisella paketilla on voimassaoloaika, joka lasketaan lunastamisesta (painettu tuotteeseen). Vanhentumisen jälkeen jokainen pyyntö palauttaa 401, vaikka kiintiötä olisi jäljellä. Tarkistussivu näyttää vanhentumispäivän. Käyttämättömiä tokeneita ei siirretä uudelle koodille.

### Kiintiö käytetty

Kaikki toimi, sitten yhtäkkiä jokainen pyyntö epäonnistuu *insufficient quota* -virheellä. Katso mitä on jäljellä tarkistussivulta. Kiintiön epätavallisen nopea väheneminen johtuu yleensä agentista, joka lukee koko projektin, tai erittäin pitkästä keskustelusta, joka lähetetään uudelleen joka vuorolla.

### Avain hukassa

Lunasta sama CDK-koodi uudelleen osoitteessa [redeem.teamsoclo.site](https://redeem.teamsoclo.site); sivu näyttää alkuperäisen avaimen. Koodeja ei uudelleenmyönnetä uudella avaimella.

### Kuinka monta konetta per avain

Laiterajoitusta ei ole, mutta **pyyntöraja per minuutti** on jaettu kaikille avaimella toimiville koneille. Avaimen jakaminen tarkoittaa, että käyttäjät kilpailevat samasta rajasta ja osuvat 429:ään nopeammin.

## Yhteys

### Puuttuva /v1

Oikea Base URL on `https://gpt.teamsoclo.site/v1`. Ilman `/v1`:tä pyynnöt osuvat verkkosivustoon API:n sijaan ja sovellus ilmoittaa 404 tai "ei voitu muodostaa yhteyttä".

<Warning>
  Päinvastainenkin epäonnistuu: jotkin sovellukset (Chatbox, jotkin Cline-versiot) liittävät `/v1`:n itsestään. Jos syötit sen ja saat silti 404, kokeile ilman `/v1`:tä; osoite on saattanut muuttua `/v1/v1`:ksi.
</Warning>

### Toisen paketin mallin kutsuminen

`No available channel for model gpt-astra under group default` tarkoittaa, että GPT-avain kutsuu Astra-mallia (tai päinvastoin). Jokainen avain voi kutsua vain oman pakettinsa mallia. Tarkista:

```bash theme={null}
curl https://gpt.teamsoclo.site/v1/models -H "Authorization: Bearer sk-xxx"
```

### 429 Too Many Requests

Jokaisella avaimella on pakettinsa mukainen enimmäismäärä onnistuneita pyyntöjä per minuutti. Sen ylittyessä saat 429 "request limit reached" -viestillä. Odota seuraavaa minuuttia. Eräskripteissä lisää viive kutsujen väliin tai osta toinen koodi kuorman jakamiseksi.

### Vastaus katkaistu kesken

Pitkää ajattelua vaativiin kysymyksiin ei-suoratoistopyyntö voidaan hylätä ennen ensimmäistä tokenia. Ota käyttöön `stream: true`. Useimmat chat-sovellukset tekevät niin jo; lisää se koodista kutsuessasi.

### `Unsupported parameter: reasoning_effort`

Vain Chat Completions hyväksyy ylimmän tason `reasoning_effort`:n. Responses API:lla käytä `"reasoning": {"effort": "high"}`. Codex hoitaa tämän itse.

## Codex

### `codex: command not found` asennuksen jälkeen

npm valmistui, mutta nykyinen terminaali ei ole ladannut PATH:ia uudelleen. **Avaa uusi terminaali**. Jos se silti epäonnistuu, tarkista, että npm:n bin-kansio on PATH:issa:

```bash theme={null}
npm config get prefix
```

Tämä kansio plus `/bin` on oltava `$PATH`:ssa.

### Codex pyytää silti OpenAI-kirjautumista

`TEAMSOCLO_API_KEY`-muuttuja ei ole saavuttanut Codex-prosessia:

* Terminaali: avaa uusi välilehti, tarkista `echo $TEAMSOCLO_API_KEY`.
* VS Code macOS:ssa: sulje `Cmd + Q`:lla ja avaa uudelleen. Asennuskomento asetti muuttujan GUI-sovelluksille `launchctl`:n kautta.
* VS Code Linuxissa: käynnistä VS Code terminaalista (`code .`), tai kirjaudu ulos ja takaisin sisään.
* Windows: avaa **uusi** PowerShell tai VS Code `setx`:n jälkeen.

Tarkista, että `config.toml`:ssa on `requires_openai_auth = false` ja `env_key = "TEAMSOCLO_API_KEY"`.

### Muokattu config.toml, mutta Codex ei muutu

Konfiguraatio luetaan vain prosessin käynnistyksen yhteydessä. **Reload Window ei riitä**; sulje VS Code kokonaan (macOS `Cmd + Q`, Windows sulje kaikki ikkunat ja taustaprosessit). Tämä on useimmin kysytty Codex-kysymys.

### `EACCES: permission denied` npm-asennuksessa

Node asennettu järjestelmäoikeuksilla, yleistä Linuxissa. Muuta npm:n etuliitettä:

```bash theme={null}
npm config set prefix ~/.npm-global
export PATH="$HOME/.npm-global/bin:$PATH"
```

Lisää `export`-rivi `~/.bashrc`:hen tai `~/.zshrc`:hen. Pitkällä tähtäimellä asenna Node nvmn kautta, katso [Aloittaminen](/fi/getting-started).

### Windows: `running scripts is disabled on this system`

PowerShell estää `.ps1`-tiedostoja ja PowerShellissä kirjoitettu `codex` / `npm` menee npm:n `.ps1`-shimien kautta. Suorita kerran:

```powershell theme={null}
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned
```

Avaa sitten uusi PowerShell. Tai kirjoita `codex.cmd`, `npm.cmd` sen sijaan.

### Windows: `EBUSY: resource busy or locked`

Codex on käynnissä (CLI, laajennus tai sovellus), joten npm ei voi ylikirjoittaa `codex.exe`:ä. Sulje kaikki Codexia käyttävät ohjelmat ja suorita asennuskomento uudelleen. Konfiguraatio kirjoitettiin jo ennen tätä vaihetta; vain CLI-päivitys ohitettiin.

### Windows: konfiguraatiotiedoston koodausvirhe

PowerShell 5.1:llä ja `Set-Content -Encoding UTF8`:lla muokkaaminen lisää BOM:in, jota Codex ei pysty lukemaan. Käytä [asennuskomentoa](/fi/setup/codex) uudelleen (kirjoittaa UTF‑8 ilman BOM:ia), tai tallenna tiedosto VS Codessa nimellä **UTF-8** (ei UTF-8 with BOM).

### Palauta edellinen konfiguraatio

Jokainen asennuskomennon suoritus varmuuskopioi vanhan konfiguraation uuden viereen:

```bash theme={null}
ls ~/.codex/*.bak.*
cp ~/.codex/config.toml.bak.20260925143000 ~/.codex/config.toml
```

Työkalulla valitse **Nollaa** ja se palauttaa automaattisesti.

## Usein kysytyt

### Miten vaihdan avaimet

Suorita [Codex-asennuskomento](/fi/setup/codex) uudelleen uudella avaimella tai suorita työkalu uudelleen. Cursorissa, Clinessä ja Chatboxissa muokkaa API Key -kenttää Asetuksissa.

### Onko asennuskomennon suorittaminen useita kertoja turvallista

Kyllä. Se on suunniteltu uudelleensuorituksille: vanha konfiguraatio tallennetaan nimellä `.bak.<timestamp>`, CLI päivitetään ja vanha avainrivi shell rc:ssäsi korvataan.

### Lähettääkö komento avaimeni jonnekin

Ei. Liität avaimen komentoon omalla koneellasi; se kirjoittaa vain ympäristömuuttujan ja paikallisen konfiguraatiotiedoston. Koko komento näytetään sivulla, lue jokainen rivi ennen suorittamista.

### Poista kaikki

Katso **Poista asennus** [Codex](/fi/setup/codex)-sivulta. Muissa sovelluksissa poista vain avain sovelluksen Asetuksista.

## Silti ei toimi

<Steps>
  <Step title="Onko avain voimassa">
    Liitä se [tarkistussivulle](https://gpt.teamsoclo.site/check). Virhe tässä tarkoittaa avainta (väärä, vanhentunut, kiintiö loppunut), ei sovellusta.
  </Step>

  <Step title="Kutsu API:a suoraan cURL:lla">
    ```bash theme={null}
    curl https://gpt.teamsoclo.site/v1/chat/completions \
      -H "Authorization: Bearer sk-xxx" \
      -H "Content-Type: application/json" \
      -d '{"model":"gpt-5.6-sol","messages":[{"role":"user","content":"hi"}]}'
    ```

    Jos tämä toimii, mutta sovellus ei, ongelma on sovelluksen konfiguraatiossa.
  </Step>

  <Step title="Tarkista kolme asiaa sovelluksesta">
    Base URL päättyy `/v1`:een, avain on täydellinen, malli vastaa pakettiasi. Nämä aiheuttavat lähes jokaisen ongelman.
  </Step>

  <Step title="Ota yhteyttä tukeen">
    Lähetä kuvakaappaus virheestä ja avaimesi neljä viimeistä merkkiä osoitteeseen [t.me/teamsoclo](https://t.me/teamsoclo). Älä koskaan lähetä koko avainta.
  </Step>
</Steps>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.