Bachata

Monte seu próprio fluxo de trabalho com IA para trabalhar com software

O Bachata é uma extensão do VS Code que faz assistentes de IA trabalharem juntos em etapas definidas por você: um planeja, outro contesta, eles revisam e ajustam, e você decide o que importa.

Candidato alfa O Bachata é um candidato alfa, não uma versão estável. A validação de provedores, plataformas e navegadores ainda está incompleta.

Visão geral

O que é o Bachata

Um assistente de IA é uma ferramenta a quem você pede ajuda em linguagem comum para tarefas como planejar um recurso, escrever código ou encontrar defeitos. O Bachata roda dentro do Visual Studio Code e coordena assistentes que você já tem, como Codex e Claude Code.

Você organiza o trabalho como um pipeline: uma sequência de etapas, cada uma com um papel, instruções e o assistente que a executa. Por exemplo, dois revisores leem o código de forma independente e depois contestam os achados um do outro até concordarem ou entregarem a divergência a você.

Defina o fluxo

Papéis, instruções, ordem das etapas e rodadas de revisão.

Escolha quem faz o trabalho

Atribua Codex, Claude Code ou um chat do navegador a cada papel.

Reutilize e adapte

Comece por um pipeline integrado, edite-o ou crie o seu.

Acompanhe o resultado

Achados, decisões e mudanças, com as verificações que de fato rodaram.

O Bachata não inclui serviço de IA nem assinatura. Ele nunca cria um commit no Git. A IA pode errar mesmo quando os assistentes concordam, e uma execução concluída não prova que o código está correto.

Requisitos

  • VS Code 1.101.0 ou mais recente.
  • Uma pasta aberta em uma janela local confiável do VS Code. Pipelines comuns não exigem Git. A execução de listas de tarefas exige um repositório Git e Git 2.32 ou mais recente.
  • Codex ou Claude Code, instalados e autenticados separadamente. Instale os dois se quiser que dois assistentes se verifiquem mutuamente.
  • Opcional: a Browser Bridge extensão do Chrome, para usar ChatGPT, Claude ou outro site de chat como participante.

Comece aqui

Instalação

  1. Instalação Bachata no Visual Studio Marketplace. Para uma instalação offline ou de desenvolvimento, abra a Paleta de Comandos, execute Extensions: Install from VSIX… e selecione o arquivo .vsix do Bachata fornecido.
  2. Abra a pasta em que quer trabalhar em uma janela local confiável do VS Code.
  3. Instale e autentique o Codex ou o Claude Code pelo fluxo de login da própria CLI.

Sem um repositório Git, os pipelines comuns continuam funcionando, mas o rastreamento de mudanças por Git, a verificação do escopo de escrita, a exportação de patches e a convergência de mudanças no repositório ficam indisponíveis.

O Bachata adiciona um ícone Bachata à Barra de Atividades e um guia Comece a usar o Bachata à página de boas-vindas do VS Code.

Verifique a prontidão com o Diagnóstico

Execute Bachata: Diagnóstico. O Diagnóstico separa os impedimentos do pipeline escolhido dos provedores opcionais indisponíveis, e cada verificação que falha oferece ações diretas e uma reverificação específica.

  • O Codex é testado com um handshake do app-server. Nenhum thread é criado e nenhum modelo é chamado.
  • O Claude Code é testado com claude --version.
  • Os testes rodam na raiz do espaço de trabalho com ambiente restrito. Uma CLI que existe apenas no PATH do seu shell interativo fica invisível: defina bachata.codexCommand ou bachata.claudeCommand com o caminho absoluto.

Executar a primeira revisão

  1. Execute Bachata: Configuração. Escolha Revisar código. O percurso padrão também oferece Planejar mudança e Corrigir defeito; a orquestração de TODO, os provedores de navegador e os pipelines personalizados ficam em Fluxos avançados.
  2. Escolha Um agente rápido (um provedor faz o trabalho) ou Dupla com verificação cruzada (dois participantes trabalham separadamente e conferem um passe). A configuração lista os provedores prontos e o que falta aos ausentes.
  3. Descreva no campo de mensagem o que quer revisar. Você também pode começar pelo editor: Bachata: Revisar arquivo, Revisar seleção, Revisar alterações não commitadas e comandos semelhantes preparam um rascunho sem enviá-lo.
  4. Abra as configurações da execução e leia o contrato: o que a execução pode ler e escrever, quais provedores participam e quais verificações rodam.
  5. Envie. Quando a execução terminar, abra o resultado.
