# Claude Code (/ro/docs/integrations/claude-code)

Îndrepți Claude Code spre URL-ul rădăcină codai, fixezi toate alias-urile de model pe codai și adaugi serverul MCP.

Claude Code are nevoie de `ANTHROPIC_BASE_URL=https://ai.codai.ro`, de cheia ta codai în `ANTHROPIC_AUTH_TOKEN` și de toate alias-urile de model fixate pe `codai`.

## Înainte să începi [#înainte-să-începi]

- O cheie codai din [hub.codai.ro](https://hub.codai.ro) → **Keys → Create key** (detalii în [quickstart](../gateway/index.mdx)).
- Claude Code instalat. Nu ai nevoie de cont Anthropic.

## Configurare [#configurare]

Pui variabilele în fișierul de setări de **utilizator**: `~/.claude/settings.json` (Windows: `%USERPROFILE%\.claude\settings.json`).

```json title="~/.claude/settings.json"
{
  "env": {
    "ANTHROPIC_BASE_URL": "https://ai.codai.ro",
    "ANTHROPIC_AUTH_TOKEN": "codai_xxxxxxxx",
    "ANTHROPIC_MODEL": "codai",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "codai",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "codai",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "codai",
    "CLAUDE_CODE_SUBAGENT_MODEL": "codai"
  }
}
```

- `ANTHROPIC_BASE_URL` este **rădăcina**. Claude Code adaugă singur `/v1/messages`.
- `ANTHROPIC_AUTH_TOKEN` pleacă drept `Authorization: Bearer` și nu cere aprobare. Merge și `ANTHROPIC_API_KEY` (trimisă ca `x-api-key`), dar modul interactiv îți cere o dată să o aprobi.
- Fixezi toate cele patru variabile de model. Altfel munca de fundal și sub-agenții cer id-uri `claude-*` încorporate în loc de `codai`.
- Nu pune niciodată token-ul în `.claude/settings.json` al unui proiect — acel fișier ajunge de obicei în git.
- O valoare dintr-un fișier de setări bate un `export` din shell. Rulezi `/status` ca să vezi ce folosește de fapt Claude Code.

În **extensia VS Code** setezi aceleași perechi în `claudeCode.environmentVariables`, ca array de `{ "name": …, "value": … }`.

## MCP [#mcp]

Cu cheie:

```bash
claude mcp add --transport http codai https://ai.codai.ro/mcp --header "Authorization: Bearer codai_xxxxxxxx"
```

Sau într-un `.mcp.json` de proiect, cu cheia citită din mediu:

```json title=".mcp.json"
{
  "mcpServers": {
    "codai": {
      "type": "http",
      "url": "https://ai.codai.ro/mcp",
      "headers": { "Authorization": "Bearer ${CODAI_API_KEY}" }
    }
  }
}
```

- `type` e obligatoriu când e setat `url`.
- Nu scrie `${ANTHROPIC_AUTH_TOKEN}` în header; se expandează la o valoare goală.

**Fără cheie (OAuth):** adaugi serverul fără header, apoi rulezi `/mcp` sau `claude mcp login codai` și te autentifici în browser. codai suportă Dynamic Client Registration și PKCE, deci nu mai trebuie nimic altceva. Un server adăugat cu un header static pe care gateway-ul îl respinge nu trece automat pe OAuth — scoți întâi header-ul.

## Ce merge și ce nu [#ce-merge-și-ce-nu]

| Funcție | Cu codai |
| --- | --- |
| Chat, bucla de agent, tool-uri, sub-agenți | Merg, toate pe `codai` |
| `/v1/messages/count_tokens` | Nu e servit; Claude Code îl tratează ca opțional |
| Header-ele `anthropic-beta` ale clientului | Ignorate — gateway-ul își setează propriile beta |
| `output_config.effort` în cerere | Ignorat — setezi effort cu `X-Codai-Effort` (vezi [header-e](../gateway/headers.mdx)) |

## Depanare [#depanare]

- **`404`** — `ANTHROPIC_BASE_URL` se termină în `/v1`. Folosești rădăcina `https://ai.codai.ro`.
- **Prompt de login la prima rulare** — blocurile `env` de proiect se încarcă abia după asistentul de primă rulare. Pui token-ul în setările de utilizator sau îl exporți în shell.
- **`Extra inputs are not permitted`** — setezi `CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1` în același bloc `env`.
- **Apare un model `claude-*` în consum** — lipsește una dintre cele patru variabile de model.

## Surse [#surse]

Verificate pe 2026-10-02.

- [Claude Code — LLM gateway](https://code.claude.com/docs/en/llm-gateway)
- [Claude Code — variabile de mediu](https://code.claude.com/docs/en/env-vars)
- [Claude Code — setări](https://code.claude.com/docs/en/settings)
- [Claude Code — configurarea modelului](https://code.claude.com/docs/en/model-config)
- [Claude Code — autentificare](https://code.claude.com/docs/en/authentication)
- [Claude Code — MCP](https://code.claude.com/docs/en/mcp)
