| name | markdown-drafts |
| description | Use markdown formatting when drafting content intended for external systems (GitHub issues/PRs, Jira tickets, wiki pages, design docs, etc.) so formatting is preserved when the user copies it. Load this skill before producing any draft the user will paste elsewhere. |
Markdown Drafts
When the user asks you to draft, write, or compose content that will be copied into an external
system — GitHub issues, pull request descriptions, Jira tickets, wiki pages, design documents,
RFCs, or similar — always use markdown syntax so that formatting survives the copy-paste.
When This Applies
- GitHub issues and pull request descriptions
- Jira ticket descriptions and comments
- Confluence / wiki page drafts
- Design documents and RFCs
- Slack messages (Slack renders a subset of markdown)
- Any content the user explicitly says will be copied elsewhere
Formatting Rules
- Use
#, ##, ### headers to create structure
- Use
- or * for unordered lists, 1. for ordered lists
- Use triple-backtick fenced code blocks with language tags (e.g.,
```cpp) for code
- Use
inline code backticks for identifiers, file paths, commands, and config values
- Use
**bold** for emphasis on key points and _italic_ for secondary emphasis
- Use markdown tables when presenting structured comparisons or data
- Use
> blockquotes for callouts, quoted text, or important notes
- Use
[link text](url) for references — never bare URLs in running prose
- Use
--- horizontal rules to separate major sections when appropriate
- Use task lists (
- [ ] / - [x]) when drafting action items or checklists
- Keep line lengths reasonable (e.g., 80-120 characters)
Structure Guidelines
- Start with a concise summary paragraph before diving into details
- Use headers to break content into scannable sections
- Keep paragraphs short — walls of text are hard to scan in issue trackers
- Put the most important information first (inverted pyramid)
- End with next steps, open questions, or action items when relevant
Rendering: Always Emit Raw Markdown
The chat interface renders markdown, which strips the raw syntax (###, **, `, etc.) from
the output. Since these drafts are meant to be copied and pasted into external systems, the user
needs the raw markup characters preserved.
Always wrap the entire draft in a fenced code block so the chat interface displays it as literal
text. Use a plain triple-backtick fence (no language tag):
```
## My Heading
- bullet one
- **bold text** and `code`
```
This ensures the user sees and can copy the exact markdown source. Never render the draft as
formatted text outside a code fence — the markup will be silently consumed by the chat UI.
What NOT To Do
- Do not render the draft as formatted markdown outside a code fence — the user will lose the syntax
- Do not use plain text formatting (e.g., ALL CAPS for headers,
==== underlines, manual indentation)
- Do not use HTML tags unless the target system requires them and markdown is insufficient
- Do not add emoji unless the user's draft style includes them or they explicitly request it
- Do not use common cliche AI-generated phrases, tropes, or filler content like tricolons,
or generic intros/outros. Be concise and to the point.
- Do not include editorial comments or unsubstantiated claims. Stick to the facts and the user's
instructions precisely. If you need to ask clarifying questions, do so instead of making assumptions.