Skip to content
cccskills
FreePublished on GitHub

issue-to-pr-resolver

Take a GitHub issue through implementation in a worktree, tests, and a draft pull request. The skill then checks CI results and review threads, applies fixes, and repeats the review cycle until the pull request is ready for maintainer review.

OriginalShow the original description

Implement a GitHub issue end-to-end — create a worktree branch, implement the feature with tests, create a draft PR, then iteratively resolve all CI failures and review comments until the PR is clean. Use when you need to fully implement a GitHub issue from start to merge-ready. Triggers on "implement issue", "resolve issue", "/issue-to-pr-resolver <number>".

homeassistant-ai/ha-mcp5,352 stars(GitHub 5,352 + cccskills 0)
Works withGitHub

Run score Not tested

See how to install

Good for

  • Implementing a GitHub issue end to end
  • Creating a draft pull request from an issue
  • Resolving CI failures and review comments

Files included (1)

  • SKILL.md4.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Issue-to-PR Resolver

Implement GitHub issue #$ARGUMENTS in homeassistant-ai/ha-mcp end-to-end.

Phase 1: Setup

Read the issue:

gh issue view "$ARGUMENTS" --repo homeassistant-ai/ha-mcp --json title,body,labels,comments,author

Create a worktree from repo root:

cd "$(git rev-parse --show-toplevel)"
git checkout master && git pull origin master
git worktree add "worktree/issue-$ARGUMENTS" -b "feature/issue-$ARGUMENTS"
git -C "worktree/issue-$ARGUMENTS" submodule update --init --recursive
cd "worktree/issue-$ARGUMENTS"

Phase 2: Implement

  • Analyze codebase structure and patterns before writing code
  • Follow project conventions (see AGENTS.md for patterns, naming, error handling)
  • Write tests — all new MCP tools in src/ha_mcp/tools/ need E2E tests
  • Make atomic, well-described commits using conventional commit prefixes

Philosophy: Work autonomously. Don't ask about every small decision. Fix unrelated test failures encountered. Document all choices for the final summary.

If a non-obvious choice has significant consequences, present the available options to the user and let them choose.

Phase 3: Create PR

Write the PR body to local/pr-body-$ARGUMENTS.md first. local/ is git-ignored, so a new worktree does not have it; create it with mkdir -p local if it does not exist. Build the body from .github/pull_request_template.md: keep its headings, put Closes #$ARGUMENTS and the description under ## What does this PR do?, and delete ## Future improvements unless the user has confirmed work to defer. Then push and create the PR:

git push -u origin "feature/issue-$ARGUMENTS"
PR_NUMBER=$(gh pr create --draft \
  --repo homeassistant-ai/ha-mcp \
  --title "<descriptive title>" \
  --body-file "local/pr-body-$ARGUMENTS.md" | grep -oE '[0-9]+$')

Wait for CI:

gh pr checks "$PR_NUMBER" --repo homeassistant-ai/ha-mcp --watch

Before marking ready (gh pr ready), update the PR description to reflect all changes made.

Phase 4: Resolution Loop

Repeat until all checks green and no unresolved threads:

Check for issues:

gh pr checks "$PR_NUMBER" --repo homeassistant-ai/ha-mcp
gh api repos/homeassistant-ai/ha-mcp/pulls/"$PR_NUMBER"/comments \
  --jq '.[] | {id, path, line, author: .user.login, body}'
gh api graphql -F pr="$PR_NUMBER" -f query='query($pr: Int!) { repository(owner:"homeassistant-ai", name:"ha-mcp") { pullRequest(number:$pr) { reviewThreads(first:100) { nodes { id isResolved comments(first:1) { nodes { databaseId body } } } } } } }'

Resolve each comment (both steps required):

# 1. Reply on the inline thread
gh api repos/homeassistant-ai/ha-mcp/pulls/"$PR_NUMBER"/comments/<COMMENT_ID>/replies \
  -f body="✅ Fixed in [commit]. [explanation]"
