Skill 安装
多 Agent 安装npx skills add https://github.com/aws/agent-toolkit-for-aws --skill creating-secrets-using-best-practices
使用 npx skills 快速安装,支持将 Skill 添加到多个兼容的 AI Agent。
Skill 调研报告
Skill 详细介绍
aws/agent-toolkit-for-aws 是 AWS 官方推出的 Agent Toolkit,用于让 AI Agent 按照 AWS 最佳实践完成常见云上任务。creating-secrets-using-best-practices 是该工具包中专注于“安全创建密钥”的一个具体 Skill。
它是什么
这是一个围绕 AWS Secrets Manager 的实践型 Skill。它的目标不是替用户凭空生成一串密码,而是让 Agent 按照 AWS 官方推荐的方式,帮助用户规划、创建和管理密钥,减少把明文密钥写进代码、配置文件或提交到 Git 仓库的风险。
它不是什么
– 不是一个独立运行的软件或 CLI 工具
– 不是 AWS Secrets Manager 本身,真正的密钥存储和管理由 AWS 服务完成
– 不是通用的密码生成器,它的重点是“按最佳实践创建和管理密钥”这件事的流程规范
– 不是一个可以直接代替人工做安全决策的自动化系统
核心用途
– 引导用户用 AWS 推荐的方式创建数据库凭证、API Key、访问令牌等敏感信息
– 帮助把硬编码密钥迁移到 Secrets Manager
– 在生成应用代码时,提示正确的密钥引用方式(例如通过 ARN 或名称从 Secrets Manager 拉取,而不是写死明文)
– 提醒密钥轮换、最小权限、加密等安全实践
安装后 Agent 增加的能力
安装后,Agent 在处理“我要给应用配一个数据库密码”“帮我把这个密钥放到安全的地方”“这段代码里的密钥怎么处理”之类的请求时,会倾向于按 AWS Secrets Manager 的最佳实践给出方案,而不是直接输出明文密钥。
适合的用户
– 在 AWS 上部署应用,需要管理数据库凭证、第三方 API Key 的开发者
– 正在把硬编码密钥迁移到 Secrets Manager 的团队
– 希望让 AI Agent 在写代码时遵守密钥管理规范的工程人员
不适合的需求
– 管理非 AWS 环境下的密钥(例如纯本地、其他云厂商)
– 需要 Agent 自动完成完整的安全审计
– 想要一个独立的密钥管理后台
需要说明的是,该 Skill 依赖 AWS Secrets Manager 这一第三方服务,Skill 本身提供的是流程指导与代码生成能力,真正的密钥存储、加密、访问控制由 AWS 提供。具体支持的功能范围以该 Skill 当前官方说明为准。
Skill 安全评估
总体判断:来自 AWS 官方仓库,来源可信度高,用途本身就是为了提升密钥安全性。但因为它涉及密钥和 AWS 凭证,使用时有几个点需要特别注意。
来源可信度
该 Skill 属于 aws/agent-toolkit-for-aws,由 AWS 官方维护,来源可靠。建议始终从官方仓库获取,不要使用第三方重新发布的版本。
密钥与凭证相关风险
– 该 Skill 的主题就是“创建密钥”。如果用户在与 Agent 交互时直接粘贴真实的数据库密码、API Key、访问令牌,这些内容可能进入对话上下文,存在泄露风险
– 建议让 Agent 生成“创建密钥的方案或命令”,由用户自己在受控环境中执行,而不是把真实密钥交给 Agent 处理
– 如果 Agent 具备执行 Shell 的权限,创建密钥的命令会真正调用 AWS API,请在合适的 AWS 账号和权限范围内操作
权限风险
– 如果 Agent 有 Shell 权限,可以执行 AWS CLI 命令。建议使用权限最小化的 IAM 凭证
– 如果 Agent 有文件写入权限,可能修改代码或配置文件。建议在版本控制下操作,便于回滚
网络访问
创建和管理 AWS Secrets Manager 密钥需要访问 AWS 服务端点,属于正常用途。
降低风险的建议
– 不要向 Agent 粘贴真实生产密钥,用占位符代替
– 关闭 Agent 的自动执行 Shell 权限,改为由用户手动执行创建命令
– 使用最小权限的 IAM 凭证
– 在非生产账号中先验证流程
没有任何 Skill 能保证 100% 安全。是否安全,很大程度取决于用户在其中输入了什么、授予了什么权限。
Skill 使用要求
一、Agent / 客户端
该 Skill 来自 AWS 官方 Agent Toolkit,主要面向支持 Agent Skill 机制的环境。官方没有公布完整的第三方 Agent 兼容列表。
从 Agent Skill 的一般工作方式来看,在支持 Skills、自定义指令或类似机制的 Agent 中通常可以尝试使用,例如 Claude Code、Codex、Cursor、Trae、OpenClaw、WorkBuddy。不同 Agent 的 Skill 加载方式和兼容程度可能不同,具体以对应 Agent 当前版本为准。
二、运行环境 / 依赖
| 项目 | 要求 |
|—|—|
| Agent | 支持 Skill 机制的 Agent |
| AWS 账号 | 实际创建密钥时需要 |
| AWS CLI 或 AWS SDK | 实际调用 Secrets Manager 时需要 |
| 网络 | 需要访问 AWS 服务 |
官方未在本 Skill 中明确列出固定的 Node.js / Python 版本要求。如果 Agent 生成的代码使用了特定 SDK,版本要求以对应 SDK 官方文档为准。
三、权限
– 文件读取:可选,用于查看现有代码中的密钥使用情况
– 文件写入:可选,用于修改代码以引用 Secrets Manager
– Shell:可选,用于执行 AWS CLI 命令
– 网络:实际调用 AWS 时需要
– AWS Secrets Manager 相关 IAM 权限:实际创建密钥时需要
四、账号 / API Key
Skill 本身不需要单独的账号或 API Key。但它操作的目标(AWS Secrets Manager)需要:
– 一个 AWS 账号
– 具备创建和管理密钥权限的 IAM 凭证
– 正确配置的 AWS CLI 或 SDK 环境
最小使用条件
1. 一个可用的 Agent
2. 一个 AWS 账号
3. 配置好的 AWS 凭证(具备 Secrets Manager 权限)
4. 用于访问 AWS 的网络
Skill 安装、使用与卸载教程
一、安装
可以直接复制本页面提供的 Skill 安装指令,粘贴到对应的 Agent 或终端中执行。
如果不知道自己的 Agent 如何安装,可以直接询问当前 Agent:
如何安装 aws/agent-toolkit-for-aws#creating-secrets-using-best-practices?
如何在 Claude Code 中安装 aws/agent-toolkit-for-aws#creating-secrets-using-best-practices?
如何在 Cursor 中安装 aws/agent-toolkit-for-aws#creating-secrets-using-best-practices?
让当前 Agent 根据自己的 Skill 加载或管理机制给出安装方式。不同 Agent 的安装位置和方式可能不同。
二、安装后如何使用
安装后,当你在对话中提到密钥创建、密钥管理、硬编码密钥迁移等任务时,Agent 会按该 Skill 的最佳实践给出方案。
适合交给这个 Skill 的任务:
– 规划如何为应用创建数据库凭证
– 把代码里硬编码的密钥改成从 Secrets Manager 读取
– 了解创建密钥时应遵循的实践
自然语言使用示例:
使用 creating-secrets-using-best-practices,帮我规划一下如何为我的 Node.js 应用创建并存储数据库密码。
使用 creating-secrets-using-best-practices,检查这段代码里的密钥处理方式是否符合 AWS 最佳实践。
使用 creating-secrets-using-best-practices,把这段硬编码 API Key 的代码改成从 AWS Secrets Manager 读取。
三、卸载
不同 Agent 的 Skill 安装位置和管理方式可能不同。如果没有统一的卸载命令,直接询问当前 Agent 通常更稳妥:
如何卸载 aws/agent-toolkit-for-aws#creating-secrets-using-best-practices?
也可以使用对应 Agent 或 Skill 管理器提供的删除方式,找到该 Skill 并移除。
常见问题
这个 Skill 会自动帮我生成密码吗?
它更侧重“如何安全创建和管理密钥”的流程与代码。是否生成具体密码,取决于你给 Agent 的指令和所用 Agent 的能力。真正的密钥存储和管理由 AWS Secrets Manager 完成。
我可以把真实的生产密钥粘贴给 Agent 吗?
不建议。真实密钥一旦进入对话上下文就存在泄露风险。更稳妥的做法是让 Agent 生成方案或命令模板,用占位符代替,由你自己在受控环境中填入真实值并执行。
使用这个 Skill 必须开通 AWS 吗?
如果只是让 Agent 讲解最佳实践或生成代码模板,不一定需要。但一旦要真正创建和管理密钥,就需要 AWS 账号和相应权限。
为什么安装后 Agent 没有按预期使用这个 Skill?
可能原因包括:Agent 未正确加载 Skill、任务描述不够明确、或当前 Agent 版本对 Skill 机制的支持程度不同。可以尝试在请求中明确点名该 Skill,或询问当前 Agent 是否已加载。
这个 Skill 会修改我现有的代码吗?
如果 Agent 具备文件写入权限,并且你要求它修改代码,它可能会改动。建议在版本控制下操作,先查看改动再提交。
它可以用于非 AWS 环境吗?
它的核心是围绕 AWS Secrets Manager 的最佳实践。对于 AWS 之外的环境,可以参考其思路,但具体实现方式不同。