Seções da Base de Conhecimento ▾
Navegação
▸ Comece aqui Por funçõesCategorias
- Cursor + Gonka AI — LLM barato para codificação
- Claude Code + Gonka AI — LLM para terminal
- OpenClaw + Gonka AI — agentes AI acessíveis
- OpenCode: seu próprio modelo no terminal
- Continue.dev + Gonka AI — AI para VS Code/JetBrains
- Cline + Gonka AI — agente AI no VS Code
- Aider + Gonka AI — programação em par com AI
- LangChain + Gonka AI — aplicativos AI por uma fração do custo
- n8n + Gonka AI — automação com AI barata
- Open WebUI + Gonka AI — seu próprio ChatGPT
- LibreChat + Gonka AI — ChatGPT de código aberto
- Hermes Agent + DeepSeek na rede Gonka: agente autônomo por centavos
- Kilo Code + Gonka AI — Agente de IA no VS Code
- Roo Code + Gonka AI — Agente de IA autônomo no VS Code
- LlamaIndex + Gonka AI — Aplicações RAG por alguns centavos
- PydanticAI + Gonka — Agentes de IA tipificados por alguns centavos
- Vercel AI SDK + Gonka AI — Aplicações de IA em TypeScript por centavos
- TanStack AI + Gonka — Aplicativos de IA em TypeScript por centavos
- API início rápido — curl, Python, TypeScript
- JoinGonka Gateway — Visão geral completa
- Management Keys — SaaS na Gonka
- A API de IA mais barata: comparativo de provedores 2026
- Como comprar tokens de AI e chave API: 3 formas em 2026
- Limite de solicitações do Cursor Pro esgotado — análise e uma alternativa barata
- Claude Code mais barato — análise de fatura e mudança de serviço
- Cline queima dinheiro — por que o agente gasta tanto
- OpenClaw custa caro — porque o agente queima tokens e como economizar
- OpenRouter: alternativa barata — comparativo com JoinGonka Gateway
- O melhor modelo de IA para codificação em 2026: comparação e preços
- Alternativa barata ao GitHub Copilot sem limites
- Alternativa barata ao Windsurf sem créditos e sem limites
- A API mais barata para agentes de IA em 2026
- ZCode: inferência GLM barata em vez do GLM Coding Plan
- JetBrains IDE + JoinGonka Gateway — seu próprio endpoint em vez de créditos
- GitHub Copilot BYOK: seus modelos em vez da cota
- Zed + JoinGonka Gateway — inferência barata no editor
- Pi + JoinGonka Gateway — agente terminal em inferência barata
- Codex CLI: sua própria chave em vez de assinatura
- DeepSeek Harness: seu próprio provedor via JoinGonka Gateway
- MiniMax Code: agente MiniMax com sua própria chave via Gonka
- Warp + JoinGonka Gateway — agente de terminal em seu próprio endpoint
- Trae + JoinGonka Gateway — modelos da rede Gonka no AI-IDE
- Cherry Studio + JoinGonka Gateway — cliente de IA desktop
- omp (Oh My Pi) + JoinGonka Gateway: agente com papéis de modelos
- OpenHands + JoinGonka Gateway: agente em seu próprio endpoint
- Qwen Code após o fim do qwen-oauth: trabalhando via JoinGonka Gateway
- Goose + JoinGonka Gateway: seu próprio provedor e chave no keyring
- Crush + JoinGonka Gateway: agente Charm em modelos da rede Gonka
- Zoo Code + JoinGonka Gateway: migração do Roo Code para modelos Gonka
- Kimi Code CLI: agente Moonshot AI com sua própria chave via Gonka
- Factory Droid + JoinGonka Gateway: BYOK em modelos da rede Gonka
- MiMo Code + JoinGonka Gateway: agente Xiaomi em modelos da rede Gonka
Ferramentas
Factory Droid + JoinGonka Gateway: BYOK em modelos da rede Gonka
Factory Droid (comando droid) é um agente de código em terminal da empresa Factory. Ele entende o projeto, edita arquivos, executa comandos e testes, e consegue dividir tarefas grandes em um plano. Existem dois modos: droid interativo no terminal e droid exec de execução única — uma tarefa a partir de um script ou CI.
Normalmente, o Droid funciona com modelos do catálogo da Factory, mas conta com BYOK: o array customModels em ~/.factory/settings.json aceita qualquer endpoint que suporte OpenAI Chat Completions. O JoinGonka Gateway é exatamente isso, portanto a conexão resume-se a um comando do instalador, e o agente trabalha com os modelos da rede descentralizada Gonka: DeepSeek V4 Flash, GLM-5.3 Flash e MiniMax M2.7, todos pelo mesmo preço: $0.0069 por milhão de tokens de entrada.
Uma condição deve ser conhecida antecipadamente: o modo interativo do Droid requer login na conta da Factory, e usar seus próprios modelos não elimina isso. O droid exec único em modelos BYOK funcionou em nossos testes sem login — detalhes na seção sobre BYOK. Os comandos, arquivos e mensagens abaixo foram verificados por meio de uma execução real do Droid 0.225.1 através do gateway em 23 de setembro de 2026. Após confirmar seu endereço, serão adicionados 3M tokens gratuitos à conta: o suficiente para repetir tudo isso você mesmo.
Início rápido: instalação e um único comando
Passo 1: instalar o Droid. Métodos oficiais da documentação da Factory:
# macOS and Linux
curl -fsSL https://app.factory.ai/cli | sh
# Homebrew
brew install --cask droid
# Windows (PowerShell)
irm https://app.factory.ai/cli/windows | iex
# via npm
npm install -g droidO script coloca o binário em ~/.local/bin e mostra como adicionar o diretório ao PATH; no Linux a documentação pede para instalar também o pacote xdg-utils. Para verificar: droid --version.
Passo 2: obter a chave. Cadastre-se em gate.joingonka.ai/register, confirme seu endereço e crie uma chave com o prefixo jg- na seção «Chaves de API». Uma única chave e um único saldo valem para todos os modelos da rede.
Passo 3: executar o instalador.
npx @joingonka/setup --tool droidO instalador vai pedir a chave —ela não é passada como argumento de linha de comando para não ficar no histórico do shell— e fará quatro coisas:
- adicionará ao array
customModelsdo arquivo~/.factory/settings.json(no Windows,%USERPROFILE%\.factory\settings.json) uma entrada para cada modelo da rede: o endereço do gateway, o tipo de provedorgeneric-chat-completion-api, a chave em texto puro, a janela de contexto real e o teto de resposta; o arquivo receberá permissões600; - definirá o modelo padrão —
sessionDefaultSettings.model— como DeepSeek V4 Flash, mas apenas se nenhum estiver selecionado ou se apontar para um modelo que saiu da rede. Não vai sobrescrever um modelo do catálogo da Factory nem uma entrada BYOK de terceiros, e sim indicar como trocar; - salvará uma cópia do arquivo anterior e deixará intactas entradas de terceiros em
customModels, as demais configurações e os comentários; se um arquivo não puder ser lido, não o sobrescreverá e dirá o que corrigir; - no final enviará uma requisição real ao gateway e dirá claramente se a chave, o endereço e o modelo foram aceitos.
Outro modelo padrão é definido pela flag --model com as abreviações deepseek, glm ou minimax —o modelo indicado explicitamente sempre é gravado. Para dotfiles e servidores há um modo sem perguntas, no qual a chave vem de uma variável de ambiente:
JOINGONKA_API_KEY=jg-your-key npx @joingonka/setup --tool droid --model glm --non-interactiveNão é preciso reiniciar o Droid: ele percebe sozinho as mudanças em settings.json. A linha ! Could not verify right now com resposta 429 no final significa modelo ocupado, não erro de configuração —a configuração já foi gravada.
Configuração manual: customModels em settings.json
Tudo o que o instalador faz pode ser escrito à mão. As configurações de usuário do Droid ficam em ~/.factory/settings.json; se o arquivo não existir, o Droid o cria na primeira execução. Para a rede Gonka são necessários o array customModels e um modelo padrão:
{
"customModels": [
{
"model": "deepseek-ai/DeepSeek-V4-Flash-0731",
"id": "custom:deepseek-ai/DeepSeek-V4-Flash-0731",
"displayName": "DeepSeek V4 Flash (Gonka)",
"baseUrl": "https://gate.joingonka.ai/v1",
"apiKey": "jg-your-key",
"provider": "generic-chat-completion-api",
"maxOutputTokens": 32768,
"maxContextLimit": 380000,
"noImageSupport": true
},
{
"model": "zai-org/GLM-5.3-Flash",
"id": "custom:zai-org/GLM-5.3-Flash",
"displayName": "GLM 5.3 Flash (Gonka)",
"baseUrl": "https://gate.joingonka.ai/v1",
"apiKey": "jg-your-key",
"provider": "generic-chat-completion-api",
"maxOutputTokens": 8192,
"maxContextLimit": 390000,
"noImageSupport": true
},
{
"model": "MiniMaxAI/MiniMax-M2.7",
"id": "custom:MiniMaxAI/MiniMax-M2.7",
"displayName": "MiniMax M2.7 (Gonka)",
"baseUrl": "https://gate.joingonka.ai/v1",
"apiKey": "jg-your-key",
"provider": "generic-chat-completion-api",
"maxOutputTokens": 8192,
"maxContextLimit": 200000,
"noImageSupport": true
}
],
"sessionDefaultSettings": {
"model": "custom:deepseek-ai/DeepSeek-V4-Flash-0731"
}
}| Campo | Valor | O que importa |
|---|---|---|
model | id do modelo na rede | Vai na requisição exatamente como está, junto com o prefixo do fornecedor |
id | custom: + id do modelo | Nome fixo da entrada para a flag -m e o modelo padrão. Sem esse campo, o Droid monta o nome sozinho: a partir do displayName e do número de ordem |
displayName | qualquer rótulo | É assim que o modelo aparece na lista de /model |
baseUrl | https://gate.joingonka.ai/v1 | Obrigatoriamente com /v1 no final: o caminho /chat/completions o Droid acrescenta sozinho |
apiKey | sua chave jg-… | O literal é a opção mais confiável. Uma referência como ${JOINGONKA_API_KEY} também é válida, mas aí a variável precisa estar no ambiente de onde o Droid é executado, senão a requisição não sai |
provider | generic-chat-completion-api | Tipo para OpenAI Chat Completions: exatamente assim, em minúsculas; foi com ele que toda esta instrução foi testada |
maxOutputTokens | 32768, 8192, 8192 | Teto de resposta de cada modelo na rede |
maxContextLimit | 380000, 390000, 200000 | Janela de contexto do modelo; o campo está descrito no esquema de configurações do Factory |
noImageSupport | true | Os modelos da rede são de texto; a flag desativa o anexo de imagens para essa entrada |
O modelo padrão fica em sessionDefaultSettings.model e aponta para a entrada pelo seu id. A documentação do Factory menciona ainda a chave model na raiz do arquivo, mas no nosso teste o droid exec sem a flag -m pegou o modelo justamente de sessionDefaultSettings — e depois de trocar o valor também.
A chave fica no arquivo em texto aberto: proteja o arquivo com chmod 600 ~/.factory/settings.json e não leve entradas com chave para o .factory/settings.json do projeto — ele costuma acabar no repositório. E se depois de iniciar o Droid o arquivo parecer diferente, é normal: ao salvar qualquer configuração, o Droid reescreve o arquivo inteiro — ordena as chaves, adiciona o campo index às entradas e não mantém comentários. As permissões 600 continuam, e o instalador atualiza essas entradas tranquilamente.
BYOK no Droid: seleção de modelo e requisitos de conta Factory
O Droid mostra seus próprios registros separadamente do catálogo: segundo a documentação, no modo interativo o comando /model os lista na seção Custom models, e Ctrl+N percorre as modelos direto no campo de entrada. No modo pontual, a modelo é definida pela flag -m com um valor do campo id, e as barras invertidas são escritas como estão: droid exec -m custom:zai-org/GLM-5.3-Flash "…".
Se você errar o nome, o Droid responde Invalid model e lista todas as modelos que enxerga, incluindo as próprias como custom:… (display name): de quebra, dá para ver que os registros carregaram. Um nome no estilo da documentação da Factory, formado pelo display name e pelo número (custom:DeepSeek-V4-Flash-(Gonka)-0), não funciona com um id explícito — no nosso teste deu o mesmo Invalid model.
O que exige uma conta Factory. As modelos próprias eliminam a questão do pagamento de tokens, mas não a do login no próprio produto. Veja o que mostrou o teste do Droid 0.225.1 sem fazer login:
| Cenário | Precisa de login na Factory? | O que aconteceu no teste |
|---|---|---|
droid interativo | Sim | Logo depois da tela inicial aparece «Please login with your Factory account to continue» com as opções Login e Exit; sem conta não dá para seguir |
droid exec com modelos BYOK | Segundo a documentação, sim, via chave FACTORY_API_KEY | As três modelos da rede responderam; na saída JSON, factory_credits: 0, e no log havia avisos sobre recursos de nuvem indisponíveis |
| Recursos de nuvem: sincronização de sessões com a versão web, conectores, limites do plano | Sim | As requisições à API da Factory recebiam 401 e eram ignoradas — isso não afetou o funcionamento do agente |
Para trabalhar na interface, crie uma conta Factory e faça login pelo navegador — a opção Login ou o comando /login; em uma máquina sem navegador, a documentação sugere uma chave das configurações da conta na variável FACTORY_API_KEY. Usar o droid exec sem login é prático para testar, mas não está descrito oficialmente — não conte com isso na CI. Segundo a página de preços da Factory, o BYOK está incluído em todos os planos individuais com um limite gratuito, e acima do limite o uso do BYOK é cobrado conforme as condições do plano; as condições atuais estão em factory.ai/pricing. Os tokens das modelos da rede são pagos à parte — pelo saldo da JoinGonka.
Qual modelo escolher. O preço é o mesmo para todas as modelos da rede, então a escolha é sobre o comportamento. Veja como elas se saíram no nosso teste de droid exec com uma mesma tarefa — ler um arquivo e encontrar o erro:
| Modelo | Contexto / resposta | Como se comporta no Droid |
|---|---|---|
| DeepSeek V4 Flash | 380K / 32768 | Resposta correta em dois turnos. O maior teto de resposta da rede, por isso o instalador a define como padrão. Com --auto low, ela também corrigiu o arquivo e o executou sozinha para conferir |
| GLM-5.3 Flash | 390K / 8192 | Resposta correta em dois turnos, cerca de 20 segundos. Modelo de raciocínio: parte do teto de resposta vai para o raciocínio |
| MiniMax M2.7 | 200K / 8192 | Resposta correta em dois turnos, 10-20 segundos. O raciocínio do modelo chega separado da resposta, e na saída do droid exec sobra apenas a resposta em si |
A flag -r (nível de raciocínio) não se aplica às modelos BYOK, segundo a documentação da Factory. Por que a DeepSeek V4 Flash foi escolhida como padrão é analisado no análise do modelo.
Verificação: o que deve acontecer
Coloque em um diretório vazio um arquivo calc.py com um erro óbvio — por exemplo, a área de um retângulo em que os lados são somados em vez de multiplicados — e peça ao Droid para encontrá-lo:
droid exec "Read the file calc.py in the current project directory and tell me in one sentence whether it has a bug."Sem flags, o droid exec funciona em modo somente leitura: dá para ver os arquivos, mas não alterá-los. O agente vai chamar sozinho a ferramenta de leitura e responder de forma objetiva, indicando a expressão com erro. Com a flag -o json, a resposta chega como um único objeto, fácil de processar com um script (saída resumida):
{"type":"result","subtype":"success","is_error":false,"duration_ms":2239,"num_turns":2,
"result":"Yes, the file has a bug: the rectangle area is computed as the sum of the side lengths, but it should be their product (width * height). …",
"usage":{"input_tokens":19016,"output_tokens":146,"factory_credits":0,"ttft_ms":747}}O campo factory_credits: 0 confirma que o trabalho rodou no seu modelo, e não em créditos da Factory. Para que o agente possa editar arquivos, adicione um nível de autonomia: droid exec --auto low "Fix the bug in calc.py and change nothing else." — no nosso teste, o DeepSeek V4 Flash leu o arquivo, trocou a soma pela multiplicação e rodou o script sozinho para confirmar que imprime 12.
A terceira verificação é do lado do gateway: no painel, na seção «Uso», a requisição aparece no detalhamento «Por modelos», e no bloco «Por chaves» o horário da última requisição é atualizado.
Se algo deu errado, leve em conta uma particularidade do Droid: no console, o droid exec imprime apenas Error during droid execution: Exec failed (no JSON — "result":"Exec failed"), e a causa real fica no log. Dá para extraí-la com um único comando:
grep agent_error_count ~/.factory/logs/droid-log-single.log | grep -o '"errorMessage":"[^,]*' | tail -1| O que aparece | O que significa | O que fazer |
|---|---|---|
401 Invalid API key | O gateway não aceitou a chave | Verifique o apiKey no registro do modelo: a chave inteira, sem espaços. Se houver uma referência ${…}, a variável precisa estar no ambiente de onde o Droid foi iniciado |
405 <html>…405 Not Allowed… | Falta o sufixo /v1 no baseUrl | O endereço deve ser exatamente https://gate.joingonka.ai/v1 |
400 Model "…" not found. Available: … | Erro de digitação no campo model, quase sempre falta o prefixo do fornecedor | Copie o id da lista que o próprio gateway mostra na mensagem |
Invalid model: custom:… e a lista de modelos | A flag -m ou o modelo padrão apontam para um registro que não existe | Pegue o nome na seção Available custom models. Os modelos da rede não estão lá — o Droid não carregou os registros: verifique a sintaxe do JSON |
429 Model "…" is currently overloaded in the Gonka network (rate limit) | O modelo na rede está sem capacidade livre no momento | O Droid repete a requisição sozinho — no nosso caso, cinco tentativas em cerca de dois minutos. Se não resolveu, troque de modelo com a flag -m; o estado da rede está na página de status |
402 | Acabaram os fundos no saldo | Recarregue a conta na seção «Faturamento»; a chave continua válida |
| «Please login with your Factory account to continue» | O modo interativo exige uma conta Factory | Entre com Login ou trabalhe via droid exec |
| Pausa longa antes da primeira resposta | Fila para o modelo em horário de pico | Espere ou troque de modelo com a flag -m |
Quanto custa
A ferramenta de agentes consome tokens de forma diferente de um chat: para cada frase sua, o Droid adiciona um prompt de sistema, descrições de ferramentas e um snapshot do diretório de trabalho, e a tarefa leva vários turnos. Em nossa execução, cada turno consumia cerca de 9,5 mil tokens de entrada antes mesmo da sua pergunta: a tarefa de «ler um arquivo e encontrar o erro» levou dois turnos e cerca de 19 mil tokens; «corrigir e verificar», quatro turnos e cerca de 44 mil. Por isso, o preço por token é decisivo aqui.
Através do JoinGonka Gateway, os tokens custam $0.0069 por milhão na entrada e $0.021 por milhão na saída — o preço é igual para todos os modelos da rede e é atualizado nesta página a partir de uma fonte em tempo real.
| Cenário | Consumo | Através do Gateway |
|---|---|---|
| Tarefa única: ler, corrigir, verificar | 19-44K tokens | centavos de dólar |
| Dia de trabalho ativo | 3-7M tokens | poucos centavos |
| Mês de desenvolvimento ativo | ~150M tokens | cerca de um dólar |
As estimativas na coluna da direita são baseadas nos preços de setembro de 2026. Para comparar, veja como é possível pagar pelos modelos no Droid:
| Método | Modelo de pagamento | O que limita |
|---|---|---|
| Modelos do catálogo Factory | assinatura do plano Pro, Plus ou Max | limites móveis de 5 horas, 7 e 30 dias; além disso — pool Droid Core ou compra extra de Extra Usage |
| BYOK com chave de fornecedor | por tokens conforme tabela do fornecedor | a conta cresce com a duração das sessões; o preço depende do modelo escolhido |
| JoinGonka Gateway (BYOK) | por tokens, saldo pré-pago | o consumo é visível no painel, o gateway não possui assinaturas ou cotas; as condições de BYOK no Factory são as mesmas que para qualquer chave própria |
O comando /cost na interface do Droid mostra as estatísticas da sessão, enquanto o consumo exato e o saldo para modelos BYOK ficam no painel do gateway, nas seções «Uso» e «Faturamento». Crie uma chave separada para o Droid — o tráfego dela aparecerá como uma linha independente.
O que considerar ao trabalhar
Autonomia. No modo pontual, o Droid por padrão só lê; os níveis ampliam as permissões: --auto low — edição de arquivos, --auto medium — também instalação de dependências, build, testes e commits locais, --auto high — até push e deploy. A flag --skip-permissions-unsafe remove todas as verificações — apenas para contêineres descartáveis. No modo interativo, o nível é alternado com Ctrl+L, e o inicial é definido por sessionDefaultSettings.autonomyLevel; por padrão é off — tudo com confirmação.
Assinatura nos commits. A configuração includeCoAuthoredByDroid vem ativada por padrão: o Droid adiciona uma linha de coautoria nas mensagens de commit. Se não quiser, coloque "includeCoAuthoredByDroid": false em settings.json.
Onde as sessões ficam armazenadas. Após entrar na conta, o Droid por padrão espelha as sessões do CLI na versão web da Factory — disso cuida o cloudSessionSync. As chaves BYOK, segundo a documentação, permanecem locais; se também a conversa precisar ficar na máquina, defina "cloudSessionSync": false. O gateway, por sua vez, não armazena o conteúdo dos prompts nem das respostas — nas estatísticas ficam apenas agregados de consumo.
Atualizações. A instalação por script se atualiza sozinha; dá para fixar a versão com a variável FACTORY_DROID_AUTO_UPDATE_ENABLED=false ou com o comando droid update --version <version>; builds do npm não se atualizam sozinhos. Depois de atualizar, com um único droid exec confira se os modelos da rede estão no lugar.
Imagens. Os modelos da rede são de texto; para screenshots, mantenha à mão um registro com um modelo que enxerga, de outro provedor.
Se trabalhar sem conta de fornecedor for indispensável. Os mesmos modelos da rede se conectam a agentes de terminal abertos, que não exigem login — por exemplo, ao OpenCode com o mesmo instalador, com a flag --tool opencode.
npx @joingonka/setup --tool droid adiciona ao customModels do arquivo ~/.factory/settings.json as entradas DeepSeek V4 Flash, GLM-5.3 Flash e MiniMax M2.7 (provider: generic-chat-completion-api, baseUrl com /v1, chave jg-…, id explícito no formato custom:<model>) e coloca o DeepSeek V4 Flash em sessionDefaultSettings.model. O modo interativo exige uma conta Factory; o droid exec com modelos BYOK funcionou na execução 0.225.1 mesmo sem ela, com factory_credits: 0. Para verificar, use droid exec -o json e a seção «Uso» do painel, e saiba que o Droid não escreve o motivo da falha no console, mas em ~/.factory/logs/droid-log-single.log.Quer saber mais?
Explore outras seções ou comece a ganhar GNK agora mesmo.
Obter chave e tokens gratuitos →