bat-adhoc
Run bot acceptance tests to validate MCP tools work correctly from a real AI agent's perspective. Use when testing PRs, detecting…
Manage your own GitHub pull requests — check CI status, inline review comments, PR-level comments, resolve review threads, fix issues, and iterate until all checks pass and threads are resolved. Use for managing your own PRs (not external contributions). Triggers on "check my
Claude Code
$ npx -y skills add homeassistant-ai/ha-mcp --skill my-pr-checker --agent claude-code
Codex
$ npx skills add homeassistant-ai/ha-mcp --skill my-pr-checker -a codex -y
Cursor
$ npx skills add homeassistant-ai/ha-mcp --skill my-pr-checker -a cursor -y
Gemini CLI
$ npx skills add homeassistant-ai/ha-mcp --skill my-pr-checker -a gemini-cli -y
GitHub Copilot
$ npx skills add homeassistant-ai/ha-mcp --skill my-pr-checker -a github-copilot -y
OpenCode
$ npx skills add homeassistant-ai/ha-mcp --skill my-pr-checker -a opencode -y
Windsurf
$ npx skills add homeassistant-ai/ha-mcp --skill my-pr-checker -a windsurf -y
name: my-pr-checker description: Manage your own GitHub pull requests — check CI status, inline review comments, PR-level comments, resolve review threads, fix issues, and iterate until all checks pass and threads are resolved. Use for managing your own PRs (not external contributions). Triggers on "check my PR", "check PR", "/my-pr-checker <number>". argument-hint: "<pr-number>" allowed-tools: Bash, Read, Edit, Write, Glob, Grep, WebFetch, WebSearch
Review and resolve all outstanding issues on PR #$ARGUMENTS in `homeassistant-ai/ha-mcp`.
# PR overview
gh pr view "$ARGUMENTS" --repo homeassistant-ai/ha-mcp \
--json title,body,state,reviews,statusCheckRollup,headRefName,additions,deletions,changedFiles
# CI checks
gh pr checks "$ARGUMENTS" --repo homeassistant-ai/ha-mcp
# Inline review comments
gh api repos/homeassistant-ai/ha-mcp/pulls/"$ARGUMENTS"/comments \
--jq '.[] | {id, path, line, author: .user.login, body}'
# PR-level comments
gh api repos/homeassistant-ai/ha-mcp/issues/"$ARGUMENTS"/comments \
--jq '.[] | {id, author: .user.login, body}'
# Unresolved review threads
gh api graphql -F pr="$ARGUMENTS" -f query='query($pr: Int!) { repository(owner:"homeassistant-ai", name:"ha-mcp") { pullRequest(number:$pr) { reviewThreads(first:100) { nodes { id isResolved path line comments(first:1) { nodes { databaseId body author { login } } } } } } } }'Accept if: prevents a bug, improves clarity for future maintainers, aligns with project conventions, addresses security. Dismiss if: incorrect suggestion, reduces readability, conflicts with project patterns, already handled elsewhere.
gh pr checkout "$ARGUMENTS" --repo homeassistant-ai/ha-mcp # make changes git add <files> git commit -m "fix: address review feedback - [description]" git push
Fix unrelated test failures encountered (document in final summary).
After each push, if the scope changed, update the PR description:
gh pr edit "$ARGUMENTS" --repo homeassistant-ai/ha-mcp --body "..."
# 1a. Reply on inline thread
gh api repos/homeassistant-ai/ha-mcp/pulls/"$ARGUMENTS"/comments/<COMMENT_ID>/replies \
-f body="✅ Fixed in [commit]. [explanation]"
# or for dismissed:
gh api repos/homeassistant-ai/ha-mcp/pulls/"$ARGUMENTS"/comments/<COMMENT_ID>/replies \
-f body="📝 Not addressing because [reason]."
# 1b. PR-level summary comment (when there are multiple inline threads)
gh pr review "$ARGUMENTS" --repo homeassistant-ai/ha-mcp \
--comment --body "✅ Addressed review feedback in [commit]. [summary]"
# 2. Resolve thread via GraphQL
gh api graphql -f query='mutation($threadId: ID!) { resolveReviewThread(input: {threadId: $threadId}) { thread { id isResolved } } }' \
-f threadId="<PRRT_...>"**Why:** Unresolved threads block merging even after approval.
gh pr checks "$ARGUMENTS" --repo homeassistant-ai/ha-mcp --watch
Repeat Steps 1–5 until:
If improvements were identified during review, **default to fix-in-place** per AGENTS.md § *Boy Scout Rule — Handling Discovered Improvements*. Only add to the PR description's `## Future improvements` section if the user has explicitly confirmed the work is out of scope. Never self-bucket findings there.
Post a summary comment:
gh pr comment "$ARGUMENTS" --repo homeassistant-ai/ha-mcp --body "## PR Assessment Summary ✅ **Status**: Ready for review/merge **Choices Made:** - [key decisions when resolving issues] **Problems Encountered:** - [issues faced and how resolved] - [unrelated test failures fixed, if any] "
Use these when needed. Re-creating the PR (which closes it) and deleting a comment each need the user's approval for that exact action first:
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with Home Assistant. Using natural language, control smart home devices, query states, execute services and manage your automations.
Run bot acceptance tests to validate MCP tools work correctly from a real AI agent's perspective. Use when testing PRs, detecting…
Compare MCP tool behavior between target and baseline versions using pre-built and custom stories with diff-based triage.
Review a contribution PR for safety, quality, and readiness. Checks for security concerns, test coverage, size appropriateness,…
Find merged PR authors missing from README and update the contributors list after approval
Deep analysis of a single GitHub issue with codebase exploration, implementation planning, and architectural assessment. Use when…
Implement a GitHub issue end-to-end — create a worktree branch, implement the feature with tests, create a draft PR, then…
Direct browser control via CDP for web interaction: automation, scraping, testing, screenshots, and site/app work. Also covers…
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling…