MCPInstall

opensearch-skills

Build search applications and query log analytics data with OpenSearch. Use this skill when the user mentions OpenSearch, search app, index setup, search architecture, semantic search, vector search, hybrid search, BM25, dense vector, sparse vector, agentic search, RAG, embeddings, KNN, PDF ingestion, document processing, or any related search topic. Also use for log analytics and observability — when the user wants to set up log ingestion, query logs with PPL, analyze error patterns, set up index lifecycle policies, investigate traces, or check stack health. Activate even if the user says log analysis, Fluent Bit, Fluentd, Logstash, syslog, traceId, OpenTelemetry, or log analytics without mentioning OpenSearch.

Installs
574
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/opensearch-project/opensearch-agent-skills --skill opensearch-skills
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads opensearch-skills automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

OpenSearch Skills

This is the top-level skill for OpenSearch. It contains four category skills that can also be installed and used independently:

CategorySkillInstall individually
searchopensearch-launchpadnpx skills add opensearch-project/opensearch-agent-skills@opensearch-launchpad --full-depth
observabilitylog-analyticsnpx skills add opensearch-project/opensearch-agent-skills@log-analytics --full-depth
observabilitytrace-analyticsnpx skills add opensearch-project/opensearch-agent-skills@trace-analytics --full-depth
cloudaws-setupnpx skills add opensearch-project/opensearch-agent-skills@aws-setup --full-depth
cloudaiven-setupnpx skills add opensearch-project/opensearch-agent-skills@aiven-setup --full-depth
ingestdocument-processingnpx skills add opensearch-project/opensearch-agent-skills@document-processing --full-depth
cloudmanaged-ingestion-servicenpx skills add opensearch-project/opensearch-agent-skills@managed-ingestion-service --full-depth

Routing

Route to the right skill based on user intent:

User IntentSkill
Build a search app, set up an index, choose a search strategyopensearch-launchpad
Analyze logs, query with PPL, discover error patternslog-analytics
Investigate traces, debug spans, analyze service mapstrace-analytics
Deploy to AWS, provision a domain or collectionaws-setup
Deploy to Aiven, provision a managed OpenSearch serviceaiven-setup
Process documents into chunks (PDF/DOCX → JSONL)document-processing
Ingest chunks at scale via OSIS, S3 to AOS/AOSSmanaged-ingestion-service
General OpenSearch questionSearch docs first, then route to the relevant skill

If the user's intent spans multiple skills (e.g., "build a search app and deploy it to Aiven"), start with the appropriate skill and transition to the next when ready.

Feedback Collection (Required Behavior)

This applies to ALL skills in this collection — opensearch-launchpad, log-analytics, trace-analytics, aws-setup, aiven-setup, document-processing, and managed-ingestion-service. Regardless of which skill is active, you MUST follow these rules.

You MUST proactively collect feedback during every interaction. This is not optional — treat it as a core part of the workflow, not an afterthought.

Rules

  1. Monitor continuously — watch for failures, confusion, and unmet needs throughout the conversation, not just at the end.
  2. Offer immediately on failure — when any command errors or a step doesn't work, immediately offer to capture feedback before troubleshooting.
  3. Offer on uncertainty — if you're unsure how to proceed or the skill doesn't cover the user's request, flag it as a potential gap and offer to submit.
  4. Ask at natural breakpoints — after completing a major phase (not just at the very end), ask "Is this working as expected? Any friction so far?"
  5. Always ask at end — when the user says they're done or the workflow completes, ask for a 1-5 rating.
  6. Never send without consent — show the preview, get explicit "yes".

Triggers

WhenWhat to do
Command returns non-zero exit or error→ Immediately: "That failed. Can I capture this as feedback?"
User says "that's not what I wanted" / "this is confusing" / expresses frustration→ "Sounds like friction. Can I note what went wrong?"
User asks for something you can't do→ "This isn't supported yet. Can I flag this as a feature gap?"
A workaround is needed (something should be simpler)→ "That was more steps than it should be. Can I flag this as friction?"
Major phase completes→ "How's it going so far? Any issues?"
User says "done" or workflow ends→ "How was the overall experience? (1-5)"

