search-drill-iterate
Iterative deep research via subagents. Each iteration builds on the prior by parsing the document's structured sections and targeting the highest-value gaps.
When to use
- Deep / thorough / comprehensive research on a topic
- Building or improving a research document
- Running additional passes on an existing research file
Inputs
| Input | Required | Description |
|---|
| Topic | Yes | What to research |
| Research doc | No | Path to existing doc (created if absent) |
| Iterations | Yes | Number of passes to run |
How it works
- The orchestrator takes the inputs and fills the template at
templates/pass.md
- For each iteration, a subagent is spawned with the filled template
- The subagent reads the doc, parses the schema sections, researches gaps, and updates the doc
- The next subagent picks up where the prior left off — the doc is the only handoff
Document schema
Every research doc follows this schema. The subagent template teaches each agent how to parse and update it.
---
title: ...
topic: ...
created: ...
last-updated: ...
pass: N
status: draft | complete
---
## Findings
The research content organized by subtopic. The core output. Subagents
add, expand, and refine — never delete prior findings.
## Investigated Paths
Log of what was searched and the outcome. Subagents check this before
every search to avoid re-research.
- `<query or approach>` → <outcome>
## Decision Log
Choices made during research and their rationale. Helps future passes
understand why things were prioritized or deprioritized.
- [pass N] <decision> — <rationale>
## Open Questions
Gaps to fill. Each entry has context on what was tried. Genuinely
unanswerable gaps are marked UNFILLABLE: <reason>.
Why these sections
| Section | Purpose |
|---|
| Findings | The actual research — what you'd read |
| Investigated Paths | Prevents re-research — the #1 waste of rounds |
| Decision Log | Preserves reasoning so future passes can make informed tradeoffs |
| Open Questions | The handoff — tells the next pass exactly where to focus |
Placeholders in the template
| Placeholder | Description |
|---|
<RESEARCH_FILE> | Absolute path to the research document (created if it doesn't exist) |
<TOPIC> | Research topic in plain language |
<SCOPE> | What's in scope |
<EXCLUSIONS> | What's out of scope |
<RESEARCH_QUESTIONS> | Prioritized questions to investigate |
Files
SKILL.md this file
templates/pass.md subagent prompt template (one template, all iterations)
docs/anti-duplication.md rules that prevent re-research
docs/logging-markers.md structured markers for audit and calibration
examples/example-output.md example showing the document schema in practice