Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Write H2 chapter lead blocks (`sections/S<sec_id>_lead.md`) that preview the chapter's comparison lens and connect its H3 subsections, without adding new facts. **Trigger**: chapter lead writer, section lead writer, H2 lead, lead paragraph, 章节导读, 章节导语. **Use when**: you have H2 chapters with multiple H3 subsections and the draft reads like paragraph islands across subsections.
.claude/skills/willoscar-chapter-lead-writer/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-12 | ✗→✓ | ▲ Improved | 4% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 42% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 31% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -17% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 31% | 0% |
This skill writes the body-only lead block that sits under an H2 heading and makes a chapter with multiple H3 subsections read like one argument.
This SKILL.md is now the package router, not the full method manual.
This package is in P0 compatibility-preserving migration:
references/ and assets/ now hold the intended knowledge and contract layers.scripts/run.py remains in compatibility mode for active generation.For now, preserve the existing output contract and treat scripts/run.py as the execution source of truth.
Required:
outline/outline.ymloutline/chapter_briefs.jsonlcitations/ref.bibOptional:
outline/writer_context_packs.jsonlFor each H2 section with H3 subsections:
sections/S<sec_id>_lead.mdKeep these file-shape rules stable:
Always read:
references/overview.mdreferences/lead_block_archetypes.mdRead by task:
references/throughline_patterns.md — when chapter briefs are thin or hard to convert into a throughlinereferences/bridge_examples.md — when the lead needs stronger H3 transitions without slide narrationreferences/bad_narration_examples.md — when removing table-of-contents narration, planner talk, count-based openersMachine-readable assets:
assets/lead_block_contract.json — stable package contract for lead-block shapeassets/lead_block_compatibility_defaults.json — fallback phrasing, item limits, joiners, sentence cadenceUse this skill in the following order:
outline/outline.ymloutline/chapter_briefs.jsonlreferences/overview.mdreferences/lead_block_archetypes.mdoutline/writer_context_packs.jsonl exists, use it for cross-cutting chapter citationscitations/ref.bibscripts/run.py in compatibility mode to preserve active behavior and output shapescripts/run.py for deterministic execution only, with the writing method and anti-pattern inventory living in references/scripts/run.py still contains active lead-generation logic.
That is temporary. For now:
assets/lead_block_compatibility_defaults.json as the primary compatibility-mode wording sourceSKILL.mdRegardless of where the detailed method lives, this skill should produce chapter leads that:
Stop and route upstream if any of these are true:
outline/chapter_briefs.jsonl is missingscripts/run.py should currently be treated as a compatibility executor.
Its long-term role after script thinning is narrower:
It is not the long-term home for lead archetypes, bridge examples, or narration anti-patterns.
uv run python .codex/skills/chapter-lead-writer/scripts/run.py --workspace <workspace>--workspace <dir>--unit-id <id>--inputs <a;b;...>--outputs <a;b;...>--checkpoint <C*>uv run python .codex/skills/chapter-lead-writer/scripts/run.py --workspace <workspace>outline/chapter_briefs.jsonl is missing or too thin, rebuild chapter briefs first.outline/writer_context_packs.jsonl is missing, the script will still run but with a thinner citation pool.| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 3,639 | 4,178 | +15% | 1 | 1 | 0% | 559 | 1,550 | +177% | 0 | 0 | — |
case-02 | fail→fail | 11,601 | 5,027 | -57% | 1 | 1 | 0% | 1,267 | 1,598 | +26% | 0 | 0 | — |
case-03 | fail→fail | 6,840 | 6,406 | -6% | 1 | 1 | 0% | 1,025 | 1,562 | +52% | 0 | 0 | — |
case-12 | fail→pass | 10,924 | 3,172 | -71% | 1 | 1 | 0% | 1,689 | 1,761 | +4% | 0 | 0 | — |
case-04 | fail→fail | 35,787 | 35,517 | -1% | 1 | 1 | 0% | 6,186 | 7,358 | +19% | 0 | 0 | — |
case-05 | fail→fail | 4,176 | 11,771 | +182% | 1 | 1 | 0% | 592 | 3,450 | +483% | 0 | 0 | — |
case-06 | fail→fail | 14,522 | 22,342 | +54% | 1 | 1 | 0% | 2,002 | 4,359 | +118% | 0 | 0 | — |
case-07 | pass→pass | 7,489 | 4,674 | -38% | 1 | 1 | 0% | 1,271 | 2,012 | +58% | 0 | 0 | — |
case-08 | fail→pass | 9,931 | 4,606 | -54% | 1 | 1 | 0% | 1,444 | 2,046 | +42% | 0 | 0 | — |
case-09 | fail→pass | 10,001 | 3,795 | -62% | 1 | 1 | 0% | 1,420 | 1,856 | +31% | 0 | 0 | — |
case-10 | pass→pass | 7,318 | 3,536 | -52% | 1 | 1 | 0% | 1,202 | 1,877 | +56% | 0 | 0 | — |
case-11 | fail→pass | 12,281 | 2,811 | -77% | 1 | 1 | 0% | 2,094 | 1,748 | -17% | 0 | 0 | — |
case-13 | pass→pass | 12,204 | 6,051 | -50% | 1 | 1 | 0% | 1,937 | 2,098 | +8% | 0 | 0 | — |
case-14 | fail→pass | 9,497 | 2,382 | -75% | 1 | 1 | 0% | 1,250 | 1,642 | +31% | 0 | 0 | — |
case-15 | fail→pass | 13,894 | 1,849 | -87% | 1 | 1 | 0% | 1,882 | 1,564 | -17% | 0 | 0 | — |
case-16 | fail→pass | 11,352 | 2,321 | -80% | 1 | 1 | 0% | 1,664 | 1,675 | +1% | 0 | 0 | — |
case-17 | fail→pass | 11,202 | 2,576 | -77% | 1 | 1 | 0% | 1,531 | 1,694 | +11% | 0 | 0 | — |
case-18 | fail→pass | 9,266 | 4,735 | -49% | 1 | 1 | 0% | 1,417 | 2,138 | +51% | 0 | 0 | — |
case-19 | fail→pass | 9,389 | 1,539 | -84% | 1 | 1 | 0% | 1,366 | 1,459 | +7% | 0 | 0 | — |
case-20 | fail→pass | 7,746 | 1,367 | -82% | 1 | 1 | 0% | 1,218 | 1,496 | +23% | 0 | 0 | — |
case-21 | fail→fail | 11,402 | 3,900 | -66% | 1 | 1 | 0% | 1,667 | 1,844 | +11% | 0 | 0 | — |
case-22 | fail→pass | 12,167 | 4,802 | -61% | 1 | 1 | 0% | 1,766 | 1,995 | +13% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +55 percentage points is the difference between those two pass rates over the 19 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.