YOLO permanente
Não há modo de aprovação para desligar porque ele não existe. As tools rodam com os privilégios do processo. Se precisa de isolamento, rode o bh num container ou VM.
harness de agentes · go · open-weights-friendly
O Barroso Harness roda um agente de código no seu terminal com qualquer provider no padrão OpenAI Chat Completions. As tools executam na hora, com os privilégios do seu usuário, e o contexto é curado pelo próprio agente — não cortado às cegas.
# PowerShell, como usuário — sem admin $dir = Join-Path $env:LOCALAPPDATA 'BarrosoHarness\bin' New-Item -ItemType Directory -Force $dir | Out-Null iwr https://github.com/ruanbarroso/barroso-harness/releases/latest/download/barroso-harness-windows-amd64.exe -OutFile "$dir\bh.exe" $p = [Environment]::GetEnvironmentVariable('Path','User') if (($p -split ';') -notcontains $dir) { [Environment]::SetEnvironmentVariable('Path', "$p;$dir", 'User') } # abra um terminal novo bh
# Apple Silicon — em Mac Intel troque arm64 por amd64
curl -LO https://github.com/ruanbarroso/barroso-harness/releases/latest/download/barroso-harness-darwin-arm64
sudo install -m 0755 barroso-harness-darwin-arm64 /usr/local/bin/bh
bh
# amd64 — em ARM troque por linux-arm64
curl -LO https://github.com/ruanbarroso/barroso-harness/releases/latest/download/barroso-harness-linux-amd64
sudo install -m 0755 barroso-harness-linux-amd64 /usr/local/bin/bh
bh
# app iSH (Alpine x86 32 bits) wget -O /usr/local/bin/bh https://github.com/ruanbarroso/barroso-harness/releases/latest/download/barroso-harness-linux-386 chmod +x /usr/local/bin/bh bh # se a tela cheia falhar: BH_SIMPLES=1 bh
SHA256SUMS. Na primeira execução, bh pergunta base URL, chave e modelo.Não é fork de outra harness. Cada decisão foi tomada para um agente que trabalha sozinho no seu terminal, com o seu modelo, sem pedir licença a cada passo.
Não há modo de aprovação para desligar porque ele não existe. As tools rodam com os privilégios do processo. Se precisa de isolamento, rode o bh num container ou VM.
Base URL, chave e modelo. Qualquer endpoint compatível com Chat Completions funciona; /provider valida o /models antes de salvar. A chave fica só em ~/.barroso-harness.
O BARROSO.md do projeto, dos diretórios pais e o global entram como system, em ordem de precedência. O mesmo texto nunca entra duas vezes.
Built-ins locais, MCP por stdio ou HTTP, skills em SKILL.md e subagentes. Uma tool externa nunca sombreia uma local de mesmo nome.
terminal_runQualquer comando no shell local, com exit code e timeout opcional.file_read · editLeitura com números de linha e edição por substituição exata.grep · globBusca por conteúdo e por nome, em Go, igual em todo SO.web_search · web_fetchBusca e leitura de páginas, com o HTML reduzido a texto.ctx_read · ctx_writeEstado de trabalho que o próprio agente mantém entre turnos.log_searchRecupera qualquer evento da sessão, inclusive saídas arquivadas.task_spawnSubagentes em paralelo, com todas as tools menos a de delegar.mcp · skillsServidores MCP e skills entram no mesmo catálogo do agente.Toda a sessão fica num log append-only em SQLite. O request é medido antes de sair, e o agente decide o que compactar em vez de perder o meio da conversa num corte automático.
context_window. O estimador se calibra com o usage real do provider.O mesmo binário estático em cada alvo. No iPhone, a versão linux-386 se ajusta sozinha ao emulador do iSH e usa sh quando não há bash.
windows-amd64.exedarwin-arm64darwin-amd64linux-amd64linux-arm64linux-386bh, informe a chave. Pronto.# sessão interativa bh # turno único, para scripts bh -p "rode os testes e corrija o que falhar" # servidor ACP para o editor bh -acp