| name | markdown |
| description | Technical writing quality standards based on Google developer documentation style guide. Use for developer/engineering documentation: READMEs, CLAUDE.md, AGENTS.md, API docs, architecture docs, technical guides. NOT for non-technical writing (resumes, marketing, business docs). Applies style standards, prose quality (active voice, clarity, tone), syntax normalization. Triggers: technical documentation, markdown quality, documentation review, README, developer docs, API documentation, Google style guide, vale, mdformat. |
Markdown Quality Skill
Comprehensive markdown quality standards, tool integration, and enforcement workflows based on Google's developer documentation style guide.
Capabilities
Standards enforcement:
- Google style guide compliance (50 rules, 80% automated coverage)
- Prose quality checks (active voice, word choice, tone)
- Syntax normalization (lists, tables, headings, emphasis)
- Combined mdformat + vale workflow (complementary, zero overlap)
Tool integration:
- mdformat: Auto-fixes structure/syntax (36% of rules)
- vale: Detects prose issues (44% of rules)
- Manual review: Semantic decisions (20% of rules)
- Custom vocabulary support (project-specific terms)
Enforcement workflows:
- Writing new documentation (iterative: write → format → check → fix)
- Reviewing existing docs (audit: check format → check prose → prioritize fixes)
- Quality gates (pre-commit: auto-format → block on errors)
- Batch migration (systematic: baseline → analyze → fix iteratively)
When to Use
Auto-loads when:
- Standards: "Google style guide", "markdown quality", "editorial standards"
- Workflows: "reviewing docs", "writing markdown", "quality gates", "doc consistency"
- Use cases: "prose quality", "style compliance", "vale check", "mdformat vale workflow"
Use cases:
- Writing new docs: Iterative workflow with early feedback (write → mdformat → vale → refine)
- Reviewing existing docs: Quality audit with prioritized fixes (errors first, warnings later)
- Pre-commit gates: Automated syntax fixes + block on prose errors (CI/CD integration)
- Batch migration: Systematic quality improvement (baseline → analyze distribution → fix)
vs cli-doc skill:
- markdown skill: Standards, workflows, Google guide (what makes quality docs)
- cli-doc skill: Tool commands, flags, troubleshooting (how to run tools)
When NOT to Use
Non-technical writing - This skill is for developer/engineering documentation only:
❌ Do NOT use for:
- Resumes, cover letters, LinkedIn profiles (use resume skill instead)
- Marketing content, sales materials, landing pages
- Business documentation, proposals, reports
- Blog posts, social media content, articles
- Creative writing, storytelling, personal narratives
✅ DO use for:
- READMEs, CLAUDE.md, AGENTS.md
- API documentation, technical guides
- Architecture docs, design docs, ADRs
- Skills, commands, agents documentation
- Developer-facing tutorials, how-tos
- Engineering process documentation
Why this distinction: Google developer documentation style guide is optimized for technical accuracy, clarity, and consistency in engineering contexts. Non-technical writing has different goals (persuasion, engagement, personal branding) requiring different style guidance and evaluation criteria.
If unsure: Ask "Is this for developers/engineers?" If yes → markdown skill. If no → use domain-specific skill (resume, marketing, etc.) or general writing guidance.
Quick Reference
Tool Complementarity
| Layer | Tool | Coverage | Type | Notes |
|---|---|---|---|---|
| Syntax | mdformat | 36% (18/50) | Auto-fix | Structure, lists, tables, spacing |
| Prose | vale | 44% (22/50) | Auto-detect | Active voice, word choice, tone |
| Semantic | Manual | 20% (10/50) | Human review | Meaningful headings, alt text quality |
Combined coverage: 80% automated (mdformat + vale), 20% manual
Zero overlap: mdformat fixes structure, vale checks content - perfectly complementary
Google Style Guide Summary
50 rules across 12 categories:
- Document Structure (5 rules) - mdformat 60%, vale 0%, manual 40%
- Headings (5 rules) - mdformat 20%, vale 60%, manual 20%
- Line Length (5 rules) - mdformat 20%, vale 20%, manual 60%
- Lists (5 rules) - mdformat 80%, vale 0%, manual 20%
- Code (5 rules) - mdformat 40%, vale 0%, manual 60%
- Links (5 rules) - mdformat 20%, vale 20%, manual 60%
- Images (5 rules) - mdformat 40%, vale 0%, manual 60%
- Emphasis (5 rules) - mdformat 60%, vale 0%, manual 40%
- Tables (6 rules) - mdformat 67%, vale 0%, manual 33%
- HTML (4 rules) - mdformat 0%, vale 0%, manual 100%
- Prose Style (10 rules) - mdformat 0%, vale 70%, manual 30%
- Word Choices (6 rules) - mdformat 0%, vale 100%, manual 0%
See: resources/google-style-guide.md for complete rule-by-rule matrix
Workflow Quick Start
Sequential pattern (mdformat → vale):
# 1. Format syntax (auto-fixes structure)
mdformat file.md
# 2. Check prose quality (reports issues)
vale file.md
# 3. Fix prose manually (based on vale output)
# (edit file)
# 4. Reformat after edits (clean up syntax)
mdformat file.md
Why this order: mdformat may reflow text → vale checks final structure → ensures consistent layout
Vale Google Style Pack
24 active rules (from errata-ai/Google):
- Google.Passive - Prefer active voice
- Google.FirstPerson - Avoid "I", "we" (context-dependent)
- Google.Will - Avoid future tense ("will do")
- Google.Contractions - Avoid in formal docs ("don't" → "do not")
- Google.Headings - Sentence case, not title case
- Google.Link - Descriptive link text ("view docs" not "click here")
- Google.Acronyms - Spell out first use
- Google.Latin - Avoid "e.g.", "i.e." (use "for example")
- Google.WordList - Preferred terms (huge list: "app" not "application")
- Google.We - Avoid "we" (use "you" or imperative)
- +14 more rules (tone, spacing, gender-neutral, oxford comma, etc.)
See: resources/vale.md for configuration and custom rules
See: resources/google-style-guide.md for complete rule list
Resources
Standards reference (resources/):
google-style-guide.md- Complete 50-rule matrix with tool coverage analysisenforcement-workflows.md- 4 primary workflows (writing, reviewing, gates, migration)workflow-patterns.md- Use case examples with concrete commands
Tool documentation (resources/):
mdformat.md- Markdown formatter (moved from cli-doc) - syntax fixes, CommonMark compliancemarkitdown.md- Document conversion (moved from cli-doc) - PDF/Word/PPT → Markdownvale.md- Prose linter - Google style enforcement, custom vocabulary
Each resource includes:
- When to use (vs alternatives, workflow position)
- Concrete examples (bash commands, config files)
- Integration patterns (with other tools, skills)
- Best practices (mandatory workflows, gotchas)
Integration
cli-doc skill:
- Tool commands: See
.claude/skills/cli-doc/for mdformat/markitdown/vale tool reference - Cross-reference: cli-doc resources link back to markdown skill for standards
- Split responsibility: cli-doc owns tool docs, markdown owns standards
claude-md skill:
- Standards compliance: References markdown skill for Google guide compliance
- Validation: Uses mdformat + vale for CLAUDE.md maintenance
- Quality gates: Pre-commit integration patterns from enforcement-workflows.md
agents-md skill:
- Standards compliance: References markdown skill for AGENTS.md quality
- Validation: Same mdformat + vale workflow
- Quality gates: Error-level enforcement for formal documentation
prp skill:
- Research docs: References markitdown for document conversion
- PRP quality: Uses vale for prose quality checks on PRPs
- Workflow: markitdown (convert) → vale (check) → fix → commit
Progressive Disclosure Strategy
Metadata (~100 tokens, always loaded):
- Tool list + triggers in description
- Quick reference tables (tool coverage, Google guide summary)
SKILL.md body (~500 lines):
- Standards overview
- Tool integration summary
- Workflow quick start
- Resources index
Resources (load on-demand):
- google-style-guide.md: ~800 lines (complete rule matrix)
- enforcement-workflows.md: ~300 lines (4 workflows with commands)
- workflow-patterns.md: ~250 lines (use case examples)
- mdformat.md: ~140 lines (tool operation)
- markitdown.md: ~145 lines (document conversion)
- vale.md: ~150 lines (prose linting)
Token efficiency:
- Metadata only: ~100 tokens (60% of sessions - trigger check)
- Metadata + tool resource: ~450-750 tokens (25% of sessions - tool usage)
- Metadata + workflow resource: ~850-1,750 tokens (10% of sessions - standards work)
- Full load: ~4,460 tokens (5% of sessions - comprehensive quality work)
- Average: ~600 tokens/session (vs 6,725 if consolidated in cli-doc = 91% savings)
Configuration
Vale setup (.vale.ini at repository root):
StylesPath = .vale/styles
MinAlertLevel = warning
Vocab = engram
[*]
BasedOnStyles = Vale, Google
[*.md]
BasedOnStyles = Vale, Google, write-good
[.claude/skills/**/*.md]
MinAlertLevel = error
Google.Passive = error
Google.FirstPerson = error
Google.Contractions = error
[.basic-memory/sessions/*.md]
MinAlertLevel = error
Google.Contractions = NO
Google.FirstPerson = NO
Google.We = NO
[prps/**/*.md]
MinAlertLevel = warning
Google.Passive = warning
[README.md,CLAUDE.md,AGENTS.md]
MinAlertLevel = error
Google.Passive = error
Packages = https://github.com/errata-ai/Google/releases/latest/download/Google.zip
Custom vocabulary (.vale/styles/Vocab/engram/accept.txt):
ACE
Memgraph
Typer
uv
Claude Code
Sonnet
engram
mdformat
vale
FastMCP
CodeRabbit
Codex
wikilink
PRP
ADR
Cypher
Installation:
# macOS
brew install vale
# Verify
vale --version # v3.12.0+
# Download Google style pack
vale sync # Uses .vale.ini Packages config
See: resources/vale.md for detailed configuration and custom rules
Quality Standards
Target: ≥9.5/10 (professional-quality documentation)
Evaluation dimensions:
- DRY compliance: cli-doc owns tool docs, markdown owns standards (no duplication)
- Token efficiency: Progressive disclosure effective (~600 tokens avg vs ~6,725 baseline)
- Accuracy: All workflows tested, Google guide coverage verified (research-backed)
- Completeness: 50-rule matrix, 4 workflows, tool integration, configuration
- Format compliance: Terse, scannable, code-first (AI-optimized)
Validation checklist:
- SKILL.md has proper frontmatter with all triggers
- Quick reference tables formatted correctly (tool coverage, Google summary)
- All 6 resources present with required sections
- Trigger test: "markdown quality" → markdown skill loads (not cli-doc)
- Trigger test: "mdformat command" → cli-doc loads (not markdown)
- Progressive disclosure: Metadata ~100 tokens, resources on-demand
- Cross-references work: markdown ↔ cli-doc links valid
- mdformat passes on all files
Notes
Type 6 Guidance-Only: No scripts (external tools: mdformat, vale, markitdown)
Zero tool overlap: mdformat (syntax) + vale (prose) = 80% coverage, no redundancy
Research-backed: 6 research documents (~98KB) validate tool complementarity, coverage
Portability: Self-contained .claude/skills/markdown/ folder
Mandatory workflow: mdformat FIRST (structure), vale SECOND (prose) - sequential, not parallel
Manual review required: Semantic decisions (meaningful headings, alt text quality, file organization)