O painel do Bachata com uma nova execução. O campo de mensagem contém o pedido “Review src/checkout for bugs in how discounts and totals are calculated.” O pipeline escolhido é “Code review — reconcile findings”, com 3 etapas e 2 participantes. As execuções recentes aparecem acima do campo.
Uma nova execução. O seletor de pipeline, “Agentes”, as configurações da execução e o envio ficam abaixo do pedido. Dados de demonstração.
Uma revisão é somente leitura. Ela não pode alterar seu repositório. Um passe não prova que seu código está correto: depois de aceitar as correções decorrentes, rode outra revisão nova sobre o código atualizado.

Usar o Bachata

O painel do Bachata

Abra-o com Bachata: Abrir ou pelo ícone na Barra de Atividades. Cada execução é uma aba no topo. Uma execução tem três visões:

  • “Chat”: seu pedido e as respostas de cada participante, em ordem.
  • “Execução”: as etapas do pipeline com seu status e o resultado da execução.
  • “Direção”: o objetivo do projeto, as decisões que aguardam você e os achados aceitos ainda a corrigir, entre execuções.
Visão “Chat” de uma execução concluída. Reviewer 1 relata dois problemas — desconto aplicado duas vezes em nova tentativa e arredondamento de moeda antes do imposto — e sugere arquivar carrinhos expirados. Reviewer 2 concorda com os dois problemas e discorda do arquivamento dos carrinhos. Na rodada 2, Reviewer 1 marca a questão dos carrinhos como não resolvida para o usuário. Um cartão de conclusão diz que os dois revisores chegaram ao mesmo conjunto de achados na rodada 2 de 10, com um botão para abrir o resultado.
Visão “Chat” de uma revisão com verificação cruzada concluída. Dados de demonstração.

“Execuções” abre a gaveta de execuções: pesquisar execuções e prompts, mostrar execuções arquivadas e abrir “Direção”. O menu … de cada execução permite renomear, duplicar, arquivar ou excluir.

A gaveta de execuções aberta à esquerda, com campo de pesquisa, caixa para mostrar execuções arquivadas, três execuções com seu status e um link para Direção na parte de baixo.
A gaveta de execuções. Dados de demonstração.

Escolher um pipeline

O seletor de pipeline fica abaixo do campo de mensagem. A busca cobre nomes, IDs, descrições e papéis dos participantes. Os filtros separam fluxos comuns, especializados e internos; pipelines personalizados acrescentam “Personalizados” e “Todos”. O seletor escolhe o trabalho; “Agentes” escolhe os provedores.

O seletor de pipeline aberto acima do campo de mensagem, com campo de busca e a lista: Code review — reconcile findings (selecionado), Code review and refinement, UI/UX review, Code review, Fix a bug, Implementation plan, cada um com a contagem de etapas e participantes.
O seletor de pipeline. A lista mostra pipelines integrados. Dados de demonstração.

Cada etapa de um pipeline é de um destes tipos:

  • agent: um ou mais participantes fazem um turno, opcionalmente em paralelo ou até chegarem a consenso;
  • assignRoles: vincular a agentes os papéis que você definiu;
  • checklist: transformar achados aceitos em itens estritos;
  • executeChecklist: executar os itens selecionados pelo controlador. Deve ser a última etapa ativada.

As rodadas de consenso são limitadas. Ao atingir o limite, o pipeline define o que acontece: decisão humana, falha ou decisão do líder. A concordância seleciona a saída de uma execução; não prova que a saída é verdadeira. Veja a lista de pipelines integrados.

Atribuir agentes

“Agentes” lista todos os papéis exigidos pelo pipeline escolhido. Para cada papel, escolha o provedor e, quando o provedor informar, o modelo. As mudanças valem para esta execução e ficam marcadas como reatribuídas; “Restaurar padrões” restaura as escolhas do próprio pipeline.

O popover Agentes com dois papéis. Reviewer 1 usa “Padrão · Codex CLI” com o modelo padrão. Reviewer 2 usa “Padrão · Claude CLI” com o modelo padrão. Na parte de baixo há uma seção recolhida de modelos locais.
Cada papel recebe um provedor e um modelo. Dados de demonstração.

