Industry Research Framework
This skill is a framework for longform industry research and publishable writing. It ships no scraper, data source, or fixed report template; instead it prescribes conventions for how an AI agent persists state, separates evidence from prose, avoids topic drift, schedules review, and turns a large research backend into a clean reader-facing article or report.
1. Motivation
Longform research agents tend to fail in five recurring ways:
- Topic overfitting: a method distilled from one project becomes falsely treated as the universal frame.
- Process leakage: the final article reads like a work log, with phrases such as "the user provided" or "the material shows".
- Evidence drift: sources, claims, uncertainty, and author judgment collapse into one undifferentiated argument.
- False completion: a partial milestone is reported as final completion before coverage, review, and reader-quality revision are done.
- Depth collapse: a report satisfies source counts and coverage checklists but is too short, compressed, or thin for the user's expected research depth.
Every mechanism in this framework targets one of those failures.
2. Scope Contract
This skill is an execution framework for producing substantial research deliverables. It is not a theory system, product architecture, or universal modeling language.
Keep inside this skill:
- Process: research scope calibration, staged execution, source processing, drafting, review, revision, and final cleanup.
- State: task state, progress, findings, assumptions, decisions, and direction tracking.
- Audit: source, claim, uncertainty, coverage, depth, and reader-quality checks.
Keep outside this skill unless the user explicitly asks for a separate system design project:
- Domain ontologies, universal taxonomies, or generalized modeling languages.
- Intermediate representations, scoring systems, embeddings, knowledge graphs, or ranking engines.
- Dashboards, CLIs, databases, automation pipelines, or product architecture.
- Methodology manifestos that do not directly improve the current research deliverable.
If a task starts drifting into the excluded layers, preserve the current deliverable path, record the idea as a future extension, and do not expand the workflow.
3. Behavioral Constraints
- Deliverable first: if the requested output is an article or report, do not drift into system design, prompt design, or workflow exposition.
- Research brief gate before collection: ask one compact clarification batch when decision-critical information is missing.
- State before scale: for long tasks, write task state to files before expanding source collection.
- Evidence is not prose: registries, logs, audit labels, and access failures stay backstage unless the user requests an audit appendix.
- Depth budget before drafting: record expected depth, rough length band, unit-level expansion plan, and what "too short" would mean for this task.
- Staged execution: plan, collect, analyze, draft, review, revise, and update state before moving to the next unit.
- Section-level progress: write complex work by section, company, case, period, or argument; do not generate the whole report in one pass.
- Optional lenses only: framing/category analysis, horizontal-vertical analysis, capital analysis, and adoption analysis are tools, not default structure.
- Review closes the loop: every audit finding must become a revision action, a downgraded claim, or an explicit limitation.
- Reader review comes last: improve readability only after factual, coverage, structure, and depth checks are stable.
4. Architecture
Main Agent
owns thesis, structure, final judgment
Research Backend Publishing Frontend
state files thesis / sections
source registry mechanisms / synthesis
claim registry counter-evidence
uncertainty list reader-facing references
review logs final prose cleanup
Subagents may inspect or challenge bounded parts of the backend, but the main agent owns the argument and final prose.
5. State Files
For substantial work, create:
{task}/state/
task_spec.md # objective, reader, output, scope, depth, evidence standard, assumptions
progress.json # stage, completed units, open issues, stale_count
findings.jsonl # append-only findings and judgments
directions_tried.json # directions already attempted
iteration_log.jsonl # stage summaries
{task}/logs/
work.jsonl # execution decisions
review.jsonl # review findings and routed fixes
{task}/data/
source_registry.csv
claims_registry.csv
uncertainty_registry.csv
Use state files to recover after context loss. Do not rely on chat history as the only memory.
Context Recovery Protocol
When resuming after context loss, session restart, or handoff:
- Read
state/task_spec.mdfor objective, scope, reader, output, depth, evidence standard, and assumptions. - Read
state/progress.jsonfor current stage, completed units, open issues, stale_count, and next action. - Read the latest entries in
state/findings.jsonlandstate/iteration_log.jsonlto recover the recent direction. - Read
state/directions_tried.jsonto avoid repeating failed or exhausted paths. - Resume from the matching step in the operating loop.
Do not re-run completed stages. Do not re-ask the research brief if task_spec.md already records the answers.
6. Research Brief Gate
Before collection, decide whether the request contains enough decision-critical information. If not, ask one compact batch of questions before starting. The batch should usually contain 3-7 questions and must cover expected length or depth when it is missing.
Ask only for missing critical information:
- research object and scope boundaries
- target reader and decision context
- output format, language, and publishing context
- expected depth, rough length band, or depth level
- must-cover units, exclusions, and priority areas
- required sources or materials, source exclusions, and evidence standard
- time period, geography, deadline, and whether charts/tables are expected
If the user has already supplied enough context, do not ask ritual questions. Proceed, record assumptions in task_spec.md, and mark unresolved non-critical details as assumptions or uncertainties.
If critical details remain unanswered after one clarification batch, make conservative assumptions, record them, and begin with a bounded Stage 1 instead of stalling.
7. Operating Loop
For each stage:
- Run the research brief gate, then plan the scope, inputs, output, and done criteria.
- Collect or process only the sources needed for that stage.
- Convert sources into claims, uncertainty, and analysis notes.
- Draft a bounded section or unit.
- Review the section for evidence, coverage, structure, skepticism, and prose.
- Revise the section and registries.
- Update progress and define the next stage.
If one cycle adds no new evidence, case, counterexample, framework, or judgment, increment stale_count. If stale_count >= 2, pivot the structural angle rather than merely searching harder.
For longform deliverables, do not use source count, claim count, link count, or file size as completion substitutes. They are backend health signals, not proof that the finished report has enough depth. Before final assembly, compare the draft against the depth budget and expand thin units before reader review.
8. Source And Claim Discipline
Classify sources by what they can prove:
- official materials show stated position, intent, product surface, or formal policy
- primary data supports measurable claims when definitions and collection methods are clear
- expert materials explain reasoning, context, and interpretation
- media materials show public framing but need corroboration for hard facts
- user/community evidence shows reception but is not automatically representative
- counter-evidence limits, weakens, or falsifies the main claim
Classify claims separately:
- verified fact
- source claim
- interpretation
- author judgment
- speculation
Every important hard claim should have a confidence boundary. Do not turn company PR, investor hopes, or media amplification into fact.
9. Analysis Lens Scheduling
Choose the lens that fits the research question:
- framing/category analysis: positioning, legitimacy, category creation, public meaning, and media translation
- horizontal-vertical analysis: timeline depth plus current competitor/substitute comparison
- adoption analysis: user behavior, workflow change, replacement, friction
- capital analysis: pricing, revenue, valuation, funding, cost structure, margins
- organization/talent analysis: operating model, hiring, leadership, talent flow
- policy/legitimacy analysis: regulation, compliance, trust, geopolitical or institutional pressure
- counter-case analysis: strongest alternative explanation and failure modes
Pick one primary lens and at most two secondary lenses unless the user explicitly requests a multi-method report.
Read references/optional-analysis-lenses.md when choosing lenses. Read references/horizontal-vertical-analysis.md only after that lens has been selected.
10. Subagent Scheduling
Use subagents only for bounded work:
- requirement mapping
- source discovery for separate regions, actors, or source classes
- evidence-chain verification
- coverage audit
- skeptical review
- structure review
- reader-quality review after the draft is stable
A subagent prompt must include objective, files or sections to inspect, output format, PASS/FAIL criteria, and boundaries. Subagents should not rewrite the whole report or own the thesis.
Read references/subagents-and-review-loop.md before delegation.
11. Finalization
The final article or report should contain reader-facing material only:
- conclusion-first insights when useful
- scope note
- analytical sections organized by argument, case, period, or mechanism
- synthesis across units
- counter-evidence and uncertainty expressed cleanly
- implications
- reader-facing reference appendix
Remove:
- visible source IDs
- audit labels
- file paths
- "the user provided"
- "the material shows"
- "this source supplements"
- "this section passed audit"
- excessive caveats that weaken rather than clarify judgment
12. Validation And Limits
Before declaring completion:
- The research brief gate was completed or assumptions were recorded.
- Required coverage is complete or limitations are explicit.
- Major claims trace back to sources or uncertainty records.
- Facts, source claims, interpretations, and author judgments remain distinct.
- Counter-evidence has been addressed.
- The draft meets the depth budget or explicitly explains why the original expected depth is no longer appropriate.
- Reader review has been run after factual, coverage, structure, and depth review.
- The final prose reads like an author's report, not an agent process report.
Limits:
- The framework reduces citation and evidence errors; it does not eliminate them.
- Subagent review is a check, not external truth.
- Optional lenses can overfit the report if used mechanically.
- State files help recovery, but they only work if updated during the task, not reconstructed after the fact.
13. Execution Guardrails
Use these guardrails to prevent loops, overcollection, and scope drift:
- Source collection: if three consecutive searches or source passes add no relevant evidence, stop collecting in that direction, update
directions_tried.json, and draft or pivot. - Claim extraction: if
source_registry.csvgrows whileclaims_registry.csvstays thin, pause collection and extract claims before gathering more sources. - Review loop: cap full review-revise cycles at two per section unless the user asks for more; record unresolved issues as limitations or follow-up tasks.
- Depth check: before reader review, compare the draft against the depth budget and expand thin units before optimizing prose.
- Scope expansion: if new work falls outside
task_spec.md, record it as a proposed extension and ask before expanding the project. - Subagent review: prompts must ask the reviewer to actively look for issues; if no issue is found, the reviewer must state what evidence supports PASS.
14. Gotchas
Watch for these recurring failure patterns:
- Registry theater: source and claim registries look complete, but the final prose does not synthesize mechanisms or tradeoffs.
- Source-listing prose: paragraphs repeat "source X says Y" instead of turning evidence into reader-facing judgment.
- Premature reader polish: prose cleanup starts before coverage, evidence, structure, and depth checks are stable.
- Lens overreach: an optional lens becomes the whole report even when the user's question needs a simpler structure.
- Subagent sprawl: reviewers or collectors are asked to own the thesis, rewrite the whole report, or expand scope.
- Depth substitution: link counts, file size, or checklist coverage are treated as proof that the report is deep enough.
Read references/gotchas.md when diagnosing repeated drift, improving evals, or adapting the framework to a new agent.
15. Hard Stops
Stop the current path and repair state before continuing when any of these occur:
- Brief stop: a substantial research task lacks reader, scope, output form, evidence standard, or depth budget after the clarification gate.
- Evidence stop: three consecutive searches or source passes add no new relevant evidence, case, counterexample, or judgment.
- Claim stop:
source_registry.csvgrows whileclaims_registry.csvremains empty, generic, or detached from the draft. - Draft stop: final prose still contains process language, internal source IDs, audit labels, file paths, or source-pack wording.
- Depth stop: the draft is shorter or thinner than the depth budget and no explicit scope reduction has been recorded.
- Completion stop:
progress.jsonclaims final completion before coverage gaps, quality-gate findings, and review actions are closed or recorded as limitations.
References
- Read
references/research-workflow.mdonly when starting a substantial project, creating state files, or resuming after context loss. - Read
references/optional-analysis-lenses.mdonly when the research question needs an explicit analysis lens decision. - Read
references/horizontal-vertical-analysis.mdonly when horizontal-vertical analysis has been selected. - Read
references/subagents-and-review-loop.mdonly before delegating work or running a review loop. - Read
references/writing-style.mdonly when entering drafting, final cleanup, or reader-driven revision. - Read
references/quality-gates.mdonly before declaring a stage or final deliverable complete. - Read
references/gotchas.mdonly when diagnosing repeated drift, adapting the framework, or improving eval coverage. - Read
references/postmortem-lessons.mdonly when adapting this framework or diagnosing repeated task drift.