Voltar aos guias
Agentes de programação·21 de setembro de 2026·Atualizado em 24 de setembro de 2026·7 min de leitura

Alternativas ao Oh My Pi: escolha pelo workflow e pelo controle da API

Dois dos quatro motivos habituais para deixar um agente de programação não se aplicam ao omp, e migrar para fora custa mais do que migrar para dentro.

Última revisão em .

Não há motivo urgente para sair do Oh My Pi, e a lista honesta de alternativas é curta: um cliente que peça confirmação antes de executar comandos ou uma interface gerenciada que você não execute por conta própria. O Oh My Pi está ativo e é gratuito — a API do GitHub informa can1357/oh-my-pi como não arquivado, licenciado sob MIT, com cerca de 32.300 estrelas e último push no dia da verificação, e omp.sh fornece uma Offer legível por máquina de $0 (ambos verificados em 21 de setembro de 2026). Portanto, esta é uma página de roteamento, não um texto de resgate.

Duas combinações já são tratadas e não são repetidas aqui. Para o projeto upstream do qual ele fez fork, consulte Oh My Pi vs Pi. Para o outro agente de terminal que a maioria das pessoas considera como alternativa, consulte Oh My Pi vs OpenCode. Tudo abaixo trata dos clientes que essas duas páginas não mencionam.

Dois dos quatro motivos habituais para trocar não se aplicam

Compilações de alternativas normalmente classificam agentes de programação em categorias local-first, API aberta, autônomos e nativos de IDE. Em relação ao Oh My Pi, duas dessas categorias estão vazias, e dizer isso é mais útil do que preenchê-las.

Ser local-first não é motivo para sair. O README do omp tem uma seção "Run it yourself" que diz "OpenAI-compatible /v1/models. Local instances skip the key.", e lista Ollama, Ollama Cloud, LM Studio, llama.cpp, vLLM e LiteLLM. Leia as tags, não apenas a lista: o README marca Ollama, LM Studio, llama.cpp e vLLM com local — sua própria legenda define isso como "runs against a local server with the key optional" — enquanto LiteLLM e Ollama Cloud não têm essa tag, e docs/models.md faz a descoberta do LiteLLM usando LITELLM_API_KEY ou autenticação armazenada quando o proxy exige uma chave. Seu campo discovery.type aceita ollama, llama.cpp, lm-studio, openai-models-list, proxy e litellm (mesmo arquivo, lido em 21 de setembro de 2026). Sair do omp para executar um modelo local é sair para algo que ele já faz.

Uma superfície de API aberta e sem controle de acesso também não é motivo para sair. O omp é MIT, não vende nada, e seu models.yml documentado aceita onze valores de api — openai-completions, openai-responses, openai-codex-responses, azure-openai-responses, anthropic-messages, bedrock-converse-stream, google-generative-ai, google-gemini-cli, google-vertex, typesafe e openrouter-decisions — dos quais a documentação observa que os dois últimos são APIs de julgamento, não transportes de chat (docs/models.md, lido em 21 de setembro de 2026). A manchete do README conta "60+ providers". Nada nesse caminho está sujeito a um plano, porque não existe plano.

Os motivos que permanecem

Por que você sairiaO Oh My Pi já oferece isso?Onde procurar em vez disso
Você quer que o agente pare e peça confirmação antes de executar um comandoNão por padrão. yolo é o modo padrão documentado e aprova automaticamente read, write e exec, sem pedir confirmaçãoAltere tools.approvalMode para always-ask ou write primeiro. Somente se isso não for suficiente, mude para um cliente cujo padrão solicite confirmação
Você quer uma interface gerenciada ou autônoma que não execute por conta própriaNão. O omp é um CLI de terminal na sua própria máquinaOpenHands, que tem seu próprio produto hospedado. Nenhum preço ou licença do OpenHands foi verificado para esta página
Você quer a interface inline do seu editor em vez de um terminalNão. O omp é um cliente de terminalCline, Continue ou Zed
Você quer modelos locaisSim — seis backends executados por você estão listados, quatro deles marcados com local, nos quais a chave é opcionalFique. Consulte a documentação da API compatível com Ollama se estiver combinando uso local e hospedado
Você quer um cliente aberto sem conta ou planoSim — MIT, $0 em seu próprio JSON-LD, nenhuma página de checkout no sitemap, nove protocolos de comunicação de chat mais duas APIs de julgamentoFique