O Bachata não traz catálogo de modelos. Quando o Codex consegue listar seus modelos, o Bachata mostra essa lista e recusa um modelo que o Codex instalado não ofereça. Quando um provedor não consegue listar modelos, o nome digitado é enviado como escrito. O Bachata nunca troca o provedor ou o modelo por você. Para impedir que um provedor rode, inclua-o em bachata.disabledProviders.

Optional typed-decision adapter

The browser action interpreter also exposes a guarded, controller-injected adapter seam for experiments such as Laya's system_one decision shape. It receives only bounded, read-only controller candidates and may accept only a complete, high-confidence classification of those existing IDs. Invalid, ambiguous, oversized or late responses fall back to the existing local model path and deterministic extraction.

Compatibility boundary Bachata does not ship Laya, a checkpoint, a Python runtime, an HTTP service or a model switch. Qwen/Ollama and LM Studio behavior stays unchanged. This seam is not a Laya compatibility, accuracy, latency or token-savings claim.

Ler o contrato da execução

O botão de engrenagem ao lado do envio abre “Configurações da execução”. “Opções da execução” (iterações, modo fixo ou até ficar limpo, entrega) valem apenas para esta execução. “Detalhes da execução” é o contrato que o Bachata resolveu para exatamente esta execução:

  • “Garantia”: que tipo de resultado esta execução pode produzir, por exemplo “Somente leitura”;
  • “Provedores” e sua prontidão;
  • “Escopo e commits”: diretório de trabalho, caminhos graváveis, legíveis e protegidos. O Bachata nunca cria commits;
  • “Verificação”: quais verificações do controlador rodam, se houver;
  • “Limites da execução”, “Decisões humanas”, “Alternativa”, “Conclusão”;
  • “O que cada provedor recebe”: o contexto enviado, as exclusões e as omissões por provedor.
Painel de configurações da execução com os detalhes expandidos para “Code review — reconcile findings”, marcado como Revisão · somente leitura. Garantia: esta execução pode ler o escopo escolhido e não pode alterar arquivos. Provedores: Reviewer 1 no Codex e Reviewer 2 no Claude Code, ambos prontos. Escopo: sem escrita no repositório, caminho legível src/checkout, caminhos protegidos .env e .git, sem commits. Verificação: nenhuma verificação do controlador. Limites: 1 iteração, no máximo 10 rodadas de consenso antes de uma decisão humana.
O contrato de uma execução somente leitura com dois revisores. Dados de demonstração.

Se algo impedir a execução, como um provedor sem prontidão ou uma política do repositório que a recuse, o contrato lista o impedimento e o envio fica desabilitado até a resolução.

Ler o resultado

Abra “Execução” (o ícone de lista na aba da execução) ou escolha “Abrir o resultado” no Chat. A parte de cima lista cada etapa do pipeline e seu status. A barra inferior mostra quantos achados estão selecionados e oferece o próximo pipeline.

Visão “Execução”. Etapas do pipeline: 1 Independent review com 2 resultados de participantes, 2 Cross-reference findings, 3 Surface material decisions, todas concluídas. A barra inferior indica 3 de 3 itens selecionados, com “Detalhes da revisão”, um seletor de próximo pipeline definido como Fix a bug e o botão para iniciar novo pipeline.
Visão “Execução”: etapas e o próximo pipeline. Dados de demonstração.

“Detalhes da revisão” abre o resultado da execução:

  • “Avaliação”, por exemplo “Concluído · revisado por modelo · não verificado”. Descreve como esta execução terminou, não se o software está correto.
  • “Decisão final” e quem a produziu, por exemplo consenso unânime dos dois revisores.
  • “Achados”, divididos em achados convergentes (aceitos após contestação) e achados não convergentes que precisam da sua confirmação. Cada um traz a localização, as evidências e as contestações levantadas.
  • “Detalhes da avaliação”: riscos não resolvidos, lacunas de evidência e o registro de evidências (arquivos alterados, verificações, origem da decisão).
Resultado da execução: Concluído · revisado por modelo · não verificado. “Veja os achados abaixo. Esta execução não tem nada a aplicar.” Decisão final: dois achados aceitos após contestação, uma divergência precisa da sua decisão, por consenso unânime de Reviewer 1 (codex-app-server) e Reviewer 2 (claude-code). Achados: 2 acionáveis, 1 precisa de decisão humana. Achados convergentes: “Discount applied twice on retry” em src/checkout/applyCoupon.ts:42 e “Currency rounding before tax” em src/checkout/totals.ts:18, cada um com evidências e contestações.
Resultado da execução com achados convergentes, evidências e contestações. Dados de demonstração.
O que conta como verificado Um modelo dizer “os testes passam” nunca é registrado como verificação aprovada. Só aparecem como verificações aquelas que o controlador executou, e cada uma informa o que rodou. Evidência ausente continua ausente.

“Copiar resultado” copia um resumo legível. “Mais” publica achados no painel Problemas, abre o Controle do Código-Fonte e exporta a execução como pacote JSON, relatório de evidências em Markdown ou achados SARIF. As exportações não levam URL de conversa do provedor nem identificador de sessão.

Visão Direção

A Direção guarda o que importa entre execuções, para você não precisar ler transcrições. Abra-a na parte de baixo da gaveta de execuções. Ela mostra o objetivo, a próxima ação útil e o que depende de você:

  • “Decisões a resolver”: perguntas levantadas por um pipeline que mudam o rumo, com compromissos e evidências;
  • “Achados a resolver”: achados em que os participantes não convergiram;
  • “Achados aceitos a corrigir”, a direção aceita e os critérios de aceitação, o progresso da revisão, os artefatos e as verificações do repositório.
Visão “Direção” intitulada “Checkout totals are always correct”, com um botão para resolver decisões. Decisões a resolver: Cart retention, proposta, src/checkout, “Should expired carts be deleted or archived?”, com compromissos e os botões Aceitar, Rejeitar, Adiar, Substituir e Reabrir. Achados a resolver: Shipping threshold, não resolvido, “Free shipping threshold ignores discounted total”, com os mesmos botões e “Mesclar com”.
Direção: uma decisão e um achado esperando por você. Dados de demonstração.

Decisões que você pode registrar, quando o estado do item permitir:

DecisãoSignificado
AceitarIsto é real e o Bachata deve agir sobre isso.
RejeitarNão é real. Sai da área ativa e permanece no histórico.
AdiarReal, mas não agora.
SubstituirUm registro posterior já existente substitui este.
ReabrirUm item fechado volta a ficar ativo. Exige justificativa escrita e nova evidência material.

Você não precisa aceitar um achado que o pipeline já aceitou depois de mais de um participante contestá-lo. Você supervisiona por exceção. Nada é excluído; itens resolvidos vão para o histórico.

Corrigir e aplicar

Uma revisão somente leitura não produz nada a aplicar. Quem produz a mudança é uma execução de correção. Em um achado aceito, escolha “Corrigir achado” na Direção, ou escolha um pipeline com permissão de escrita, como Fix a bug como próximo pipeline na Execução.

Seção da Direção “Achados aceitos a corrigir (1)”: “Discount applied twice on retry”, aceito, “Aceito pelo pipeline; nenhuma correção foi iniciada”, com os botões Rejeitar, Adiar, Substituir, Reabrir, Corrigir achado e Mesclar com. Abaixo: direção aceita “Apply each coupon once per order”, critério de aceitação “Retrying payment never changes the total”, restrição “No change to the public checkout API” e o progresso da revisão com uma regressão.
Um achado aceito esperando correção. Dados de demonstração.

A execução de correção recebe um prompt restrito àquele achado: assunto, localização, evidências e contestações levantadas. O Bachata escolhe o pipeline de correção a partir de bachata.fixPipelineId, depois do pipeline escolhido na execução de origem e, por fim, do pipeline integrado managed-fix. Um pipeline somente leitura é recusado.

Aplicar o trabalho retido

Alguns fluxos alteram a pasta escolhida diretamente; os isolados mantêm as mudanças em um worktree Git separado até você aplicá-las. O contrato da execução informa qual é o caso. Ao aplicar:

  • O Bachata prepara o trabalho na sua árvore de trabalho, no branch atual, e não cria commit. Você revisa no Controle do Código-Fonte e faz o commit você mesmo.
  • A aplicação é recusada quando a verificação está desatualizada, falhou ou foi cancelada. Aplicar uma execução inconclusiva é uma exceção explícita.
  • Aplicar um subconjunto reexecuta as verificações da execução exatamente sobre os bytes que você selecionou.

Rodadas de novas revisões

