ワンクリックで
issue-worker
Pick oldest ready, implement via mbe agent run, create PR. ready→in-progress→has-pr. Invoke: /issue-worker.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Pick oldest ready, implement via mbe agent run, create PR. ready→in-progress→has-pr. Invoke: /issue-worker.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Drain the ready-issue backlog with quality: claim a batch of independent issues, implement each in parallel TDD worktree subagents, then serially merge green PRs. Replaces ship-loop. Use when the user says 'work the queue', 'drain the backlog', 'implement the ready issues', or invokes /implement-queue (optionally via /loop).
Track loop metrics, trends, improvements. Invoke: /progress-tracker.
Seed non-breaking but detectable bugs (lint violations, dead links) to verify autonomous audit/lint loops catch and file issues. Scheduled to run weekly to test measurement machinery. Invoke with /chaos-agent or schedule via RemoteTrigger.
Sensor-driven continuous improvement loop. Collects metrics from all sensors, detects regressions, creates issues, verifies past fixes, and self-tunes thresholds. Invoke with /learning-loop.
Audit mattbutlerengineering.com: smoke/sweep/scout modes. Invoke: /site-audit [smoke|sweep|scout].
Daily optimization loop for the implement-queue workflow. Measures queue efficiency via the queueEfficiency sensor, appends a trend point, logs the run, and files de-duplicated ready issues on regression. Async eval is scheduled separately — never run synchronously here. Invoke with /optimize-implement-queue.
| name | issue-worker |
| description | Pick oldest ready, implement via mbe agent run, create PR. ready→in-progress→has-pr. Invoke: /issue-worker. |
One issue/run, worktree-isolated.
node plugins/acmm/scripts/cadence-governor.js
Exit 1 (SKIP) → exit. Exit 0 → continue.
After work: node plugins/acmm/scripts/cadence-governor.js --execute
gh issue list --label "ready" --state open --limit 5 --sort created --json number,title,body,labels
Filter agent-skip. Pick first. No candidates → exit.
DEPS=$(echo "$ISSUE_BODY" | grep -oP 'Depends on: #\K\d+')
for DEP in $DEPS; do
[ "$(gh issue view $DEP --json state -q '.state')" != "CLOSED" ] && exit 0
done
Unresolved → skip, next.
State changes use mbe issue transition <NUM> --to <state> (states: ready, in-progress, has-pr, agent-failed, agent-skip) — it wraps @mbe/gh-client's tested label machine, the single source of truth for which labels come off on each edge. If mbe isn't on PATH (fresh worktree/CI), build once and call the CLI directly: pnpm build --filter @mbe/cli... then node tools/cli/dist/index.js issue transition <NUM> --to <state>.
ATTEMPT=$(gh issue view <NUM> --json comments --jq '[.comments[] | select(.body | test("agent-failed attempt"))] | length')
MAX=$(node -e "console.log(JSON.parse(require('fs').readFileSync('.github/auto-qa-tuning.json','utf-8')).thresholds.maxRetries)")
if [ "$ATTEMPT" -ge "$MAX" ]; then
mbe issue transition <NUM> --to agent-skip
gh issue comment <NUM> --body "**Auto-skipped** after $ATTEMPT (max: $MAX). Manual retry:
\`\`\`bash
mbe issue transition <NUM> --to ready
\`\`\`"
fi
Max hit → skip, next.
mbe issue transition <NUM> --to in-progress
Body/labels: what, area, criteria, verification commands.
Task + commands: "After implementation, run: "
ci-fix: 0.50feature: 1.502.00FRONTMATTER=$(gh issue view <NUM> --json body -q .body | mbe agent frontmatter)
eval "mbe agent run \"\$TASK\" --max-budget <budget> --adapter auto $FRONTMATTER"
Last flags win (override budget/adapter). Safe (enum/numeric).
--adapter auto enables rate-limit failover: claude → gemini → opencode on 429. Applies to haiku/sonnet-tier runs. Opus-tier issues should include --adapter claude in their frontmatter agent: block to stay on the Claude provider.
mbe issue transition <NUM> --to has-pr
gh issue comment <NUM> --body "PR: <URL>"
gh pr edit <PR> --body "$(gh pr view <PR> --json body -q .body)
Closes #<NUM>"
ATTEMPT=$(gh issue view <NUM> --json comments --jq '[.comments[] | select(.body | test("agent-failed attempt"))] | length')
MAX=$(node -e "console.log(JSON.parse(require('fs').readFileSync('.github/auto-qa-tuning.json','utf-8')).thresholds.maxRetries)")
NEXT=$((ATTEMPT + 1))
gh issue comment <NUM> --body "**agent-failed attempt #$NEXT** — Unable.
**Error**: <summary>
Attempts: $NEXT/$MAX
$([ "$NEXT" -ge "$MAX" ] && echo 'Auto-skipped next.' || echo 'Will retry next cycle.')"
if [ "$NEXT" -ge "$MAX" ]; then
mbe issue transition <NUM> --to agent-skip
else
# Retry-eligible: canonical edge is straight back to ready (the attempt
# count above already lives in the comment history, not the label).
mbe issue transition <NUM> --to ready
fi
FIFO: --sort created. Prefer ci-fix:
CI=$(gh issue list --label "ready" --label "ci-fix" --state open --limit 5 --sort created --json number,labels -q '[.[] | select(.labels | map(.name) | index("agent-skip") | not)] | .[0].number')
[ -n "$CI" ] && WORK_CI || WORK_ANY
Failed auto-re-queue: ready (unless max).
After maxRetries (.github/auto-qa-tuning.json, 2): agent-skip.
Manually retry skipped:
mbe issue transition <NUM> --to ready
Manually retry failed:
mbe issue transition <NUM> --to ready