Pipeline Stage Reference

Pipeline Stage Reference

Complete reference for all 10 pipeline stages. For a conceptual overview, see Understanding the 10-Stage Pipeline.


Stage 1 — Topic Refinement

Stage name (config key): topic_refinement
Agent: Topic Refiner
Core: Yes — cannot be disabled

Inputs

File Required Description
brief.md Yes The topic brief entered by the user when creating the project
Identity memory Auto-injected Voice, style guide, author bio from identity/
Topic memory Auto-injected Relevant topic files from topics/

Output

File Description
topic_brief.md Refined topic: angle, audience, key questions, constraints, tone notes

Configuration

pipeline:
  topic_refinement:
    provider: fast        # LLM provider name from global config
    iterations: 2         # max iteration passes
    # enabled: true — this is a core stage and cannot be disabled

Notes

  • The topic_brief.md is the single most important artifact in the pipeline. Every downstream agent reads it.
  • Review and edit topic_brief.md before proceeding if the angle or audience is not what you intended.
  • Increasing iterations gives the agent more passes to refine its output — useful for complex or ambiguous topics.

Stage 2 — Research

Stage name (config key): research
Agent: Researcher
Core: No

Inputs

File Required Description
topic_brief.md Yes The refined topic brief
Identity memory Auto-injected Voice and context
Topic memory Auto-injected Relevant prior topic notes

Output

File Description
research_notes.md Raw research: facts, quotes, sources, and relevant context gathered from web search and topic memory

Configuration

pipeline:
  research:
    provider: default
    iterations: 3
    enabled: true         # set to false to skip this stage

Notes

  • Requires a configured search provider (SEARCH_API_KEY) for web search. Without one, the agent falls back to topic memory only.
  • More iterations allow for broader coverage — the agent makes multiple search passes and synthesizes results.
  • Research notes are intentionally unstructured. The Outliner and Drafter decide what to use.

Skip Condition

If enabled: false, this stage is skipped and research_notes.md is not produced. The Outliner and Drafter will run without research context.


Stage 3 — Outline

Stage name (config key): outline
Agent: Outliner
Core: No

Inputs

File Required Description
topic_brief.md Yes The refined topic brief
research_notes.md No Research gathered in stage 2
Identity memory Auto-injected Voice and style context

Output

File Description
outline.md Section-by-section structure with brief notes on what each section should cover

Configuration

pipeline:
  outline:
    provider: default
    iterations: 2
    enabled: true

Notes

  • Edit outline.md if you want to control the article structure before the Drafter runs.
  • If you prefer free-form drafting without a pre-set structure, disable this stage.

Skip Condition

If enabled: false, the Drafter receives no outline and structures the article itself based on the topic brief and research notes.


Stage 4 — First Draft

Stage name (config key): first_draft
Agent: Drafter
Core: Yes — cannot be disabled

Inputs

File Required Description
topic_brief.md Yes The refined topic brief
outline.md No Article structure from stage 3
research_notes.md No Research context from stage 2
Identity memory Auto-injected Voice, style guide, author bio
Topic memory Auto-injected Relevant prior topic notes

Output

File Description
draft_v1.md Complete first draft of the article

Configuration

pipeline:
  first_draft:
    provider: strong      # recommend a high-quality provider
    iterations: 2
    # enabled: true — this is a core stage and cannot be disabled

Notes

  • This is the most resource-intensive stage. Use your strongest LLM provider here.
  • Increasing iterations allows the Drafter to review and improve its own output.
  • If neither outline.md nor research_notes.md exist, the Drafter writes purely from the topic brief and identity context.

Stage 5 — Content Review

Stage name (config key): content_review
Agent: Content Reviewer
Core: No

Inputs

File Required Description
draft_v1.md Yes The first draft
topic_brief.md No Used to evaluate coverage against the brief
Identity memory Auto-injected Voice and style context

Output

File Description
content_review.md Structured review: strengths, gaps, weak sections, suggestions for improvement

Configuration

pipeline:
  content_review:
    provider: default
    iterations: 1
    enabled: true

