ワンクリックで
address-review
// Address PR review comments systematically. Use when responding to code review feedback on a pull request.
// Address PR review comments systematically. Use when responding to code review feedback on a pull request.
Interact with the running VSCode extension via Playwright. Use when automating, testing, or debugging the OpenCode webview UI.
Create a spec sheet for the given feature/fix request in specs/ directory. Use when planning a significant new feature or complex fix.
Implement a single phase of a spec. Use when given a spec file and a phase number to implement.
Browser automation CLI using Playwright. Use when automating browser workflows, filling forms, clicking elements, scraping pages, or debugging web issues.
Review a spec for under-specified areas, bugs, and adherence to the generate-spec skill. Use when asked to review, critique, or check a spec.
Update AGENTS.md files based on session learnings about a topic. Use when documenting patterns, commands, or conventions discovered during development.
| name | address-review |
| description | Address PR review comments systematically. Use when responding to code review feedback on a pull request. |
Address PR review comments systematically.
Get review comments: Use gh api graphql to fetch all review threads and comments for the PR. (If a PR number is not provided in the input, look up the PR for the current branch).
Analyze comments: Review all the feedback to understand what changes are needed
Address each comment systematically: For each review comment:
Quality assurance: Run type-check, build, and lint to ensure all changes are correct
Commit and push: Stage and commit all changes with an appropriate message and push.
Mark comments resolved: Query PR review threads with gh api graphql to get thread IDs and outdated status. Resolve all addressed threads using mutation { resolveReviewThread(input: {threadId: "THREAD_ID"}) { thread { isResolved } } }. Always resolve outdated threads.
// Query review threads:
gh api graphql -f query='query { repository(owner: "owner", name: "repo") { pullRequest(number: N) { reviewThreads(first: 100) { nodes { id isResolved isOutdated comments { nodes { body } } } } } } }'
// Resolve thread:
gh api graphql -f query='mutation { resolveReviewThread(input: {threadId: "THREAD_ID"}) { thread { isResolved } } }'