Pular para o conteúdo
Skillpedia
Tarefas e projetos101 mil · #807

babysit

Ajuda seu agente a monitorar um pedido de pull até que ele possa ser mesclado. Ele verifica comentários e revisões para garantir que tudo esteja pronto.

O que ela faz

Este agente fica de olho em uma solicitação de alteração (pull request) até que ela esteja pronta para ser aprovada e integrada. Ele monitora comentários, revisões e testes automáticos para garantir que tudo esteja resolvido.

Quando usar

  • ✓Quando você quer que alguém acompanhe uma solicitação de alteração por você.
  • ✓Se você precisa garantir que todos os comentários e revisões em uma solicitação de alteração sejam respondidos.
  • ✓Para ter certeza de que os testes automáticos de uma solicitação de alteração foram concluídos com sucesso antes de integrá-la.

Exemplo do que pedir para a IA

“Fique de olho nesta solicitação de alteração até que ela possa ser integrada.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/thedotmack/claude-mem/blob/main/plugin/skills/babysit/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/thedotmack/claude-mem/blob/main/plugin/skills/babysit/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

O agente verifica o status da solicitação de alteração, os comentários e as revisões em intervalos regulares. Ele continua monitorando até que todos os problemas sejam resolvidos e os testes passem.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add thedotmack/claude-mem --skill babysit

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/thedotmack/claude-mem/main/plugin/skills/babysit/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Babysit PR

Fique com o PR até que ele esteja realmente limpo. Não pare após uma única passagem de verificação se comentários ou tópicos de revisão ainda estiverem pendentes.

Fluxo de Trabalho

  1. Identifique o número do PR, o branch e o branch base.
  2. Confirme se o PR não é um rascunho e inspecione a mesclabilidade, as verificações, a decisão de revisão, os comentários e os tópicos de revisão.
  3. Monitore as verificações pendentes até que elas terminem. Faça polling em um intervalo prático, geralmente de 30 a 60 segundos, a menos que o usuário peça uma cadência diferente.
  4. Leia novos comentários e tópicos de revisão pendentes. Trate resumos de bots como úteis, mas verifique os achados acionáveis contra o código.
  5. Corrija problemas reais em commits focados, execute testes/builds relevantes, envie e retorne à etapa 2.
  6. Resolva tópicos de revisão obsoletos apenas após verificar se o código ou o artefato gerado agora atende ao comentário.
  7. Pare apenas quando as verificações estiverem passando ou forem intencionalmente ignoradas, a decisão de revisão for aceitável, nenhum comentário acionável permanecer e nenhum tópico de revisão pendente permanecer.

Verificações do GitHub CLI

Use gh pr view para o status geral:

gh pr view <number> --json \
  number,state,isDraft,mergeable,mergeStateStatus,reviewDecision,headRefOid,statusCheckRollup,url

Resolva o proprietário/nome do repositório antes de usar o GraphQL:

repo_json=$(gh repo view --json owner,name)
owner=$(jq -r '.owner.login // .owner.name' <<<"$repo_json")
repo=$(jq -r '.name' <<<"$repo_json")

Use GraphQL para tópicos de revisão pendentes. Inclua pageInfo; omita cursor na primeira página, em seguida, passe o endCursor anterior com -f cursor="$cursor" enquanto hasNextPage é true.

gh api graphql \
  -f query='query($owner:String!,$repo:String!,$number:Int!,$cursor:String){repository(owner:$owner,name:$repo){pullRequest(number:$number){reviewThreads(first:100,after:$cursor){pageInfo{hasNextPage endCursor}nodes{id,isResolved,isOutdated,path,line,comments(last:1){nodes{author{login},body,createdAt,url}}}}}}}' \
  -f owner="$owner" -f repo="$repo" -F number=<number>

Use este loop quando um PR pode ter muitos tópicos de revisão:

thread_query='query($owner:String!,$repo:String!,$number:Int!,$cursor:String){repository(owner:$owner,name:$repo){pullRequest(number:$number){reviewThreads(first:100,after:$cursor){pageInfo{hasNextPage endCursor}nodes{id,isResolved,isOutdated,path,line,comments(last:1){nodes{author{login},body,createdAt,url}}}}}}}'
cursor_args=()

while :; do
  page=$(gh api graphql -f query="$thread_query" -f owner="$owner" -f repo="$repo" -F number=<number> "${cursor_args[@]}")
  printf '%s\n' "$page" | jq -r '.data.repository.pullRequest.reviewThreads.nodes[]
    | select(.isResolved==false)
    | [.id,.path,(.line//""),(.isOutdated|tostring),(.comments.nodes[-1].author.login//""),(.comments.nodes[-1].body|gsub("\n";" ")|.[0:240])]
    | @tsv'

  jq -e '.data.repository.pullRequest.reviewThreads.pageInfo.hasNextPage' >/dev/null <<<"$page" || break
  cursor=$(jq -r '.data.repository.pullRequest.reviewThreads.pageInfo.endCursor' <<<"$page")
  cursor_args=(-f cursor="$cursor")
done

Filtre tópicos pendentes com jq:

jq -r '.data.repository.pullRequest.reviewThreads.nodes[]
  | select(.isResolved==false)
  | [.id,.path,(.line//""),(.isOutdated|tostring),(.comments.nodes[-1].author.login//""),(.comments.nodes[-1].body|gsub("\n";" ")|.[0:240])]
  | @tsv'

Resolva um tópico obsoleto apenas quando a correção for verificada:

gh api graphql \
  -f query='mutation($threadId:ID!){resolveReviewThread(input:{threadId:$threadId}){thread{id,isResolved}}}' \
  -f threadId=<thread-id>

Regras de Operação

  • Mantenha o observador em execução enquanto verificações longas estiverem pendentes.
  • Se um arquivo gerado fizer parte da distribuição, verifique se a origem e o artefato gerado concordam antes de resolver comentários.
  • Se um bot relatar um problema contra código obsoleto, confirme se o tópico está desatualizado ou foi abordado no último commit.
  • Antes do relatório final, faça uma varredura completa do status do PR, tópicos pendentes, comentários recentes e git status local.
  • Relate evidências concretas: SHA do último commit, nomes e resultados das verificações, contagem de tópicos pendentes, testes executados e quaisquer arquivos locais sujos deixados intocados.
Perguntas frequentes

O que é uma solicitação de alteração (pull request)?

É uma forma de propor mudanças em um projeto de código. Outras pessoas revisam essas mudanças antes de serem adicionadas ao projeto principal.

O que são 'testes automáticos' (CI)?

São verificações que o computador faz automaticamente para garantir que o código novo não quebrou nada no projeto.

O agente vai corrigir os problemas sozinho?

O agente monitora e informa os problemas, mas a correção geralmente precisa ser feita por um humano.

Detalhes

Descrição original do autor

Watch a pull request or review cycle until it is ready to merge. Use when asked to babysit, monitor, or keep checking PR comments, reviews, and CI until all actionable issues are resolved.

repo: thedotmack/claude-mem

Popularidade

Estrelas no GitHub
101 mil
Posição no ranking
#807
Licença
Apache-2.0
Atualizada em
16/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas