batch-pr-resolver
Discover open PRs in a repository and enqueue one `pr-resolver` task for each.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Discover open PRs in a repository and enqueue one `pr-resolver` task for each.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Refresh MoonMind services from git by fetching and pinning a branch snapshot, pulling compose images, then restarting changed containers with optional orchestrator inclusion.
Provide the shared fan-out engine used by provider-specific Jira and GitHub batch presets to enqueue child workflows with inherited runtime and stable evidence.
Discover open Dependabot version-bump PRs and enqueue one `pr-resolver` workflow for each.
Master orchestrator to resolve a PR by diagnosing state and delegating to specialized skills.
Verify a GitHub issue against the current repository state, then post a GitHub issue comment with a PASS, PARTIAL, FAIL, or BLOCKED verdict. Works in two modes: (a) feature-branch mode, comparing a checked-out branch to its base ref; or (b) main/trunk mode, verifying that an issue is already implemented on the current default branch. Optionally close the issue as completed after a PASS. Use when a user asks whether a branch or merged change completes a GitHub issue, or needs an issue-visible verification comment.
Resolve GitHub PR feedback end-to-end for the branch you are on. Use when you need to fetch all comments on the branch PR, evaluate whether each comment still applies, decide whether it should be addressed, implement fixes, run compile/tests with retry-on-failure, then commit and push the result.
| name | batch-pr-resolver |
| description | Discover open PRs in a repository and enqueue one `pr-resolver` task for each. |
| metadata | {"sideEffect":{"kind":"enqueue_children","owner":"agent","outcomeArtifact":"artifacts/batch_pr_resolver_result.json"},"required-capabilities":["gh"]} |
Create one queue task per open pull request so each PR branch can be resolved by pr-resolver on its existing branch. Fork PRs are skipped.
This parent batch skill does not publish repository changes itself. It records
child workflow queueing evidence in artifacts/batch_pr_resolver_result.json;
each queued pr-resolver child owns its repository publishing outcome.
repo (string, required): Target repository in owner/repo form.state (string, optional): PR state filter for discovery. Default is open. Using other states prints a warning.includeForks (boolean, optional): Reserved for compatibility. Currently rejected because queued pr-resolver jobs cannot reliably check out fork-only head refs.skipExistingOnly (boolean, optional): Legacy alias kept for compatibility. If set, skip PRs from fork repositories. Note: this name is counter-intuitive; true means forks are skipped.maxAttempts (number, optional): Queue job maxAttempts for each created task. Default 3.priority (number, optional): Queue job priority. Default 0.mergeMethod (string, optional): Merge method passed to pr-resolver. Default squash.maxIterations (number, optional): pr-resolver loop cap. Default 5.runtimeMode (string, optional): Runtime to stamp onto each queued pr-resolver task. When omitted, the helper falls back to inherited task context or deployment defaults.runtimeModel (string, optional): Explicit model override to stamp onto each queued pr-resolver task.runtimeEffort (string, optional): Explicit effort override to stamp onto each queued pr-resolver task.runtimeProviderProfile (string, optional): Explicit provider-profile override to stamp onto each queued pr-resolver task.python3 .agents/skills/batch-pr-resolver/bin/batch_pr_resolver.py \
--repo <owner/repo> \
--state <open|merged|closed> \
--skip-existing-only \
--max-attempts 3 \
--priority 0 \
--merge-method squash \
--max-iterations 3 \
--runtime-mode <runtime_mode> \
--runtime-model <model> \
--runtime-effort <effort> \
--runtime-provider-profile <profile_id>
Map inputs to flags:
repo -> --repostate -> --stateskipExistingOnly -> --skip-existing-onlyincludeForks -> --include-forks (currently rejected at runtime)maxAttempts -> --max-attemptspriority -> --prioritymergeMethod -> --merge-methodmaxIterations -> --max-iterationsruntimeMode -> --runtime-moderuntimeModel -> --runtime-modelruntimeEffort -> --runtime-effortruntimeProviderProfile -> --runtime-provider-profileAlways forward the parent task's explicit runtime selection fields when they are present so the queued pr-resolver tasks reuse the same runtime, model, effort, and provider profile instead of falling back to the deployment default runtime.
For each open PR in the target repo:
isCrossRepository=true) or whose head is not on owner/repo.type: "task"payload.idempotencyKey: stable per parent batch run and PR, hash-backed and capped to the execution persistence limit, so rerunning the same batch task does not create duplicate resolver workflows.payload.repository: target repopayload.task.git.startingBranch: PR head branchpayload.task.publish.mode: autopayload.task.skill.name: pr-resolverpayload.task.inputs: { repo, pr, branch, mergeMethod, maxIterations }POST /api/executions),
require the canonical workflowId in the response, and verify that ID via
GET /api/executions/{workflowId} before counting it as queued;
MOONMIND_URL must point at the MoonMind API from the managed session.Write one summary artifact at batch_pr_resolver_result.json under the managed session artifact spool path when available, otherwise under the configured --artifacts-dir.
On any submission or verification error, write skill_outcome.json with a
failed or partial status so the managed runtime cannot report the batch
as successful.
Print a short count summary to stdout (queued, skipped, errors).
repo unless it can be inferred from git remote origin fallback.state=open by default to avoid accidental non-open PR dispatch.--include-forks is rejected to avoid unreliable fork-branch checkout behavior in queued jobs.MOONMIND_URL to reach the MoonMind API; the legacy direct-DB queue fallback is intentionally unsupported.