원클릭으로
lint-clean-markdown
Write markdown that passes markdownlint on first attempt — encode the most common rules as muscle memory
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Write markdown that passes markdownlint on first attempt — encode the most common rules as muscle memory
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
End-to-end academic paper drafting for CHI, HBR, journals, and conferences with venue-specific templates, drafting workflows, and revision strategies.
Detect, create, and manage the AI-Memory fleet communication channel. Fires on bootstrap, session start (announcements), and feedback writes.
Generate on-brand Alex — ACT Edition SVG banners for documents (READMEs, plans, notes, release artifacts)
Patterns for fiction, narrative structure, character development, dialogue, and storytelling craft.
Challenge what you think is right — alternative hypotheses, missing data, evidence quality, bias detection, falsifiability, and adversarial review
Convert Word documents (.docx) to clean Markdown with image extraction and pandoc cleanup
| type | skill |
| lifecycle | stable |
| name | lint-clean-markdown |
| description | Write markdown that passes markdownlint on first attempt — encode the most common rules as muscle memory |
| tier | standard |
| inheritance | inheritable |
| applyTo | **/*.md |
| currency | "2026-05-01T00:00:00.000Z" |
| lastReviewed | "2026-05-01T00:00:00.000Z" |
Eliminate the edit-lint-fix cycle by writing markdown correctly the first time.
.md filesWhen in doubt: add a blank line.
Roughly 90% of markdown lint errors are missing blank lines. Lists, code blocks, and headings all need breathing room.
| Rule | Code | Pattern | Mnemonic |
|---|---|---|---|
| Blank lines around lists | MD032 | \n- item\n- item\n | "Lists breathe" |
| Blank lines around fences | MD031 | \n\``code```\n` | "Code breathes" |
| Blank line before headings | MD022 | text\n\n## Head | "Headers breathe" |
| Use dash for lists | MD004 | - not * or + | "Dash dash dash" |
| No trailing whitespace | MD009 | No spaces at line end | "Clean endings" |
| Hard line break in prose | (no MD code) | End line with \ then newline | "Backslash breaks" |
| Single final newline | MD047 | One \n at EOF | "One newline" |
| Language on fences | MD040 | ```js not ``` | "Name your code" |
| Consistent fence style | MD046 | Use ``` not indent | "Fences only" |
| No bold as heading | MD036 | Use ## not **text** | "Headers are headers" |
| Table separator spacing | MD060 | Space around pipes | "Tables breathe too" |
❌ Wrong: text immediately before/after list
✅ Correct: blank line before first - AND after last -
**Why**:
- Reason one
- Reason two
**Result**: Something
❌ Wrong: text touching the fence markers
✅ Correct: blank line before opening ``` AND after closing ```
❌ Wrong: Some text.\n## Heading
✅ Correct: Some text.\n\n## Heading
The problem: Markdown collapses consecutive lines into one wrapped paragraph. A block of metadata like **Date**:, **Author**:, **Status**: on consecutive lines renders as one run-on sentence unless you force breaks.
The wrong fixes:
text ) — works in most renderers, but lints as MD009 (no trailing whitespace) and is invisible in source review.<br/> tag — works but mixes HTML into prose markdown; flagged as MD033 in many configs.The right fix: end each line with a backslash (\) followed by a newline. This is the CommonMark hard-line-break form. Renders identically to two spaces, but is visible in source review and lints clean.
❌ Wrong (renders as one wrapped paragraph):
**Date**: 2026-05-01
**Author**: Supervisor
**Status**: Analysis
✅ Correct (renders as three lines):
**Date**: 2026-05-01 \
**Author**: Supervisor \
**Status**: Analysis
Note the spacing: one space before the backslash, then the newline. The last line in the block does not need the backslash (no break needed after the final line).
When this rule fires:
**Label**: value lines that should visually be separate but should not have full paragraph spacing between themWhen this rule does NOT fire:
- or 1. instead)<br/> for in-cell line breaks)❌ Wrong: * item or + item
✅ Correct: - item
❌ Wrong: ``` (no language)
✅ Correct: ```javascript or ```text or ```markdown
textWhen showing a template/pattern (not a renderable diagram), use ```text instead of ```mermaid. The Mermaid parser will fail on placeholder text like [DIAGRAM_TYPE].
Every ```mermaid block must declare its diagram type on the first line (flowchart TB, sequenceDiagram, etc.) — otherwise it renders blank.
You cannot nest fenced code blocks in markdown. When documenting code-block rules:
`js`This skill itself demonstrates the solution.
Before writing markdown, plan for:
| ---- | separator row