Address GitHub Comments
davila7/claude-code-templates
A skill your agent uses when you need to address review or issue comments on an open GitHub Pull Request using the gh CLI.
Work through review comments across a stack of jj-managed PRs, one PR at a time — pull comments, present them with proposed fixes, apply only what's approved, and manage the commit/rebase/push flow.
$ npx skills add meain/dotfiles --skill address-review-comments -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install meain/dotfiles address-review-comments --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/meain/dotfiles.git skills-src && mkdir -p .claude/skills && cp -r skills-src/agents/.agents/skills/address-review-comments .claude/skills/address-review-comments && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "address-review-comments" agent skill from https://github.com/meain/dotfiles/tree/master/agents/.agents/skills/address-review-comments into .claude/skills/address-review-comments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "address-review-comments", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/meain/dotfiles/tree/master/agents/.agents/skills/address-review-commentsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add meain/dotfiles --skill address-review-comments -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install meain/dotfiles address-review-comments --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/meain/dotfiles.git skills-src && mkdir -p .agents/skills && cp -r skills-src/agents/.agents/skills/address-review-comments .agents/skills/address-review-comments && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "address-review-comments" agent skill from https://github.com/meain/dotfiles/tree/master/agents/.agents/skills/address-review-comments into .agents/skills/address-review-comments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "address-review-comments", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add meain/dotfiles --skill address-review-comments -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install meain/dotfiles address-review-comments --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/meain/dotfiles.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/agents/.agents/skills/address-review-comments .cursor/skills/address-review-comments && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "address-review-comments" agent skill from https://github.com/meain/dotfiles/tree/master/agents/.agents/skills/address-review-comments into .cursor/skills/address-review-comments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "address-review-comments", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/meain/dotfiles.git --path agents/.agents/skills/address-review-comments--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add meain/dotfiles --skill address-review-comments -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install meain/dotfiles address-review-comments --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/meain/dotfiles.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/agents/.agents/skills/address-review-comments .gemini/skills/address-review-comments && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "address-review-comments" agent skill from https://github.com/meain/dotfiles/tree/master/agents/.agents/skills/address-review-comments into .gemini/skills/address-review-comments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "address-review-comments", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install meain/dotfiles address-review-commentsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add meain/dotfiles --skill address-review-comments -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/meain/dotfiles.git skills-src && mkdir -p .github/skills && cp -r skills-src/agents/.agents/skills/address-review-comments .github/skills/address-review-comments && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "address-review-comments" agent skill from https://github.com/meain/dotfiles/tree/master/agents/.agents/skills/address-review-comments into .github/skills/address-review-comments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "address-review-comments", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add meain/dotfiles --skill address-review-comments -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install meain/dotfiles address-review-comments --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/meain/dotfiles.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/agents/.agents/skills/address-review-comments .opencode/skills/address-review-comments && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "address-review-comments" agent skill from https://github.com/meain/dotfiles/tree/master/agents/.agents/skills/address-review-comments into .opencode/skills/address-review-comments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "address-review-comments", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
address-review-commentsWork through review comments across a stack of jj-managed PRs, one PR at a time — pull comments, present them with proposed fixes, apply only what's approved, and manage the commit/rebase/push flow.
Address Review Comments is an agent skill from meain/dotfiles. Work through review comments across a stack of jj-managed PRs, one PR at a time — pull comments, present them with proposed fixes, apply only what's approved, and manage the commit/rebase/push flow.
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: If there is a shell, there is a way! The licence is MIT.
10 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 3e336e2. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
goghmakeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
github.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Address Review Comments loads about 2.5k tokens when it runs. Until then it costs about 56 tokens; SKILL.md has 1,386 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from meain/dotfiles at commit 3e336e2, republished under its MIT licence (© meain). 1,386 words, ~2,495 tokens.
.claude/skills/address-review-comments/SKILL.md (or your agent's skills folder).Address code review comments on a stack of jj-managed PRs/commits, one PR at a time, keeping every fix reviewable before it's folded into history.
Only process PRs that have actual human review activity. Comments from
bots (coderabbitai, github-actions, claude) do not count as "reviewed"
for this filtering purpose — skip a PR with only bot comments unless the
user explicitly asks to address bot comments too. When they do ask about a
bot's comment, check it against current code before doing anything: bot
reviews often describe code that has since changed shape (e.g. an earlier
architectural fix already made the comment moot) — say so plainly if the
finding no longer applies, don't reflexively "fix" something already fixed.
If preparing research for several PRs ahead of time, background subagents
work well — one per PR, each writing findings to
.martifacts/pr-<number>-review.md — so the user can go through them one by
one without waiting on research each time.
For each PR, in order:
jj new <pr-change-id> -m "wip: address pr #<number> review comments"Never work by directly jj edit-ing the PR's own commit to add new logical
changes — that buries the diff inside an existing commit before the user has
seen it. The one exception is resolving a genuine rebase conflict (see step
6) — that's mechanical reconciliation of two existing diffs, not new work,
so it's fine to resolve inline and squash immediately.
GIT_DIR=$(jj git root) gh pr view <number> --json reviews,commentsgh pr view does not show whether an inline thread is resolved, so also
pull the threads with their state and full reply chain:
GIT_DIR=$(jj git root) gh api graphql -f query='query{repository(owner:"<owner>",name:"<repo>"){pullRequest(number:<number>){reviewThreads(first:100){nodes{id isResolved isOutdated path line originalLine comments(first:50){nodes{author{login} body createdAt}}}}}}}'Only work on what is actually still open — the goal is never to re-address a comment that has already been dealt with:
isResolved: true.CHANGES_REQUESTED review state stays until the reviewer re-reviews,
even when every thread behind it is resolved. That needs a re-review
request, not more code.For each comment: re-check it against the current shape of the code (line numbers and even the code itself may have moved since the review was posted), then propose a concrete fix. Present all comments as a numbered list with the proposed solution before changing anything — do not edit code first and explain after.
If a comment is architectural rather than mechanical (e.g. "why build a second client instead of extending the shared one"), lay out the tradeoffs and flag that it needs a decision, rather than just picking an approach.
If two comments' proposed fixes contradict each other, or a proposed fix conflicts with a decision already made elsewhere in the stack, stop and explain the contradiction — don't silently resolve it one way.
Right after showing the list, open the PR in the browser so the user can work through the comments visually alongside it:
open https://github.com/<owner>/<repo>/pull/<number>Wait for the user to pick which comments to act on (they may say "do 2, 3, 5", ask follow-up questions about specific ones first, or ask for a different fix than the one proposed). Only touch what's explicitly approved. Re-verify build and tests after every change:
go build ./... && go test ./<affected-packages>/...Watch for formatting tools (make fmt, gofumpt/goimports hooks) sweeping
unrelated files when run repo-wide — check jj diff --stat afterward and
jj restore --from @- anything outside the intended scope before
describing the commit.
A rename or signature change made at PR N's commit often breaks compilation
at PR N+k downstream, because later commits reference the old name. Fix each
broken descendant as its own new commit (jj new <descendant-rev> -m "wip: ..."), scoped to just that ripple — not folded into the fix commit,
and not directly edited into the descendant's existing commit. This lets the
user review the fix and its ripple separately, and keeps each PR's diff
matching what it's actually supposed to contain.
Sequence: fix at the PR's commit → jj describe it → jj rebase -s <next-commit> -d <fix-commit> → check for breakage/conflicts at each
affected descendant → fix each with its own jj new/jj describe → rebase
the remaining tail forward → repeat until the whole stack builds clean.
If jj rebase reports actual conflicts (not just compile breakage — look
for CONFLICT in jj log or <<<<<<< markers in files), resolve them by
editing the conflicted file directly, then:
jj squash --use-destination-messageThis is expected/mechanical — reconciling two sides of a real merge — and distinct from squashing new work into an existing commit. Do it as soon as the conflict is resolved; no need to hold it for approval.
Move to the tip (jj edit <tip-change-id> or the bookmark furthest along)
and run the full build + test suite there — passing at an individual
commit doesn't guarantee the assembled stack still builds:
go build ./... && go test ./...Show the user the diff of every new fix/ripple commit created in this pass
(jj diff -r <rev> for each). Default suggestion is to squash each into its
target PR commit, but never squash without the user explicitly saying so
for this batch — a prior "yes" does not carry over to the next PR's
squashes. Once approved:
jj squash --from <fix-commit> --into <target-commit> --use-destination-messageRe-verify build/test at the tip after squashing (squashing can itself surface new conflicts if two independent fixes touched overlapping lines).
GIT_DIR=$(jj git root) jj git push -b <bookmark1> -b <bookmark2> ...List every bookmark in the stack from the PR just fixed through the tip — squashing rewrites commit IDs for every descendant, so all of them need re-pushing, not just the one that changed.
Repeat from step 1 for the next PR with human review comments.
A long-running review stack will need to be rebased onto upstream main more than once as other work lands. This is a distinct situation from step 6's same-stack ripple conflicts — here the conflicting side is someone else's merged work, so treat every conflict as needing a review step, not an immediate squash:
jj rebase -d main (or whatever the trunk bookmark is) to pull the whole
stack onto the new base.jj log -r 'descendants(<stack-base>) & mutable()' -T 'change_id.shortest(8) ++ " " ++ if(conflict, "CONFLICT ", "") ++ description.first_line() ++ "\n"'jj new <conflicted-rev> (a new commit on top of it), edit out
the <<<<<<</|||||||/=======/>>>>>>> markers by hand (usually
both sides are additive — keep both, don't just pick one), build/test/lint,
then show the resulting diff and wait for explicit approval before
squashing — unlike step 6's same-stack ripple conflicts, a wrong merge
here can silently drop real work from someone else's landed PR, so it's
worth the extra pause even though the mechanics are the same
(jj squash --into <conflicted-rev>).jj restore/jj abandon anything
speculative.© meain, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in agents/.agents/skills/address-review-comments of meain/dotfiles.
Open the folder on GitHubat commit 3e336e2
Address Review Comments next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Address Review Comments this skillmeain/dotfiles | 285 | — | ~2.5k | Automated safety check: Pass | MIT | |
| Address GitHub Commentsdavila7/claude-code-templates | 33k | 7 repos | ~307 | Automated safety check: Pass | MIT | |
| Gh Address Commentstech-leads-club/agent-skills | 7k | — | ~353 | Automated safety check: Pass | Apache-2.0 | |
| Secrets Managementdavila7/claude-code-templates | 33k | 12 repos | ~2k | Automated safety check: Pass | MIT | |
| Project ManagerRightNow-AI/openfang | 18k | — | ~960 | Automated safety check: Pass | Apache-2.0 | |
| Content Management Systemsgithub/awesome-copilot | 40k | 1 repos | ~1.3k | Automated safety check: Pass | MIT |
davila7/claude-code-templates
A skill your agent uses when you need to address review or issue comments on an open GitHub Pull Request using the gh CLI.
tech-leads-club/agent-skills
Address review and issue comments on the open GitHub PR for the current branch using gh CLI.
davila7/claude-code-templates
Secure secrets management practices for CI/CD pipelines using Vault, AWS Secrets Manager, and other tools.
RightNow-AI/openfang
Project management expert for Agile, estimation, risk management, and stakeholder communication
github/awesome-copilot
Workflow for building and modifying content management systems across WordPress, Shopify, Wix, Squarespace, Drupal, WooCommerce, Joomla, HubSpot CMS Hub, Webflow, Adobe Experience Manager, and…
cursor/plugins
Spawn Comment Sicko, fix accepted findings, and offer encodings for claimed constraints.
meain/dotfiles
Search past Claude Code and Codex sessions. An agent skill from meain/dotfiles.
meain/dotfiles
Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as decisions crystallise.
meain/dotfiles
Daily backlog management — full planning review OR add a single entry from a URL.
meain/dotfiles
Generate an interactive local HTML review page for a large PR or diff, grouping the changed files by logical concern (not just by file) so a reviewer can go through one theme at a time instead of a…
meain/dotfiles
Generate a concise weekly status update in team format. An agent skill from meain/dotfiles.
meain/dotfiles
Search the web using lynx and DuckDuckGo. An agent skill from meain/dotfiles.
Work through review comments across a stack of jj-managed PRs, one PR at a time — pull comments, present them with proposed fixes, apply only what's approved, and manage the commit/rebase/push flow. Address Review Comments is an agent skill from meain/dotfiles. Work through review comments across a stack of jj-managed PRs, one PR at a time — pull comments, present them with proposed fixes, apply only what's approved, and manage the commit/rebase/push flow.
Run `npx skills add meain/dotfiles --skill address-review-comments -a claude-code`. Or copy the skill folder (agents/.agents/skills/address-review-comments in meain/dotfiles) into .claude/skills/address-review-comments in your project. Claude Code loads it when a task matches its description.
Run `npx skills add meain/dotfiles --skill address-review-comments -a codex`. Or copy the skill folder (agents/.agents/skills/address-review-comments in meain/dotfiles) into .agents/skills/address-review-comments in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add meain/dotfiles --skill address-review-comments -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/address-review-comments, .gemini/skills/address-review-comments, .github/skills/address-review-comments and .opencode/skills/address-review-comments in your project.
Going by SKILL.md and its folder, Address Review Comments needs the command-line tools its instructions call (go, gh and make).
SKILL.md names 1 domain. In commands or code: github.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Address Review Comments is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Address Review Comments: Address GitHub Comments (davila7/claude-code-templates, 33k stars), Gh Address Comments (tech-leads-club/agent-skills, 7k stars), Secrets Management (davila7/claude-code-templates, 33k stars) and Project Manager (RightNow-AI/openfang, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
meain (a GitHub user) maintains it in meain/dotfiles, which has 285 GitHub stars. The repository holds 35 skills in this directory. The repository was last updated on October 8, 2026.
Source: meain/dotfiles on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.