A linha do modo de aprovação é a que importa. De acordo com a própria tabela de modos de aprovação do omp, lida em 21 de setembro de 2026, always-ask aprova automaticamente read e solicita confirmação para write e exec; write aprova automaticamente read e write e solicita confirmação para exec; yolo, o padrão, não solicita confirmação. Esse é um padrão documentado, não um defeito — e mudar uma configuração custa menos do que mudar de cliente. Vale mencionar uma ressalva: Roo Code está arquivado (archived=true, último push em 15/05/2026, API do GitHub, 21 de setembro de 2026), e nenhum sucessor foi mencionado no início do README, portanto ele não é um destino de migração, independentemente do que diga um comparativo antigo. O motivo do arquivamento não foi estabelecido aqui.

Migrar para fora custa mais do que migrar para dentro

Essa é a assimetria que ninguém calcula antes de começar. O README do omp diz que "On first run omp inherits whatever is already on disk: rules, skills, and MCP servers from .claude, .cursor, .windsurf, .gemini, .codex, .cline, .github/copilot, and .vscode" — sem script de migração. Chegar é gratuito. Nada na superfície documentada do omp grava esses formatos de volta, portanto sair significa reescrever manualmente a configuração do provedor, as entradas de modelo e as regras no destino.

Os transcripts são um segundo custo separado. O omp mantém as sessões como JSONL em ~/.omp/agent/sessions/<encoded-cwd>/, e os comandos de exportação na página de operações de sessão produzem HTML (/export) e texto na área de transferência, além de um arquivo JSON temporário (/dump) — nenhum deles é o formato de sessão de outro agente. A documentação do omp alerta que o arquivo temporário "persiste após o comando e pode conter contexto bruto ou segredos; proteja-o ou remova-o de acordo". Não foi verificado para esta página se outro agente ou conversor de terceiros consegue ler esse JSONL, portanto planeje transportar o contexto manualmente, não por importação.

O rollback é fácil, o que é uma boa notícia. Como a importação apenas lê os diretórios dos seus outros agentes, testar uma alternativa deixa ~/.omp/ intacto: mantenha ~/.omp/agent/models.yml e config.yml no lugar e omp continuará funcionando exatamente como antes. Faça a verificação inversa antes de apagar qualquer coisa — confirme primeiro que o destino conclui uma tarefa real no seu repositório.

Uma armadilha de nomenclatura enquanto você move arquivos: pesquisar por omp.json retorna Oh My Posh, um renderizador não relacionado de prompt de shell multiplataforma cujos temas se chamam literalmente *.omp.json. A configuração do Oh My Pi é ~/.omp/agent/models.yml, e nenhum arquivo que termine em .omp.json pertence a ele.

O que cada alternativa exige da sua própria chave de API

Nenhum desses clientes contabiliza seus tokens por conta própria; a cobrança vem de quem emitiu a chave. Crush, Codex CLI, goose e OpenHands podem ser baixados gratuitamente — os termos do próprio Claude Code não foram verificados para esta página. O que muda é o formato da configuração e, em dois casos, se o endpoint fala o protocolo que o cliente espera.

