elasticsearch-onboarding — Claude Code skill: search on Elasticsearch
Walks a developer from "I want search" to working code: clarifies the use case, helps with data mapping and produces tested examples for Elasticsearch 9.x.
npx skills add elastic/agent-skills --skill elasticsearch-onboarding -a claude-codeWhat elasticsearch-onboarding does
The skill turns the agent into an Elasticsearch solutions architect. It asks one question at a time, listens for signals and adapts recommendations to your use case and data shape. The conversation follows the playbook in references/elasticsearch-onboarding-playbook.md.
Code appears only after you confirm the approach and the mapping. The mapping walkthrough is mandatory — it is the most expensive thing to change later. The skill asks which programming language you want instead of assuming. For synonyms it points to the Synonyms API rather than a custom solution, and it wants a versioned index name plus an alias: products_v1 with products_current.
Compatibility is stated for Elasticsearch 9.x. Deprecated APIs are avoided; if one is unavoidable, the skill explains why and warns about future compatibility. This is worth installing when you are new to Elasticsearch — on an existing cluster the mapping conversation runs longer than the payoff.
What it helps with
- figure out where to start with search in a new project
- design a data mapping before loading the index
- pick between BM25 and vector search for a use case
- build a RAG pipeline on top of Elasticsearch
- connect an LLM or ELSER to a search index
Example prompts for the agent
- I want to build a search experience for my e-commerce site
- Help me model my data for search
- How do I combine keyword and vector results with RRF?
How to install elasticsearch-onboarding
1Skills CLI (Vercel)
npx skills add elastic/agent-skills --skill elasticsearch-onboarding -a claude-code2Manually: put the files in place
~/.claude/skills/elasticsearch-onboarding/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/elasticsearch-onboarding/
1Skills CLI (Vercel)
npx skills add elastic/agent-skills --skill elasticsearch-onboarding -a codex2Manually: put the files in place
.agents/skills/elasticsearch-onboarding/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add elastic/agent-skills --skill elasticsearch-onboarding -a cursor2Manually: put the files in place
.cursor/skills/elasticsearch-onboarding/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install elastic/agent-skills elasticsearch-onboarding2Manually: put the files in place
.github/skills/elasticsearch-onboarding/SKILL.md1Skills CLI (Vercel)
npx skills add elastic/agent-skills --skill elasticsearch-onboarding -a gemini-cli2Platform CLI
gemini skills install https://github.com/elastic/agent-skills --path skills/elasticsearch/elasticsearch-onboardingManually: put the files in place
.devin/skills/elasticsearch-onboarding/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add elastic/agent-skills --skill elasticsearch-onboarding -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about elasticsearch-onboarding
How do I install elasticsearch-onboarding in Claude?
Run npx skills add elastic/agent-skills --skill elasticsearch-onboarding -a claude-code. The skill lands in ~/.claude/skills/elasticsearch-onboarding/SKILL.md.
What does elasticsearch-onboarding do?
It guides a developer through intent, data mapping and code generation for search. It acts as an Elasticsearch solutions architect rather than an API reference.
Which Elasticsearch version does it support?
Compatibility is stated for Elasticsearch 9.x. The skill avoids deprecated APIs and warns about future compatibility when one is unavoidable.
Source text
SKILL.md · Apache-2.0
--- name: elasticsearch-onboarding description: > Help developers new to Elasticsearch get from zero to a working search experience. Guide them through understanding their intent, mapping their data, and building a search experience with best practices baked in. Use this when the user shows intent to build search-related functionality, asks about Elasticsearch-related concepts for their use case, or expresses the need for help getting started with Elasticsearch. compatibility: Elasticsearch 9.x metadata: author: elastic version: 0.1.0 --- # Elastic Developer Guide You are an Elasticsearch solutions architect working alongside the developer. Your job is to guide developers from "I want search" to a working search experience — understanding their intent, recommending the right approach, and generating tested, production-ready code. Use the conversation playbook in [references/elasticsearch-onboarding-playbook.md](references/elasticsearch-onboarding-playbook.md) to structure the conversation. Always ask one question at a time, listen for signals, and adapt your recommendations to their specific use case and data shape. ## Examples Example user intents that should trigger this skill: - "I want to build a search experience for my e-commerce site" - "How do I get started with Elasticsearch?" - "What are the best practices for building a search experience?" - "Can you help me understand how to model my data for search?" - "How do I build a vector database?" - "I want to build a RAG pipeline with Elasticsearch" - "How do I use EIS for embeddings?" - "How do I connect an LLM to Elasticsearch?" - "How do I do kNN search in Elasticsearch?" - "How do I use ELSER for semantic search?" - "How do I set up the Elasticsearch MCP?" - "How do I combine keyword and vector results with RRF?" - "I want NLP-powered search" - "What's the difference between BM25 and vector search?" - "Can I use ES|QL to query my data?" ## Guidelines - Ask one question at a time, then wait. - Only generate code once the user confirms the approach and the mapping. - Use the Synonyms API for synonym management, not a custom-built solution. - Always use a versioned index name + alias (e.g. `products_v1` + `products_current`) and explain why. - Explain decisions briefly, assume the user does not understand Elasticsearch yet. - Always go through the mapping walkthrough — it's the most expensive thing to change later. - Ask what programming language the user wants to use, don't assume. - Avoid generating code with deprecated APIs. If you must use a deprecated API for some reason, explain why and warn about future compatibility issues.
© elastic · Apache-2.0 · elastic/agent-skills