mcpField
C
cloud-setup

cloud-setup

github.com/elastic云与 DevOps6022.7k 次安装今天更新
代码仓库

关于 cloud-setup

用于配置 Elastic Cloud 身份验证和默认设置的技能。它指导 Agent 安全管理 API 密钥并验证连接,也是其他 `cloud/*` 技能的前置步骤。

主要功能

  1. 01检查 `EC_API_KEY`,不泄露密钥
  2. 02设置 API 基础 URL 和默认区域
  3. 03通过区域接口验证连接
  4. 04建议使用本地 `.env` 管理密钥

适用场景

  1. 01使用其他 `cloud/*` 技能前配置环境
  2. 02验证 Elastic Cloud 凭据和连接

安装

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

$npx skills add https://github.com/elastic/agent-skills --skill cloud-setup

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

详细介绍

云环境设置

配置 Elastic Cloud 身份验证和偏好设置。所有其他 cloud/* 技能都依赖此设置。

工作流

Setup Progress:
- [ ] Step 1: Verify API key
- [ ] Step 2: Set defaults
- [ ] Step 3: Validate connection
第 1 步:验证 API 密钥

检查是否已设置 EC_API_KEY:

echo "${EC_API_KEY:?Not set}"

如果未设置,请指导用户设置。切勿要求用户将 API 密钥粘贴到聊天中——密钥不得出现在对话历史记录中。

如果用户表示还没有 Elastic Cloud 账户,请建议他们通过 Elastic Cloud 免费试用 开始免费试用。试用提供 14 天对 Elastic Cloud Serverless 的完整访问权限,无需信用卡。用户注册并登录后,继续执行下方的 API 密钥生成步骤。

引导用户完成以下操作:

  1. 在 Elastic Cloud API 密钥 页面生成密钥。只有 Organization owners 才能创建和管理 Cloud API 密钥。
  2. 创建此密钥时,赋予其 Project Admin 或更高权限(Org Owner),以便其能够创建和管理无服务器项目。
  3. 在项目根目录中创建 .env 文件(推荐——适用于沙盒 Agent Shell):
EC_API_KEY=your-api-key

所有 cloud/* 脚本都会自动从工作目录加载 .env,无需手动加载。

也可以直接在终端中导出:

export EC_API_KEY="your-api-key"

在单独 Shell 会话中运行的沙盒 Agent 可能无法访问终端导出的变量。与 Agent 配合使用时,建议采用 .env 文件。

提醒用户:将密钥存储在本地文件中适用于开发;但在生产环境或共享环境中,应使用集中式密钥管理器(例如 HashiCorp Vault、AWS Secrets Manager、1Password CLI),以避免密钥分散存储。

第 2 步:设置默认值

导出基础 URL 和默认区域:

export EC_BASE_URL="https://api.elastic-cloud.com"
export EC_REGION="gcp-us-central1"

询问用户是否需要使用其他区域。列出可用区域的方法:

curl -s -H "Authorization: ApiKey ${EC_API_KEY}" \
  "${EC_BASE_URL}/api/v1/serverless/regions" | python3 -m json.tool
第 3 步:验证连接

调用区域端点,确认 API 密钥有效:

curl -sf -H "Authorization: ApiKey ${EC_API_KEY}" \
  "${EC_BASE_URL}/api/v1/serverless/regions" > /dev/null && echo "Authenticated." || echo "Authentication failed."

如果验证失败,请检查:

  • API 密钥有效且未过期
  • 与 api.elastic-cloud.com 的网络连接正常

示例

首次设置
User: set up my cloud environment
Agent: Check if EC_API_KEY is set in your terminal. If not, generate a key at
       https://cloud.elastic.co/account/keys and run:
       export EC_API_KEY="your-key"
       Then confirm and I'll validate the connection.
使用自定义区域进行设置
User: set up cloud with eu region
Agent: [runs setup, sets EC_REGION to user's preferred EU region]

指南

  • 切勿在聊天中接收、回显或记录 API 密钥、密码或任何凭据。应指导用户直接在终端中或通过文件管理密钥。
  • 设置密钥后,务必验证连接。
  • 默认区域为 gcp-us-central1——仅在用户要求使用其他区域时更改。
  • 此技能是前置条件。缺少 EC_API_KEY 时,其他云技能应引导用户参阅此处。

环境变量

变量必需描述
EC_API_KEY是Elastic Cloud API 密钥
EC_BASE_URL否Cloud API 基础 URL(默认值:https://api.elastic-cloud.com)
EC_REGION否默认区域(默认值:gcp-us-central1)

故障排除

问题解决方法
401 UnauthorizedAPI 密钥无效或已过期——请生成新密钥
connection refused检查是否可以访问 api.elastic-cloud.com

评论

支持 Markdown