Skip to content
Back to skills

Draft

ASecurity

Write the next part of the outline to the house style, check it with chaff, cite what came from the sources, and mark it done.

  • 234 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 28, 2026
ai-agentsgonode

Security analysis

A100/100

Scanned September 29, 2026

npx -y skills add receptron/mulmoterminal --skill draft --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Draft?

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

Security grade badge for Draft
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/receptron-draft/badge)](https://www.skillsdirectory.com/skills/receptron-draft)

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: blueprint-write-draft
description: "Write the next part of the outline to the house style, check it with chaff, cite what came from the sources, and mark it done."
---

# Write one part

Take the **first** part in `.blueprint/outline.json` whose status is `"todo"`. Write that part only; the
next round writes the next one.

## Before writing

Read `.blueprint/brief.md`, the part's `points`, and — when the folder has one — `STYLE.md`. Read the parts
already written, so terms, tone and numbering continue rather than restart.

## Write

- Write the part to its `file`, beginning with its title as a heading.
- Follow `STYLE.md`: voice, sentence endings, terms, structure. It is the part of the style a machine
  cannot check, and the reason it exists.
- Cover every one of the part's `points`.
- **State a fact only if it is in the brief's facts from sources**, or is common knowledge. Anything else is
  an open question for the report, not a sentence.

## Cite what came from the sources

For each sentence that states something taken from a source, record the source passage in
`.blueprint/citations/<part id>.json`:

```json
[{ "source": "annual-report.md", "address": "h1.2", "quote": "売上は前年比 12% 増えた" }]
```

`address` is where the passage sits in the source's tree: `sh <base pack>/checks/chaff.sh tree
.blueprint/sources/<file>` prints it (a heading's `h1.2`, an article's `3.2`). `quote` is the source's own
words, copied, not your paraphrase. The check runs `chaff cite` on each source.

## Check it yourself

`sh <base pack>/checks/chaff.sh <the part's file>` must report no warning or error. Fix the text, not the
style. Set a finding aside only in one of two cases, by adding it to the part in `.blueprint/outline.json`:

```json
{ "id": "intro", "file": "01-intro.md", "status": "done",
  "dismissed": [{ "rule": "max-sentence-length", "line": 8, "because": "meaning", "why": "資料の一文をそのまま引用している" }] }
```

- `"because": "wrong"` — chaff misread the text (a heading it took for a sentence, a name it took for jargon).
  Each one becomes a draft report to chaff in the report step.
- `"because": "meaning"` — chaff is right, but fixing it would change what must stay exact (a quotation).

`rule` and `line` are exactly as chaff reports them now, one dismissal per finding; the check refuses a
dismissal chaff does not report.
`why` is one line the person can judge. Never silence a rule in `chaff.yaml` or with `stet` to get past it.

Then set the part's status to `"done"`.

## Done when

`node <usecase pack>/checks/parts.mjs verify` (with `BLUEPRINT_BASE` and `BLUEPRINT_USECASE` set to the
pack folders from your prompt) passes: every done part is written, raises no finding it did not set aside, and quotes its
sources faithfully. Run `verify`, never `progress`: `progress` is the executor's check at the end of the
round and records how many parts were done, so running it yourself makes the real check fail.

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.