本文へ移動
cccskills
無料GitHub で公開

resolve-pr-conflicts

Resolve merge conflicts in an open pull request for this repository. Use when the user says "/resolve-pr-conflicts", asks to fix PR conflicts, says a pull request cannot merge because it is behind main, asks to update a PR branch from main, or asks to make a conflicted PR testable again.

日本語の概要は準備中です。原文の説明を表示しています。

jtenniswood/espcontrolスター 1,120(GitHub 1,120 + cccskills 0)
連携ツールGitHub

実行スコア 未検証

インストール方法を見る

含まれるファイル(2)

  • SKILL.md5.0 KB
  • agents/openai.yaml213 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

/resolve-pr-conflicts

Overview

Resolve pull request merge conflicts without merging into main. Work on the PR branch or a maintainer-owned conflict-fix branch, commit the resolved files, push the branch, and leave the PR open for user testing.

Workflow

1. Identify the PR

Use the PR number or URL if the user provides one. Otherwise inspect open PRs and choose the newest conflicted PR, clearly saying that assumption.

Prefer GitHub connector tools when available. Otherwise use gh:

gh pr list --state open --limit 20 \
  --json number,title,author,headRefName,headRepositoryOwner,baseRefName,mergeStateStatus,isCrossRepository,url,updatedAt
gh pr view <number> \
  --json number,title,body,author,headRefName,headRepositoryOwner,baseRefName,mergeStateStatus,isCrossRepository,maintainerCanModify,url,files,statusCheckRollup

Record the PR URL, base branch, source branch, whether the PR is from a fork, whether maintainers can modify it, and the current check state.

2. Protect Local Work

Check the current checkout before changing branches:

git status --short --branch
git worktree list

Do not overwrite or revert unrelated local changes. Prefer a new worktree for conflict work, especially when the main checkout has local files.

Use a worktree from the PR branch when it can be pushed:

git fetch origin <base-branch>
gh pr checkout <number> --branch <local-pr-branch>
git worktree add ../<repo>-pr-<number>-conflicts <local-pr-branch>

If the PR comes from a fork and cannot be pushed safely, create a same-repo branch from the PR head instead and tell the user the original PR may need a replacement PR:

gh pr checkout <number> --detach
git switch -c <maintainer-conflict-branch>

3. Bring in the Base Branch

Fetch the latest base branch and merge it into the PR branch. Do not merge the PR into main.

git fetch origin <base-branch>
git merge origin/<base-branch>

If the repository convention prefers rebase and the PR has not been shared or reviewed, rebase is acceptable. For existing shared PRs, prefer merge because it does not rewrite the contributor's history.

4. Resolve Conflicts Deliberately

List conflicted files:

git status --short
git diff --name-only --diff-filter=U

For each file:

  • Read both sides of the conflict and the surrounding current code.
  • Keep the intended PR behavior while preserving newer changes from the base branch.
  • Remove all conflict markers: <<<<<<<, =======, >>>>>>>.
  • Avoid broad formatting or unrelated cleanup while resolving conflicts.
  • Regenerate derived files only when the repository has an established generator for the affected output.

Use structured tools for structured formats where practical:

  • YAML: preserve indentation, anchors, substitutions, and comments.
  • JSON/package lock files: prefer the package manager or lockfile-aware tooling.
  • Generated firmware, manifests, icons, or docs output: run the matching generator/check command instead of hand-editing large generated sections.

When the right resolution is unclear, inspect the original PR diff and recent base-branch changes:

gh pr diff <number> --patch
git log --oneline --decorate -- <file>
git diff ORIG_HEAD...HEAD -- <file>

5. Run Focused Checks

Run checks that match the files touched by the conflict. Common commands in this repository include:

npm run check:config
python3 scripts/build.py --check
python3 scripts/generate_device_slots.py --check
python3 scripts/check_timezones.py
npm run docs:build

Use the repo-local compile skill when firmware YAML, common YAML, device YAML, or C++ component changes need compile-level confidence.

If a check cannot be run locally, say why and name what remains unverified.

6. Commit and Push

Confirm only intended files changed:

git status --short
git diff --check
git diff --stat

Commit the conflict resolution with a plain message:

git add <resolved-files>
git commit -m "Resolve PR <number> merge conflicts"
git push

If working on a newly created same-repo branch, push with upstream and open a draft PR into the original base branch, explaining that it carries the original PR plus conflict resolutions.

Do not merge the PR, close linked issues, or mark device testing complete unless the user explicitly confirms the tested result.

Output Format

Keep the final update approachable and practical:

Resolved conflicts for PR #<number>: <title>

What changed:
- <plain-English summary of the conflict resolution>

Checks run:
- <command>: <pass/fail/skipped and why>

Pushed:
- <branch or PR URL>

What to test:
- <device/display or workflow the user should test before merge>

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

Clean up completed Git branches and worktrees for this repository both locally and on GitHub. Use when the user asks to remove complete, completed, merged, stale, finished, or done branches, delete merged GitHub branches, tidy local worktrees, prune completed PR branches, or clean up branches and worktrees after pull requests have merged.

日本語の概要は準備中です。原文の説明を表示しています。

jtenniswood/espcontrol1,1202026年10月26日 更新

Clean up local branch worktree folders for this repository after their branches or pull requests have merged to main. Use when the user asks to remove merged branch folders, tidy local worktrees, clean old feature branch directories, prune merged PR worktrees, or clean up local development folders without impacting main.

日本語の概要は準備中です。原文の説明を表示しています。

jtenniswood/espcontrol1,1202026年10月26日 更新

compile

無料

Test compile ESPHome firmware for all devices using Docker and fix any YAML or configuration errors until every device compiles successfully. Use when the user says "/compile", "test compile", "compile check", "build test", "check builds", "verify compile", or wants to make sure all devices compile before committing.

日本語の概要は準備中です。原文の説明を表示しています。

jtenniswood/espcontrol1,1202026年10月26日 更新

Review EspControl repository changes specifically for missing, stale, excessive, or misplaced documentation. Use when the user asks for a documentation coverage review, asks whether a feature or behavior change is concisely documented, invokes $docs-review, or explicitly wants docs checked as a secondary pass during a pull request, branch, or local diff review.

日本語の概要は準備中です。原文の説明を表示しています。

jtenniswood/espcontrol1,1202026年10月26日 更新

Provide an expert codebase review for this repository. Use when the user says "Expert Review" or "/expert-review", asks for an expert review, wants refactoring or codebase improvement recommendations, wants consistency and quality assessed, or asks how to reduce duplication, improve component use, preserve the end-user experience, and keep upgrades cleanly migratable.

日本語の概要は準備中です。原文の説明を表示しています。

jtenniswood/espcontrol1,1202026年10月26日 更新

Reimagine this repository from first principles using the current product and user experience as the target. Use when the user says "/expert-reset", asks how the project should be rebuilt if starting again, wants bold architecture or component-structure recommendations, or wants a research-only reset plan unconstrained by current implementation details.

日本語の概要は準備中です。原文の説明を表示しています。

jtenniswood/espcontrol1,1202026年10月26日 更新

jtenniswood のスキルをすべて見る

このスキルの問題を報告する