Markdown to playbook skill
Use this skill only for creating or updating a Skill whose source of truth is a software design Markdown file.
The generated Skill must help another Codex instance move from design to code inside a software development workflow, not merely summarize the document.
Goals
- Convert software design markdown into a coding-oriented Skill.
- Keep the generated
SKILL.md concise and procedural.
- Move detailed design content into
references/ files when it would bloat SKILL.md.
- Preserve engineering constraints that matter while writing code.
- Bundle templates or scripts only when they remove repeated engineering work.
Workflow
- Read the design markdown file the user provided or pointed to.
- Extract the implementation-critical items:
- product or feature goal
- user-visible behavior
- existing-system context
- constraints and non-goals
- architecture decisions
- API, schema, event, and data contracts
- testing, rollout, and backward-compatibility expectations
- Decide the reusable contents for the generated Skill:
SKILL.md for the operating procedure
references/ for detailed engineering specs, schemas, flows, acceptance criteria, or copied excerpts from the design
assets/ for templates that the future agent should copy or adapt
scripts/ only when repeated deterministic processing is clearly useful
- Determine the generated Skill destination before writing files:
- first check whether
.github/skills and .claude/skills already exist in the workspace
- if the user explicitly requested GitHub Copilot-style placement, use
.github/skills/<skill-name>
- if the user explicitly requested Claude-style placement, use
.claude/skills/<skill-name>
- if only one of
.github/skills or .claude/skills exists, use the existing standard directory
- if both exist and the user did not specify, prefer
.github/skills/<skill-name>
- if neither exists and the user did not specify, default to
.github/skills/<skill-name>
- treat
github/skills/<skill-name> without the leading dot as invalid and correct it to .github/skills/<skill-name>
- do not invent another default destination such as a top-level
skills/ directory
- Name the generated Skill with a short hyphen-case action phrase under 64 characters.
- Write the generated
SKILL.md in imperative form.
- Make the generated
description do the trigger work:
- say what the Skill does
- say what kinds of source documents or user requests should activate it
- include likely task phrases
- Keep the generated
SKILL.md focused on execution:
- what to inspect first
- what code constraints to preserve from the design
- which bundled resources to read and when
- implementation and verification rules
- Put detailed reference material into
references/ instead of duplicating it in SKILL.md.
- If the design markdown is incomplete, call out the missing engineering inputs plainly before generating the final Skill contents.
Resource selection rules
- Create a
references/overview.md file when the design document is long or covers multiple engineering concerns.
- Split references by concern when that helps selective loading:
references/domain-model.md
references/api-contracts.md
references/implementation-notes.md
references/ui-flows.md
references/acceptance-criteria.md
- Preserve exact field names, endpoint names, event names, table names, config keys, and invariants in references.
- Do not copy large narrative sections into
SKILL.md.
- Do not create
scripts/ unless the same transformation would otherwise be rewritten repeatedly.
- Prefer references that help safe code changes: existing interfaces, migration constraints, compatibility notes, and testing expectations.
How to map design markdown into the generated Skill
Use assets/generated-skill-template.md as the structural baseline for the generated SKILL.md.
Use references/playbook-outline.md to decide how to split the source design into references.
Apply this mapping:
- problem statement -> generated Skill purpose and goals
- requirements and user stories -> execution rules and acceptance references
- architecture notes -> implementation constraints and reference files
- repository or module notes -> implementation entry points and inspection order
- API, schema, or event details -> dedicated reference files
- test strategy -> verification rules and acceptance references
- open questions -> explicit unresolved-items section or a blocking note to the user
Output expectations
The generated Skill should usually contain:
SKILL.md
references/ with only the reference files that are actually useful
Optional:
assets/ for templates or starter files used during implementation
scripts/ for deterministic helpers
The generated Skill should make a future agent more reliable at writing code that matches the design, especially in repositories with existing conventions or integration constraints.
The generated Skill directory should follow the same destination convention as skills-bundler: prefer .github/skills by default and use .claude/skills when that target is explicitly requested.
Before finalizing any generated path, explicitly check that GitHub-style destinations begin with .github/skills/ and not github/skills/.
If a standard install directory decision is needed, inspect the workspace first instead of guessing.
Do not do this
- Do not produce a summary-only Skill.
- Do not leave the generated Skill without a strong trigger description.
- Do not stuff all design details into one oversized
SKILL.md.
- Do not invent missing implementation details as if they were confirmed facts.
- Do not ignore existing-code integration constraints found in the design.
- Do not add extra docs such as
README.md or CHANGELOG.md.
Final response
When you create the new Skill, report:
- the created Skill path
- the included reference files
- any gaps or assumptions taken from the source design markdown
1---2name: markdown-to-playbook-skill3description: Use this skill when the user wants to turn one or more Markdown design, requirements, architecture, API, schema, ADR, or implementation-plan files into a new Agent Skill for a software development company. The generated Skill must help an agent read Markdown source material and then write or modify production code using a reference-backed implementation playbook, especially when the result should separate operational guidance in SKILL.md from detailed engineering references.4---5# Markdown to playbook skill67Use this skill only for creating or updating a Skill whose source of truth is a software design Markdown file.8The generated Skill must help another Codex instance move from design to code inside a software development workflow, not merely summarize the document.910## Goals1112- Convert software design markdown into a coding-oriented Skill.13- Keep the generated `SKILL.md` concise and procedural.14- Move detailed design content into `references/` files when it would bloat `SKILL.md`.15- Preserve engineering constraints that matter while writing code.16- Bundle templates or scripts only when they remove repeated engineering work.1718## Workflow19201. Read the design markdown file the user provided or pointed to.212. Extract the implementation-critical items:22 - product or feature goal23 - user-visible behavior24 - existing-system context25 - constraints and non-goals26 - architecture decisions27 - API, schema, event, and data contracts28 - testing, rollout, and backward-compatibility expectations293. Decide the reusable contents for the generated Skill:30 - `SKILL.md` for the operating procedure31 - `references/` for detailed engineering specs, schemas, flows, acceptance criteria, or copied excerpts from the design32 - `assets/` for templates that the future agent should copy or adapt33 - `scripts/` only when repeated deterministic processing is clearly useful344. Determine the generated Skill destination before writing files:35 - first check whether `.github/skills` and `.claude/skills` already exist in the workspace36 - if the user explicitly requested GitHub Copilot-style placement, use `.github/skills/<skill-name>`37 - if the user explicitly requested Claude-style placement, use `.claude/skills/<skill-name>`38 - if only one of `.github/skills` or `.claude/skills` exists, use the existing standard directory39 - if both exist and the user did not specify, prefer `.github/skills/<skill-name>`40 - if neither exists and the user did not specify, default to `.github/skills/<skill-name>`41 - treat `github/skills/<skill-name>` without the leading dot as invalid and correct it to `.github/skills/<skill-name>`42 - do not invent another default destination such as a top-level `skills/` directory435. Name the generated Skill with a short hyphen-case action phrase under 64 characters.446. Write the generated `SKILL.md` in imperative form.457. Make the generated `description` do the trigger work:46 - say what the Skill does47 - say what kinds of source documents or user requests should activate it48 - include likely task phrases498. Keep the generated `SKILL.md` focused on execution:50 - what to inspect first51 - what code constraints to preserve from the design52 - which bundled resources to read and when53 - implementation and verification rules549. Put detailed reference material into `references/` instead of duplicating it in `SKILL.md`.5510. If the design markdown is incomplete, call out the missing engineering inputs plainly before generating the final Skill contents.5657## Resource selection rules5859- Create a `references/overview.md` file when the design document is long or covers multiple engineering concerns.60- Split references by concern when that helps selective loading:61 - `references/domain-model.md`62 - `references/api-contracts.md`63 - `references/implementation-notes.md`64 - `references/ui-flows.md`65 - `references/acceptance-criteria.md`66- Preserve exact field names, endpoint names, event names, table names, config keys, and invariants in references.67- Do not copy large narrative sections into `SKILL.md`.68- Do not create `scripts/` unless the same transformation would otherwise be rewritten repeatedly.69- Prefer references that help safe code changes: existing interfaces, migration constraints, compatibility notes, and testing expectations.7071## How to map design markdown into the generated Skill7273Use `assets/generated-skill-template.md` as the structural baseline for the generated `SKILL.md`.74Use `references/playbook-outline.md` to decide how to split the source design into references.7576Apply this mapping:7778- problem statement -> generated Skill purpose and goals79- requirements and user stories -> execution rules and acceptance references80- architecture notes -> implementation constraints and reference files81- repository or module notes -> implementation entry points and inspection order82- API, schema, or event details -> dedicated reference files83- test strategy -> verification rules and acceptance references84- open questions -> explicit unresolved-items section or a blocking note to the user8586## Output expectations8788The generated Skill should usually contain:8990- `SKILL.md`91- `references/` with only the reference files that are actually useful9293Optional:9495- `assets/` for templates or starter files used during implementation96- `scripts/` for deterministic helpers9798The generated Skill should make a future agent more reliable at writing code that matches the design, especially in repositories with existing conventions or integration constraints.99The generated Skill directory should follow the same destination convention as `skills-bundler`: prefer `.github/skills` by default and use `.claude/skills` when that target is explicitly requested.100Before finalizing any generated path, explicitly check that GitHub-style destinations begin with `.github/skills/` and not `github/skills/`.101If a standard install directory decision is needed, inspect the workspace first instead of guessing.102103## Do not do this104105- Do not produce a summary-only Skill.106- Do not leave the generated Skill without a strong trigger description.107- Do not stuff all design details into one oversized `SKILL.md`.108- Do not invent missing implementation details as if they were confirmed facts.109- Do not ignore existing-code integration constraints found in the design.110- Do not add extra docs such as `README.md` or `CHANGELOG.md`.111112## Final response113114When you create the new Skill, report:115116- the created Skill path117- the included reference files118- any gaps or assumptions taken from the source design markdown