ClienteLicençaComo um endpoint personalizado é declaradoO bloqueio a observar
CrushFSL-1.1-MIT, não uma licença OSIprovider add --type openai-compat --base-url --api-key em um crushrc, depois model add por modeloA janela de contexto e os quatro campos de preço são digitados manualmente por modelo. Um crushrc é Bash e executa em um shell completo, e o README do Crush diz que qualquer $(...) em crush.json é executado no carregamento
Claude CodeNão verificado aquiANTHROPIC_BASE_URL mais uma credencial de gatewayO guia de compatibilidade da Anthropic exige o formato Anthropic Messages, Bedrock InvokeModel ou Agent Platform rawPredict — um endpoint de Chat Completions não é nenhum deles. A Anthropic também afirma que uma credencial de gateway substitui uma assinatura do claude.ai para essa sessão e que os limites da assinatura deixam de se aplicar, enquanto definir apenas a URL base não faz isso. Consulte a documentação da URL base
Codex CLIApache-2.0~/.codex/config.toml, model_providers.<id>.base_url e env_keyO bloqueio mais difícil para um endpoint de Chat Completions. De acordo com o código-fonte do provedor, wire_api aceita apenas responses; chat foi removido e agora gera erro nominalmente. Um endpoint que ofereça apenas Chat Completions não consegue conduzi-lo
gooseApache-2.0OPENAI_API_KEY, OPENAI_HOST, OPENAI_BASE_PATHO projeto mudou para aaif-goose/goose e a documentação para goose-docs.ai; a raiz de block.github.io/goose agora oferece apenas um stub de redirecionamento "goose has moved", e os caminhos abaixo dela retornam 404
OpenHandsNão verificado aquiLLM_BASE_URL, LLM_API_KEY, LLM_MODEL — definidos nas configurações da interface ou como variáveis de ambiente ou entradas config.tomlAs strings de modelo seguem a lista de provedores do LiteLLM, portanto um modelo não listado precisa do id prefixado pelo provedor LiteLLM, como openai/<id> (documentação de LLM do OpenHands)

Licenças e fatos dos repositórios lidos na API do GitHub e nos próprios arquivos de cada projeto em 21 de setembro de 2026; texto da Anthropic obtido de sua página sobre gateways de LLM, que também diz que a Anthropic "não endossa, mantém nem audita produtos de gateway de terceiros". As variáveis do goose foram relidas na página atual de provedores do goose no mesmo dia, que documenta OPENAI_HOST como uma "URL de endpoint personalizado (o padrão é api.openai.com)" e OPENAI_BASE_PATH como o "Caminho da solicitação anexado ao host (o padrão é v1/chat/completions)".

goose: endpoint compatível com a OpenAI
# goose reaches an OpenAI-compatible endpoint through the built-in
# OpenAI provider. OPENAI_HOST is the host root; OPENAI_BASE_PATH is the
# request path appended to it, and defaults to v1/chat/completions.
export OPENAI_API_KEY="your-key"
export OPENAI_HOST="https://api.kunavo.com"
export OPENAI_BASE_PATH="v1/chat/completions"

A Kunavo publica guias de configuração para cada um desses clientes — Crush, Claude Code, Codex CLI, goose, OpenHands — e uma referência de configuração publicada não é um teste de compatibilidade. Nenhum desses clientes foi testado em execução contra o endpoint da Kunavo, incluindo o próprio Oh My Pi.

O cliente muda; a cobrança de tokens não

Como nenhum desses clientes cobra algo próprio, o modelo escolhido altera seu custo muito mais do que o cliente em que você o executa. Os valores abaixo são uma aritmética ilustrativa de tokens, não custos medidos de tarefas nem um teto de cobrança. Considere uma sessão que envie 200.000 tokens de entrada não armazenados em cache e receba 15.000 tokens de saída, às tarifas atuais do catálogo da Kunavo por milhão de tokens.

ModeloEntrada / saída por 1MCusto estimado para essa sessão
Claude Haiku 4.5$0.70 / $3.50$0.192
GPT-5.6 Terra$0.70 / $4.20$0.203
Claude Sonnet 4.6$2.10 / $10.50$0.578
Claude Opus 5$3.50 / $17.50$0.963

