Provedores e modelos
O Jarvis Code CLI suporta conectar-se a várias plataformas de LLM ao mesmo tempo — login em um clique pelo serviço gerenciado Jarvis Code, conexão ao Claude com uma chave de API da Anthropic, ou conexão a serviços de inferência de terceiros pelo protocolo compatível com OpenAI. Cada provedor corresponde a um protocolo de API específico; modelos são declarados sobre provedores, com nome, tamanho de contexto e capacidades próprios. Esta página explica como configurar cada tipo de provedor no config.toml.
Tipos de provedor suportados
O campo type da tabela providers determina qual implementação de protocolo será usada:
| Tipo | Protocolo | Uso típico |
|---|---|---|
kimi | Compatível com OpenAI | Serviço gerenciado Jarvis Code, chave de API da Kimi Open Platform |
anthropic | Anthropic Messages | Família de modelos Claude |
openai | OpenAI Chat Completions | OpenAI e serviços compatíveis, DeepSeek, Qwen etc. |
openai_responses | OpenAI Responses API | A interface Responses mais recente da OpenAI |
google-genai | Google GenAI | API Gemini |
vertexai | Google GenAI no Vertex | Google Cloud Vertex AI |
Todos os provedores se comunicam com os modelos em modo streaming por padrão. Capacidades como raciocínio, visão e uso de ferramentas são identificadas automaticamente pelo prefixo do nome do modelo — normalmente você não precisa declará-las manualmente.
Prioridade de credenciais: campo direto api_key > chave da subtabela [providers.<name>.env] > se ambos estiverem ausentes, a inicialização falha com erro. O CLI não recorre a variáveis de ambiente do shell para credenciais — veja Sobrescritas de configuração: credenciais de provedor.
/provider — gerenciamento interativo de provedores
Prefere não editar TOML à mão? Digite /provider na TUI para abrir o gerenciador de provedores, onde você adiciona ou remove provedores de forma interativa.
O gerenciador exibe os provedores como uma lista de entradas agrupadas por origem. Navegação:
- ↑/↓ para mover o cursor, ←/→ para paginar
dpara apagar o provedor atual (com confirmação[y/N])- Pressione Enter na linha
[ Add New Platform ]para adicionar um novo provedor
Há dois caminhos ao adicionar:
- Provedor de terceiros conhecido: busca o catálogo de modelos em models.dev; selecione um provedor, informe uma chave de API e escolha um modelo padrão. Fornecedores cujo protocolo o catálogo não declara (por exemplo xai, openrouter e outros SDKs específicos) são importados como compatíveis com OpenAI, com uma observação de que o protocolo foi inferido; quando o catálogo não oferece um endpoint utilizável, um prompt de base URL aparece antes; protocolos proprietários (Amazon Bedrock, Cohere) e protocolos explícitos não reconhecidos são recusados. Modelos depreciados e em estado alpha ficam fora da lista de importação. Se o catálogo público estiver inacessível, o CLI recorre a um instantâneo embutido do catálogo, então a importação funciona mesmo offline ou em redes bloqueadas
- Registro personalizado (api.json): cole a URL de um registro personalizado e o token Bearer; o CLI cria automaticamente as entradas de
providersemodels. Nas inicializações seguintes, provedores da mesma URL de registro são atualizados em conjunto, então adições, remoções e mudanças de metadados de modelo feitas na origem são sincronizadas.
WARNING
Contas gerenciadas por OAuth do Jarvis Code, autenticadas por /login, não aparecem em /provider. Use /login e /logout para gerenciá-las.
As mesmas operações estão disponíveis em ambientes não interativos pelo comando de shell: jarvis provider.
kimi
kimi é o nome de um protocolo de comunicação, não do CLI. Ele se conecta à interface compatível com OpenAI da Moonshot AI e sustenta tanto o serviço gerenciado Jarvis Code quanto uma chave de API direta da Kimi Open Platform.
base_urlpadrão:https://api.moonshot.ai/v1- Nomes de chave de credencial:
JARVIS_API_KEY,JARVIS_BASE_URL - Capacidade adicional: suporta upload de vídeo
[providers.kimi]
type = "kimi"
base_url = "https://api.moonshot.ai/v1"
api_key = "sk-xxxxx"Ao usar o serviço gerenciado Jarvis Code, executar
/loginconfigura automaticamentebase_urle credenciais — não é preciso ajuste manual.
anthropic
Para conectar à API do Claude. Modelos Claude padrão habilitam automaticamente visão, uso de ferramentas e raciocínio (onde suportado); modelos personalizados ou não cobertos precisam de capabilities declaradas explicitamente em [models.<alias>].
base_urlpadrão: segue o padrão do SDK da Anthropic- Nomes de chave de credencial:
ANTHROPIC_API_KEY,ANTHROPIC_BASE_URL max_tokenspadrão: inferido por modelo. Para sobrescrever, definamax_output_sizeno alias do modelo
[providers.anthropic]
type = "anthropic"
api_key = "sk-ant-xxxxx"
[models."claude-opus-4-7"]
provider = "anthropic"
model = "claude-opus-4-7"
max_context_size = 200000
# max_output_size = 32000 # opcional; omita para usar o padrão inferido do modeloopenai
Para conectar ao protocolo OpenAI Chat Completions, bem como a qualquer serviço de terceiros compatível com ele (sobrescreva base_url conforme necessário).
Modelos de raciocínio de terceiros (DeepSeek, Qwen, One API etc.) funcionam de imediato: o CLI trata automaticamente o campo reasoning_content e a injeção de reasoning_effort. Se o seu gateway devolve o conteúdo de raciocínio em um campo com nome fora do padrão, defina reasoning_key no alias do modelo para sobrescrever.
base_urlpadrão:https://api.openai.com/v1- Nomes de chave de credencial:
OPENAI_API_KEY,OPENAI_BASE_URL
[providers.openai]
type = "openai"
base_url = "https://api.openai.com/v1"
api_key = "sk-xxxxx"openai_responses
Corresponde à API Responses mais recente da OpenAI, sempre operando em modo streaming. A configuração é a mesma de openai.
base_urlpadrão:https://api.openai.com/v1- Nomes de chave de credencial:
OPENAI_API_KEY,OPENAI_BASE_URL
[providers.openai-responses]
type = "openai_responses"
base_url = "https://api.openai.com/v1"
api_key = "sk-xxxxx"google-genai
Para conectar diretamente à API Google Gemini. Raciocínio, visão e capacidades multimodais são detectados automaticamente pelo nome do modelo.
- Nome de chave de credencial:
GOOGLE_API_KEY
[providers.gemini]
type = "google-genai"
api_key = "xxxxx"Para passar por um proxy ou gateway compatível com Gemini, defina base_url (ou a variável de ambiente GOOGLE_GEMINI_BASE_URL); quando omitido, o padrão do SDK https://generativelanguage.googleapis.com é usado.
Informe apenas a raiz do host. O SDK Google GenAI acrescenta a versão da API e o caminho por conta própria (por exemplo
/v1beta/models/<model>:generateContent), então um/v1betano final produziria/v1beta/v1beta/…duplicado.
[providers.gemini]
type = "google-genai"
api_key = "xxxxx"
base_url = "https://seu-gateway.example"vertexai
Compartilha a mesma implementação de google-genai; definir type = "vertexai" troca para o caminho de acesso do Vertex AI.
A autenticação segue o fluxo padrão ADC do Google Cloud (gcloud auth application-default login ou um JSON de conta de serviço em GOOGLE_APPLICATION_CREDENTIALS) — essa parte não tem relação com o Jarvis Code. O ID do projeto e a região precisam ser escritos na subtabela [providers.vertexai.env] — apenas usar export GOOGLE_CLOUD_PROJECT no shell não será lido pelo CLI.
[providers.vertexai]
type = "vertexai"
[providers.vertexai.env]
GOOGLE_CLOUD_PROJECT = "meu-projeto-gcp"
GOOGLE_CLOUD_LOCATION = "us-central1"gcloud auth application-default login # autenticação única
jarvisPara rotear requisições Vertex por um endpoint personalizado (por exemplo, com proxy), defina base_url (ou a variável de ambiente GOOGLE_VERTEX_BASE_URL); quando omitido, o host regional padrão do SDK *-aiplatform.googleapis.com é usado. Como em google-genai, informe apenas a raiz do host — o SDK acrescenta /v1beta1/publishers/google/models/… sozinho.
OAuth e injeção de credenciais
O serviço gerenciado Jarvis Code usa OAuth em vez de chaves de API estáticas. Depois de executar /login, a cadeia de autenticação embutida escreve e renova as credenciais automaticamente — nenhuma configuração manual é necessária no config.toml para isso.
Próximos passos
- Arquivos de configuração — referência completa de campos das tabelas
providersemodels - Sobrescritas de configuração — regras de prioridade na resolução de credenciais de provedor
- Variáveis de ambiente — nomes de chave de credencial por tipo de provedor