[{"data":1,"prerenderedAt":268},["ShallowReactive",2],{"\u002Fblog\u002Fagent-harness-selection\u002F:pt":3,"\u002Fblog\u002Fagent-harness-selection\u002F-surround:pt":164,"blog-all-posts:pt":165},{"id":4,"title":5,"author":6,"body":10,"date":147,"description":148,"extension":149,"image":150,"locale":151,"meta":152,"minRead":153,"navigation":154,"original":155,"path":156,"pinned":155,"seo":157,"source":158,"sourceUrl":23,"stem":159,"tags":160,"updated":150,"__hash__":163},"blog\u002Fblog\u002Fagent-harness-selection.pt.md","Testei Pi Agent, OMP, Codex, ZCode — no fim escolhi OpenCode + OpenChamber",{"name":7,"avatar":8},"Chen Dahuang",{"src":9,"alt":7},"\u002Favatar.jpg",{"type":11,"value":12,"toc":135},"minimark",[13,28,31,36,41,44,47,59,63,66,69,72,76,79,83,89,95,108,115,119,122,125,128],[14,15,16],"blockquote",{},[17,18,19,20,27],"p",{},"Original postado no ",[21,22,26],"a",{"href":23,"rel":24},"https:\u002F\u002Fx.com\u002Frealchendahuang\u002Fstatus\u002F2085410520459604026",[25],"nofollow","X",".",[17,29,30],{},"Andei testando Pi Agent, OMP, ZCode, Codex, OpenCode — esses Agent Harness todos. E finalmente entendi o que eu realmente preciso.",[32,33,35],"h2",{"id":34},"meus-três-critérios","Meus três critérios",[37,38,40],"h3",{"id":39},"primeiro-gui-madura-e-estável","Primeiro: GUI madura e estável",[17,42,43],{},"Quem se acostuma com GUI não volta para TUI. Bater papo numa telinha preta é um sofrimento — você precisa decorar um monte de atalhos e comandos para conseguir usar de verdade. Já na GUI é só clicar num ícone aqui, num botão ali, intuitivo.",[17,45,46],{},"Então eu precisava de uma GUI madura, estável e bonita.",[17,48,49,50,54,55,58],{},"Esse critério já derrubou o ",[51,52,53],"strong",{},"Pi Agent"," e o ",[51,56,57],{},"OMP",". Não é que o núcleo seja ruim — é que as GUIs da comunidade são porcas demais. Fazer a própria na mão exige um esforço gigantesco, e essas ferramentas são customizáveis demais: sua GUI feita à mão não é portátil — troca de máquina, troca de pessoa, e tudo tem que recomeçar do zero.",[37,60,62],{"id":61},"segundo-sem-vendor-lock-in-sem-puxar-saco-de-fornecedor","Segundo: sem vendor lock-in, sem puxar saco de fornecedor",[17,64,65],{},"O Codex até abriu a configuração para modelos de terceiros, mas configurar é um parto, e modelo de terceiro sempre é \"cidadão de segunda classe\" — sufocado pelos modelos oficiais, atrasado pelo ritmo de updates. Isso me irrita profundamente.",[17,67,68],{},"O ZCode é pior: nem dá para logar via OAuth nos Coding Plan das outras empresas (tipo Kimi For Code, Grok Build), a não ser que você faça gambiarras.",[17,70,71],{},"Por isso cortei o ZCode e o Codex — softwares que favorecem um fornecedor específico de modelos.",[37,73,75],{"id":74},"terceiro-open-source-customizável","Terceiro: open source, customizável",[17,77,78],{},"Preciso desenvolver em cima do próprio produto e customizá-lo para entregar algo pronto para usar aos clientes. Então ele precisa ser open source e com licença amigável — bom para eu me divertir, bom para o cliente usar sem dor, sem precisar ficar fazendo hack maluco.",[32,80,82],{"id":81},"a-resposta-final-opencode-openchamber","A resposta final: OpenCode + OpenChamber",[17,84,85,86,27],{},"Depois de filtrar tudo, o único que sobrou de verdade foi o ",[51,87,88],{},"OpenCode",[17,90,91,92,27],{},"Mas o OpenCode é só um núcleo de Agent. Para dar a ele uma GUI madura, estável e boa de usar, finalmente achei a resposta definitiva: ",[51,93,94],{},"OpenChamber",[96,97,98,102,105],"ul",{},[99,100,101],"li",{},"Núcleo: OpenCode, open source, sem lock-in, suporta vários modelos",[99,103,104],{},"Interface: OpenChamber, uma bancada GUI madura",[99,106,107],{},"Combinação: núcleo estável + interface que flui, e dá para customizar quando precisar",[17,109,110,111],{},"Repo open source: ",[21,112,113],{"href":113,"rel":114},"https:\u002F\u002Fgithub.com\u002Fopenchamber\u002Fopenchamber",[25],[32,116,118],{"id":117},"algumas-reflexões","Algumas reflexões",[17,120,121],{},"Escolher ferramenta é, no fundo, escolher em quem está o poder de decisão.",[17,123,124],{},"Melhor ferramenta fechada que seja: direção de updates, suporte a modelos, política de preço — tudo é decidido por outros, e você só aceita passivamente. Open source + sem lock-in te dá sempre uma saída e sempre a liberdade de mudar.",[17,126,127],{},"E a briga TUI vs GUI? Não sofra à toa. Ferramenta serve para trabalhar, não para provar que você domina linha de comando. Interface confortável, que você usa por anos — isso sim importa.",[17,129,130,131],{},"Leitura relacionada: ",[21,132,134],{"href":133},"\u002Fblog\u002Fdeepseek-v4-flash-review","DeepSeek V4 Flash versão final — experiência aprofundada",{"title":136,"searchDepth":137,"depth":137,"links":138},"",2,[139,145,146],{"id":34,"depth":137,"text":35,"children":140},[141,143,144],{"id":39,"depth":142,"text":40},3,{"id":61,"depth":142,"text":62},{"id":74,"depth":142,"text":75},{"id":81,"depth":137,"text":82},{"id":117,"depth":137,"text":118},"2026-08-06","Retrospectiva da escolha de Agent Harness: critérios de experiência GUI, vendor lock-in e liberdade de customização que eliminaram Pi Agent, OMP, Codex e ZCode, para no fim escolher o núcleo OpenCode + a interface OpenChamber.","md",null,"pt",{},6,true,false,"\u002Fblog\u002Fagent-harness-selection",{"title":5,"description":148},"x","blog\u002Fagent-harness-selection.pt",[161,162],"AI Agent","Escolha de ferramenta","Jmo9yqFAy4sv3LTtnfQngN6PdlN2_xzy8FeLjTzkHVY",[150,150],[166,168,177,186,192,200,207,214,222,228,235,244,251,259],{"path":156,"title":5,"description":148,"date":147,"minRead":153,"tags":167},[161,162],{"path":169,"title":170,"description":171,"date":172,"minRead":153,"tags":173},"\u002Fblog\u002Fcloudflare-broke-stack","Melhores práticas de dev independente em 2026: o combo \"pobretão\" da Cloudflare","Stack de custo zero para devs independentes: Codex escreve código, GitHub cuida da versão, Stripe recebe o dinheiro; front em TanStack Start, backend com Hono + Workers, banco D1, storage R2, cache KV — tudo rodando na Cloudflare.","2026-06-15",[174,175,176],"Cloudflare","Desenvolvimento independente","Stack tecnológica",{"path":178,"title":179,"description":180,"date":181,"minRead":153,"tags":182},"\u002Fblog\u002Fdeepseek-api-web-search","Busca na web embutida na API do DeepSeek — Responses API de graça com busca oficial","O DeepSeek embutiu busca na web na API oficial: é só chamar o deepseek-v4-flash pelo endpoint Responses declarando a ferramenta web_search, sem integrar buscador de terceiros e sem pedir chave de busca.","2026-08-05",[183,184,185],"DeepSeek","API","Ferramenta de IA",{"path":133,"title":187,"description":188,"date":181,"minRead":189,"tags":190},"DeepSeek V4 Flash oficial — experiência aprofundada: barato, rápido, 1M de contexto, busca embutida","Dias de uso intenso do DeepSeek V4 Flash oficial: barato ao extremo, rápido que dá gosto, 1M de contexto, busca na web oficial embutida e totalmente open source. O único senão é multimodal — mas dá para cobrir combinando com outros modelos.",7,[183,191,185],"Review de modelo",{"path":193,"title":194,"description":195,"date":172,"minRead":196,"tags":197},"\u002Fblog\u002Ffree-cloudflare","Como usuário gratuito, como espremer a Cloudflare até a última gota — até onde o free tier realmente grátis?","O plano gratuito da Cloudflare sustenta a infraestrutura pessoal inteira: DNS, CDN, Pages, Workers, KV, D1, R2, email, Tunnel, AI Gateway e mais.",8,[174,198,199],"Franquia grátis","Deploy",{"path":201,"title":202,"description":203,"date":204,"minRead":196,"tags":205},"\u002Fblog\u002Fmodel-harness-decoupling","O Harness first-party nem sempre é a resposta: na era dos modelos abertos, escolha o modelo e o Harness separadamente","Usa Claude, vai de Claude Code? Na era dos modelos abertos, esse instinto pede um upgrade. A vantagem first-party é real, mas treinar um bom modelo e construir um bom Harness são duas engenharias diferentes — este artigo explica por que modelo e Harness já podem ser escolhidos separadamente, com um mapa de posicionamento de cinco Harness.","2026-09-09",[161,206,162],"Harness",{"path":208,"title":209,"description":210,"date":204,"minRead":196,"tags":211},"\u002Fblog\u002Fopencode-productive-stack","Estável, rápido, produtivo, barato: meu stack de AI Coding documentado","OpenCode + OpenChamber + duas assinaturas DeepSeek V4 Flash: 15 projetos rodando código ao mesmo tempo e a cota mal se mexeu. Toda a configuração aberta aqui — poda de Context, memória em camadas, automação de desktop e a lição de 'ficar com a combinação original'.",[88,212,213],"Programação IA","Configuração",{"path":215,"title":216,"description":217,"date":218,"minRead":219,"tags":220},"\u002Fblog\u002Fproduct-faxin-principle","O princípio do \"fa'xin\": por que o dev independente precisa aprender a abrir mão","Por que você começa? Para quem você começa? Qual problema você realmente quer resolver? A capacidade de um produto ser afiado vem de saber o que largar e o que abandonar.","2026-06-20",10,[221,175],"Pensamento de produto",{"path":223,"title":224,"description":225,"date":218,"minRead":196,"tags":226},"\u002Fblog\u002Fproduct-pain-vs-itch","Usuário diz \"caralho, que foda\" e você se empolga: dor vs. coceira","Aprovação verbal não vale nada. Para julgar necessidade existe só um critério duro: ver o que o usuário está disposto a pagar.",[221,227],"Julgamento de necessidade",{"path":229,"title":230,"description":231,"date":147,"minRead":232,"tags":233},"\u002Fblog\u002Fqwen-vision-for-deepseek","Dando multimodal ao DeepSeek: solução de visão com Qwen-3.7-Flash","O DeepSeek V4 Flash não tem multimodal. E ler imagem, como fica? Na minha pesquisa, a opção com melhor custo-benefício hoje é o Qwen-3.7-Flash: reconhecer uma imagem custa quase nada e, combinado com o V4 Flash, cobre a lacuna.",5,[183,234,191],"Multimodal",{"path":236,"title":237,"description":238,"date":239,"minRead":240,"tags":241},"\u002Fblog\u002Fsub-store-cloudflare","Migrei a agregação de assinaturas de proxy para a Cloudflare","Vários serviços de proxy mais os seus próprios nós fundidos em uma única assinatura, com as regras de roteamento configuradas no servidor — o cliente só assina.","2026-06-28",4,[174,242,243],"Contorno da rede","Projeto open source",{"path":245,"title":246,"description":247,"date":204,"minRead":189,"tags":248},"\u002Fblog\u002Ftui-cognitive-bandwidth","A TUI está matando sua banda cognitiva: está na hora de quebrar o “filtro geek” do AI Coding","Um bando de AI Coding Agents disputando quem sobe TUI primeiro, empurrando a interação de volta ao paradigma de terminal dos anos 80 e ainda chamando isso de “imersivo” e “respeita o programador”. Este artigo disseca os três mecanismos pelos quais a TUI reduz sistematicamente sua banda cognitiva — e por que o Web UI é a resposta certa.",[212,249,250],"Design de interação","Ensaio",{"path":252,"title":253,"description":254,"date":255,"minRead":153,"tags":256},"\u002Fblog\u002Fvalue-not-external","Discutir se algo tem valor é, em si, algo sem valor","Nosso valor não é definido por ninguém. Na era da IA, como a pessoa deve se entender, afinal?","2026-06-18",[257,258],"Reflexão sobre IA","Ensaio humano",{"path":260,"title":261,"description":262,"date":263,"minRead":264,"tags":265},"\u002Fblog\u002Fx-growth-1000-followers","Mais de 1000 seguidores em pouco mais de um dia — o que eu fiz","Em junho, comecei a levar o X a sério e ganhei 1000+ seguidores em pouco mais de um dia. Este post registra o que eu fiz na ocasião e os retornos que recebi.","2026-06-16",12,[266,267],"Operação no X","Crescimento de conteúdo",1789752314237]