How to Submit

Requires uv installed (for running Python scripts)

  1. Compose the feedback (type + context).
  2. Show preview to user.
  3. Ask: "May I submit this anonymous feedback?"
  4. On consent:
uv run python scripts/opensearch_ops.py submit-feedback \
  --type <failure|gap|friction|success> \
  --skill <skill-name> \
  --context "<error message, command, what happened>" \
  --comment "<user's words>" \
  --rating "<1-5, for success only>"

Feedback Types

  • failure — A command or step produced an error
  • gap — User needs something the skill doesn't support
  • friction — Workflow was confusing, slow, or required workarounds
  • success — Workflow completed, user satisfied

Shared Resources

All skills share these resources:

  • Scripts: scripts/opensearch_ops.py — CLI for all OpenSearch operations
  • Docker bootstrap: scripts/start_opensearch.sh — Start a local OpenSearch cluster
  • CLI Reference: cli-reference.md — Full command reference with examples
  • Search Builder UI: scripts/ui/ — React frontend served on port 8765
bash scripts/start_opensearch.sh
uv run python scripts/opensearch_ops.py <command> [options]
uv run python scripts/opensearch_ops.py --help

Optional MCP Servers

{
  "mcpServers": {
    "ddg-search": {
      "command": "uvx",
      "args": ["duckduckgo-mcp-server"]
    },
    "awslabs.aws-api-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.aws-api-mcp-server@latest"],
      "env": { "FASTMCP_LOG_LEVEL": "ERROR" }
    },
    "aws-knowledge-mcp-server": {
      "command": "uvx",
      "args": ["fastmcp", "run", "https://knowledge-mcp.global.api.aws"],
      "env": { "FASTMCP_LOG_LEVEL": "ERROR" }
    },
    "opensearch-mcp-server": {
      "command": "uvx",
      "args": ["opensearch-mcp-server-py@latest"],
      "env": { "FASTMCP_LOG_LEVEL": "ERROR" }
    }
  }
}

Auto-Installing Missing MCP Servers

Before using any MCP tool, check if the server is available. If missing:

  1. Locate the MCP config file:
    • Kiro: .kiro/settings/mcp.json
    • Cursor: .cursor/mcp.json
    • Claude Code: .mcp.json
    • VS Code (Copilot): .vscode/mcp.json
    • Windsurf: ~/.codeium/windsurf/mcp_config.json
  2. Read the existing config (or start with {"mcpServers": {}}).
  3. Merge in the missing server entry. Do not overwrite existing entries.
  4. Save and inform the user to restart or reconnect MCP servers.

Answering OpenSearch Knowledge Questions

uv run python scripts/opensearch_ops.py search-docs --query "<your query>"
uv run python scripts/opensearch_ops.py search-docs --query "<query>" --site docs.aws.amazon.com

FAQ

What does the opensearch-skills skill do?

Build search applications and query log analytics data with OpenSearch. Use this skill when the user mentions OpenSearch, search app, index setup, search architecture, semantic search, vector search, hybrid search, BM25, dense vector, sparse vector, agentic search, RAG, embeddings, KNN, PDF ingestion, document processing, or any related search topic. Also use for log analytics and observability — when the user wants to set up log ingestion, query logs with PPL, analyze error patterns, set up index lifecycle policies, investigate traces, or check stack health. Activate even if the user says log analysis, Fluent Bit, Fluentd, Logstash, syslog, traceId, OpenTelemetry, or log analytics without mentioning OpenSearch.

How do I install opensearch-skills?

Run npx skills add https://github.com/opensearch-project/opensearch-agent-skills --skill opensearch-skills in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/opensearch-skills/ (personal) or .claude/skills/opensearch-skills/ (project).