Uma revisão nova inicia uma revisão independente do estado atual do repositório. As sessões dos provedores são reiniciadas e nenhuma conclusão anterior entra nos prompts. Achados anteriores servem para comparação depois da revisão, nunca antes.

Quando uma segunda rodada entra no mesmo ciclo de revisão, a Direção informa o que mudou: achados novos, repetidos, resolvidos e com regressão, achados reabertos por nova evidência e mudanças de decisão. A identidade de um achado não depende da redação, então uma repetição parafraseada é um achado com duas ocorrências.

O Bachata informa saturação apenas quando várias revisões novas consecutivas não acrescentaram nada material, os achados aceitos estão resolvidos, as decisões centrais estão fechadas e as verificações exigidas estão atualizadas. Saturação significa que revisar de novo parou de encontrar problemas materiais. Não é prova de correção.

Uma revisão nova só roda um pipeline somente leitura que produza achados. Defina bachata.freshReviewPipelineId para escolher um quando o pipeline selecionado não servir.

Editar pipelines

Nas configurações da execução, escolha “Editar pipeline”, “Novo pipeline” ou “Bifurcar o selecionado”. Editar um pipeline integrado cria uma cópia. O editor tem um formulário Estruturado e um modo JSON para definições exatas. As etapas podem ser reordenadas, duplicadas e desativadas; “Limites de segurança”, “Agentes” e “Papéis” são seções separadas.

Editor de pipeline para “Code review — reconcile findings – cópia” no modo Estruturado. Etapas: 1 Independent review, 2 Cross-reference findings (perguntar depois da etapa), 3 Surface material decisions, cada uma um turno de agente de Reviewer 1 e Reviewer 2. Seções recolhidas: detalhes do pipeline, limites de segurança (apenas revisão · sem verificações), agentes, papéis. Botões: Mais, Cancelar, Salvar e selecionar.
O editor de pipeline. Dados de demonstração.

Ative bachata.advancedMode para mostrar o editor completo: papéis, consenso, saídas tipadas, pontos de decisão humana, capacidades, modos de permissão, políticas de aprovação, modelos de prompt e políticas de caminho. Pipelines podem ser exportados e importados como JSON (versão JSON do pipeline 1). As execuções mantêm exatamente o instantâneo do pipeline com que começaram.

Piloto local congelado

Use menos contexto repetido de modelo

O Bachata agora inclui a primeira implementação em código de um modo de execução econômico em tokens para Claude Code e Codex. O objetivo é enviar o menor estado suficiente para a próxima decisão, em vez de reenviar repetidamente respostas anteriores completas, saída de verificação e histórico da conversa.

Congelado: nenhuma economia encontrada Um piloto offline com execuções reais do Claude Code e do Codex não encontrou economia. Após uma correção no formato de resposta, toda execução registrada ficou correta nos dois modos, e a entrada mediana no provedor do modo econômico foi igual ou maior. Os prompts do próprio Bachata foram cerca de 1–3% do que os provedores processaram; o restante acontece dentro dos ciclos de ferramentas do Claude Code e do Codex, que esta etapa não alcança. O controle “Contexto econômico · Experimental” fica oculto enquanto está desligado. A configuração avançada bachata.executionContextMode ainda permite ativá-lo; enquanto estiver ligado, o controle aparece no compositor de Runs, no menu “Agentes” para que possa ser desligado. legacy continua como padrão. Execuções ativas e recuperáveis mantêm o modo registrado. Nenhuma afirmação sobre tokens, custo, latência ou qualidade.

Por que isso pode ajudar

  • Provedores locais podem manter a conversa enquanto o Bachata também envia uma transferência explícita.
  • Rodadas de consenso podem levar respostas completas dos outros participantes para rodadas seguintes.
  • O trabalho no navegador pode exigir respostas separadas do modelo para uma alteração e para verificações predeterminadas do controlador.
  • Os limites de bytes atuais evitam cargas descontroladas, mas não criam evidências exatas recuperáveis.

Implantação

  1. Implementado: preservar as evidências admitidas exatas. Armazenar prompts do Bachata, respostas recebidas e evidências do controlador antes de gerar prévias compactas. Se as evidências exatas não puderem ser mantidas, a execução compacta não começa.
  2. Implementado e depois congelado: piloto de estado local limitado. Iniciar sessões novas do Claude Code ou do Codex com estado de tarefa tipado, a última observação do controlador e referências de evidência delimitadas. O fluxo atual continua como padrão. O piloto offline não encontrou economia, então esta etapa está congelada.
  3. Projetar o consenso com segurança. Levar adiante acordos, divergências, autoria e decisões pendentes sem tratar objeções omitidas como resolvidas.
  4. Acrescentar recuperação no navegador e fusão segura de ações. Deixar o controlador fornecer páginas de evidência exatas e combinar alteração com verificações já autorizadas somente onde os limites de aprovação e recuperação permaneçam claros.

