diff --git a/plugins/lint/skills/vale-run/README.md b/plugins/lint/skills/vale-run/README.md new file mode 100644 index 0000000..8572456 --- /dev/null +++ b/plugins/lint/skills/vale-run/README.md @@ -0,0 +1,23 @@ +# vale-run + +Run Vale (a prose/style linter) against an already-configured project and interpret its results. + +## What it does + +This skill covers invoking the `vale` CLI against files or directories, choosing an output format (human-readable CLI, `line`, or machine-parseable `JSON`), filtering by severity via `--minAlertLevel`, and handling exit codes in scripts and CI. It also covers resolving common runtime issues: false positives, format-specific inline suppression, and CI failures caused solely by Vale's non-zero exit code. It assumes the project already has a working `.vale.ini` and installed styles — setting those up is the sibling `vale-config` skill's job. + +## Usage + +``` +/vale-run +``` + +Describe what you want to lint and how (human-readable output, CI/JSON output, filtered by severity). The skill will pick the right flags and, if results include false positives, walk through the narrowest applicable fix. + +## Files + +| File | Purpose | +|------|---------| +| `SKILL.md` | Core invocation, key flags, output format guidance, false-positive triage order | +| `references/troubleshooting.md` | Inline suppression syntax, rule-specific disabling, spelling ignore lists, pre-commit integration, CI edge cases | +| `references/sources.md` | Research provenance | diff --git a/plugins/lint/skills/vale-run/SKILL.md b/plugins/lint/skills/vale-run/SKILL.md new file mode 100644 index 0000000..cff78af --- /dev/null +++ b/plugins/lint/skills/vale-run/SKILL.md @@ -0,0 +1,61 @@ +--- +name: vale-run +description: > + Use when running Vale (a prose/style linter) against files or directories in an + already-configured project — one that already has a .vale.ini — and interpreting + or reporting its results: choosing an output format for humans vs. CI, filtering + by severity, handling Vale's exit codes in scripts, or resolving common runtime + issues like false positives and unexpected CI failures. Use even if the user + doesn't say "vale" explicitly, e.g. "lint the docs", "check prose style", "run + the style linter", "why is CI failing on the docs check". Do not use when the + project has no .vale.ini yet, or needs styles installed/configured — that's the + vale-config skill. +metadata: + version: "0.1.0" + category: linting + source_keys: + - context7-websites-vale-sh +--- + +## Gotchas + +- Vale exits non-zero whenever it finds an alert at or above `MinAlertLevel` — that's what makes it usable as a CI gate, not a sign the invocation failed. Read the output before concluding the command errored. +- `vale ls-config` prints the fully-resolved, currently active configuration as JSON — the fastest way to check why a rule "isn't applying" is what's actually active, not what's written in `.vale.ini`. +- Inline suppression syntax is format-specific: Markdown/MDX uses `{/* vale off */}` / `{/* vale on */}`, Org mode uses `# vale off` / `# vale on`. Don't assume one syntax works across formats. + +## Running vale + +Default invocation: + +```bash +vale +``` + +Key flags: + +| Flag | Purpose | +|---|---| +| `--output=