Notes

  • The Content Reviewer evaluates; it does not rewrite. All changes are applied by the Reviser.
  • This review feeds into stage 8 (Revision).

Skip Condition

If enabled: false, content_review.md is not produced and the Reviser runs without content feedback.


Stage 6 — Fact Check

Stage name (config key): fact_check
Agent: Fact Checker
Core: No

Inputs

File Required Description
draft_v1.md Yes The first draft
research_notes.md No Research used in drafting

Output

File Description
fact_check.md List of claims with verification status: verified, unverified, disputed, or incorrect

Configuration

pipeline:
  fact_check:
    provider: default
    iterations: 2
    enabled: true

Notes

  • Requires a search provider for web-based verification. Without one, verification is limited to reasoning from context.
  • Disable this stage for creative writing or clearly fictional content.

Skip Condition

If enabled: false, fact_check.md is not produced and the Reviser runs without fact check feedback.


Stage 7 — Style Review

Stage name (config key): style_review
Agent: Style Reviewer
Core: No

Inputs

File Required Description
draft_v1.md Yes The first draft
Identity memory Auto-injected Voice, style guide (critical for this stage)

Output

File Description
style_review.md Feedback on tone, voice consistency, style rule violations, and suggested rewrites

Configuration

pipeline:
  style_review:
    provider: default
    iterations: 1
    enabled: true

Notes

  • The quality of style review is directly proportional to the quality of your voice.md and style_guide.md. Invest time in those files.
  • Feeds into stage 8 (Revision).

Skip Condition

If enabled: false, style_review.md is not produced and the Reviser runs without style feedback.


Stage 8 — Revision

Stage name (config key): revision
Agent: Reviser
Core: No

Inputs

File Required Description
draft_v1.md Yes The first draft to revise
content_review.md No Content feedback from stage 5
fact_check.md No Fact check results from stage 6
style_review.md No Style feedback from stage 7
Identity memory Auto-injected Voice and style context

Output

File Description
draft_v2.md Revised draft incorporating all available review feedback

Configuration

pipeline:
  revision:
    provider: strong
    iterations: 2
    enabled: true

Notes

  • The Reviser synthesizes all three review streams (content, fact, style) into a single improved draft.
  • If none of the review stages ran, the Reviser produces a self-directed revision of draft_v1.md.
  • Use a strong LLM provider — this stage requires careful judgment about what to keep, change, and discard.

Skip Condition

If enabled: false, draft_v2.md is not produced. The Polisher falls back to draft_v1.md.


Stage 9 — Final Polish

Stage name (config key): final_polish
Agent: Polisher
Core: No

Inputs

File Required Description
draft_v2.md Preferred The revised draft (falls back to draft_v1.md if not present)
Identity memory Auto-injected Voice and style context

Output

File Description
final.md Publication-ready article

Configuration

pipeline:
  final_polish:
    provider: default
    iterations: 1
    enabled: true

Notes

  • The Polisher makes surface-level improvements only: sentence rhythm, transitions, opening/closing strength.
  • It does not change facts, structure, or add new content.
  • final.md is the artifact you publish.

Skip Condition

If enabled: false, final.md is not produced. The last available draft (draft_v2.md or draft_v1.md) is your final output.


Stage 10 — Consistency Check

Stage name (config key): consistency_check
Agent: Consistency Checker
Core: No

Inputs

File Required Description
final.md Preferred Final article (falls back to draft_v2.mddraft_v1.md)
topic_brief.md No Used to check coverage and alignment
Identity memory Auto-injected Voice and style for consistency checking

Output

File Description
consistency_report.md Flagged inconsistencies: contradictions, voice drift, formatting issues, claims that conflict with the brief

Configuration

pipeline:
  consistency_check:
    provider: fast
    iterations: 1
    enabled: true

Notes

  • This is a quality-assurance stage, not a rewriting stage. It reports issues; you decide what to fix.
  • After this stage completes, Pensieve performs a post-pipeline topic memory update: it summarizes the project and appends findings to relevant topic files.

Skip Condition

If enabled: false, no consistency report is produced. Topic memory is still updated after the last stage that runs.


See Also