Limite de segurança

O controlador continua responsável por Git, escopo de escrita, verificação, integração e recuperação. Estado inválido, desatualizado, incompleto ou grande demais falha de forma segura. As evidências admitidas exatas continuam exportáveis, o histórico privado do provedor não é apresentado como capturado, e nenhuma camada de telemetria ou medição em tempo de execução é adicionada.

Leia o documento técnico e o artigo externo SoL-Pi que motivou esta investigação. Os resultados relatados no artigo não são resultados do Bachata.

Browser Bridge

Use seus chats do navegador a partir do Bachata

O Bachata Browser Bridge é uma extensão do Chrome separada. Ele liga o Bachata no VS Code a sites de chat com IA, como ChatGPT e Claude, para que uma conversa no seu navegador possa ser participante de um pipeline. Quando uma etapa de navegador roda, o Bridge envia a mensagem ao chat conectado e traz a resposta de volta ao VS Code.

Você só precisa dele para participantes de navegador. Codex e Claude Code não o usam.

O que o Bridge não faz Ele não pode ler os arquivos do seu projeto nem executar comandos. O Bachata no VS Code decide quais informações do projeto são enviadas e quais mudanças são permitidas. As mensagens continuam indo para o provedor de chat que você usa. Não há telemetria.

Requisitos

  • Chrome 116 ou mais recente.
  • Uma janela local do VS Code com o Bachata. Remote SSH, WSL e Codespaces não alcançam um navegador local.
  • Uma versão do Bridge cuja versão de protocolo corresponda à sua versão do Bachata. Uma divergência é recusada, não degradada: atualize os dois juntos.
  • Uma aba do ChatGPT ou do Claude com login feito, ou outro site de chat configurado por você.

Instalar o Bridge

  1. Abra Bachata Browser Bridge na Chrome Web Store.
  2. Escolha “Usar no Chrome” e confirme a instalação.
  3. Mantenha o Bachata para VS Code e o Browser Bridge atualizados juntos para que as versões de protocolo correspondam.

Para instalação offline ou de desenvolvimento, baixe um ZIP e sua soma de verificação na página oficial de releases, verifique com shasum -a 256 bachata-browser-bridge-<version>.zip, descompacte e carregue essa pasta em chrome://extensions com o modo de desenvolvedor ativado. Compilar a partir do código-fonte gera a pasta carregável dist/ ; a raiz do repositório não pode ser carregada.

Parear com o VS Code

  1. No Bachata, abra “Agentes” e atribua Browser Bridge a um papel. Um indicador de status do Bridge aparece no topo de Agentes; quando o Bridge não está pareado, ele mostra “Parear o Bridge”. Selecione-o.
  2. Escolha “Copiar código de pareamento”. “Localizar navegador” inicia a busca de novo; “Redefinir pareamento” emite um novo código.
  3. Abra o popup do Bridge no Chrome e escolha Paste & connect. Se você digitar ou colar o código no campo, escolha “Connect to VS Code” em vez disso.
Popover Agentes no VS Code com o indicador de pareamento do Bridge selecionado. A seção de conexão do Browser Bridge mostra “Desconectado” e “Pareie a extensão Bachata Browser Bridge usando este código.”, com botões para copiar o código de pareamento, localizar o navegador e redefinir o pareamento. Reviewer 2 está atribuído ao Browser Bridge com “Escolha uma conversa”.
Lado do VS Code: copiar o código de pareamento. Dados de demonstração.
Bridge popup, Disconnected. 'Copy the pairing token from Bachata’s Browser Bridge settings in VS Code.' A Pairing token field with Paste and Show, a Paste & connect button, and a Connection settings disclosure. Below: Choose a chat, Refresh tabs, and Other websites.
Lado do navegador: cole e conecte.

O endereço local é preenchido automaticamente. Abra “Connection settings” apenas se o VS Code mostrar um endereço diferente. O Bridge mantém uma conexão, então só uma janela do VS Code por perfil de usuário é dona do Bridge por vez; as outras janelas continuam podendo usar Codex e Claude Code.

