draft-openspec-docs
fission-ai/openspec
Collaborative page-drafting mode for OpenSpec docs with scratch-plan workflow and user-in-the-loop iteration.
What is draft-openspec-docs?
A structured drafting skill for OpenSpec documentation that builds a scratch plan (purpose, structure, steps) inside the target page, iterates with the user, then drafts one section at a time. Use when rewriting a page from scratch or shaping a new page collaboratively.
- Builds a scratch plan section with purpose, structure, and numbered draft steps
- Iterates on the plan with the user before any drafting begins
- Drafts one approved section at a time into the page
- Consolidates cross-page updates (README, message map, sync config)
- Cleans up scratch sections and validates retrievability before publishing
How to install draft-openspec-docs
npx skills add https://github.com/fission-ai/openspec --skill draft-openspec-docs- Access to the OpenSpec repository
- The write-openspec-docs skill (loaded before drafting)
- The no-ai-slop skill (loaded before drafting)
- Familiarity with OpenSpec docs structure (docs-lab/README.md, message-map.md)
How to use draft-openspec-docs
- 1.Run the skill with the target page path as the argument
- 2.Review the generated scratch plan (purpose, structure, notes)
- 3.Edit and iterate on the plan with the user until approved
- 4.Call a draft step ID (e.g., D1, D2) to draft that section
- 5.Repeat step 3 until all sections are drafted
- 6.Run consolidation to update cross-references and sync config
- 7.Delete the scratch block and validate the final page
Use cases
- Rewriting an existing OpenSpec docs page from scratch with team input
- Creating a new documentation page while gathering user feedback on structure
- Planning and drafting a complex multi-section page incrementally
- Ensuring consistency across OpenSpec docs during major content updates
- Collaboratively refining page purpose and scope before committing to prose
- OpenSpec documentation maintainers
- Technical writers collaborating with product teams
- Teams doing docs-first design or planning
- Contributors reshaping existing documentation pages
draft-openspec-docs FAQ
Use this when the page needs significant reshaping, is new and unscoped, or involves multiple stakeholders. Plan iterations are cheap; page rewrites are expensive.
Yes. User edits to the plan file are treated as decisions, not drift. Record them in the plan itself, not only in chat.
It updates the README goal line, message map, sync config, and any cross-links pointing to the page, then validates with node website/scripts/sync-docs.mjs.
Yes. Verify each fact against source before writing; use grep to check the repository rather than relying on memory.
Delete it during cleanup, after running retrievability and glance tests at desktop and narrow widths.
Full instructions (SKILL.md)
Source of truth, from fission-ai/openspec.
name: draft-openspec-docs description: Collaborative page-drafting mode for the OpenSpec docs. Builds a scratch plan inside the target page (purpose, structure, numbered draft steps), iterates on it with the user, then drafts one section per approved step and cleans up after itself. Use when a page needs a from-scratch rewrite or a new page is being shaped with the user in the loop. argument-hint: target page
Draft OpenSpec docs (scratch-plan workflow)
You are shaping a docs page with the user in the loop. The page is planned and reviewed inside the page itself, then drafted one section at a time. Load write-openspec-docs (the style authority) and no-ai-slop before drafting anything.
1. Set up the scratch section
Strip the page to its title and > goal line, then add a working section below them:
## Scratch: page plan (delete before publish)
### Purpose
### Structure
- Purpose: 3-5 dot points. Who the reader is and what they come to look up, what the page covers, what it links out to. Check
docs-lab/README.md(the page's goal line) anddocs-lab/message-map.md(the questions routed here) before writing it. - Structure: a numbered list of the page's sections, one line each naming the section and the shape of its content (table, fence, tree, bullets).
- Say what the page will do, never what it won't. Plain words and short bullets; the user reads this in their editor.
2. Iterate until the plan is approved
- Plan edits are cheap; page edits aren't. Reshape the plan as many times as the user asks before drafting.
- Record every decision in the plan itself, not only in chat. Add a
### Noteslist for follow-ups that belong to other pages and product observations found along the way. - The user may edit the file directly between turns; their edits are decisions, not drift to revert.
- Surface one open call at a time, with a recommendation.
3. Add the draft plan, then draft step by step
Once the structure holds, add a ### Draft plan below the notes: one step per page section, each with an ID and a readable title (**D1. Goal line and intro**), ending with a consolidation step (cross-page updates) and a cleanup step. Then:
- Wait for the user to call a step ID. Draft exactly that step, into the page above the scratch block.
- Verify each fact against source before writing it; a cheap grep beats trust. Reference content shows the raw contract (templates, instructions, config) verbatim in fences, linked to the file on GitHub, rather than paraphrasing it.
- Keep sibling sections on a repeatable sub-structure so the page scans as one system.
- Mark the step
(done)in the plan, report what landed, and name the next step.
4. Consolidation and cleanup
- Consolidation: update everything that points at the page. The README goal line (verbatim match with the page's
>line), the message map, the sync config (website/docs.sync.config.mjs), and any cross-links found by grepping the tree. Runnode website/scripts/sync-docs.mjsto validate. - Cleanup: delete the scratch block, run the retrievability and glance tests from
write-openspec-docsat desktop and narrow widths, and flip the page's message-map row to Answered if its prose landed.
Related skills
More from fission-ai/openspec and the wider catalog.

openspec-apply-change
Implement tasks from an OpenSpec change specification.

openspec-archive-change
Archive completed OpenSpec changes in the experimental workflow.

openspec-bulk-archive-change
Archive multiple completed OpenSpec changes in a single batch operation.

openspec-continue-change
Continue OpenSpec changes by creating the next artifact in your workflow.

openspec-explore
Think through OpenSpec changes with a conversational exploration partner before implementing.

openspec-ff-change
Fast-forward through OpenSpec artifact creation without stepping through each one individually.