Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/finos/git-proxy --skill address-review명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | address-review |
| description | Address review comments on a GitHub pull request |
Address review comments on a GitHub pull request.
Read AGENTS.md first. It is the canonical project guide for this repository.
The argument is a PR number (e.g. /address-review 98). If no number is given, ask the user.
Save the current branch name: git rev-parse --abbrev-ref HEAD
Checkout the PR branch: gh pr checkout <number> --detach
Fetch review data (pick one):
REST (simple): Lists inline review comments; it does not include per-thread resolved status, so you cannot rely on it alone to skip resolved threads.
gh api repos/{owner}/{repo}/pulls/<number>/comments --paginate
GraphQL (for filtering resolved threads): Returns reviewThreads with isResolved, isOutdated, paths/lines, and nested comments—use this when step 5 must honor “already resolved.” Paginate with cursor (use null or omit for the first page; then pass reviewThreads.pageInfo.endCursor while hasNextPage is 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 {
isResolved
isOutdated
path
line
originalLine
comments(first:100) {
nodes {
databaseId
body
author { login }
createdAt
url
}
}
}
}
}
}
}' -F owner={owner} -F repo={repo} -F number=<number> -F cursor=<cursor>
First page: pass JSON null for cursor (see gh help api / your shell for how gh expects null). Later pages: set cursor to the previous response’s reviewThreads.pageInfo.endCursor until hasNextPage is false.
id, path, line (or original_line), body, user.login, in_reply_to_id (to detect threads). If you used GraphQL, map databaseId to id and thread fields as needed.PR #<number> — <n> unaddressed review comments
1. <file>:<line> — @<author>: <first 80 chars of comment>
2. <file>:<line> — @<author>: <first 80 chars of comment>
...
If there are no unaddressed comments, say so and return to the original branch.
For each comment in order, show:
Then ask the programmer what to do using AskUserQuestion with these options:
If the programmer chooses Fix, apply the change and move on. If they choose Reply, queue it. Track all code changes and queued replies separately.
After walking through all comments:
Code changes: If any code fixes were made, run the /commit skill to create a commit with the changes, then push:
git push
Replies: If there are queued replies, show all of them in a final summary:
Queued replies:
1. <file>:<line> — reply to @<author>:
"<reply text>"
2. <file>:<line> — reply to @<author>:
"<reply text>"
Ask the programmer for final confirmation before posting. They can modify any reply text at this point.
Post each reply as a separate API call:
gh api repos/{owner}/{repo}/pulls/<number>/comments/<comment_id>/replies \
--method POST \
-f body="<reply text>"
After all replies are posted, return to the original branch:
git checkout <original-branch>
Follow these rules strictly when drafting replies:
--detach to avoid creating local branches$ARGUMENTS