Escolher um chat

  1. Abra uma conversa no ChatGPT ou no Claude e faça login.
  2. No popup, escolha “Refresh tabs”. Cada linha mostra o provedor, o título, a prontidão e eventuais limitações. “Details” mostra a identidade da aba e da conversa.
  3. Escolha “Use this chat” em uma conversa pronta. Só as linhas prontas oferecem isso, e apenas com a conexão ativa.
  4. Em “Agentes”no Bachata, escolha essa conversa para o papel de navegador.
Popup do Bridge, estado “Connected”. A escolha de chat lista “Checkout review” no ChatGPT e “Second opinion” no Claude, ambos prontos com “Automatic completion available” e um botão “Use this chat”, além de uma aba do ChatGPT marcada como “Sign-in required”. A interface do Bridge existe apenas em inglês.
Conversas prontas oferecem “Use this chat”. Abas de demonstração.
Popup do Bridge mostrando o chat selecionado: “Checkout review” no ChatGPT, pronto, com os botões para parar de usar e ver detalhes e um link para trocar de conversa. A interface do Bridge existe apenas em inglês.
Depois de vinculado, o popup mostra apenas esse chat. “Change conversation” mostra a lista completa.
Popover Agentes com o indicador “Bridge conectado”. Reviewer 1 usa Codex CLI. Reviewer 2 usa o Browser Bridge com a conversa “ChatGPT · Checkout review”. O botão de agentes mostra “Agentes · 1 reatribuídos”.
Uma conversa de navegador atribuída ao Reviewer 2. Dados de demonstração.

O vínculo sobrevive ao fechamento do popup e à reinicialização do worker do navegador. Só é preciso vincular de novo se a aba for fechada, navegar para outro site ou tiver sua conversa trocada manualmente.

Outros sites de chat

Para um site que não seja ChatGPT nem Claude, abra Outros sites no popup e escolha “Set up current website” e permita a origem exibida. Feche o popup e use o painel de configuração na página: detectar automaticamente ou escolher os controles (campo de mensagem e região da conversa são obrigatórios; enviar, parar e nova conversa são opcionais) e então validar. A validação não envia mensagem de chat.

Popup do Bridge com a seção de outros sites expandida: “Connect another chat website by choosing its controls. Each site needs your permission; supported actions vary. Choose models on the website.” Botões: “Set up current website” e “Saved bindings”. A interface do Bridge existe apenas em inglês.
Outros sites no popup.

Outros sites recebem apenas texto; imagens e arquivos para download não são suportados. Um site sem controles verificados de enviar e parar serve para fluxos manuais, mas não para execuções gerenciadas sem supervisão. Sites que você não vinculou nunca são descobertos, e o Bridge nunca abre uma aba dessas por você.

Limitações

  • Os sites dos provedores mudam sem aviso. Uma versão funcional do Bridge só é evidência para as versões de site contra as quais foi testada.
  • O Bridge não automatiza login nem CAPTCHAs e não acrescenta texto oculto ao prompt.
  • Após uma falha, a recuperação mostra o que foi registrado e nunca reenvia um prompt automaticamente.

Referência

Comandos

Todos os comandos estão na Paleta de Comandos sob Bachata:.

ComandoO que faz
AbraAbrir o painel do Bachata.
ConfiguraçãoEscolher um objetivo e quantos assistentes trabalham nele.
DiagnósticoVerificar provedores, Git e requisitos do pipeline, com correções.
Revisar arquivo / Revisar seleçãoPreparar um rascunho de revisão para o arquivo atual ou a seleção.
Revisar diff preparado / Revisar alterações não commitadasPreparar um rascunho de revisão para as alterações locais.
Revisar commit / Revisar intervalo de commits / Revisar branch contra a basePreparar um rascunho de revisão para o histórico do Git.
Publicar achados em ProblemasMostrar achados no painel Problemas.
Corrigir diagnósticoPreparar um rascunho de correção para um diagnóstico do editor ou do painel Problemas.
Explicar pipelineDescrever o que um pipeline faz.
Verificadores do repositório / Configurar verificadores e política do repositórioDeclarar as verificações do repositório que uma execução pode rodar.
Executar TODO.md, Prever plano de TODO, Retomar / Parar / Abandonar execução de TODO, Mostrar status da execução de TODOOrquestrar tarefas de um TODO.md do Bachata fornecido.
Melhorar este projetoExecutar o fluxo de autoaperfeiçoamento.
Inspecionar pacote de execução / Reproduzir pacote de execuçãoAbrir um registro de execução exportado.
Registrar evidência externaRegistrar evidências produzidas fora do Bachata.
Dados locaisRevisar e excluir dados locais de execuções.
Propriedade do espaço de trabalhoMostrar qual janela do VS Code pode executar trabalho neste espaço.
Limpar quarentena de recursosLiberar recursos compartilhados em quarentena.

