.claude/skills/markdownlint/SKILL.md
Validate markdown files against formatting standards. Auto-detects and installs markdownlint-cli if missing. Checks project config or falls back to sensible defaults. Supports auto-fix mode. Use when creating or modifying markdown files, validating documentation, or enforcing markdown conventions.
npx skillsauth add dirien/yet-another-agent-harness markdownlintInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Validate markdown files follow formatting standards. Enables consistent documentation, readable diffs, and POSIX compliance.
markdownlint-cli is installed; installs if missing.--fix flag; reports errors
with specific rules and fixes.# Check if markdownlint is available
markdownlint --version 2>/dev/null
If not installed, install globally:
npm install -g markdownlint-cli
If installation fails (permissions, no npm), stop validation and report the issue with remediation steps:
sudo npm install -g ... or fix npm permissionsDo not silently skip validation.
.markdownlint.json in project root.markdownlint.yaml in project root.markdownlintrc in project rootmarkdownlint field in package.jsonreferences/markdownlint-config.json)If no project config exists, create a temporary .markdownlint.json using
the default config from the reference file before running validation.
1. Check markdownlint installation
├─ Installed → continue
└─ Missing → install, then continue (fail if install fails)
2. Detect project config
├─ Found → use it
└─ Not found → use default config from references/
3. Run validation
├─ Check only:
│ markdownlint <files-or-directories>
└─ Auto-fix:
markdownlint --fix <files-or-directories>
4. Report results
├─ Valid → confirm and proceed
└─ Invalid → show errors, suggest fixes, re-validate after correction
markdownlint README.md CHANGELOG.md docs/
markdownlint --fix README.md CHANGELOG.md docs/
Note: some issues (like MD001 heading-increment) cannot be auto-fixed and
require manual correction. Re-run without --fix after fixing to confirm
all issues resolved.
If markdownlint cannot be installed, report the error and provide remediation steps. Do not proceed with validation.
When validation fails, report each error with:
MD022/blanks-around-headings)Example:
Validation failed:
1. MD022/blanks-around-headings: heading not surrounded by blank lines
File: README.md:15
Fix: add blank lines before and after the heading
2. MD047/single-trailing-newline: file does not end with newline
File: CHANGELOG.md:89
Fix: add a single newline at end of file
After reporting errors, suggest running markdownlint --fix for
auto-fixable issues and provide manual fixes for the rest. Re-validate
after corrections.
See references/markdownlint-rules.md for the full rule reference, common
fixes, and auto-fixable rules.
tools
Implements advanced TypeScript type systems, creates custom type guards, utility types, and branded types, and configures tRPC for end-to-end type safety. Use when building TypeScript applications requiring advanced generics, conditional or mapped types, discriminated unions, monorepo setup, or full-stack type safety with tRPC.
development
Use when challenging ideas, plans, decisions, or proposals using structured critical reasoning. Invoke to play devil's advocate, run a pre-mortem, red team, or audit evidence and assumptions.
development
Systematic technical debt analysis across architecture, testing, documentation, and infrastructure. Investigates the codebase, scores findings by impact and effort, and generates a prioritized TECH_DEBT.md remediation plan. Delegates to specialized skills for code quality (scout) and linting (lint-fix). Use when assessing overall project health, planning cleanup sprints, or onboarding to an unfamiliar codebase.
testing
Install and configure Tailscale across platforms. Detects OS, distro, and environment (including WSL2 and containers). Verifies existing installations, performs platform-appropriate install, and guides initial connection. Use when setting up Tailscale on a new machine, onboarding a server to a tailnet, or verifying an existing install.