# GitHub Copilot (/ro/docs/integrations/github-copilot)

Folosești codai în Copilot Chat din VS Code printr-un Custom Endpoint și în Copilot CLI prin BYOK.

VS Code Chat are nevoie de o intrare **Custom Endpoint** pentru `codai`; Copilot CLI are nevoie de patru variabile de mediu. Niciunul nu cere plan Copilot sau autentificare GitHub.

## Î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)).
- Pe Copilot Business sau Enterprise, organizația ta trebuie să activeze politica **Bring Your Own Language Model Key in VS Code**.

## VS Code Chat (Custom Endpoint) [#vs-code-chat-custom-endpoint]

Calea cea mai rapidă e configurația gata făcută pe care gateway-ul o servește la `https://ai.codai.ro/vscode/chatLanguageModels.json` — trei intrări în picker, butonul de effort și header-e reglate. Urmezi pașii din [clienți](../gateway/clients.mdx#vs-code-copilot-chat-custom-endpoint).

Ca să scrii intrarea de mână: picker-ul de modele → **Manage Language Models → Add Models → Custom Endpoint**, apoi editezi `chatLanguageModels.json` pe care îl deschide VS Code:

```json title="chatLanguageModels.json"
[
  {
    "name": "codai",
    "vendor": "customendpoint",
    "apiKey": "${input:codaiApiKey}",
    "apiType": "chat-completions",
    "models": [
      {
        "id": "codai",
        "name": "codai",
        "url": "https://ai.codai.ro/v1/chat/completions",
        "toolCalling": true,
        "vision": true,
        "thinking": true,
        "maxInputTokens": 168000,
        "maxOutputTokens": 32000
      }
    ]
  }
]
```

- Dai **URL-ul complet al endpoint-ului**, inclusiv `/chat/completions`.
- `toolCalling: true` e obligatoriu pentru modul agent.
- `maxInputTokens + maxOutputTokens` nu trebuie să depășească fereastra de context. Valorile de mai sus sunt o fereastră prudentă de 200k; configurația servită la `https://ai.codai.ro/vscode/chatLanguageModels.json` este sursa de adevăr și anunță ferestrele mai mari pe care le poate servi gateway-ul.
- Pentru formatul Anthropic setezi `"apiType": "messages"` și `"url": "https://ai.codai.ro/v1/messages"`.

Vechea setare `github.copilot.chat.customOAIModels` și provider-ul *OpenAI Compatible* sunt depreciate. Folosești Custom Endpoint.

### MCP în VS Code [#mcp-în-vs-code]

```json title="mcp.json"
{
  "servers": {
    "codai": {
      "type": "http",
      "url": "https://ai.codai.ro/mcp",
      "headers": { "Authorization": "Bearer ${input:codai-key}" }
    }
  },
  "inputs": [
    { "type": "promptString", "id": "codai-key", "description": "codai API key", "password": true }
  ]
}
```

Deschizi fișierul de utilizator cu **MCP: Open User Configuration** sau folosești `.vscode/mcp.json` per workspace.

## Copilot CLI (BYOK) [#copilot-cli-byok]

```powershell tab="PowerShell"
$env:COPILOT_PROVIDER_BASE_URL   = 'https://ai.codai.ro/v1'
$env:COPILOT_PROVIDER_TYPE       = 'openai'
$env:COPILOT_PROVIDER_API_KEY    = 'codai_xxxxxxxx'
$env:COPILOT_PROVIDER_WIRE_MODEL = 'codai'
$env:COPILOT_MODEL               = 'codai'
copilot
```

```bash tab="bash"
export COPILOT_PROVIDER_BASE_URL='https://ai.codai.ro/v1'
export COPILOT_PROVIDER_TYPE='openai'
export COPILOT_PROVIDER_API_KEY='codai_xxxxxxxx'
export COPILOT_PROVIDER_WIRE_MODEL='codai'
export COPILOT_MODEL='codai'
copilot
```

Cu `COPILOT_PROVIDER_TYPE=anthropic`, base URL-ul e rădăcina `https://ai.codai.ro` — fără `/v1`. Gateway-ul servește și scripturi gata făcute; vezi [clienți](../gateway/clients.mdx#github-copilot-cli-byok).

### MCP în Copilot CLI [#mcp-în-copilot-cli]

CLI-ul nu citește `.vscode/mcp.json`. Adaugi serverul din linia de comandă:

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

Ca să ții cheia în afara fișierelor de configurare, folosești bridge-ul stdio de memorie descris în [clienți](../gateway/clients.mdx).

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

| Funcție | Cu codai |
| --- | --- |
| Chat, mod agent, tool-uri (VS Code) | Merg |
| Sesiuni Copilot CLI | Merg |
| Sugestii inline, căutare semantică, embeddings | Rămân pe GitHub |
| Titluri și mesaje de commit | Modele GitHub, dacă nu setezi `chat.utilityModel` / `chat.byokUtilityModelDefault` |
| Restricted Mode | Arată doar Auto |
| Memoria găzduită de GitHub și delegarea remote (CLI) | Indisponibile în modul BYOK |

## Depanare [#depanare]

- **CLI-ul raportează „Authentication failed (HTTP 401)”** cu tipul `anthropic` — base URL-ul se termină în `/v1`. Eroarea reală e un `404`; folosești URL-ul rădăcină.
- **`codai` lipsește din picker** — repornești VS Code; verifici că politica organizației permite chei proprii.
- **Modul agent e inactiv** — `toolCalling` nu e `true` pe intrarea modelului.
- **Sesiunile Agent Host nu listează `codai`** — activezi `chat.agentHost.byokModels.enabled`.

## Surse [#surse]

Verificate pe 2026-10-02.

- [VS Code — modele de limbaj](https://code.visualstudio.com/docs/copilot/customization/language-models)
- [VS Code — configurare MCP](https://code.visualstudio.com/docs/copilot/reference/mcp-configuration)
- [VS Code — servere MCP](https://code.visualstudio.com/docs/copilot/customization/mcp-servers)
- [GitHub Docs — modele BYOK în Copilot CLI](https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/use-byok-models)
- [GitHub Docs — servere MCP în Copilot CLI](https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers)
- [GitHub Docs — referința comenzilor Copilot CLI](https://docs.github.com/en/copilot/reference/copilot-cli-reference/cli-command-reference)