Pipelines integrados

PipelineDescrição
Code reviewRevisão somente leitura por um participante. Os achados vêm de uma única fonte.
Code review — reconcile findingsRevisão somente leitura por dois participantes, com até 10 rodadas para conciliar achados. Exige uma Direção.
Code review and refinementDois participantes revisam e conciliam achados em até 4 rodadas; depois um implementador corrige os achados confirmados dentro do escopo declarado.
UI/UX reviewRevisão somente leitura de usabilidade, acessibilidade e hierarquia visual por dois revisores.
Review and prepare tasksDois participantes conciliam achados e depois preparam uma lista de tarefas selecionáveis.
Identify decisions for youDois participantes conciliam as escolhas que exigem julgamento humano. Somente leitura.
Implementation planProduzir um plano de implementação sem editar arquivos.
Implementation plan — reconcile proposalsDois planejadores conciliam um plano em até 10 rodadas. Exige uma Direção.
Fix a bugDiagnosticar e implementar uma correção com um participante. Roda as verificações declaradas do controlador; não cria commit.
Fix a bug — reviewed tasksDois participantes conciliam o diagnóstico; você seleciona tarefas delimitadas para o controlador implementar.
Fix within a declared scopeUm executor implementa dentro dos caminhos configurados; o controlador roda as verificações declaradas. Exige uma Direção.
Diagnose and fix — model reviewDois participantes conciliam um diagnóstico, implementam uma correção e a revisam. A verificação é revisão por modelo.
Deliver a featureConciliar requisitos e projeto, depois implementar e revisar dentro de um escopo declarado com verificações do controlador.
Product direction reviewRevisar escolhas de produto e conciliar recomendações. Exige uma Direção.

Pipelines marcados como “Internos” no seletor são estágios do controlador para orquestração de TODO e autoaperfeiçoamento.

Configurações principais

ConfiguraçãoPadrãoFinalidade
bachata.codexCommandcodexExecutável do app server do Codex.
bachata.claudeCommandclaudeExecutável do Claude Code.
bachata.preferredProviderautoProvedor preferido quando um pipeline oferece mais de um.
bachata.disabledProviders[]Provedores que o Bachata nunca deve executar.
bachata.advancedModefalseMostrar o editor de pipeline completo.
bachata.notificationModematerialQuais notificações o Bachata mostra.
bachata.fixPipelineIdvazioPipeline usado para “Corrigir achado”.
bachata.freshReviewPipelineIdvazioPipeline usado em revisões novas quando o selecionado não serve.
bachata.maxPipelineIterations10Máximo de iterações sequenciais em uma execução.
bachata.browserBridgePort43127Porta de loopback à qual o Browser Bridge se conecta.
bachata.todoFileTODO.mdLista de tarefas usada pela orquestração de TODO.

Configurações que ampliam o que uma execução pode fazer, como modos de permissão e diretórios de trabalho externos, são lidas apenas das configurações de usuário ou da máquina, de modo que um repositório aberto não pode conceder mais poderes a si mesmo.

Privacidade

O Bachata trabalha sobre a sua cópia local. Não há conta do Bachata, serviço hospedado nem telemetria. Prompts, código selecionado e respostas vão para os provedores que você escolher; o contrato da execução mostra o que cada provedor recebe antes do início. As credenciais do provedor ficam com a CLI ou a sessão de navegador dele.

Sobre as capturas de tela

As capturas de tela mostram o painel real do Bachata (dist/webview.js) e o popup real do Bridge, renderizados no Chrome fora do VS Code com as cores do tema Dark Modern do VS Code. O repositório demo-shop, suas execuções, achados, decisões e abas de chat são dados de demonstração inventados. No VS Code o painel aparece dentro de uma aba do editor.