Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/tomevault-io/skills-registry --skill adversarial-iteration명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | adversarial-iteration |
| description | > Use when this capability is needed. |
Work with adversarial review feedback instead of patching symptoms.
implement -> [spawn round agent -> review -> REFLECT -> reproducer -> fix -> verify -> return summary] --+
^ |
+-------- next round (fresh agent, clean context, re-reads files from disk) <--------------+
terminates when round agent reports ZERO_FINDINGS.
Step 1 (implement) is manual. Steps 2+ run inside /loop autonomously —
no AskUserQuestion, ExitPlanMode, or other user gates. When multiple
approaches exist, tag one "Recommended", pick it, continue. The user can
interrupt at any point; you never pause to ask.
If agents are unavailable, run the next review inline and re-read all changed files before reviewing.
The unique step. Skipping it produces fixes that pass the named test but seed the next finding in the same class.
For each finding, answer:
CLAUDE.md rule did I violate? Be specific.Then across all findings: what's the unifying shape? Often a single cognitive failure caused them all. Name it.
Common shapes:
If reflection produces a new shape, add it to this list.
Timeline draw — For concurrent state changes, draw the interleaved
timeline. Find the check-act gap. Two cooperating booleans is almost always
wrong; use Once, compare_exchange, or a single owner.
Upstream contract read — For any value flowing in, read the producer's contract (grep, 5 lines). Don't assume from the type name. Ask: does this transformation belong in this layer?
Full lifecycle trace — For any fix depending on component cooperation, trace init through teardown. List every component and what happens to in-flight work. Especially: what stops first?
Variant enumeration — For any generic covering N types, list each type's destructor/serializer/contract. Verify the generic satisfies every one. If they differ non-trivially, prefer N type-specific wrappers or parametrize over a closure.
Write the test before the fix. Verify it FAILS on unfixed code — if it passes, it's a tautology. The test must touch the system the bug lives in, not just a helper in isolation. Do not commit yet; all changes commit together after the loop terminates.
Draft a plan (in the response, not via ExitPlanMode) referencing:
Do NOT commit during the loop. All changes accumulate as working-tree edits and are committed once after the loop terminates with zero findings.
After verify passes, do these IN ORDER before spawning the next round. Skipping any one is a protocol violation.
grep -rn 'round\|TODO.*round\|HACK\|FIXME\|debugging\|TEMP' <changed files>.
Remove round-N narrative, debugging scaffolding, and stale TODOs from the
working tree before the next agent reads those files.
Construct this structured summary for the orchestrator to carry forward:
### Round N complete
- Findings: <list of what the review surfaced>
- Root-cause shape: <the REFLECT unifying shape>
- Fixes: <what changed and why, 2-3 sentences max>
- Files changed: <paths>
- Tests: pass/fail
- Remaining risk: <anything REFLECT flagged but did not address>
Read references/round-agent-prompt.md for the agent prompt template. Populate it with:
Spawn a general-purpose agent (not codex:rescue — the round agent needs
Read/Write/Edit/Bash for the full REFLECT->fix cycle). The fresh context
window is the compaction mechanism — no /compact needed.
The agent runs its full round (review -> REFLECT -> reproducer -> fix ->
verify) and returns a structured round summary. The orchestrator evaluates
whether the summary contains ZERO_FINDINGS.
The loop ends when all three hold:
ZERO_FINDINGS after re-reading all changed files.No other exit. Sibling findings recurring -> previous REFLECT was too shallow, go back to REFLECT. Fix getting expensive -> plan the architectural change as this iteration's step, same loop. Never propose "stop here, accept risk."
ExecStdout::next" is./codex:adversarial-review/loop (dynamic-pacing, omit interval)Source: boxlite-ai/boxlite — distributed by TomeVault.