31 pontos por xguru 2025-12-09 | 3 comentários | Compartilhar no WhatsApp
  • Ferramenta de CLI para lidar com tarefas de desenvolvimento multietapas e repetitivas por meio de um loop de agentes de IA, como ao implementar projetos de grande porte
  • Usa scripts Bash para chamar continuamente o Claude Code e realizar pequenas alterações de código a cada iteração
    • Cria uma nova branch, modifica o código e executa automaticamente commit e push
    • Cria PRs com o GitHub CLI e monitora o status do CI e os resultados de review com gh pr checks
    • Quando todos os checks e reviews definidos passam, faz o merge; se falhar, fecha o PR e descarta a branch e as alterações, repetindo esse ciclo
  • Para manter o contexto entre as iterações, usa um arquivo Markdown compartilhado como memória externa, como SHARED_TASK_NOTES.md
    • Resume o que foi feito em cada iteração e o que deve ser feito a seguir, registrando tudo em um estilo de “corrida de revezamento
    • Ex.: ao deixar uma nota como “é necessário tratar entrada nula na função Y”, a próxima iteração prioriza isso, formando um loop de autoaperfeiçoamento
    • Os prompts são projetados para deixar um pacote de handoff que desenvolvedores e agentes possam entender imediatamente depois, em vez de logs longos e desnecessários
  • Fornece um pipeline totalmente automatizado que cobre todo o ciclo de vida do PR
    • Criação de branch → execução do Claude Code → commit → criação de PR → espera por CI e review → merge ao passar → atualização da branch principal → limpeza e próxima iteração
    • Reaproveita diretamente as regras de code owners, checks obrigatórios e ambientes de preview do repositório existente, incluindo naturalmente a revisão humana no workflow
  • Com várias flags de controle de execução, é possível limitar custo, tempo e número de tentativas
    • --max-runs define o número máximo de iterações; 0 executa em loop infinito
    • --max-cost define um teto de custo em dólares, e --max-duration permite configurar um limite de tempo como 2h ou 30m
    • É possível combinar dois ou mais parâmetros para criar restrições compostas, como “até 10 execuções, até 5 dólares e até 1 hora”
  • Também oferece opções de integração com GitHub para controlar com precisão a estratégia de branches e a estrutura do repositório
    • --merge-strategy permite escolher entre squash / merge / rebase
    • --git-branch-prefix define a convenção de nomes das branches, permitindo trocar continuous-claude/ por feature/, por exemplo
    • As flags --owner e --repo permitem especificar explicitamente o repositório mesmo em ambientes em que o remoto não é GitHub ou a extração automática é difícil
  • É possível customizar a forma de armazenar contexto e as condições de encerramento
    • --notes-file permite usar outro nome de arquivo no lugar de SHARED_TASK_NOTES.md
    • Com --completion-signal e --completion-threshold, o processo pode encerrar antes se os agentes emitirem a expressão “projeto concluído” um número suficiente de vezes
  • Inclui recursos de modo seguro e dry-run para testes, depuração e experimentação
    • --disable-commits desativa commits reais, criação de PR e merge, permitindo testar apenas alterações locais
    • --dry-run simula todo o fluxo e permite verificar em logs quais comandos seriam executados
  • Suporta uma estrutura para executar vários trabalhos em paralelo com o recurso git worktree
    • --worktree <name> e --worktree-base-dir criam worktrees independentes para executar testes, documentação e outras tarefas em diretórios diferentes ao mesmo tempo
    • --cleanup-worktree limpa os worktrees ao final, e --list-worktrees oferece funções de gerenciamento para ver os worktrees ativos no momento
  • Requer como dependências Claude Code CLI, GitHub CLI e jq, e permite configurar o ambiente rapidamente com um script de instalação simples
    • Um script de instalação de uma linha permite instalar o continuous-claude em ~/.local/bin ou /usr/local/bin
  • Cenários reais de uso: adequado para tarefas altamente repetitivas, como expansão de cobertura de testes, grandes refatorações e correção automática de código quebrado após atualização de dependências
    • Enquanto o Dependabot lida apenas com atualização de versões, esta ferramenta funciona como uma “versão turbinada do Dependabot”, gerando automaticamente PRs de correção subsequentes com base nas notas de release e nos testes que falharam
    • Também pode ser usada em trabalhos longos, como dividir uma base de código monolítica em vários módulos ou trocar callbacks por async/await, criando e fazendo merge de mais de 20 PRs em sequência
  • O conceito é semelhante às pesquisas de Continuous AI e agentics do GitHub Next, e o design também considera o uso com vários agentes especializados rodando ao mesmo tempo
    • Suporta um padrão em que agentes com funções diferentes — para testes, refatoração, adição de funcionalidades etc. — são executados em paralelo para avançar simultaneamente em várias áreas de um monorepo
    • Mesmo que execuções individuais falhem, é possível experimentar uma estratégia iterativa que tolera desperdício, baseada na ideia de uma “distribuição de probabilidade com direção correta” e na premissa de queda de custos
  • No geral, é uma ferramenta que mantém intacto o workflow de PR já usado por desenvolvedores humanos, enquanto adiciona uma camada de agentes de IA para assumir tarefas repetitivas e trabalho operacional, podendo ser conectada diretamente a repositórios reais de produção

3 comentários

 
crawler 2025-12-09

O plano mais caro do Claude Code era de US$ 100, não era?
Então é um programa feito para espremer isso até o limite.

 
cjinzy 2025-12-09

São 200 dólares.

O uso é resetado toda semana, então estou pensando em experimentar antes que seja resetado.

 
shakespeares 2025-12-09

Parece que esse tipo de automação está acelerando a ideia de que nem seja preciso incluir pessoas no processo. Em projetos em que não há problema em fazer correções frequentes e colocar em produção, talvez tudo bem, mas imagino que em alguns momentos de teste exista algo que precise ser verificado por uma pessoa; fico curioso para saber como vocês resolvem isso.