Which AI agents can use opensearch-skills?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is opensearch-skills safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains opensearch-skills?

It is published by opensearch-project in opensearch-project/opensearch-agent-skills. It has 574 recorded installs.

More from opensearch-project/opensearch-agent-skills

View all →

opensearch-launchpad

opensearch-project/opensearch-agent-skills

Open the skill to read its SKILL.md instructions.

AI & Agents131 installs

log-analytics

opensearch-project/opensearch-agent-skills

Open the skill to read its SKILL.md instructions.

Data & Databases121 installs

trace-analytics

opensearch-project/opensearch-agent-skills

Open the skill to read its SKILL.md instructions.

Data & Databases77 installs

solr-opensearch-migration-advisor

opensearch-project/opensearch-agent-skills

Open the skill to read its SKILL.md instructions.

aws-setup

opensearch-project/opensearch-agent-skills

Open the skill to read its SKILL.md instructions.

DevOps & Cloud46 installs

Popular ai & agents skills

View category →

google-agents-cli-publish

google/agents-cli

This skill should be used when the user wants to "publish an agent", "publish my ADK agent", "register an agent with Gemini", "publish to Gemini" (formerly Gemini Enterprise), or needs guidance on the agents-cli publish gemini command. Also use when the user wants to "manage agents in Agent Registry", "list/update/delete registered agents", or "register an MCP server". Covers ADK vs A2A registration modes, programmatic and interactive usage, flag reference, auto-detection from deployment metadata, Agent Registry fleet management, and troubleshooting. Part of the agents-cli skills suite. Do NOT use for deployment (use google-agents-cli-deploy).

AI & Agents513.9K installs

google-agents-cli-eval

google/agents-cli

This skill should be used when the user wants to "run an evaluation", "evaluate my agent", "evaluate my ADK agent", "write an eval dataset", "analyze eval failures", "compare eval results", "optimize agent", or needs guidance on the Gemini platform eval methodology and the Quality Flywheel. Covers eval metrics, dataset schema, LLM-as-judge scoring, and common failure causes. Applies to any agents-cli project, whatever framework the agent is written in. Do NOT use for agent API code patterns (ADK: use google-agents-cli-adk-code), deployment (use google-agents-cli-deploy), or project scaffolding (use google-agents-cli-scaffold).

AI & Agents513.5K installs

skill-creator

anthropics/skills

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

OfficialAI & Agents416.4K installs

codex-pet

prime-skills/runcomfy-agent-skills

Codex Pet generator on RunComfy. Build a Codex-compatible Codex Pet spritesheet.webp + pet.json from a single reference image, drop it into ${CODEXHOME:-$HOME/.codex}/pets/ / and Codex picks it up as a custom Codex Pet next to the 8 built-ins. This skill produces the exact Codex Pet atlas Codex expects (1536x1872 PNG/WebP, 8 cols x 9 rows, 192x208 cells, 9 animation states — idle, running-right, running-left, waving, jumping, failed, waiting, running, review). Calls OpenAI GPT Image 2 edit ONCE via the local RunComfy CLI as runcomfy run openai/gpt-image-2/edit to produce a canonical Codex Pet pose, then assembles all 9 animation rows programmatically with ImageMagick micro-transforms — no Codex Pro, no $imagegen, no OPENAIAPIKEY required, only RUNCOMFYTOKEN. Triggers on "codex pet", "create codex pet", "make codex pet", "hatch codex pet", "/hatch image", "desktop pet codex", "codex pets", "spritesheet.webp", or any explicit ask to build a custom pet for OpenAI Codex.

AI & Agents402.1K installs

full-output-enforcement

leonxlnx/taste-skill

Overrides default LLM truncation behavior. Enforces complete code generation, bans placeholder patterns, and handles token-limit splits cleanly. Apply to any task requiring exhaustive, unabridged output.

AI & Agents401K installs

executing-plans

obra/superpowers

Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available

AI & Agents245.7K installs