Sob essas premissas, a mesma sessão varia de $0.192 em Claude Haiku 4.5 a $0.963 em Claude Opus 5 — uma diferença da qual nenhuma escolha de cliente nesta página chega perto. Observe que a tarifa mais barata da lista e o menor custo para concluir a tarefa são afirmações diferentes: um modelo mais barato que precise de três tentativas pode custar mais do que um que conclua em uma única passagem, portanto meça no seu próprio repositório. O valor do catálogo da Kunavo é um piso de cobrança, não um limite — quando o upstream informa sua cobrança, a fatura é o maior entre o custo do catálogo e o custo do upstream multiplicado pela margem aplicável. As cobranças de cache e as ferramentas externas ficam fora deste exemplo, e o recarregamento mínimo é de $10 em crédito pré-pago, que financia um saldo em vez de comprar um plano. Consulte os detalhes de cobrança.

Uma observação de escopo antes de planejar uma migração para IDE: a Kunavo não oferece nenhum modelo de embeddings, portanto um cliente que indexe seu repositório localmente precisa ter essa etapa organizada em outro lugar. O catálogo da Kunavo contém modelos de chat-completion e de mídia.

Experimente uma tarefa delimitada antes de se comprometer

Escolha a única alternativa para a qual seu motivo de saída realmente aponta, configure-a com o formato da tabela acima e execute uma tarefa que você já executou no omp. Mantenha ~/.omp/ intacto enquanto faz isso. Se o destino for o Codex CLI, verifique primeiro o bloqueio de protocolo — um endpoint que ofereça apenas Chat Completions não funcionará nele, independentemente do restante da configuração. Se você vai continuar com o omp e queria apenas um controle de execução mais rigoroso, a mudança é uma única configuração. De qualquer forma, comece pelo guia de integração do Oh My Pi e crie uma conta da Kunavo quando estiver pronto para financiar uma chave. Para uma pesquisa mais ampla de clientes, consulte o diretório de APIs de agentes de IA.

Perguntas frequentes

Quais são as melhores alternativas ao Oh My Pi?

Depende do motivo pelo qual você está saindo, e dois motivos comuns não são motivos de verdade. Se você quer modelos locais, fique: o README do omp lista Ollama, Ollama Cloud, LM Studio, llama.cpp, vLLM e LiteLLM em "Run it yourself"; docs/models.md documenta a descoberta implícita de runtime para Ollama, llama.cpp, LM Studio e LiteLLM; e o README diz "Local instances skip the key" — a tag local ali abrange Ollama, LM Studio, llama.cpp e vLLM, mas não LiteLLM, cuja descoberta ainda exige uma chave quando o proxy exige uma. Se você quer um cliente aberto e sem bloqueios, fique: o omp usa MIT, omp.sh publica um preço legível por máquina de $0, e seu sitemap com 36 URLs não contém nenhuma página de preços, checkout, cadastro, login ou conta. Dois motivos continuam válidos. Se você quer um agente que pare e peça confirmação antes de executar um comando, o modo de aprovação padrão documentado do omp é yolo, que aprova automaticamente leitura, gravação e execução e não solicita nada — altere essa configuração primeiro e só então considere Cline, Continue ou Zed para uma interface nativa de editor, ou OpenHands para uma interface gerenciada. Se você está escolhendo especificamente entre omp e Pi ou OpenCode, essas duas comparações já existem neste site.

O Oh My Pi ainda é mantido?

