← All craftbooks

Summarize a Long Document

Content and writingevalv1.0.0released 2026-06-05workflow: build-loop

Distill a long document into a faithful, well-structured summary at a chosen depth: it first scopes the audience, the target length and format (TL;DR line, executive summary, or bulleted key points), and what the reader must take away, then writes the summary capturing every major point and decision in proportion, with nothing invented and nothing critical dropped. Covers summarize, TL;DR, executive summary, condense a document, key takeaways, and abstract writing. Scoping audience and depth before summarizing is the point: a small model that knows who it is for and how long it should be avoids both the bloated near-copy and the lossy summary that omits the document's actual conclusion.

Steps

Entry step: scope. Each step names the specialist role it wants; the full working prompt is expandable.

  1. Summary scopeplannerentry

    lock audience, depth, format, and required takeaways

    Show working prompt
    1) Identify the audience and why they need the summary (decision, briefing, study). 2) Choose the format and depth: a one-line TL;DR, a 3-5 sentence executive summary, a bulleted key-points list, or a layered combination — and set a target length (e.g. <=200 words). 3) Skim the document and list its major sections/arguments and, critically, its main conclusion or recommendation (this MUST appear in the summary). 4) Decide what is in-scope vs droppable detail. Write an acceptance-criteria checklist (e.g. 'captures the document's main conclusion'; 'covers every major point in proportion to its weight'; 'within target length'; 'no claim absent from the source'; 'matches the chosen format'; 'understandable without the original'). Use write_task_note for the scope + section map + checklist, and write the same to the produces path. No summary prose yet.
  2. Write the summarycopywriter

    write the faithful summary to the locked depth and format

    Show working prompt
    Write the summary to the scoped format and length. 1) Lead with the single most important point or conclusion. 2) Cover every major section/argument in proportion to its importance — do not over-weight the intro or skip the conclusion. 3) Write in your own words; do not copy long passages. 4) Include nothing not present in the source — no inference presented as the document's claim. 5) Make it stand alone: a reader who never sees the original should grasp the key content. 6) Output the chosen format in markdown (e.g. a 'TL;DR:' line then an 'Executive summary' paragraph then 'Key points' bullets, as scoped). Save to the produces path and note the final word count.
  3. Evaluatereviewer

    Grade the deliverable against every acceptance criterion. All pass → finish; any fail → loop back and fix the gap.

    Show working prompt
    Read summary.md against the source and the scope. Check EACH criterion and write PASS/FAIL: (a) the document's main conclusion/recommendation is present; (b) every major point is covered in proportion (no critical section dropped); (c) within the target length; (d) no claim that is absent from or misrepresents the source; (e) matches the chosen format; (f) understandable on its own. A summary that drops the conclusion or invents claims FAILS — loop back to summarize and name the gaps.
    
    Then route — this is the whole point of the loop:
    
    - **Every criterion PASSES →** call `advance_task_step({ ref, stepId: "evaluate", next: "finish" })`.
    - **Any criterion FAILS →** write the specific gaps to notes, then call `advance_task_step({ ref, stepId: "evaluate", next: "summarize" })` to loop back. The builder fixes exactly those gaps.
    
    Never route to `finish` while any criterion is unmet. The build phase's completion gate already blocked a grossly-incomplete deliverable; your job is the judgment an automated check cannot make (does it actually work, read well, look right). After ~3 unproductive loops, stop and report DONE_WITH_CONCERNS so the user can step in.
  4. Finishdeveloper

    All acceptance criteria met. Stamp a short summary and report DONE.

    Show working prompt
    Every acceptance criterion passed. Write a one-paragraph DONE summary to task notes via `write_task_note`: what was built, the deliverable path(s), and a one-line confirmation that each criterion is met. Then report DONE.

Triggers

Phrases that suggest this craftbook to a crew.

Source

View this craftbook on GitHub · MIT license