dev-all
Process issues sequentially: /dev per issue in isolated sub-agent → CI wait → merge → next
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Process issues sequentially: /dev per issue in isolated sub-agent → CI wait → merge → next
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Sync common skills, agents, hooks, rules, and layer-specific files to target projects
E2E development: investigate → dig → decompose → implement → test → review → PR
Initialize a new project with AI-driven development templates and layer-specific configuration
Comprehensive UI/UX audit: heuristic evaluation, accessibility, visual analysis, platform guidelines, and improvement proposals — then create GitHub Issues
| name | dev-all |
| description | Process issues sequentially: /dev per issue in isolated sub-agent → CI wait → merge → next |
| argument-hint | [issue numbers, e.g. #42 #43 #44, or empty for all open issues] |
| user-invocable | true |
| disable-model-invocation | true |
| allowed-tools | ["Bash(git checkout:*)","Bash(git pull:*)","Bash(git log:*)","Bash(git status)","Bash(git branch:*)","Bash(gh pr create:*)","Bash(gh pr merge:*)","Bash(gh pr view:*)","Bash(gh pr checks:*)","Bash(gh issue view:*)","Bash(gh issue list:*)","Glob","Grep","Read","Agent","Skill","TaskCreate","TaskUpdate","TaskList","TaskGet","AskUserQuestion"] |
Process multiple GitHub Issues sequentially. Each issue runs /dev in an isolated sub-agent, then waits for CI and merges before proceeding to the next.
Arguments: $ARGUMENTS
Each issue gets its own branch, PR, and merge cycle:
CLAUDE.md and look for ## Core Values sectionIf $ARGUMENTS is provided: Extract issue numbers.
If empty: Fetch all open issues:
gh issue list --state open --json number,title,labels,body --limit 100
won't — these are explicitly decided not to implement## Won't Do — cross-reference issue titlesLaunch parallel Explore agents (one per issue) to quickly understand scope:
Each agent:
gh issue view {NUMBER} --json title,body,labels,commentsCheck issue bodies for: blocked by #N, depends on #N, after #N
Topological sort:
Present:
won't label and Won't Do matches)Ask user to confirm before proceeding.
Create a master task tracker:
TaskCreate for each issue: "#{number}: {title}"
git checkout main && git pull origin main
Agent(
prompt: "/dev #{issue_number} — run in autonomous mode (no user confirmations).
Definition of done, all evidence required in your final message:
(1) the project's test command output (from CLAUDE.md Commands) showing its
success signal, re-run after your last change;
(2) review.json counts printed as text — \"critical\": 0 is required;
(3) the PR URL.
Constraints: do not modify or delete test files except those the issue
explicitly requires — include `git diff --stat` in the final message to prove
it. If the same failure recurs 3 times, stop and report the blocker instead.
Finish by printing the Structured Return Value JSON.",
model: "opus",
isolation: "worktree"
)
Why no
/goalinside the Agent() prompt?/goalis a session-scoped Stop-hook wrapper. There is no official support for slash commands taking effect inside a sub-agent prompt, so a/goalthere is likely inert text. Instead, the completion condition is stated as explicit instructions with evidence requirements, and Step 4b-result verifies the evidence rather than trusting the sub-agent's self-report. If a true evaluator loop per issue is needed, run the issue headlessly —claude -p "/goal <condition>"is officially supported.
The sub-agent:
After the sub-agent completes, validate the result before proceeding to merge. Never trust the sub-agent's narrated success — a claim of "tests pass, review clean" without evidence is the most common failure mode of long autonomous loops (proxy-signal collapse):
workspace/{issue}/review.json yourself to get the structured review outputDecision logic:
| Review Status | Action |
|---|---|
critical (critical_count > 0) | Skip this issue. Report to user: "#{issue} has {N} critical findings — skipping." Mark task as failed. Proceed to next issue. |
warnings (warning_count > 0) | Report to user. AskUserQuestion: "#{issue} PR has {N} unresolved warnings. Merge anyway?" If yes → proceed. If no → skip. |
clean | Proceed to auto-merge. |
Sub-agent failed (status: "failed") | Skip this issue. Report failure reason. Proceed to next issue. |
gh pr merge {PR_URL} --auto --merge --delete-branch
Poll until merged (check every 30 seconds, timeout 15 minutes):
STATE=$(gh pr view {PR_URL} --json state -q '.state')
If CI fails:
## Batch Development Summary
| # | Issue | PR | Status |
|---|-------|----|--------|
| 1 | #{42} Title | PR_URL | Merged |
| 2 | #{43} Title | PR_URL | Merged |
| 3 | #{44} Title | — | Skipped (CI failed) |
Completed: N / M issues
Mark all tasks completed.
To run the entire batch under /goal, derive the condition from the resolved issue list (Step 1) — never wrap the raw request. The evaluator only reads transcript text, so the condition must reference output this skill actually prints (the final report table, gh pr view output):
/goal Every issue in {resolved issue list} is resolved or explicitly skipped: the
final report table, printed in the most recent turn, shows for each issue either a
merged PR (verified by `gh pr view --json state` output showing MERGED) or a skip
reason — or stop after {5 × issue count} turns or after 3 consecutive issue
failures, then summarize what is blocking. Constraints: do not close an issue
without a merged fix, and do not drop issues from the list to finish early.
Derivation rules:
gh pr view --json state output, re-printed in the most recent turnIn autonomous mode:
AskUserQuestion confirmations — proceed with best judgment| Situation | Action |
|---|---|
| Issue not found | Skip, warn in report |
| Circular dependency | Skip affected issues, report |
| Sub-agent /dev fails | Ask user: skip or stop |
| CI fails | Ask user: skip or stop |
| Merge conflict | Ask user: skip or stop |
| 3 consecutive failures | Stop, report to user |
| Auto-merge timeout (15min) | Report, ask user |