Sim, com base em todos os sinais datados disponíveis em 21/09/2026. A API do GitHub informa can1357/oh-my-pi como archived=false, fork=false, licenciado sob MIT, criado em 31/12/2025, com aproximadamente 32.300 estrelas e um último push em 21/09/2026. Naquele momento, as versões eram publicadas diariamente: v18.2.6 em 18/09/2026, depois v18.2.7 e v18.2.8, ambas em 21/09/2026, com o pacote npm @oh-my-pi/pi-coding-agent trazendo as versões correspondentes. Essas contagens e tags mudam constantemente, portanto trate-as como um retrato daquele dia, não como um número atual. Observe também que o README do omp o chama de fork do Pi, enquanto os dois numeram suas versões em escalas não relacionadas — o omp em 18.x e o Pi em 0.x — portanto nenhum dos números é um indicador de maturidade em relação ao outro. O motivo da divergência não foi estabelecido aqui.

Posso mover minha configuração do Oh My Pi para outro agente de programação?

Não automaticamente. A importação funciona em uma única direção. O README do Oh My Pi informa que, na primeira execução, ele herda do disco as regras, habilidades e servidores MCP já existentes em .claude, .cursor, .windsurf, .gemini, .codex, .cline, .github/copilot e .vscode, sem script de migração. Nada na superfície documentada do omp grava esses formatos de volta, portanto chegar ao omp é gratuito, enquanto sair dele significa reescrever manualmente a configuração do provedor, as entradas de modelo e quaisquer regras específicas do omp no destino. As sessões são um problema separado: o omp as armazena como JSONL em ~/.omp/agent/sessions, e os comandos de exportação documentados na página de operações de sessão produzem HTML (/export) e texto na área de transferência, além de um arquivo JSON temporário (/dump) — nenhum deles é o formato de sessão de outro agente. Não foi verificado aqui se existe um conversor de terceiros para esse JSONL.

Quais agentes de programação não conseguem usar um gateway do OpenAI Chat Completions?

Dois dos que estão aqui: Codex CLI e Claude Code, com base na leitura das fontes e da documentação em 21/09/2026. O Codex CLI é o caso mais direto. Em openai/codex, em codex-rs/model-provider-info/src/lib.rs, o enum WireApi contém exatamente uma variante, Responses, descrita como a Responses API em /v1/responses, e uma constante nomeada rejeita a configuração antiga com a mensagem de que wire_api = "chat" não é mais compatível, orientando você a definir wire_api = "responses". Portanto, um endpoint que ofereça apenas /v1/chat/completions não pode servir de backend para o Codex CLI, independentemente do base_url definido em ~/.codex/config.toml. A configuração com escopo de projeto do Codex também não pode substituir o provedor ou a autenticação locais da máquina: a referência de configuração avançada lista model_provider e model_providers entre as chaves para as quais um .codex/config.toml local do projeto é ignorado. Claude Code é o caso mais discreto e também o mais fácil de declarar de forma ampla demais: o guia de compatibilidade de gateways da Anthropic diz que um gateway precisa expor o formato Anthropic Messages, Amazon Bedrock InvokeModel ou Agent Platform rawPredict, e um endpoint de Chat Completions não é nenhum deles — portanto ANTHROPIC_BASE_URL espera um endpoint no formato da Anthropic, não um de Chat Completions. Dos clientes restantes na tabela acima, Crush, goose e OpenHands documentam, cada um, um caminho compatível com OpenAI Chat Completions. As extensões de editor estão fora do que foi verificado aqui.

O Crush é de código aberto?

Não sob uma licença aprovada pela OSI atualmente. A leitura de charmbracelet/crush/LICENSE.md em 21/09/2026 mostra o título "Functional Source License, Version 1.1, MIT Future License", a abreviação FSL-1.1-MIT e a linha de copyright "Copyright 2025-2026 Charmbracelet, Inc." A própria API do GitHub informa a licença apenas como NOASSERTION. Essa é a diferença de licenciamento mais marcante em relação a Oh My Pi, Pi e OpenCode, os três sob MIT. O Crush é gratuito para download; a distinção que vale publicar é a licença, não uma taxa. Um projeto separado, com proprietários diferentes, também chamado OpenCode, opencode-ai/opencode, está arquivado, com último push em 18/09/2025, e seu trabalho continuou como Crush — nunca use a documentação ou o formato de configuração desse repositório arquivado para nenhum dos dois projetos.

