mcpField
O
opensearch-skills

opensearch-skills

github.com/opensearch-project数据与数据库62580 次安装10 周前更新
代码仓库

关于 opensearch-skills

面向 OpenSearch 用户的技能集合,涵盖搜索应用、可观测性数据分析、服务部署和文档处理。它会将请求路由到对应技能,并提供共享脚本及文档查询指引。

主要功能

  1. 01在七种技能间路由请求
  2. 02搜索应用与索引指引
  3. 03日志和追踪分析流程
  4. 04AWS 与 Aiven 部署指引
  5. 05文档处理与数据导入
  6. 06共享命令行工具及文档搜索

适用场景

  1. 01选择搜索策略并设置索引
  2. 02查找日志错误模式或调查追踪
  3. 03在 AWS 或 Aiven 上配置 OpenSearch
  4. 04将文档转换为分块以供导入

MCP 相关

README 列出了可选 MCP 服务,并说明如何检查服务是否可用,以及如何将缺少的服务条目添加到受支持的配置文件。配置变更后,还需重启或重新连接服务。

安装

复制下面的命令,在终端中运行。

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

安装后在 Claude Code 中输入/opensearch-skills确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

cli-reference.md
cloud/aiven-setup/
aiven-01-provision.md
aiven-02-deploy-search.md
reference.md
cloud/aws-setup/
reference.md
cloud/aws-setup/aos/
domain-01-provision.md
domain-02-deploy-search.md
domain-03-agentic-setup.md
cloud/aws-setup/aoss/
serverless-02-deploy-search.md
serverless-04-agentic-setup.md
cloud/aws-setup/aoss/aoss-nextgen-provisioning/
ADVANCED.md
DEPROVISION.md
ERRORS.md
cloud/managed-ingestion-service/
iam-setup.md
ingest/document-processing/
document_processing_guide.md
observability/
ppl-reference.md
observability/log-analytics/
log-analytics.md
observability/trace-analytics/
traces.md
scripts/
eval_documents.py
scripts/lib/
__init__.py
client.py
eval_document_processing.py
evaluate.py
feedback.py
ingest.py
operations.py
quality.py
samples.py
search.py
ui.py

详细介绍

OpenSearch 技能

这是 OpenSearch 的顶级技能。它包含四个类别技能,也可以单独安装和使用:

类别技能单独安装
搜索opensearch-launchpadnpx skills add opensearch-project/opensearch-agent-skills@opensearch-launchpad --full-depth
可观测性log-analyticsnpx skills add opensearch-project/opensearch-agent-skills@log-analytics --full-depth
可观测性trace-analyticsnpx skills add opensearch-project/opensearch-agent-skills@trace-analytics --full-depth
云aws-setupnpx skills add opensearch-project/opensearch-agent-skills@aws-setup --full-depth
云aiven-setupnpx skills add opensearch-project/opensearch-agent-skills@aiven-setup --full-depth
摄取document-processingnpx skills add opensearch-project/opensearch-agent-skills@document-processing --full-depth
云managed-ingestion-servicenpx skills add opensearch-project/opensearch-agent-skills@managed-ingestion-service --full-depth

路由

根据用户意图路由到相应技能:

用户意图技能
构建搜索应用、设置索引、选择搜索策略opensearch-launchpad
分析日志、使用 PPL 查询、发现错误模式log-analytics
调查跟踪、调试跨度、分析服务映射trace-analytics
部署到 AWS、配置域或集合aws-setup
部署到 Aiven、配置托管式 OpenSearch 服务aiven-setup
将文档处理为分块(PDF/DOCX → JSONL)document-processing
通过 OSIS 大规模摄取分块,从 S3 传输到 AOS/AOSSmanaged-ingestion-service
一般 OpenSearch 问题先搜索文档,然后路由到相关技能

如果用户的意图涉及多个技能(例如,“构建搜索应用并将其部署到 Aiven”),请从合适的技能开始,准备好后再切换到下一个技能。

反馈收集(必须遵循)

这适用于此集合中的所有技能——opensearch-launchpad、log-analytics、trace-analytics、aws-setup、aiven-setup、document-processing 和 managed-ingestion-service。无论当前使用哪个技能,都必须遵循这些规则。

每次交互期间,都必须主动收集反馈。这不是可选项——应将其视为工作流的核心部分,而不是事后补充。

规则
  1. 持续关注——在整个对话过程中留意失败、困惑和未满足的需求,而不只是对话结束时。
  2. 失败时立即提出——任何命令出错或步骤无法正常工作时,在开始排查前立即提出收集反馈。
  3. 不确定时提出——如果不确定如何继续,或技能未涵盖用户的请求,请将其标记为潜在缺口,并提出提交反馈。
  4. 在自然的阶段节点询问——完成一个主要阶段后(而不只是全部结束时),询问“目前进展是否符合预期?到现在为止遇到什么阻碍了吗?”
  5. 结束时务必询问——用户表示已完成或工作流结束时,请求用户给出 1–5 分的评分。
  6. 未经同意绝不发送——展示预览并获得明确的“是”后,才能发送。
触发条件
何时要做什么
命令返回非零退出码或错误→ 立即询问:“操作失败了。可以记录这条反馈吗?”
用户说“这不是我想要的”/“这让人困惑”/表达沮丧→ “看来遇到了阻碍。可以记下哪里出了问题吗?”
用户提出你无法完成的请求→ “目前还不支持此功能。可以将其标记为功能缺口吗?”
需要采用变通方法(某些操作本应更简单)→ “这比应有的步骤更多。可以将其标记为使用阻碍吗?”
主要阶段完成→ “目前进展如何?遇到什么问题了吗?”
用户说“完成了”或工作流结束→ “整体体验如何?(1-5)”
如何提交

需要安装 uv(用于运行 Python 脚本)

  1. 撰写反馈(类型 + 上下文)。
  2. 向用户展示预览。
  3. 询问:“我可以提交这条匿名反馈吗?”
  4. 获得同意后:
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>"
反馈类型
  • failure — 命令或步骤出错
  • gap — 用户需要的功能不受该技能支持
  • friction — 工作流令人困惑、速度慢或需要变通方法
  • success — 工作流已完成,用户满意

共享资源

所有技能共享以下资源:

  • 脚本:scripts/opensearch_ops.py — 用于执行所有 OpenSearch 操作的 CLI
  • Docker 启动脚本:scripts/start_opensearch.sh — 启动本地 OpenSearch 集群
  • CLI 参考:cli-reference.md — 完整的命令参考及示例
  • 搜索构建器 UI:scripts/ui/ — 在端口 8765 上提供服务的 React 前端
bash scripts/start_opensearch.sh
uv run python scripts/opensearch_ops.py <command> [options]
uv run python scripts/opensearch_ops.py --help

可选 MCP 服务

{
  "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" }
    }
  }
}

自动安装缺失的 MCP 服务

使用任何 MCP 工具之前,请检查服务是否可用。如果缺失:

  1. 找到 MCP 配置文件:
    • 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. 读取现有配置(或从 {"mcpServers": {}} 开始)。
  3. 合并缺失的服务条目。不要覆盖现有条目。
  4. 保存并告知用户重启或重新连接 MCP 服务。

解答 OpenSearch 知识问题

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

评论

支持 Markdown