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

# OpenCodex

> Conecte o Codex ao TokenLab através do OpenCodex com roteamento de API específico por modelo

## Deixe meu agente configurar isso

Copie esta tarefa para um agente que já esteja em execução no seu computador:

```text theme={null}
Read https://docs.tokenlab.sh/pt/integrations/opencodex and help me connect OpenCodex to TokenLab.
Check my installed OpenCodex and Codex versions, active configuration, and running proxy first.
Preserve existing accounts, providers, models, and permissions. Back up files before changing them.
Have me enter the API key locally; never ask for, print, or paste it in chat.
Use the TokenLab preset and the selected model's documented API format.
Check configuration loading first. Explain the cost before running a small real request.
Match the reply with its TokenLab request record.
```

## Como funciona a conexão

O [OpenCodex](https://github.com/lidge-jun/opencodex) é um proxy local entre o Codex e as APIs de modelos. Este guia usa o **OpenCodex 2.73.0** e o **Codex CLI 0.149.0**.

A integração de Chat Completions do preset do TokenLab foi lançada e verificada de ponta a ponta na versão 2.72.0. A [versão 2.73.0](https://github.com/lidge-jun/opencodex/releases/tag/v2.73.0) mantém essa integração e adiciona roteamento de Responses e Anthropic Messages específico por modelo. As rotas listadas abaixo foram verificadas com o TokenLab utilizando texto transmitido via streaming e round trips de chamadas/resultados de funções.

O Codex envia requisições Responses para o **proxy local do OpenCodex**. O OpenCodex então envia a requisição do modelo selecionado para o **TokenLab**. Uma requisição Responses na conexão local não significa que o modelo seja chamado por meio da Responses API do TokenLab.

| Modelos selecionados no Codex | OpenCodex → TokenLab |
| - | - |
| `gpt-6-astra`, `gpt-6.1-sol`, `gpt-6-sol`, `gpt-6-luna`, `grok-4.7`, `deepseek-v4.1-flash`, `deepseek-v4-pro`, `kimi-k3`, `glm-5.3` | Responses: `POST /v1/responses` |
| `claude-opus-5`, `claude-opus-5-5`, `claude-sonnet-5`, `claude-sonnet-5-5`, `claude-fable-5`, `claude-fable-5-1` | Anthropic Messages: `POST /v1/messages` |
| `gemini-3.8-flash` | Chat Completions: `POST /v1/chat/completions` |

A Base URL do preset é `https://api.tokenlab.sh/v1`. Mantenha-a inalterada: o próprio OpenCodex constrói a URL correspondente de Messages ou Responses. Modelos fora dos padrões listados de Responses e do roteamento do Claude usam o adaptador Chat do preset.

O TokenLab suporta a API nativa do Gemini para modelos que a declaram, mas **o preset do TokenLab no OpenCodex 2.73.0 chama o Gemini via Chat Completions**. Não altere o provedor inteiro para Responses ou Gemini; isso também alteraria as requisições para modelos que não aceitam esse formato.

## Instalar ou atualizar

Use o Node.js 18 ou posterior para a instalação via npm:

```bash theme={null}
npm install -g @bitkyc08/opencodex@2.73.0
ocx --version
codex --version
```

O Codex também deve estar instalado. O OpenCodex fornece [instruções de instalação](https://opencodex.me/getting-started/installation/) e [instruções de conexão com o Codex](https://opencodex.me/getting-started/quickstart/). O Windows nativo e o WSL possuem configurações separadas; execute a configuração e o Codex no mesmo ambiente.

## Adicionar o TokenLab

Crie uma chave em [TokenLab API Keys](https://tokenlab.sh/dashboard/api?tab=keys). Para configuração via terminal, siga o [Início Rápido](/pt/quickstart) para definir `TOKENLAB_API_KEY` sem colocar seu valor no histórico de comandos. Inicie o OpenCodex a partir desse terminal; um serviço em segundo plano precisa da variável em seu próprio ambiente de inicialização.

Para uma **instalação nova do OpenCodex**, execute `ocx init`, selecione TokenLab e insira a chave localmente ou use a referência literal de variável de ambiente `${TOKENLAB_API_KEY}`. Revise as opções de conexão com o Codex e inicialização automática do assistente antes de aplicá-las.

Para uma **instalação existente**, adicione o preset sem substituir outros provedores:

```bash theme={null}
ocx provider add tokenlab --api-key '${TOKENLAB_API_KEY}'
```

As aspas simples salvam uma referência à variável de ambiente, e não o valor da chave. Este comando também funciona no PowerShell. Se `tokenlab` já existir, edite esse provedor no painel em vez de sobrescrevê-lo com `--force`.

Você também pode escolher **TokenLab** na lista **Add provider** do painel e inserir a chave lá. O OpenCodex salva sua configuração em `$OPENCODEX_HOME/config.json`, normalmente `~/.opencodex/config.json`.

Inicie o proxy se ele ainda não estiver em execução e, em seguida, abra seu painel:

```bash theme={null}
ocx start
ocx status
ocx gui
```

Na página do provedor, verifique a Base URL e os modelos descobertos. O preset detecta `GET /v1/models?category=chat` e mantém modelos com capacidade de `tool-use`. Imagens, vídeo, áudio, embeddings e modelos de decisão são excluídos. A descoberta com uma chave reflete as permissões de modelo e a política de entrega dessa chave.

Execute `ocx sync` para conectar o Codex e atualizar seu catálogo de modelos, e então inicie uma nova sessão do Codex. Isso altera a conexão proxy e o catálogo do Codex; revise as configurações existentes de provedores personalizados e mantenha um backup antes de sincronizar. Não é necessário substituir sua conta ou política de permissões.

## Selecionar um modelo e verificar uma requisição

Escolha a entrada `tokenlab/<model-id>` no seletor de modelos do Codex ou selecione-a para uma única inicialização da CLI:

```bash theme={null}
codex -m "tokenlab/gpt-6.1-sol"
```

O OpenCodex usa `tokenlab/` para selecionar o provedor; o ID do modelo enviado ao TokenLab é `gpt-6.1-sol`. Escolha um ID exato atualmente disponível em [Modelos](https://tokenlab.sh/pt/models).

Para uma verificação rápida de conexão, envie:

```text theme={null}
Reply only with TOKENLAB_CONNECTION_OK. Do not use tools or modify files.
```

Esta requisição consome o seu saldo do TokenLab. Verifique a resposta e o modelo correspondente, horário e status em [Requests](https://tokenlab.sh/dashboard/runs?section=requests). A descoberta de provedores e a inicialização bem-sucedida, por si só, não comprovam o acesso à inferência.

Streaming e chamadas de função funcionam nas rotas da tabela. Entrada de imagem e controles de raciocínio dependem do modelo selecionado: verifique suas capacidades e use apenas as opções de esforço que o OpenCodex oferece para esse modelo. A entrada de imagem e as requisições de raciocínio foram verificadas em modelos representativos para as rotas Responses e Messages; a entrada de imagem do Gemini foi verificada em sua rota Chat. Um modelo com suporte a raciocínio não necessariamente expõe o texto de raciocínio nem suporta todos os níveis de esforço.

## Manter um modelo Responses em Chat Completions

Para usar o caminho de Chat para um dos modelos Responses listados, mescle uma entrada `modelAdapters` no objeto **existente** `providers.tokenlab` na configuração do OpenCodex. Este exemplo mantém o `gpt-6-astra` em Chat para o Codex:

```json theme={null}
{
  "modelAdapters": {
    "gpt-6-astra": "openai-chat"
  }
}
```

Este é um exemplo de campo do provedor, não uma substituição para a configuração completa. Preserve outras substituições de modelo, credenciais e provedores, depois reinicie o proxy e abra uma nova sessão do Codex. A remoção apenas dessa entrada de modelo restaura seu padrão de Responses.

O roteamento Messages do Claude está vinculado ao endpoint canônico do TokenLab. A substituição de Chat acima aplica-se aos padrões de Responses; ela não muda o Claude para Chat. Para um cliente nativo de Chat, os modelos Responses listados já usam Chat sem essa substituição. Consulte o [roteamento de provedores do OpenCodex](https://opencodex.me/guides/providers/#3-api-key-catalog).

## Política de entrega e outras ferramentas do TokenLab

O preset não força um cabeçalho `X-TokenLab-Delivery-Policy`. O TokenLab usa o padrão de política de entrega da sua chave de API. A escolha entre Chat, Responses ou Messages é independente da escolha de uma política de entrega; consulte as [configurações de provedor do TokenLab](/pt/guides/tokenlab-provider).

Adicione o [servidor MCP do TokenLab](/pt/integrations/tokenlab-mcp-server) para outras ferramentas de API, ou as [TokenLab Skills](/pt/integrations/coding-agent-skill) para instruções de integração. Isso não altera o provedor nem o formato de API do modelo principal.

**O JEV Auto no OpenCodex 2.73.0 usa o backend de decisão da TypeSafe.** Ele não oferece o TokenLab como esse backend. Chamar a [System One API do TokenLab](/pt/api-reference/systemone/create-decision) através do MCP é uma operação separada; não insira uma chave do TokenLab no campo de credenciais da TypeSafe.

## Solução de problemas e restauração da sua configuração

* **O TokenLab não aparece no seletor:** verifique `ocx --version`; este guia tem como alvo a versão 2.73.0. Atualize o catálogo com `ocx sync` e inicie uma nova sessão do Codex.
* **401 ou credenciais ausentes:** verifique se a chave está ativa e disponível para o processo que executa o OpenCodex. Uma variável de ambiente em outro terminal não atualiza um serviço que já está em execução.
* **O modelo está ausente:** verifique o ID exato, as permissões da sua chave e a disponibilidade atual. Modelos que não são de chat e modelos de chat sem `tool-use` não estão incluídos neste preset.
* **Requisição não suportada ou endpoint incorreto:** compare o modelo selecionado com a tabela de roteamento e inspecione as substituições de adaptadores salvas. O formato necessário é `tokenlab.accepted_request_formats` nos [detalhes do modelo](/pt/api-reference/models/get-model); a lista de modelos não substitui esse campo de detalhe. Claude e Gemini não devem ser enviados para Responses apenas porque o Codex usa Responses localmente.
* **Falha nas ferramentas ou na entrada de imagem:** guarde o erro original e o Request ID. Verifique as capacidades do modelo e a rota ativa do OpenCodex antes de alterar as configurações; não remova o histórico da conversa ou resultados de ferramentas para ocultar um erro.

Para parar de rotear o Codex pelo proxy, use `ocx stop`; o OpenCodex interrompe o proxy e restaura a conexão nativa do Codex. O comando `ocx restore` restaura a conexão nativa mantendo o proxy em execução para outros clientes. Revise a [referência da CLI do OpenCodex](https://opencodex.me/reference/cli/) antes de alterar uma instalação compartilhada com outros clientes.