O goose mudou? Ele ainda é um projeto da Block?

Mudou. A API do GitHub resolve block/goose para aaif-goose/goose, sob Apache-2.0, com a página inicial goose-docs.ai, conforme leitura em 21/09/2026. O próprio anúncio do projeto, datado de 7 de abril de 2026, diz que a Block doou o goose à Agentic AI Foundation, na Linux Foundation, juntamente com o MCP da Anthropic e o AGENTS.md da OpenAI, e que o goose "ainda é de código aberto, continua sendo desenvolvido ativamente e ainda é o mesmo agente que você conhece". O antigo host de documentação está parcialmente desativado, não totalmente: block.github.io/goose ainda responde na raiz, mas apenas com uma página "goose has moved" que redireciona para goose-docs.ai, enquanto os caminhos de documentação abaixo dele — /goose/docs/ e subsequentes — retornam 404. De qualquer forma, um favorito ou comando copiado que aponte para o host antigo está desatualizado.

O Oh My Pi custa alguma coisa, e suas alternativas?

O cliente omp é gratuito: omp.sh fornece um bloco JSON-LD de SoftwareApplication com uma Offer de preço "0" em USD e uma URL de licença MIT, verificado em 21/09/2026, e seu sitemap com 36 URLs, no mesmo dia, não continha nenhuma página de preços, checkout, cadastro, login ou conta. Crush, goose e Codex CLI também são gratuitos para download. O que você realmente paga em todos os casos são tokens de modelo, cobrados por quem emitiu a chave da API; portanto, trocar de cliente não altera a cobrança por si só. Uma alternativa vende seu próprio plano de modelo: Charm Hyper, que o README do Crush chama de "o provedor oficial do Crush", publicou em 21/09/2026 um nível gratuito de 100 Hypercredits por mês, uma assinatura de $20 por mês com 250 Hypercredits renovados diariamente e pacotes pré-pagos de $5 por 100, $10 por 200 e $20 por 400 créditos que nunca expiram, afirmando que um Hypercredit "atualmente vale 5¢". Essas são as tarifas publicadas pela Charm para o serviço da Charm, não da Kunavo, e o Crush não exige que você use essas ofertas — ele também aceita sua própria chave por meio de um provedor personalizado compatível com OpenAI.

Devo trocar o Oh My Pi pelo Pi ou pelo OpenCode?

Essas duas perguntas têm páginas próprias neste site e não são respondidas novamente aqui, porque a resposta depende de detalhes que esta página não contém. Pi é o projeto upstream do qual o Oh My Pi fez fork; seu repositório mudou de badlogic/pi-mono para earendil-works/pi, está ativo e sob MIT, com aproximadamente 108.000 estrelas em 21/09/2026, e lê um arquivo de configuração diferente — ~/.pi/agent/models.json em vez de ~/.omp/agent/models.yml — portanto a configuração escrita para um não é carregada pelo outro. Aqui, OpenCode significa o anomalyco/opencode ativo, para o qual sst/opencode redireciona, não o CLI Go arquivado com o mesmo nome.

Verificado em 21 de setembro de 2026, buscando, para esta página: o README do Oh My Pi, docs/models.md, docs/approval-mode.md e sua página de operações de sessão no branch main; o enum WireApi do Codex; o LICENSE.md e o README do Crush; o guia de compatibilidade de gateways da Anthropic; a documentação atual de provedores do goose e seu anúncio de mudança; e os preços publicados em hyper.charm.land. Contagens de repositórios, datas, licenças e números de versões vêm de leituras das APIs do GitHub e do npm datadas do mesmo dia. Nenhum cliente desta página foi testado em execução contra o endpoint da Kunavo. As tarifas de tokens da Kunavo foram lidas no catálogo ativo, e todos os valores em dólares aqui são aritmética ilustrativa de tokens.