# or: -f body="📝 Not addressing because [reason]."

# 2. Resolve the thread via GraphQL
gh api graphql -f query='mutation($threadId: ID!) { resolveReviewThread(input: {threadId: $threadId}) { thread { id isResolved } } }' \
  -f threadId="<PRRT_...>"

After pushing fixes, wait and re-check:

gh pr checks "$PR_NUMBER" --repo homeassistant-ai/ha-mcp --watch

Phase 5: Final Report

Once all checks pass and all threads resolved:

gh pr comment "$PR_NUMBER" --repo homeassistant-ai/ha-mcp --body "## Implementation Summary

**Choices Made:**
- [key technical decisions with rationale]

**Problems Encountered:**
- [issues faced and how resolved]
- [unrelated test failures fixed, if any]
"

Report to user: PR number, status, key choices.

Rules

  • Never commit to master — always work in the worktree
  • Always create PRs as draft — never mark ready without user request
  • Maximum 5 resolution iterations before reporting blockers
  • Discovered improvements: fix-in-place by default. See AGENTS.md § Boy Scout Rule — Handling Discovered Improvements for the full rubric. Never open a follow-up PR or issue without explicit user approval; never populate ## Future improvements without the user explicitly confirming the work is out of scope.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

bat-adhoc

FreeSummary

Design and run focused acceptance scenarios to check MCP tools through real agent CLIs such as Claude or Gemini. Review task completion, tool failures, and detailed run output, and compare branches when investigating a regression.

  • Validate MCP tool changes in a pull request
  • Check whether a tool regression occurs from an agent’s perspective
  • Run an end-to-end scenario with Claude or Gemini CLI
homeassistant-ai/ha-mcp5.4KUpdated Oct 29, 2026

bat-story-eval

FreeSummary

Compare MCP tool behavior in a target version with a released baseline. It selects relevant prebuilt scenarios, designs custom regression stories, runs them with agent CLIs, verifies outcomes, and reports behavior, tool usage, and cost trends.

  • Compare tool behavior between a release and a code change
  • Choose test stories that exercise modified MCP tools
  • Create regression scenarios for changed code paths
homeassistant-ai/ha-mcp5.4KUpdated Oct 29, 2026

Review an external GitHub pull request for security concerns, test coverage, change size, and alignment with its linked issue or stated purpose. It summarizes findings and drafts a constructive review comment for you to approve before posting.

  • Review an external contribution before deciding whether it is ready to merge
  • Check whether a pull request has tests for its changed code
  • Assess whether a contributor’s changes match the linked issue
homeassistant-ai/ha-mcp5.4KUpdated Oct 29, 2026

Finds authors of merged pull requests who are missing from a README contributors list, drafts concise descriptions of their work, and updates the list only after the user approves the proposed additions.

  • Find recent merged PR authors missing from the contributor list
  • Draft factual one-line summaries of contributors’ changes
  • Update a README after reviewing proposed additions
homeassistant-ai/ha-mcp5.4KUpdated Oct 29, 2026

issue-analysis

FreeSummary

Analyze a GitHub issue by exploring related code, checking relevant external details, and assessing implementation complexity and architectural choices. The skill drafts a structured issue comment and recommends labels for maintainers to review.

  • Assessing the complexity of a GitHub issue
  • Planning implementation approaches
  • Preparing an issue analysis and labels
homeassistant-ai/ha-mcp5.4KUpdated Oct 29, 2026

my-pr-checker

FreeSummary

Manage your own GitHub pull request by checking CI results, review comments, and unresolved threads. Triage feedback, make code fixes, reply to comments, resolve threads, and recheck until outstanding issues are cleared.

  • Check CI and review feedback on your own pull request
  • Triage bot and human comments and fix relevant issues
  • Resolve review threads after replying with an update
homeassistant-ai/ha-mcp5.4KUpdated Oct 29, 2026

See all skills by homeassistant-ai

Report a problem with this skill