A catalog of Claude Code skills for Elastic documentation workflows.
Browse the catalog, pick the skills you need, and install them with a single command.
Clone the repository and run the interactive installer:
git clone https://github.com/elastic/elastic-docs-skills.git
cd elastic-docs-skills
./install.shIf you have this repo cloned, the easiest way to add a skill is to use the built-in /create-skill command (available only within this repo):
/create-skill my-new-skill
This walks you through the process interactively and can open a PR for you.
- Create a directory under
skills/<category>/<skill-name>/ - Add a
SKILL.mdfile with the required frontmatter - Open a PR
Every skill must have YAML frontmatter with at least these fields:
---
name: my-skill # Required — kebab-case, must match directory name
version: 1.0.0 # Required — SemVer (MAJOR.MINOR.PATCH)
description: What it does # Required — when to use this skill
---Optional fields:
disable-model-invocation: true # Only runs via /my-skill, not auto-triggered
argument-hint: [args] # Hint shown in autocomplete
allowed-tools: Read, Grep # Tools the skill can use without asking
context: fork # Run in isolated subagent
agent: Explore # Subagent type
sources: # Upstream URLs for freshness checks
- https://www.elastic.co/docs/...Skills follow SemVer:
- MAJOR — Breaking changes to the skill's behavior or interface
- MINOR — New functionality, backwards-compatible
- PATCH — Bug fixes, wording improvements
Bump the version field in your SKILL.md frontmatter when making changes.
./install.sh --updateThis compares your installed skill versions against the catalog and updates any that have newer versions available.
All PRs that touch skills/** are validated by GitHub Actions using skill-validator. The workflow (.github/workflows/validate-skills.yml) runs the following checks on every skill:
- Every
skills/**/SKILL.mdmust have valid YAML frontmatter - Required fields:
name,description,version versionmust be valid SemVer- Directory name must match the
namefield evals/evals.json(if present) must be valid JSON with required structure
elastic-docs-skills/
├── .github/
│ ├── copilot-setup-steps.yml # GitHub Copilot coding agent setup
│ └── workflows/
│ ├── validate-skills.yml # Skill validation via skill-validator
│ └── skill-freshness.lock.yml
├── .claude/skills/ # Skills that work within this repo
├── skills/ # The browsable catalog
│ └── <category>/
│ └── <skill-name>/
│ └── SKILL.md
├── install.sh # Interactive TUI installer
└── README.md
See CONTRIBUTING.md for detailed guidelines on creating skills, writing evals, choosing categories, and frontmatter conventions.
This repository is licensed under the Apache License, Version 2.0. See LICENSE.txt for the full text.