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
omp (Oh My Pi) + JoinGonka Gateway: agente com papéis de modelos
omp (Oh My Pi) é um agente de codificação de terminal, um fork do minimalista Pi, ao qual foi adicionado tudo o que faltava para um trabalho intenso: servidores de linguagem (LSP) em cada entrada de arquivo, gerenciamento de um depurador real, subagentes em cópias de trabalho isoladas, células permanentes de Python e JavaScript. O núcleo é escrito em Rust, e o mesmo binário funciona no macOS, Linux e Windows.
Os provedores no omp são descritos de forma declarativa: qualquer endpoint que fale OpenAI Chat Completions é adicionado com uma dezena de linhas em ~/.omp/agent/models.yml. JoinGonka Gateway é exatamente assim, então a conexão se resume a um comando de instalador ou a dois arquivos YAML curtos. Depois disso, o agente funciona com os modelos da rede descentralizada Gonka — DeepSeek V4 Flash, GLM-5.3 Flash e MiniMax M2.7 — a um preço único: $0.0069 por milhão de tokens de entrada.
A principal diferença do omp em relação ao seu antecessor são os papéis de modelos: as ações comuns, a análise profunda, o modo de planejamento e as tarefas de fundo podem ser delegadas a diferentes modelos e protegidas por uma cadeia de backup. Abaixo, detalhamos o caminho rápido, a configuração manual, a tabela de «qual modelo para qual papel» e a análise de erros. Os comandos e mensagens foram verificados através de uma execução real do omp 18.2.8 através do gateway em 21 de setembro de 2026. Após confirmar o endereço, serão creditados 3M de tokens gratuitos na conta, suficientes para repetir tudo isso por conta própria.
Início rápido: instalação e um comando
Passo 1: instalar o omp. Os métodos oficiais do README do projeto:
# macOS and Linux
curl -fsSL https://omp.sh/install | sh
# Homebrew
brew install can1357/tap/omp
# via Bun (requires Bun 1.3.14 or newer)
bun install -g @oh-my-pi/pi-coding-agent
# Windows (PowerShell)
irm https://omp.sh/install.ps1 | iexPasso 2: obter uma 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: rodar o instalador.
npx @joingonka/setup --tool ompO instalador vai pedir a chave — ela não é passada nos argumentos da linha de comando para não ficar no histórico do shell — e fará quatro coisas:
- registrará o provedor
joingonkaem~/.omp/agent/models.yml: o endereço do gateway, o protocoloopenai-completions, a chave como literal e três modelos da rede com janelas de contexto e tetos de resposta reais; o arquivo receberá permissões600; - definirá o modelo padrão —
modelRoles.defaultem~/.omp/agent/config.yml— como DeepSeek V4 Flash, mas só se o papel estiver vazio ou apontar para um modelo que saiu da rede: ele não se apropria da sua escolha, apenas indica como trocar; - antes de escrever, fará um backup do arquivo anterior, e deixará os demais provedores, papéis e comentários como estavam;
- 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 com a flag --model com a abreviação deepseek, glm ou minimax — o modelo indicado explicitamente sempre é gravado. Para dotfiles e servidores existe 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 omp --model glm --non-interactiveO instalador considera sozinho localizações não padrão dos configs: um perfil nomeado (OMP_PROFILE) e um diretório de agente movido (PI_CODING_AGENT_DIR). O models.json herdado ele migra para models.yml do mesmo jeito que o próprio omp faria — os provedores anteriores não vão sumir. E se houver um settings.json antigo ao lado, sem config.yml, o instalador não vai criar config.yml para que o omp não pule sua própria migração de configurações: ele vai pedir que você rode o omp uma vez e repita o comando.
Configuração manual: dois arquivos YAML
Tudo o que o instalador faz pode ser escrito à mão. São dois arquivos, e cada um tem sua função: o models.yml descreve os provedores e os modelos, o config.yml guarda as configurações — inclusive qual modelo ocupa cada papel.
# ~/.omp/agent/models.yml
providers:
joingonka:
baseUrl: https://gate.joingonka.ai/v1
api: openai-completions
apiKey: jg-your-key
models:
- id: deepseek-ai/DeepSeek-V4-Flash-0731
name: DeepSeek V4 Flash (Gonka)
input: [text]
contextWindow: 380000
maxTokens: 32768
reasoning: true
- id: zai-org/GLM-5.3-Flash
name: GLM-5.3 Flash (Gonka)
input: [text]
contextWindow: 390000
maxTokens: 8192
reasoning: true
- id: MiniMaxAI/MiniMax-M2.7
name: MiniMax M2.7 (Gonka)
input: [text]
contextWindow: 200000
maxTokens: 8192# ~/.omp/agent/config.yml
modelRoles:
default: joingonka/deepseek-ai/DeepSeek-V4-Flash-0731| Campo | Valor | O que importa |
|---|---|---|
baseUrl | https://gate.joingonka.ai/v1 | Obrigatoriamente com /v1 no final: o caminho /chat/completions o omp acrescenta por conta própria |
api | openai-completions | Transporte Chat Completions — foi com ele que validamos todo este guia |
apiKey | sua chave jg-… | O omp primeiro procura uma variável de ambiente com esse nome e, não a encontrando, usa a string como a própria chave. Um valor que começa com ! é um comando cuja saída vira a chave |
contextWindow, maxTokens | conforme a lista de modelos acima | Sem eles o omp assume 128000 e 16384 — o que não corresponde aos modelos da rede. É pela janela de contexto que o agente calcula quando é hora de comprimir o histórico |
input | [text] | Os modelos da rede aceitam texto |
reasoning | true | Marca de modelo de raciocínio: o instalador a coloca no DeepSeek V4 Flash e no GLM-5.3 Flash, enquanto a entrada do MiniMax M2.7 passa sem ela |
A chave como literal é a opção mais tranquila: o omp inicia de qualquer ambiente, e basta proteger o arquivo com chmod 600 ~/.omp/agent/models.yml. Se preferir manter a chave fora do arquivo, escreva em apiKey o nome de uma variável, por exemplo JOINGONKA_API_KEY, e exporte-a no shell de onde você executa o omp: é exatamente essa a ordem de resolução da chave descrita na documentação do projeto.
O campo opcional cost (preço por milhão de tokens) só serve para estimar o custo da sessão na interface do omp. O instalador grava ali o preço real do gateway no momento da instalação; em uma configuração manual, o campo pode ser omitido — essa estimativa não tem nada a ver com a sua fatura, o consumo real aparece no painel.
O seletor de modelo é escrito como provider/model-id. O nome do provedor é separado pela primeira barra, então identificadores da rede que têm barra própria são escritos como estão: joingonka/deepseek-ai/DeepSeek-V4-Flash-0731. Em vez de editar o config.yml, você pode definir o papel pela interface — com o comando /model dentro da sessão ou no assistente omp setup.
Funções dos modelos: qual modelo para qual trabalho
No omp, não se seleciona apenas um modelo para tudo, mas sim por funções — esta é a principal alavanca de configuração. As funções integradas para diálogo são: default, smol, slow, plan, commit, task, tiny, memory, advisor e vision. Não é necessário definir todas: as smol e slow não definidas assumem primeiro o modelo da função default, subagentes sem a função task operam no modelo da sessão atual, e commit e tiny seguem a smol. Uma configuração de uma única linha default é totalmente funcional.
Dividir funções entre modelos da rede não é por economia — o preço do DeepSeek V4 Flash, GLM-5.3 Flash e MiniMax M2.7 é o mesmo —, mas por comportamento e capacidade: um modelo de raciocínio planeja melhor, um modelo com resposta longa escreve melhor, e não há motivo para colocar tarefas triviais de fundo na mesma fila que a tarefa principal.
| Função | O que é executado nela | Modelo de rede | Por que |
|---|---|---|---|
default | movimentos normais do agente: leitura, edições, comandos | DeepSeek V4 Flash | Contexto de 380K e limite de resposta de 32768 — reserva para sessões longas com ferramentas; é o definido pelo instalador |
smol, task, commit | subtarefas rápidas, subagentes, análise de mudanças para commits | não definir — por herança chegarão ao DeepSeek V4 Flash | Todos eles invocam ferramentas, e um modelo «barato» separado não economiza nada com preço unitário |
slow | análise profunda: lógica confusa, busca de causa | GLM-5.3 Flash | Raciocina antes de responder; limite de resposta de 8192, e parte disso é dedicado ao raciocínio — para textos longos, volte para o DeepSeek V4 Flash |
plan | modo de planejamento | GLM-5.3 Flash | Um plano é um texto curto onde o fio condutor do pensamento é mais importante que o volume |
tiny | títulos de sessão e classificação de serviço — consultas curtas sem ferramentas | MiniMax M2.7 | O modelo tem a maior capacidade na rede, e o plano de fundo não disputa slots com a tarefa principal |
advisor | segundo modelo que lê cada movimento do principal e insere observações | GLM-5.3 Flash, opcional | É útil que o conselheiro seja diferente do executor; ativado pelo comando /advisor on |
vision | tarefas com imagens | não definir | Os modelos de rede são textuais: deixe a função para o provedor com modelo de vision |
# ~/.omp/agent/config.yml
modelRoles:
default: joingonka/deepseek-ai/DeepSeek-V4-Flash-0731
slow: joingonka/zai-org/GLM-5.3-Flash
plan: joingonka/zai-org/GLM-5.3-Flash
tiny: joingonka/MiniMaxAI/MiniMax-M2.7
retry:
fallbackChains:
default:
- joingonka/zai-org/GLM-5.3-FlashO bloco retry.fallbackChains é um seguro para o horário de pico: quando o modelo principal responde persistentemente com 429, o omp transfere o restante do movimento para a próxima entrada da cadeia e, após uma pausa, retorna ao principal. A chave da cadeia pode ser uma função, um modelo específico ou todo o provedor (joingonka/*).
Para uma execução, a função pode ser redefinida com uma flag: omp --model slow inicia uma sessão com o modelo da função slow, enquanto --smol, --slow e --plan substituem o modelo da própria função. Dentro da sessão, Ctrl+P percorre os modelos das funções, e /model abre a seleção; na aba Roles, ali mesmo, são atribuídas as funções e seus substitutos.
Ao valor da função pode ser adicionado um nível de reflexão — :low, :medium, :high. Esta é a sintaxe do omp, e como o nível é compreendido por um modelo específico depende do próprio modelo: no GLM-5.3 Flash, por exemplo, é um interruptor binário — detalhes na análise do modelo. E mais um detalhe útil: as funções podem ser redefinidas para um repositório por meio de um arquivo <repo>/.omp/config.yml com o mesmo bloco modelRoles. Os provedores e as chaves permanecem no diretório pessoal, para que a chave não vá parar no repositório.
Verificação: o que deve acontecer
Primeiro, confirme que o omp enxerga o provedor:
omp models joingonkaA resposta é uma tabela de três linhas com as janelas de contexto e os tetos de resposta do models.yml, arredondados para milhares (a saída está resumida: o omp ainda tem as colunas thinking e images):
joingonka (3)
model context max-out
deepseek-ai/DeepSeek-V4-Flash-0731 380K 33K
MiniMaxAI/MiniMax-M2.7 200K 8.2K
zai-org/GLM-5.3-Flash 390K 8.2KDepois, uma execução avulsa sem interface. Coloque em um diretório vazio um arquivo com um erro óbvio e peça para encontrá-lo:
omp -p "Read calc.py and tell me in one sentence whether it has a bug."O agente deve chamar sozinho a ferramenta de leitura e responder de forma objetiva — indicando a expressão onde está o erro. Na nossa execução de 21 de setembro de 2026, esse ciclo — requisição, chamada de ferramenta, resultado, resposta — passou limpo no DeepSeek V4 Flash e no GLM-5.3 Flash; sobre o MiniMax M2.7, é a última linha da tabela abaixo.
A terceira verificação é pelo lado do gateway: no painel, na seção «Uso», a requisição vai aparecer no detalhamento «Por modelos», e no bloco «Por chaves» o horário da última requisição será atualizado. Se estiver vazio, o omp está falando com outro provedor: veja o que está definido nos papéis com o comando omp config get modelRoles.
Se algo deu errado, o diagnóstico normalmente se lê direto na mensagem:
| O que aparece | O que significa | O que fazer |
|---|---|---|
Bun runtime must be >= 1.3.14 | O omp foi instalado via Bun, mas o próprio Bun está desatualizado | Atualize o Bun (bun upgrade) ou instale o binário pronto: curl -fsSL https://omp.sh/install | sh -s — --binary |
401 Invalid API key | O gateway não aceitou a chave | Confira o apiKey: a chave inteira, sem espaços nem aspas digitadas errado. Se ali estiver o nome de uma variável, ela precisa estar exportada no shell de onde o omp foi iniciado |
405 Not Allowed e uma página HTML do nginx | Faltou o sufixo no baseUrl | O endereço precisa terminar em /v1 |
404 Invalid URL (POST /v1/v1/chat/completions) | Há um rabo a mais no baseUrl | Deixe exatamente https://gate.joingonka.ai/v1 — o resto o omp completa sozinho |
400 Model … not found. Available: … | Erro de digitação no id do modelo | O próprio gateway lista os identificadores disponíveis; a lista completa está em GET https://gate.joingonka.ai/v1/models |
Warning: models.yml validation failed — custom providers disabled, seguido de No models matching "joingonka" | O arquivo não passou na validação: erro de digitação no nome de um campo obrigatório ou YAML corrompido. Mesmo assim, o omp continua funcionando com os modelos integrados | A causa aparece na linha logo abaixo do aviso; corrija o campo e repita omp models joingonka |
429 | A chave esgotou o limite de requisições por minuto ou o modelo ficou sem capacidade no horário de pico | O omp repete a requisição sozinho com pausas crescentes. Se demorar, troque de modelo com /model ou configure retry.fallbackChains; o estado da rede aparece na página de status |
402 | O saldo acabou | Recarregue a conta na seção «Faturamento»; a chave continua válida |
O turno terminou e não há resposta visível (no modo -p, uma string vazia) | Observamos isso em 21 de setembro de 2026 no MiniMax M2.7 em turnos após a chamada de ferramenta: a resposta veio dentro do bloco de raciocínio e o omp a exibiu como pensamento | Coloque nos papéis com ferramentas o DeepSeek V4 Flash ou o GLM-5.3 Flash, e deixe o MiniMax M2.7 para tarefas curtas sem ferramentas |
Quanto custa
A ferramenta de agente consome tokens de forma diferente de um chat: para cada frase sua, o omp adiciona um prompt de sistema e descrições de ferramentas, e a tarefa geralmente leva vários passos. Em nossa execução, mesmo com apenas uma ferramenta de leitura ativada, cada passo consumia cerca de 3.500 tokens de entrada; com o conjunto completo, será mais. Portanto, aqui o preço por token é o que decide.
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 é preenchido nesta página a partir de uma fonte em tempo real.
| Cenário | Consumo | Via Gateway |
|---|---|---|
| Tarefa única: ler arquivo, encontrar erro | a partir de 7K tokens | centavos de dólar |
| Dia de trabalho ativo | 3-7M tokens | unidades de centavos |
| Mês de desenvolvimento ativo | ~150M tokens | cerca de um dólar |
As estimativas na coluna da direita baseiam-se nos preços de setembro de 2026. Para comparação, como você pode pagar pelos modelos no omp:
| Método | Modelo de pagamento | O que limita |
|---|---|---|
Assinatura de coding plan (acesso via /login) | valor fixo mensal | cotas e janelas de renovação de limites do provedor |
| Chave de provedor diretamente | por tokens conforme tabela de preços do provedor | a conta cresce com a duração das sessões; o preço depende do modelo escolhido |
| JoinGonka Gateway | por tokens, saldo pré-pago | o consumo é visível no painel; não há assinaturas ou cotas mensais |
A barra de status do omp mostra uma estimativa do custo da sessão. Ela é calculada pelo campo cost no models.yml: o instalador insere ali o preço do gateway no momento da instalação, e o preço em dólares na rede flutua com a taxa do GNK, portanto, a estimativa é apenas uma referência. O consumo exato e o saldo estão no painel, nas seções "Uso" e "Faturamento". O motivo pelo qual a escolha padrão recaiu sobre o DeepSeek V4 Flash é detalhado na análise do modelo.
O que considerar no trabalho
Modo de confirmações. Por padrão, o omp opera no modo yolo: aprova sozinho a leitura, a escrita e a execução de comandos. No seu próprio projeto isso é prático; em código de terceiros, é motivo para endurecer o modo ou partir para um contêiner:
omp config set tools.approvalMode writeNo modo write, o agente pede permissão apenas para executar comandos; em always-ask, também para escrever. Para uma única execução, o mesmo é definido pela flag --approval-mode. Isso é uma propriedade do próprio omp e não depende do provedor do modelo.
Pi e omp são parentes com configurações diferentes. A configuração de uma ferramenta não é transferida para a outra: seus diretórios, formatos e nomes de campos são próprios de cada uma.
| Pi | omp | |
|---|---|---|
| Diretório de configurações | ~/.pi/agent | ~/.omp/agent |
| Provedores | models.json | models.yml |
| Modelo padrão | settings.json: defaultProvider e defaultModel | config.yml: modelRoles.default |
| Escolha do modelo por tarefa | /model na sessão | papéis modelRoles e cadeias retry.fallbackChains |
| Verificação | pi --list-models | omp models joingonka |
| Instalador | --tool pi | --tool omp |
Vários ambientes. Um perfil nomeado (omp --profile work ou a variável OMP_PROFILE) move toda a configuração para ~/.omp/profiles/<name>/agent — prático para separar chaves de trabalho e pessoais. O diretório atual do agente é exibido por omp config path.
Se você precisa do agente no editor. O omp funciona dentro do Zed pelo protocolo ACP — é o mesmo agente com as mesmas configurações, não é preciso cadastrar o provedor e os papéis de novo.
npx @joingonka/setup --tool omp — ou através de dois arquivos: provedor joingonka em ~/.omp/agent/models.yml (baseUrl com /v1, api: openai-completions, chave jg-…, modelos com contextWindow e maxTokens corretos) e modelRoles.default no config.yml. A partir daí, funciona a alavanca principal do omp: os papéis; DeepSeek V4 Flash para passos comuns, GLM-5.3 Flash para análise e planejamento, MiniMax M2.7 para tarefas de segundo plano, e a cadeia fallbackChains para horários de pico. Verificação: omp models joingonka e a seção "Uso" no painel; o preço de todos os modelos da rede é o mesmo, portanto, os papéis são escolhidos pelo comportamento, não pelo orçamento.Quer saber mais?
Explore outras seções ou comece a ganhar GNK agora mesmo.
Obter chave e tokens gratuitos →