Install Anti-Slop Oxlint Rules
dmmulroy/anti-slop
Installs, updates or migrates the vendored anti-slop Oxlint plugin in a repository, keeping local rule changes and the plugin's license and provenance files.
Lint an Elastic integration package's markdown with vale and propose fixes.
$ npx skills add elastic/integrations --skill validate-integration-docs -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install elastic/integrations validate-integration-docs --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/elastic/integrations.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/validate-integration-docs .claude/skills/validate-integration-docs && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "validate-integration-docs" agent skill from https://github.com/elastic/integrations/tree/main/.agents/skills/validate-integration-docs into .claude/skills/validate-integration-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "validate-integration-docs", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/elastic/integrations/tree/main/.agents/skills/validate-integration-docsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add elastic/integrations --skill validate-integration-docs -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install elastic/integrations validate-integration-docs --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/integrations.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/validate-integration-docs .agents/skills/validate-integration-docs && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "validate-integration-docs" agent skill from https://github.com/elastic/integrations/tree/main/.agents/skills/validate-integration-docs into .agents/skills/validate-integration-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "validate-integration-docs", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add elastic/integrations --skill validate-integration-docs -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install elastic/integrations validate-integration-docs --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/integrations.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/validate-integration-docs .cursor/skills/validate-integration-docs && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "validate-integration-docs" agent skill from https://github.com/elastic/integrations/tree/main/.agents/skills/validate-integration-docs into .cursor/skills/validate-integration-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "validate-integration-docs", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/elastic/integrations.git --path .agents/skills/validate-integration-docs--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add elastic/integrations --skill validate-integration-docs -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install elastic/integrations validate-integration-docs --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/integrations.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/validate-integration-docs .gemini/skills/validate-integration-docs && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "validate-integration-docs" agent skill from https://github.com/elastic/integrations/tree/main/.agents/skills/validate-integration-docs into .gemini/skills/validate-integration-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "validate-integration-docs", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install elastic/integrations validate-integration-docsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add elastic/integrations --skill validate-integration-docs -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/elastic/integrations.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/validate-integration-docs .github/skills/validate-integration-docs && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "validate-integration-docs" agent skill from https://github.com/elastic/integrations/tree/main/.agents/skills/validate-integration-docs into .github/skills/validate-integration-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "validate-integration-docs", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add elastic/integrations --skill validate-integration-docs -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install elastic/integrations validate-integration-docs --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/integrations.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/validate-integration-docs .opencode/skills/validate-integration-docs && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "validate-integration-docs" agent skill from https://github.com/elastic/integrations/tree/main/.agents/skills/validate-integration-docs into .opencode/skills/validate-integration-docs/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "validate-integration-docs", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
validate-integration-docsLint an Elastic integration package's markdown with vale and propose fixes.
Validate Integration Docs is an agent skill from elastic/integrations, published by the product's own GitHub organization. Lint an Elastic integration package's markdown with vale and propose fixes. Use when the user says "vale check," "lint docs," "validate the README," "check integration markdown," or wants to polish an integration's docs before opening a PR. Filters out false positives inside Go-template comment blocks in dev/build/docs/, then re-runs vale against the rendered docs/ output after elastic-package build as a final pass.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Requires elastic-package CLI and vale on PATH. Designed for packages in elastic/integrations (or any repo using the dev/build/docs/README.md → docs/README.md…
It sits in Development, covering Linting and formatting. The licence is Apache-2.0.
2 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a0dffc9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
elastic.cogithub.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires `elastic-package` CLI and `vale` on PATH. Designed for packages in elastic/integrations (or any repo using the _dev/build/docs/README.md → docs/README.md layout produced by elastic-package build).
From compatibility in the SKILL.md frontmatter.
Validate Integration Docs loads about 1.1k tokens when it runs. Until then it costs about 112 tokens; SKILL.md has 428 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from elastic/integrations at commit a0dffc9, republished under its Apache-2.0 licence (© elastic). 428 words, ~1,057 tokens.
.claude/skills/validate-integration-docs/SKILL.md (or your agent's skills folder).Lint an integration package's docs source, filter template noise, propose fixes, then verify the rendered output.
Check prerequisites: run both checks before continuing:
vale --version — if not found, tell the user to install it by following the Elastic vale linter guide.elastic-package version — if not found, tell the user to install it by following the elastic-package install guide.Stop and report any missing tools before proceeding.
Locate the package root: find the nearest ancestor directory (including cwd) that contains both manifest.yml and _dev/build/docs/README.md. If not found, ask the user for the path before continuing.
Run vale on the source:
vale _dev/build/docs/README.md --output JSONIf additional *.md files exist under _dev/build/docs/, include them too.
Detect template-comment ranges: pre-scan the source file with a non-greedy DOTALL match for \{\{\s*/\*.*?\*/\s*\}\}. For each match, record (start_line, end_line) by counting newlines before the match start and end.
Filter findings: suppress any vale finding whose Line falls within any (start_line, end_line) range. Those lines are stripped by elastic-package build and their findings are false positives. Report only findings outside those ranges, grouped by file, with: Line, Match, Severity, Check, and Message.
Draft proposals for each reported finding:
Action.Name == "replace" → mechanical substitution using Action.Params[0].Action.Name == "remove" → delete the Match span.Elastic.Semicolons, Elastic.DontUse, Elastic.Ellipses) → draft a prose rewrite of the sentence using context.Confirm before editing: present all proposals together and ask the user which to apply (all / subset / none). Apply only confirmed edits via the Edit tool. Never edit files under packages/*/docs/ — only _dev/build/docs/ sources.
If Phase 1 finds no actionable issues, skip the confirmation step and proceed to Phase 2.
Build the package from the package root:
elastic-package buildRun vale on the rendered README:
vale packages/<pkg>/docs/README.md --output JSONExtend to other docs/**/*.md if present. No template-comment filtering is needed — comments are stripped by the build.
Report and propose fixes exactly as in Phase 1 steps 6–7. If a Phase 2 finding maps to a source line, edit _dev/build/docs/ only.
Re-run elastic-package build after any source edits so the user can confirm the rendered output is clean.
Before reporting the task complete, verify:
vale and elastic-package were both confirmed available (or the user was sent to the relevant install guide).{{/* */}} block was suppressed in Phase 1.packages/*/docs/.elastic-package build completed without error.vale packages/<pkg>/docs/README.md (Phase 2) reported no findings.© elastic, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/validate-integration-docs of elastic/integrations.
Open the folder on GitHubat commit a0dffc9
Validate Integration Docs next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Validate Integration Docs this skillelastic/integrations | 336 | — | ~1.1k | Automated safety check: Pass | Apache-2.0 | |
| Install Anti-Slop Oxlint Rulesdmmulroy/anti-slop | 5.3k | 1 repos | ~2.2k | Automated safety check: Pass | MIT | |
| Summarise Ecosystem Resultsastral-sh/ruff | 50k | 1 repos | ~2.2k | Automated safety check: Pass | MIT | |
| Minimizing Ty Ecosystem Changesastral-sh/ruff | 50k | — | ~4.6k | Automated safety check: Pass | MIT | |
| Babysit PR To Pass CIsgl-project/sglang | 37k | 2 repos | ~3k | Automated safety check: Pass | Apache-2.0 | |
| Rust Best Practicesfarm-fe/farm | 5.6k | 3 repos | ~1.1k | Automated safety check: Pass | MIT |
dmmulroy/anti-slop
Installs, updates or migrates the vendored anti-slop Oxlint plugin in a repository, keeping local rule changes and the plugin's license and provenance files.
astral-sh/ruff
A skill your agent uses when a user says "summarise ecosystem results", "summarize this ty ecosystem report", "what changed in this ecosystem run?", or asks to summarise or summarize ty ecosystem…
astral-sh/ruff
A skill your agent uses when a user says "minimize this ty ecosystem change", "reproduce this ecosystem result", "investigate a primer difference", "investigate a mypyprimer difference"…
sgl-project/sglang
Start and persistently pursue a goal to babysit an SGLang pull request until selected GitHub Actions workflows pass on the latest PR head.
farm-fe/farm
Guide for writing idiomatic Rust code based on Apollo GraphQL's best practices handbook.
chromedp/chromedp
This skill should be used when the user is writing Go code and needs guidance on Go-specific pedantry: error wrapping with fmt.Errorf and %w, interface design (accept interfaces return structs)…
elastic/integrations
Migrate an Elastic integration package from a legacy inline agent template to integrations with required input dependencies (requires.input, streams[].package).
Categories
Lint an Elastic integration package's markdown with vale and propose fixes. Validate Integration Docs is an agent skill from elastic/integrations, published by the product's own GitHub organization. Lint an Elastic integration package's markdown with vale and propose fixes.
Validate Integration Docs fits situations like: the user says vale check; validate the README; check integration markdown; wants to polish an integrations docs before opening a PR.
Run `npx skills add elastic/integrations --skill validate-integration-docs -a claude-code`. Or copy the skill folder (.agents/skills/validate-integration-docs in elastic/integrations) into .claude/skills/validate-integration-docs in your project. Claude Code loads it when a task matches its description.
Run `npx skills add elastic/integrations --skill validate-integration-docs -a codex`. Or copy the skill folder (.agents/skills/validate-integration-docs in elastic/integrations) into .agents/skills/validate-integration-docs in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add elastic/integrations --skill validate-integration-docs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/validate-integration-docs, .gemini/skills/validate-integration-docs, .github/skills/validate-integration-docs and .opencode/skills/validate-integration-docs in your project.
SKILL.md names no scripts, command-line tools or credentials: Validate Integration Docs is instructions for the agent only. Compatibility (from SKILL.md): Requires `elastic-package` CLI and `vale` on PATH. Designed for packages in elastic/integrations (or any repo using the _dev/build/docs/README.md → docs/README.md layout produced by elastic-package build)..
SKILL.md names 2 domains. As links in the text: elastic.co and github.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Validate Integration Docs is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Validate Integration Docs: Install Anti-Slop Oxlint Rules (dmmulroy/anti-slop, 5.3k stars), Summarise Ecosystem Results (astral-sh/ruff, 50k stars), Minimizing Ty Ecosystem Changes (astral-sh/ruff, 50k stars) and Babysit PR To Pass CI (sgl-project/sglang, 37k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
elastic (a GitHub organization, an official publisher) maintains it in elastic/integrations, which has 336 GitHub stars. The repository holds 2 skills in this directory. The repository was last updated on October 8, 2026.
Source: elastic/integrations on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.