Skip to content
Back to skills

Outline Builder

ASecurity

Convert a taxonomy (`outline/taxonomy.yml`) into a bullet-only outline (`outline/outline.yml`) with sections/subsections.

  • 512 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added February 8, 2026
developmentpythongo

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 20, 2026

npx -y skills add WILLOSCAR/research-units-pipeline-skills --skill outline-builder --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Outline Builder?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Outline Builder
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/willoscar-outline-builder/badge)](https://www.skillsdirectory.com/skills/willoscar-outline-builder)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: outline-builder
description: "Convert a taxonomy (`outline/taxonomy.yml`) into a bullet-only outline (`outline/outline.yml`) with sections/subsections."
---

# 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.

Files in this skill

  • SKILL.md7 KB
  • scripts/run.py9.8 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.