Chega de Chatbots, Hora de Construir Agentes Reais com OpenHarness
Você conhece aquela sensação quando o ChatGPT te dá uma sugestão de código decente, mas para realmente usar você precisa criar o arquivo sozinho, colar o texto, rodar os testes, e depois corrigir alguns imports? Nos acostumamos a chamar isso de "assistência de IA," quando na realidade é apenas busca avançada com uma interface de chat.
Há alguns dias encontrei o repositório OpenHarness da equipe HKUDS. O pessoal decidiu que já chega de chatbots—é hora de dar aos modelos de linguagem "mãos." O projeto é uma infraestrutura para construir agentes autônomos que não apenas conversam, mas vivem no seu terminal, navegam na web e editam código por conta própria.
O que é Agent Harnessing
Os autores usam um termo bem adequado—Harness. A ideia é que um LLM sozinho é apenas um "cérebro num frasco." Para se tornar um agente, ele precisa de olhos (contexto), mãos (ferramentas) e memória.
OpenHarness é um framework Python que cuida de todo o trabalho pesado:
- Gerenciamento do ciclo do Agent Loop (requisição — streaming — chamada de ferramenta — repetir).
- Controle de acesso (para o agente não deletar acidentalmente a raiz do seu disco).
- Integração com MCP (Model Context Protocol).
- Organização de memória através de arquivos como
MEMORY.md.
O melhor é que o projeto não te prende a uma nuvem específica. Você pode rodar no Claude ou OpenAI, ou passar por um modelo local via Ollama.
Cinco Coisas que o OpenHarness Pode Fazer
Fui atrás do código fonte e do README, e aqui está o que parece mais útil para o trabalho diário do desenvolvedor.
Ferramentas Prontas para Uso
O repositório já tem mais de 40 ferramentas implementadas. Não é só "executar um bash script." Tem busca de arquivos via Grep, suporte a Jupyter notebooks, navegação web, e até a capacidade de gerar outros agentes para delegar tarefas. As ferramentas são tipadas através de Pydantic, então o modelo entende o schema dos dados de entrada sem alucinações extras.
Sistema de Skills
Em vez de inchar o system prompt até o tamanho de "Guerra e Paz," o OpenHarness usa carregamento dinâmico de skills de arquivos Markdown. Se um agente precisa fazer um code review, ele carrega review.md. Se precisa fazer deploy de um projeto—ele pega a skill correspondente. Isso economiza tokens e torna o comportamento da IA mais previsível.
Segurança e Níveis de Acesso
Sempre tive medo de dar acesso à IA ao terminal. O OpenHarness resolve isso através dos Permission Modes. No modo padrão, o agente vai pedir confirmação antes de cada operação perigosa (escrita de arquivo, execução de comando). Também existe o Plan Mode—onde o agente só pode ler arquivos e sugerir mudanças, mas não mexe em nada com as mãos.
Assistente Pessoal Ohmo
Dentro do repositório vive o projeto ohmo. É uma aplicação de agente pronta que você pode conectar ao Telegram, Slack ou Discord. Você escreve para ele no mensageiro, e ele cria branches Git, corrige bugs e abre PRs na sua estação de trabalho. Isso funciona através de assinaturas existentes (como Claude Code ou Codex), então você não paga nada extra por chamadas de API.
Modo Dry Run
Um recurso útil para debugging. O comando oh --dry-run mostra quais configurações foram carregadas, quais chaves estão ativas, e quais ferramentas estarão disponíveis para o modelo—sem enviar uma única requisição para a nuvem paga.
Como Funciona Por Dentro
A arquitetura do projeto é bem transparente. Tudo é dividido em subsistemas independentes:
- Engine: o coração do sistema, gerenciando o loop de raciocínio do modelo.
- Permissions: uma camada que verifica cada chamada de ferramenta contra regras (por exemplo, bloqueando edições em
/etc/). - UI: uma interface de terminal bonita construída com React e Ink. Sim, direto no console.
- Coordinator: gerencia cenários multi-agente quando uma tarefa é dividida em múltiplas subtarefas para "ajudantes."
Interessantemente, o projeto suporta o protocolo MCP. Isso significa que você pode conectar qualquer servidor de contexto ao seu agente—digamos, um banco de dados ou uma API específica—e ele imediatamente aprende a trabalhar com ele.
Cenários Práticos
Por que trazer isso para o seu fluxo de trabalho?
Primeiro, automatizar tarefas rotineiras. Você pode perguntar ao agente: "Encontre todos os imports não utilizados na pasta src e limpe eles, depois rode os testes." Enquanto ele está ocupado com os arquivos, você toma seu café.
Segundo, trabalhar com código legado desconhecido. O agente pode escanear o projeto, construir um mapa de dependências, e explicar como um módulo específico funciona usando ferramentas de busca de código.
Terceiro, criar seus próprios bots especializados. Se sua empresa tem um processo específico de deploy, você só escreve SKILL.md com uma descrição dos passos, e seu agente agora sabe como fazer deploy de projetos exatamente do jeito que você faz.
Vale a Pena Tentar
O projeto parece vivo: 114 testes passando e atualizações ativas (versão 0.1.7 foi lançada há poucos dias). As desvantagens—a documentação às vezes te força a fuçar no código, e embora o suporte a Windows seja dito nativo, no PowerShell requer usar o comando openh em vez do curto oh.
Se você está cansado de copiar e colar código do chat para o seu IDE e quer sentir o que agentes realmente podem fazer, OpenHarness é um ótimo ponto de partida. No mínimo, é um dos poucos projetos tentando tornar a infraestrutura de agentes compreensível e extensível.
Você pode começar com uma instalação simples:
curl -fsSL https://raw.githubusercontent.com/HKUDS/OpenHarness/main/scripts/install.sh | bash
oh setup
E então é só pedir para ele corrigir algo no seu projeto pessoal. Os resultados podem te surpreender.
Projetos relacionados