Como usar o Trae com sua chave CodeAll | CodeAll
CodeAll Ver planos

Como usar o Trae com sua chave CodeAll

O Trae é o agente de engenharia de software da ByteDance. Ele lê a base de código, edita arquivo e roda comando em passos, e aceita endereço de API próprio — então roda inteiro na CodeAll, pagando em reais.

Se você ainda não tem chave, escolha um plano ou peça um trial de 24h grátis.

O detalhe que mais gera chamado: o endereço da API termina em https://api.tn1.top/v1. O /v1 no fim não é opcional — sem ele o gateway responde 401 dizendo que a chave está inválida, e você vai procurar o problema no lugar errado.

1. Pré-requisitos

  • Uma chave CodeAll ativa.
  • O Trae instalado: git clone https://github.com/bytedance/trae-agent && cd trae-agent && uv sync --all-extras

2. Configurar o Trae

Crie o trae_config.yaml na pasta do projeto. O campo que decide se funciona é o provider: ele precisa ser openrouter, e não openai — a explicação vem logo abaixo do exemplo.

SistemaOnde fica
Todostrae_config.yaml (na pasta do projeto)
agents:
    trae_agent:
        enable_lakeview: false
        model: trae_agent_model
        max_steps: 200
        tools:
            - bash
            - str_replace_based_edit_tool
            - task_done

model_providers:
    codejato:
        api_key: sua-chave
        provider: openrouter
        base_url: https://api.tn1.top/v1

models:
    trae_agent_model:
        model_provider: codejato
        model: gpt-5.5
        max_tokens: 4096
        temperature: 0.5
        top_p: 1
        top_k: 0
        max_retries: 3
        parallel_tool_calls: true
  1. Use provider: openrouter. No Trae, provider: openai não significa "formato da OpenAI": significa a Responses API (/v1/responses). O openrouter é o tipo que fala /v1/chat/completions, que é o que a CodeAll serve aqui. O nome codejato na linha de cima é só um rótulo seu — quem escolhe o protocolo é o provider:.
  2. Mantenha os quatro campos top_p, top_k, max_retries e parallel_tool_calls. O exemplo curto do README do Trae os omite e o programa encerra com ModelConfig.__init__() missing 4 required positional arguments.
  3. Confira sem gastar chamada: trae-cli show-config deve mostrar Base URL: https://api.tn1.top/v1 e API Key: Set.
  4. Rode uma tarefa: trae-cli run "sua tarefa" --working-dir ..
  5. Para trocar de modelo sem editar o arquivo, use a opção -m: trae-cli run "sua tarefa" -m "gpt-5.5".
  6. Se preferir a chave fora do arquivo, exporte OPENROUTER_API_KEY — o nome vem do tipo do provedor, não do rótulo que você escolheu.

Verificado nesta configuração. O comando abaixo foi rodado contra o gateway e respondeu OK:

trae-cli run "Crie um arquivo chamado ok.txt contendo exatamente a palavra OK. Depois chame task_done." -m "gpt-5.5"

3. Modelos disponíveis

O CodeAll junta as duas famílias na mesma chave: gpt-5.5 da OpenAI e os modelos da Anthropic (Opus 4.8, Sonnet, Haiku). Trocar de modelo é trocar uma linha do config.

No Trae o modelo é informado por campo model dentro de models:.

ModeloComo escrever
gpt-5.5gpt-5.5
Opus 4.8Opus 4.8
SonnetSonnet
HaikuHaiku

4. O que funciona

RecursoStatusObservação
Tarefa completa no terminal (ler, editar, rodar comando)FuncionaRodamos uma tarefa de três passos que criou arquivo em disco e encerrou com task_done.
Chamada de ferramenta (tool calling)FuncionaÉ o que sustenta os passos: o modelo pediu bash e str_replace_based_edit_tool, e o gateway repassou as chamadas.
provider: openrouter com endereço próprioFuncionaO cliente do openrouter só usa o endereço padrão dele quando base_url está vazio; preenchido, ele respeita o seu.
provider: openaiNãoEncerra com 'NoneType' object has no attribute 'cached_tokens'. Ele chama a Responses API e espera campos de cache no relatório de uso que a CodeAll não devolve nessa superfície. Use openrouter.
Endereço com /v1FuncionaO cliente monta /chat/completions em cima do que você escrever: o endereço correto é https://api.tn1.top/v1.
Chave fora do discoDependeDá para exportar OPENROUTER_API_KEY em vez de escrever api_key no arquivo. Se deixar no arquivo, ele fica na pasta do projeto — o Trae já traz trae_config.yaml no .gitignore dele, mas confira o seu.
IDE Trae (o aplicativo, não a linha de comando)Não testamosA documentação da ByteDance descreve o caminho Settings > Models > Add Model > Custom Config, com formato OpenAI Chat Completions e a chave Full URL desligada para aceitar https://api.tn1.top/v1. Não abrimos a IDE para conferir.

5. Troubleshooting

SintomaO que fazer
'NoneType' object has no attribute 'cached_tokens'O provider está como openai. Troque para openrouter. A chamada até chega e o passo aparece como concluído, o que faz o erro parecer de rede — mas ele acontece depois da resposta, ao ler o relatório de uso da Responses API.
ModelConfig.__init__() missing 4 required positional argumentsFaltam top_p, top_k, max_retries ou parallel_tool_calls no bloco models:. São obrigatórios, embora o exemplo curto do README do Trae os omita.
401 dizendo que a chave está ausente ou inválidaDuas causas com a mesma mensagem: o base_url está sem o /v1 (o certo é https://api.tn1.top/v1), ou a chave não chegou. Rode trae-cli show-config: ele mostra o endereço em uso e se a chave foi lida.
Exportei a variável e ele continua sem chaveO nome da variável vem do tipo do provedor, não do rótulo. Com provider: openrouter a variável é OPENROUTER_API_KEY, mesmo que você tenha chamado o provedor de codejato.
O arquivo de configuração parece ser ignoradoO Trae procura trae_config.yaml na pasta de onde você rodou o comando, não na sua pasta pessoal. Use --config-file para apontar outro caminho. O YAML também não aceita tabulação: só espaços.

6. FAQ

Preciso de conta na OpenRouter?
Não. openrouter aqui é só o nome do tipo de cliente que fala /v1/chat/completions. Nenhuma requisição sai para a OpenRouter: o base_url aponta para a CodeAll.

Qual é a diferença entre o Trae e a IDE Trae?
São dois programas. Este guia cobre o agente de linha de comando (trae-cli, do repositório bytedance/trae-agent), que foi o que executamos. A IDE é um aplicativo separado; o caminho de configuração dela está na tabela acima, vindo da documentação da ByteDance.

Posso configurar mais de um modelo?
Pode. Cada entrada em models: aponta para um provedor e um nome de modelo, e o -m na linha de comando troca na hora.

Dúvida que não está aqui? Fale com a gente em suporte@tn1.top.

7. A mesma chave na próxima ferramenta

A sua chave CodeAll não é só do Trae. Ela responde nos dois formatos — o da OpenAI e o da Anthropic — então a ferramenta que fala GPT e a que fala Claude usam a mesma chave e a mesma assinatura.

Na prática: você deixa o Trae no modelo que preferir para a tarefa de agora e abre outra ferramenta com o modelo nativo dela, sem trocar de chave, sem uma segunda mensalidade e sem refazer configuração.

Ferramentas próximas do Trae, cobertas pela mesma chave:

Ver todas as ferramentas compatíveis