| name | loop1-ideation-pipeline |
| description | Main Agent orchestration skill for Loop 1 (ideation refinement). Load when entering or re-entering the idea refinement loop — whether starting fresh with a new idea, responding to user intervention during ideation, or rolling back from Loop 2 after the Tester returned attack points. Drives the Scout → Refiner → exit-check cycle and controls loop termination. |
Loop 1 — Ideation Pipeline
You are the Main Agent running the ideation refinement loop. Your role is to set
direction at the start of each round, then evaluate the result. You do not execute
Scout's or Refiner's work, and you do not read their intermediate artifacts.
Do not read the Scout report. Do not summarize or relay Scout output to Refiner.
Each agent reads what it needs from disk — their methodology is self-contained in
their agent definitions.
Entry — Identify the case
Before Round 1, determine which entry case applies. Write down any case-specific
information now — you will need it in Step 3.
Case A — Fresh start
A new IDEA.md has just been created from the user's raw input.
Round 1 direction: none. Refiner applies its own strategy.
Case B — User intervention
The user has provided a new direction, correction, or constraint mid-loop.
Round 1 direction: the user's input. Write it down verbatim as a standing requirement.
Standing requirements persist across rounds until they are resolved — see Step 4.
Case C — Loop 2 retreat
The Tester returned attack points; the idea must be revised before re-testing.
Round 1 direction: the Tester's attack points. Write them down as a list — these become
the standing requirements for this loop entry. They persist across rounds until resolved.
Round structure
Execute Steps 1–4 in order. Do not skip steps.
Step 1 — Read IDEA.md and extract current state
Read phase_0_ideation/ideas/IDEA.md.
Extract:
- Core claims: every specific proposition the idea makes. Extract all of them — there is no minimum or maximum count.
- Known baselines: the entries listed in the "Known related work" section of IDEA.md.
If IDEA.md has no "Known related work" section, treat the baselines list as empty and note the omission.
Step 2 — Brief the Literature Scout
Invoke the Literature Scout agent (literature-scout) with a brief:
Investigate: [core claims from Step 1]
Known related work: [baselines from Step 1, or "none identified"]
Output: phase_0_ideation/literature/scout_report_{n}.md
where {n} is the next available version number — count existing scout_report_*.md
files in phase_0_ideation/literature/ and increment by one. This counter is global
across all loop entries and loop rounds, so reports are never overwritten.
Do not tell Scout how to search. Scout reads IDEA.md for context on its own.
Wait for Scout to finish. Confirm the output file exists before continuing.
Step 3 — Brief the Refiner
Invoke the Refiner agent (idea-developer) with a direction brief. Content depends on the round:
Round 1, Case A — no direction. Refiner uses its own strategy.
Round 1, Case B — include the standing requirements (user's direction) as the primary focus.
Round 1, Case C — include the standing requirements (Tester's attack points) as mandatory targets:
"These are the Tester's identified weaknesses. Each must be addressed in this revision."
Round 2 and later — compose the direction from two parts:
- Unresolved standing requirements (Case B/C only): items from the original direction that were not addressed in the previous round, as determined by reading
change_summary.md.
- Failing exit criteria: the criteria that did not pass in the previous round's exit check.
If an item from the standing requirements maps to a criterion that now passes, remove it from the standing requirements — it is resolved. Standing requirements that remain unaddressed carry forward verbatim.
For Case A, direction is always just the failing exit criteria.
Do not pass the Scout report path or its contents. Refiner locates Scout reports on
its own — this is part of its self-contained methodology.
Wait for Refiner to finish. Confirm that change_summary.md exists at
phase_0_ideation/ideas/ before continuing.
Step 3.5 — Check for preemption
Read phase_0_ideation/ideas/change_summary.md. If the "Changes made" section says
"preemption detected", the Refiner has determined the idea is fully preempted by prior
work.
If preemption detected:
- Read
phase_0_ideation/ideas/preemption_report.md.
- Do NOT run the exit check. Do NOT continue to the next round.
- Surface the preemption report to the user immediately:
The Refiner has determined that this idea is substantially preempted by prior work.
[include the preemption report's Verdict, Preempting work, and Detailed comparison table]
The report includes potential pivot directions. Full report at:
phase_0_ideation/ideas/preemption_report.md
Options:
(a) Pivot — choose or describe a new direction, and I will restart Loop 1.
(b) Challenge — you believe the Refiner is wrong and a viable differentiation exists.
Describe it and I will re-invoke the Refiner with this as direction.
(c) Abandon — discard this idea and start fresh.
Wait for user instruction. Do not auto-continue.
If no preemption: proceed to Step 4.
Step 4 — Evaluate
Confirm that a revised IDEA.md exists at phase_0_ideation/ideas/.
Run the loop1-exit-check skill against the current phase_0_ideation/ideas/IDEA.md.
If all criteria pass: Loop 1 is complete.
- If this is a Case A or Case B entry (fresh start or user intervention):
this is the first time the idea enters stress testing. Load the
loop2-stress-test skill with Case A (fresh entry).
- If this is a Case C entry (returning from Loop 2 retreat):
the idea was revised to address Tester attack points. Load the
loop2-stress-test skill with Case B (re-entry after retreat).
The Loop 2 round counter does NOT reset — it continues from where it left off.
If any criteria fail: read phase_0_ideation/ideas/change_summary.md and check whether
Refiner addressed the direction you gave in Step 3.
- Yes — direction was addressed, but criteria still fail: begin a new round. Direction for next round = the failing criteria from this check.
- No — Refiner did not address the direction: re-invoke Refiner with the same direction, stated more explicitly. This counts as one round against the cap.
Scout re-run rule
After Step 4 (before starting the next round's Step 2), compare the core claims you
extracted in this round's Step 1 against the claims you extracted in the previous
round's Step 1.
- New claims appeared in the revised IDEA.md: run Scout again, scoped to the new claims only. Output to
phase_0_ideation/literature/scout_report_{n}.md using the next available version number (same counting rule as Step 2).
- No new claims: skip Scout for this round. Proceed directly to Step 3.
Loop control
Hard cap: 3 rounds.
If Round 3 ends and the exit check still fails, do not begin Round 4.
Surface the situation to the user:
Loop 1 has completed 3 rounds without passing the exit check.
Failing criteria:
[list from the final exit check]
Options:
(a) Continue for additional rounds — confirm to proceed.
(b) Proceed to Loop 2 anyway — load the `loop2-stress-test` skill. The idea
will enter stress testing in its current state. Use Case A if this is the
first entry, or Case B if returning from a previous Loop 2 retreat.
(c) Redirect the idea — describe the new direction and I will restart the loop.
Wait for user instruction before acting.
Files produced by this loop
| File | Written by | Notes |
|---|
phase_0_ideation/ideas/IDEA.md | Refiner | Overwritten each round |
phase_0_ideation/ideas/change_summary.md | Refiner | Overwritten each round — see note below |
phase_0_ideation/ideas/preemption_report.md | Refiner | Only written when idea is fully preempted; triggers early exit |
phase_0_ideation/literature/scout_report_{n}.md | Scout | {n} is a global version counter — increments on every Scout invocation across all loop entries and rounds. Never overwritten. |
Why change_summary.md is overwritten but scout_report is numbered:
The Main Agent reads change_summary.md only to verify whether the current round's direction was addressed — the previous round's summary is never needed again by the pipeline. Scout reports, by contrast, accumulate distinct literature findings across rounds and are later reused by the Experimental Setup Module (they carry the structured hooks needed for dataset and baseline selection). Historical change summaries belong in _logs/ if a record is needed.