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.