duongphuhiep/dakubo-skills

Use quando o usuário deseja responder a um comentário de revisão de código em um pull request do GitHub e resolver o tópico. É acionado por comandos como "responder ao comentário #N no PR", "responder ao revisor" ou "resolver este comentário de revisão".

O que é dakubo-skills?

Esta skill permite que um agente de IA responda automaticamente a comentários de revisão de código em pull requests do GitHub e resolva os respectivos tópicos. Ela é acionada por comandos como "responder ao comentário #N no PR", "responder ao revisor" ou "resolver este comentário de revisão". A skill infere automaticamente o número do PR, o comentário alvo e a resposta a partir do contexto da conversa, evitando perguntas desnecessárias. Seu processo envolve três etapas principais: identificar o ID do comentário usando a API REST do GitHub, postar a resposta como uma réplica nesse comentário e, em seguida, resolver o tópico da revisão via API GraphQL. Projetada para ambientes de desenvolvimento como Claude Code ou Cursor, essa skill acelera o fluxo de revisão de código ao automatizar tarefas repetitivas de resposta e resolução, mas exige que o agente não invente respostas — deve derivá-las do contexto ou perguntar ao usuário em caso de ambiguidade.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/duongphuhiep/dakubo-skills/tree/HEAD/package/skills/dakubo-answer-review-remark-in-pr

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Responder a Comentários de Revisão em PR

Responda a um comentário de revisão de código em um PR do GitHub e resolva o tópico.

Entradas

Inferir todas as entradas do contexto da conversa. Pergunte apenas se ambíguo.

Entrada 1 — Número ou URL do PR. O pull request para atuar. Inferir do contexto (ex: uma URL de PR exibida anteriormente ou nome do branch). Se realmente ambíguo, execute:

gh pr list --head "$(git rev-parse --abbrev-ref HEAD)" --json number,url --jq '.[0]'

Entrada 2 — O comentário a ser respondido. Um achado específico do revisor — geralmente identificado por número (#2), arquivo+linha ou texto citado da tabela de comentários exibida anteriormente na conversa. Se nenhuma tabela de comentários estiver na conversa e a skill dakubo-display-pr-remarks estiver disponível, use-a para fazer a tabela. Se não, pergunte ao usuário pelo comentário.

Entrada 3 — A resposta. A resposta a ser publicada: uma explicação, reconhecimento ou resumo da correção. Derivar do contexto (ex: o que foi corrigido ou discutido). Pergunte se não estiver claro.

Processo

1. Resolver o ID do comentário

Busque comentários de revisão inline para o PR:

gh api repos/:owner/:repo/pulls/<PR>/comments --paginate \
  --jq '.[] | {id, path, line: (.line // .original_line), body: .body[0:120]}'

Corresponda o comentário alvo pelo número da linha, caminho do arquivo ou trecho do corpo. Anote seu id.

2. Publicar a resposta

gh api repos/:owner/:repo/pulls/<PR>/comments \
  --method POST \
  --field body="<answer>" \
  --field in_reply_to=<comment_id>

3. Resolver o tópico

Encontre o tópico de revisão que contém este comentário:

gh api graphql -f query='
{
  repository(owner: "<owner>", name: "<repo>") {
    pullRequest(number: <PR>) {
      reviewThreads(first: 100) {
        nodes {
          id
          isResolved
          comments(first: 1) { nodes { databaseId } }
        }
      }
    }
  }
}'

Corresponda o tópico cujo comments.nodes[0].databaseId é igual ao id do comentário original (não a resposta). Em seguida, resolva-o:

gh api graphql -f query='
mutation {
  resolveReviewThread(input: { threadId: "<thread_node_id>" }) {
    thread { isResolved }
  }
}'

Saída

Confirme: resposta publicada no comentário <id> em <arquivo>:<linha>, tópico resolvido. Uma frase.

O que NÃO fazer

  • Não invente uma resposta — derive-a do contexto ou pergunte.
  • Não resolva um tópico sem publicar uma resposta primeiro.
  • Não adivinhe o PR se houver vários abertos neste branch; pergunte.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

duongphuhiep/dakubo-skills

Use when the user wants to respond to a code review remark by adding a clarifying comment to the source code — so the reviewer understands the reasoning and won't raise the same remark again. Triggers on "answer remark #N", "add comment to address reviewer concern", "document why we did X", or any request to resolve a review finding through in-code explanation rather than a code change.

duongphuhiep/dakubo-skills

Use when the user wants to see unresolved PR comments, review remarks, or outstanding feedback on a pull request.

duongphuhiep/dakubo-skills

Traces the full call chain from a given symbol or code location up to all entry points that can reach it (HTTP controllers, main functions, page components, routes, etc.). Works for any language indexed by CodeGraph. Use for blast-radius analysis before modifying a function, method, or class.

duongphuhiep/dakubo-skills

Consolidates multiple fragmented OpenSpec capability folders under openspec/specs/ into a single main feature spec, through a staged/approved workflow. Use this whenever the user says openspec/specs/ is cluttered, has too many similar or overlapping capability folders, asks to merge/consolidate/combine specs, wants to clean up specs split across several separate change archives (e.g. specs/user-show/, specs/user-detail/ that should really be one specs/user-management/), or asks to check/apply a pending merged spec under openspec/specs/.merged-specs/. Do NOT use this for a normal single /opsx:archive of one change — only for merging several already-archived, already-existing spec folders together.

Habilidades Relacionadas