用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Morrison-Lab/ai-config --skill resolve-pr-threads命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | resolve-pr-threads |
| description | Resolve settled review threads. |
| user-invocable | true |
| allowed-tools | ["Bash"] |
A narrow, standalone sweep: resolve inline review threads that are already
settled, without running a full ard/ardi pass. Useful when threads were
replied to in an earlier round but never resolved (a rebuttal the reviewer
stopped re-raising, a fix that landed after the reply), or before
re-requesting review so stale threads don't clutter the new round.
This skill does not invent dispositions. The settlement rules — what
counts as Address / Rebut / Defer / Acknowledge, and exactly when each is safe
to resolve — are defined once, in ard step 4b. This skill
only applies those existing rules to threads that already carry a reply.
ardi round, to resolve any rebuttal threads the
latest review didn't re-raise (already covered inline by ard, but callable
standalone here too).GitHub — pull threads with their resolution state and last reply
(READ_PR_REVIEW_COMMENTS — abstract operation token; resolve to your
model's tool via tool-mappings.md):
gh api graphql -f query='query {
repository(owner:"<owner>", name:"<repo>") {
pullRequest(number:<N>) {
reviewThreads(first:100) {
totalCount
nodes {
id
isResolved
comments(last:5) { nodes { databaseId body author { login } } }
}
}
}
}
}'
If totalCount exceeds the returned node count, say so in the report instead
of silently sweeping a partial list (same cap caveat as pr-status).
GitLab:
glab api "projects/:id/merge_requests/<N>/discussions"
For every thread where isResolved is false:
ard pass, not a resolve.ard's resolve-only-when-settled rules:
Don't resolve a thread that has no reply on it — that skips straight past
ard's dispositioning step, and the reviewer never sees a response.
GitHub:
gh api graphql -f query='mutation {
resolveReviewThread(input:{threadId:"<thread_node_id>"}) { thread { isResolved } } }' # RESOLVE_REVIEW_THREAD
GitLab:
glab api -X PUT "projects/:id/merge_requests/<N>/discussions/<discussion_id>?resolved=true"
In a remote/web session without gh/glab, use
mcp__github__resolve_review_thread (see tool-mappings.md).
State plainly, per thread: resolved (with the settlement reason) or left open
(with why — no reply / fix not pushed / re-raised / needs confirmation). If
any thread lacks a reply, note that a full ard pass is needed for those
before they can be swept.
ard / ardiard step 4b already runs this exact sweep as part of every review round —
this skill exists so the sweep is callable on its own, without re-running the
whole Address/Rebut/Defer pass. The settlement criteria live in one place
(ard); this skill and ard both point to it rather than each keeping a
separate copy.