这个 Skill 能做什么,适合哪些场景?
该技能为 Azure Container Registry 的 Python SDK 提供可直接参考的操作模式。它覆盖仓库、标签和清单的查询、更新与删除,以及清单和 blob 的下载。内容同时提供同步和异步客户端示例,并推荐使用 Microsoft Entra ID 与 DefaultAzureCredential。适合需要在 Python 代码中维护 ACR 内容的开发者,但它不是完整的容器构建、推送或部署指南。
安装并使用 azure-containerregistry Python 包,配置 ACR endpoint 和相关凭据,列出仓库、标签和清单,读取或更新仓库及清单属性,删除仓库、标签或清单,并下载 manifest 与 blob。示例还展示了通过时间和标签状态筛选未使用清单并清理旧镜像。
- Python 开发者需要列出 Azure Container Registry 中的所有仓库和镜像元数据。
- 平台工程师需要锁定生产镜像,禁止删除或写入指定仓库和清单。
- 运维开发者需要删除旧标签,或按 digest 安全删除未标记的清单。
- 高吞吐 Python 服务需要使用异步客户端遍历仓库并下载制品。
- 需要访问公共注册表的开发者需要使用匿名 ContainerRegistryClient。
如何安装这个 Skill?
- 删除仓库或 manifest 的示例可能造成不可逆的数据丢失;生产使用前应增加明确确认、权限检查、备份或恢复策略。
- 示例未固定 azure-containerregistry 和 azure-identity 的兼容版本,也未展示具体 RBAC 权限和异常处理。
- Azure 服务可达性、租户配置和大陆网络条件未在材料中验证。
- Shell / 命令行
- 网络访问
- 本地文件系统
Pythonazure-containerregistryazure-identity
安装技能集合:运行 npx skills add microsoft/skills,在向导中选择需要的技能;技能会安装到所选 Agent 的目录,例如 GitHub Copilot 的 .github/skills/。同时安装该技能示例所需的 Python 包:pip install azure-containerregistry。使用 Entra ID 示例时还需要 azure-identity。
tmp="$(mktemp -d)"
git clone --depth 1 https://github.com/microsoft/skills.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/.github/plugins/azure-sdk-python/skills/azure-containerregistry-py" ~/.claude/skills/
rm -rf "$tmp"根据源仓库地址和 Skill 路径自动生成,只复制这个 Skill 的文件夹。如果上文有作者提供的安装方式,请优先按作者说明操作;想只在当前项目中使用,把 ~/.claude/skills 换成项目里的 .claude/skills。
如何使用这个 Skill?
安装后,把下面任意一句发给 Agent 即可触发:
- 使用 azure-containerregistry 和 ContainerRegistryClient 列出我的 ACR 仓库
- 清理 ACR 中超过 30 天且没有标签的 manifest
在兼容 Agent Skills 的编码代理中,将请求写成例如“使用 azure-containerregistry 和 ContainerRegistryClient 列出我的 ACR 仓库”或“清理 ACR 中超过 30 天且没有标签的 manifest”。代码中设置 AZURE_CONTAINERREGISTRY_ENDPOINT,使用 DefaultAzureCredential,并让同步或异步客户端处于对应的 context manager 中。具体权限配置、完整部署流程和测试套件未在该技能内容中说明。
这个 Skill 有哪些优点和局限?
- 覆盖仓库、标签、manifest 和 blob 下载等常见 ACR 管理操作。
- 同时提供同步与异步客户端模式。
- 明确推荐 DefaultAzureCredential、Entra ID 和确定性的资源清理。
- 包含按 digest 删除和清理未标记旧 manifest 的实践建议。
- 内容聚焦客户端操作,不涵盖镜像构建、推送、部署或完整权限配置。
- 示例依赖 Azure 服务、网络访问和本地文件写入。
- 未提供该技能自身的测试结果或支持的平台清单。
- README 的安装流程面向整个技能集合,单独安装此技能的步骤需要通过向导选择。
这个 Skill 与同类方案有什么区别?
与相关 Skills 并排比较;分数均按同一 FSRS 标准得出。
| Skill | FS 评分 | Star 数 | 最近更新 | License |
|---|---|---|---|---|
| Azure 容器注册表 Python 技能 本页 ✓ Microsoft · 官方 | 53 · 谨慎使用 | ★ 2.7k | 3 个月前 | MIT |
| Azure Key Vault Python SDK 技能 ✓ Microsoft · 官方 | 54 · 谨慎使用 | ★ 2.7k | 3 个月前 | MIT |
| Azure AI 内容安全 Python 技能 ✓ Microsoft · 官方 | 53 · 谨慎使用 | ★ 2.7k | 3 个月前 | MIT |
| Azure 应用配置 Python 技能 ✓ Microsoft · 官方 | 53 · 谨慎使用 | ★ 2.7k | 3 个月前 | MIT |
| Azure Blob Storage Python 技能 ✓ Microsoft · 官方 | 55 · 谨慎使用 | ★ 2.7k | 3 个月前 | MIT |
技能明确区分同步客户端与异步客户端:应在同一调用路径中选择一种模式并保持一致。对于认证,推荐 Microsoft Entra ID;公共注册表场景也可使用匿名访问。
FollowSkills 如何评估这个 Skill?
文档优先推荐 DefaultAzureCredential,并提示生产环境限制凭据链,避免连接字符串和密钥;端点通过环境变量传入,数据流和认证方式基本可见。扣分原因是删除仓库、manifest 和 tag 的示例没有用户确认、备份或回滚方案,清理脚本仍会产生外部破坏性影响;下载 blob 直接写入本地文件,也未说明敏感内容处理、权限最小化或依赖安全。
同步和异步生命周期、凭据清理、主要仓库/tag/manifest 操作及部分防误删建议较一致。扣分原因是示例存在未定义的 endpoint 变量,异常处理、权限错误、分页、重试、网络失败和输入校验没有覆盖;references 明确要求验证当前 API 和错误处理,但未提供实际验证证据。静态评估不支持超过 10 分。
触发词、Python SDK、Azure Container Registry 场景和同步/异步两种模式都写得较清楚,覆盖查询、更新、删除、下载和清理。扣分原因是没有明确非适用边界、所需 Azure 权限、网络/租户前置条件或输出约定;未提供中文使用指导,也没有证明在中国大陆网络和 Azure 区域环境中的可达性。
有结构化安装、环境变量、认证、操作示例、最佳实践、包名、MIT 许可证、作者和 1.0.0 版本,并通过 references 分层补充内容。扣分原因是没有 changelog、维护责任人、更新路径、兼容 SDK 版本、故障排查、FAQ 或明确的版本稳定性说明;部分引用仅要求用户自行核对当前 API。
技能能直接帮助生成常见 Container Registry Python 客户端代码,覆盖核心读取、属性更新、删除、manifest 下载、blob 下载、异步和清理流程,示例通常接近可用。扣分原因是代码片段缺少完整可运行上下文、输入和权限说明,删除流程没有确认或恢复设计,上传能力标题虽出现但实际示例主要是下载;静态读取无法验证 API 正确性。静态上限为 7 分。
仓库提供通用测试 harness、测试代码和 CI/Vally 评估工作流,说明项目存在一定可审计的质量机制;技能自身还提供操作索引和引用文件。扣分原因是给定材料没有该技能专属的 acceptance criteria、测试结果、真实执行记录或第三方交叉验证,因此只能给予有限静态证据分。静态上限为 5 分。
点击维度查看打分理由
证据充分度:低 — 主要依赖静态检查、作者材料或有限演示;适合发现线索,不适合做高风险决策。
查看完整评分方法 →