ha-mcp: Skill for Claude Code

.claude/skills/issue-to-pr-resolver/SKILL.md

issue-to-pr-resolver is a skill for Claude Code from harry189/ha-mcp. It costs 85 tokens per session (1,131 once invoked), scanned A, a copy of issue-to-pr-resolver, MIT.

An end-to-end workflow for turning a GitHub issue into a tested draft pull request. It creates an isolated branch, implements the change, runs tests, and handles continuous-integration failures and review comments.

In plain words
What is it for?
Reading an issue, creating a worktree and feature branch, implementing and testing the change, opening a draft pull request, and resolving CI or review feedback.
Why use it?
It organizes the repeated work needed to move an issue from a request to a merge-ready contribution.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: mentions AGENTS.md.

This is harry189/ha-mcp's own configuration. It tells Claude Code how to work on ha-mcp itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything ha-mcp configures →

Reuse

Borrowing it

Nothing to install: this file belongs to harry189/ha-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/harry189/ha-mcp/chore/gate-demo-throwaway/.claude/skills/issue-to-pr-resolver/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/harry189/ha-mcp

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for issue-to-pr-resolver

README.md
[![agentmods](https://agentmods.dev/badge/skills/harry189/ha-mcp/issue-to-pr-resolver/github.svg)](https://agentmods.dev/skills/harry189/ha-mcp/issue-to-pr-resolver)
Your own site
<a href="https://agentmods.dev/skills/harry189/ha-mcp/issue-to-pr-resolver"><img src="https://agentmods.dev/badge/skills/harry189/ha-mcp/issue-to-pr-resolver/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for issue-to-pr-resolver

Your own site · 80×15
<a href="https://agentmods.dev/skills/harry189/ha-mcp/issue-to-pr-resolver"><img src="https://agentmods.dev/badge/skills/harry189/ha-mcp/issue-to-pr-resolver.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 85 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,131 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00085 $0.01131
Opus 5 $0.00043 $0.00566
Sonnet 5 $0.00017 $0.00226
Haiku 4.5 $0.00009 $0.00113

Measured 8d ago against content hash 97fc9693f185, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

issue-to-pr-resolver scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

100% identical to issue-to-pr-resolver — 2 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

.claude/skills/issue-to-pr-resolver/SKILL.md · 114 lines

How it starts

The opening of the file, as written. The whole thing — 114 lines — stays where its author put it; the contents beside it link to each section on GitHub.

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
  • Run tests locally: cd tests && uv run pytest src/e2e/ -n2 --dist loadscope -v --tb=short
  • 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, create two mutually exclusive PRs (one per approach) and let the user choose.

Phase 3: Create PR

git push -u origin "feature/issue-$ARGUMENTS"
PR_NUMBER=$(gh pr create --draft \
  --repo homeassistant-ai/ha-mcp \
  --title "<descriptive title>" \
  --body "Closes #$ARGUMENTS

## What does this PR do?
[description]
" | 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 } } } } } } }'

Read the full file on GitHub · 114 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 114 lines · 85 tokens per session scan A 97fc9693f185

Subscribe to this mod's changes

issue-to-pr-resolver is a skill published in the GitHub repository harry189/ha-mcp (0 stars, last pushed 1mo ago), licensed MIT. It adds 85 tokens to every session and 1,131 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to issue-to-pr-resolver, differing in 2 lines, and is treated as a copy.

Related

Other skills, from other repositories

review-implement-phase

Implements triaged review actions, commits focused fixes, and posts Done plus resolves threads. Use when the user wants only the implementation phase of the review-framework workflow.

prisma/orm · 38 tokens

engram-branch-pr

PR creation workflow for Engram following the issue-first enforcement system. Trigger: When creating a pull request, opening a PR, or preparing changes for review.

Gentleman-Programming/engram · 37 tokens

verify-behavior

Verify or reproduce visible product behavior by driving the real UI with pi-computer-use's checked tools, requiring verified expect postconditions and durable state evidence for meaningful UI flows. Use when triage needs visual reproduction, implementation needs behavioral proof, review needs interactive confirmation…

nicknisi/dotfiles · 68 tokens

github-contributor

End-to-end playbook for shipping high-quality pull requests to open-source projects you don't maintain — discovery, CONTRIBUTING compliance, PR-size check, minimal-diff implementation, PR description with AI-assisted disclosure, conflict resolution, and post-submission maintainer interaction. Use whenever creating…

daymade/claude-code-skills · 133 tokens

revdiff

Review diffs, files, and documents with inline annotations in a TUI overlay, or answer questions about revdiff usage, configuration, themes, and keybindings. Opens revdiff in agterm/tmux/zellij/herdr/kitty/wezterm/cmux/ghostty/iterm2/emacs-vterm, captures annotations, and addresses them. Works in git, hg, and jj repos…

umputun/revdiff · 248 tokens

write-pr

Reference standards for writing pull request titles and descriptions in the tldraw repository, plus the pre-flight comment sweep over the diff. Use as supporting guidance when another skill or workflow needs PR content standards, not as the user-facing create/update PR workflow.

tldraw/tldraw · 53 tokens