mcpField
O
outline-builder

outline-builder

github.com/willoscarDocuments51748 installsUpdated 4w ago
Repository

About outline-builder

outline-builder generates a YAML outline from taxonomy or section-first inputs for research writing workflows. It preserves reviewed user work and uses structured defaults to produce a consistent, bullet-based chapter skeleton.

Key features

  1. 01Build YAML outlines from structure inputs
  2. 02Support taxonomy and section-first paths
  3. 03Render deterministic outline skeletons
  4. 04Preserve non-placeholder user work
  5. 05Use defaults for section bullets

Use cases

  1. 01Create a chapter outline from a taxonomy
  2. 02Generate a skeleton from section briefs
  3. 03Refresh an outline after upstream changes
  4. 04Keep reviewed outline edits intact

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/willoscar/research-units-pipeline-skills --skill outline-builder

After installing, type/outline-builderin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

assets/
outline_defaults.yaml
references/
examples_bad.md
examples_good.md
intro_related_patterns.md
overview.md
stage_a_contract.md
scripts/
run.py

Details

From the project README

Outline Builder

Triggers & routing

  • Trigger: outline builder, bullet outline, outline.yml, 大纲生成, bullets-only.
  • Use when: structure 阶段(NO PROSE),已有 taxonomy,需要生成可映射/可写作的章节与小节骨架(每小节≥3 bullets)。
  • Skip if: 已经有批准过且可映射的 outline(避免无意义 churn)。
  • Network: none.
  • Guardrail: bullets-only;移除 TODO/模板语句;每小节至少 3 个可检查 bullets。

outline/outline.refined.ok freezes a reviewed outline only while the marker is newer than the outline, all declared inputs, the defaults asset, and the generator. Upstream changes invalidate the marker and trigger a backed-up regeneration.

Build outline/outline.yml from either:

  • outline/taxonomy.yml (legacy H3-first compatibility path)
  • outline/chapter_skeleton.yml + outline/section_briefs.jsonl (section-first transition path)

Compatibility mode is active: this migration keeps the current output contract while moving intro/related defaults, Stage A bullet templates, and domain-specific comparison framing into references/ and assets/.

Load Order

Always read:

  • references/overview.md
  • references/stage_a_contract.md

Read by task:

  • references/intro_related_patterns.md when changing Introduction / Related Work defaults
  • references/examples_good.md and references/examples_bad.md for bullet calibration

Machine-readable asset:

  • assets/outline_defaults.yaml

Inputs

Required:

  • outline/taxonomy.yml

Optional human calibration only:

  • ref/agent-surveys/STYLE_REPORT.md
  • ref/agent-surveys/text/

Output

Keep the current output contract:

  • outline/outline.yml

Compatibility mode

Current mode is reference-first with script compatibility:

  • front-chapter defaults live in assets/outline_defaults.yaml
  • Stage A bullet defaults and comparison-axis packs live in assets/outline_defaults.yaml
  • examples and boundary rules live in references/
  • scripts/run.py still owns outline materialization, section-first input selection, and placeholder-safe overwrite behavior

Script boundary

Use scripts/run.py only for:

  • loading taxonomy or section-first structure inputs plus the defaults asset
  • rendering the outline skeleton deterministically
  • preserving existing non-placeholder outlines
  • choosing comparison-axis packs from machine-readable defaults

Do not treat the script as the main place for:

  • domain framing for Introduction / Related Work
  • long bullet banks or writing exemplars
  • prompt-heavy guidance about how a good outline should read

Output shape rules

Keep these stable:

  • outline/outline.yml is a YAML list
  • Introduction and Related Work remain the first two H2 sections
  • each H3 subsection contains the Stage A bullets: Intent: / RQ: / Evidence needs: / Expected cites:
  • each H3 subsection adds several topic-specific bullets after the Stage A fields
  • the helper never overwrites non-placeholder user work

Quick Start

  • uv run python .codex/skills/outline-builder/scripts/run.py --help
  • uv run python .codex/skills/outline-builder/scripts/run.py --workspace <workspace>

Execution notes

When running this skill in compatibility mode, scripts/run.py currently reads:

  • outline/taxonomy.yml, or
  • outline/chapter_skeleton.yml + outline/section_briefs.jsonl
  • assets/outline_defaults.yaml

The optional style references under ref/agent-surveys/ are for human calibration only:

  • use ref/agent-surveys/STYLE_REPORT.md to sanity-check chapter counts / thickness
  • skim ref/agent-surveys/text/ only to calibrate structure rather than wording

Script

Quick Start
  • uv run python .codex/skills/outline-builder/scripts/run.py --workspace <workspace>
All Options
  • --workspace <dir>
  • --unit-id <id>
  • --inputs <path1;path2>
  • --outputs <path1;path2>
  • --checkpoint <C*>
Examples
  • uv run python .codex/skills/outline-builder/scripts/run.py --workspace <workspace>

Troubleshooting

  • If Related Work still carries domain-specific framing, patch assets/outline_defaults.yaml before changing Python.
  • If subsection bullets feel generic, review references/stage_a_contract.md and references/examples_good.md.
  • If the outline is structurally valid but too fragmented, reroute to outline-budgeter rather than expanding this script.

Comments

Markdown supported