开发与工程 ✓ Microsoft · 官方 rustazure-cosmos-dbnosqldocument-crudpartition-keysazure-sdk

Azure Cosmos DB Rust 开发技能

帮助 Rust 开发者使用官方 Azure Cosmos DB SDK 构建文档型 NoSQL 应用。

FollowSkills 评估 · FSRS-2.0
不推荐
44/ 100 五分制 2.2 / 5
信任安全13 / 25 · 2.6/5

技能明确限定使用官方 azure_data_cosmos crate,禁止非官方社区 crate,并建议使用托管身份、环境变量和 RBAC,降低依赖与凭据风险;但 CRUD/删除示例没有用户确认、最小权限细分、数据流披露或回滚说明,因此扣分。

可靠稳定6 / 20 · 1.5/5

安装、认证、客户端层级和 CRUD 示例覆盖了主要路径,且错误使用 Result 传播;但没有针对该技能的提交测试、版本锁定、异常输入处理或可诊断失败反馈,部分 API 调用的可编译性也无法静态确认,因此按静态上限保守扣分。

适用触发8 / 15 · 2.7/5

名称、受众、Rust/Cosmos DB 场景和触发词较清晰,覆盖文档 CRUD、容器和分区键;但未声明非适用范围、输入输出边界、查询/分页/重试等场景,也没有中文支持或中国大陆网络可达性说明,因此扣分。

规范维护8 / 15 · 2.7/5

文档结构清楚,包含安装、环境变量、认证、客户端层级、示例、最佳实践、许可证元数据和参考链接;但缺少 SDK 版本策略、变更记录、维护责任与更新流程、故障排查和更多完整示例,因此未给满分。

有效结果5 / 15 · 1.7/5

内容可为常见 Cosmos DB Rust CRUD 编码提供直接起点,并包含补丁操作、密钥认证和 RBAC 提示;但静态材料没有验证代表性代码可运行,也缺少查询、分页、错误恢复和生产配置细节,输出仍可能需要较多审查,因此保守评分。

证据核验4 / 10 · 2.0/5

技能提供 docs.rs、crates.io 和 Azure SDK 源码引用,并明确官方 crate 来源;但没有技能专属测试或已提交执行结果,仓库级测试材料未覆盖该路径的关键行为,因此证据覆盖有限。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 所有结论均来自静态文件阅读,未执行 cargo 构建、示例或测试。
  • 删除示例会产生外部数据变更,但未展示确认、备份或恢复流程。
  • 参考链接和依赖版本未固定;使用前应核对当前 azure_data_cosmos API 与发布版本。
  • 未说明中国大陆网络访问 Azure 服务、crates.io 或 docs.rs 时的可达性与替代方案。
查看完整评分方法 →

它能做什么 & 适用场景

该技能面向通过 Rust 使用 Azure Cosmos DB NoSQL API 的开发者。它覆盖 CosmosClient、数据库和容器客户端,以及带分区键的文档创建、读取、更新、删除和补丁操作。内容还说明 Entra ID 与账户密钥认证、RBAC 角色、区域路由和客户端复用等实践。它适合需要直接编写 Azure Cosmos DB Rust 代码的项目,但不负责资源创建、部署或完整测试套件。

指导代理安装 azure_data_cosmos、azure_identity、serde、serde_json 和 tokio,配置 COSMOS_ENDPOINT,并生成使用 DeveloperToolsCredential 或 ManagedIdentityCredential 的 Rust 认证代码。它展示如何创建 CosmosClient、获取 DatabaseClient 和 ContainerClient,并执行项目级操作、容器访问以及带分区键的项目 CRUD。它还提供 PatchInstructions、key_auth 特性、Cosmos DB 内置数据读取者和数据参与者角色,以及 ProximityTo 区域路由的示例。

  1. Rust 开发者需要把文档写入或读取 Azure Cosmos DB NoSQL 容器时。
  2. 团队需要实现带分区键的项目创建、更新、查询或删除时。
  3. 本地开发需要 DeveloperToolsCredential、生产环境需要托管身份认证时。
  4. 应用需要通过账户密钥认证作为 Entra ID 替代方案时。
  5. 跨区域 Cosmos DB 应用需要将请求路由到邻近区域以降低延迟时。

优缺点一览

优点
  • 提供了可复制的 Cargo 安装命令和 Rust 认证、客户端层级及 CRUD 示例。
  • 明确要求使用官方 azure_data_cosmos crate,并指出常见非官方 crate。
  • 覆盖 Entra ID、账户密钥、RBAC、分区键和区域路由等关键实践。
  • MIT 许可,且属于 Microsoft skills 开源集合。
局限
  • 源材料没有给出该 Rust 技能的专属测试场景或测试覆盖证据。
  • 内容聚焦客户端使用,不涵盖 Cosmos DB 账户、数据库或容器的基础设施部署。
  • 必须配置 Cosmos endpoint,并正确处理认证和分区键。
  • 源材料没有说明 azure_data_cosmos 的具体版本。

如何安装

安装整个技能集合:运行 npx skills add microsoft/skills,并在向导中选择该技能。README 说明技能会安装到所选代理的目录,例如 GitHub Copilot 使用 .github/skills/;源技能位于 .github/plugins/azure-sdk-rust/skills/azure-cosmos-rust/SKILL.md。项目依赖可运行:cargo add azure_data_cosmos azure_identity serde serde_json tokio;若直接使用 azure_core 类型,再运行 cargo add azure_core。

如何使用

在支持 Agent Skills 的编码代理中,使用触发词或明确请求,例如:“在 Rust 中使用 CosmosClient 实现带 partition key 的 Cosmos DB 文档 CRUD”或“为 Rust Cosmos DB 项目配置 key_auth”。配置 COSMOS_ENDPOINT=https://<account>.documents.azure.com/,并使用官方 azure_data_cosmos crate;不要使用 azure_cosmos 或 azure_sdk_for_rust。

对比同类

该技能将账户密钥认证作为 Entra ID 的可选替代方案,并建议本地使用 DeveloperToolsCredential、生产环境使用 ManagedIdentityCredential。它明确区分官方 azure_data_cosmos crate 与 azure_cosmos、azure_sdk_for_rust 等非官方 crate。

常见问题

这个技能是否需要 MCP 或特定代理平台?
SKILL.md 只使用标准 YAML frontmatter、说明文字、Shell 命令和 Rust 示例,没有声明 MCP 或平台专属扩展。
使用 Cosmos DB 必须提供什么配置?
COSMOS_ENDPOINT 是所有操作都需要的环境变量;项目还必须配置 Entra ID 或账户密钥认证。
为什么项目操作总要提供分区键?
SKILL.md 指出 Cosmos DB 的项目 CRUD 操作都需要分区键,因此示例中的创建、读取、更新和删除都会传入它。
该技能是否包含 Azure 资源部署?
不包含。内容集中于 azure_data_cosmos 客户端、认证、容器和项目操作;源材料未提供资源部署流程。

同仓库的其他 Skills

均来自 microsoft/agent-skills

开发与工程 ✓ Microsoft · 官方

Azure Identity Python 认证技能

为 Python Azure 应用提供基于 Microsoft Entra ID 的可复用身份认证指导。

开发与工程 ✓ Microsoft · 官方

Azure Event Hubs Java 开发技能

帮助 Java 开发者构建高吞吐、可 checkpoint 的 Azure 事件流应用。

开发与工程 ✓ Microsoft · 官方

Azure Tables Python 技能

帮助 Python 开发者使用 Azure Tables 完成安全认证、实体管理、查询与批量事务操作。

开发与工程 ✓ Microsoft · 官方

Azure Identity TypeScript

为 TypeScript Azure 应用配置安全、可切换的 Microsoft Entra ID 身份验证。

自动化与运维 ✓ Microsoft · 官方

Azure 应用可靠性顾问

评估并提升 Azure Functions 与 App Service 的可靠性。

开发与工程 ✓ Microsoft · 官方

Azure 云架构师

帮助编码代理按照 Azure 架构中心最佳实践设计和审查生产级云系统。

开发与工程 ✓ Microsoft · 官方

Azure AI 文本分析 Python 技能

为 Python 开发者提供 Azure 文本分析与自然语言处理集成指导。

自动化与运维 ✓ Microsoft · 官方

Azure 资源架构可视化器

分析 Azure 资源组及其依赖关系,生成详细的 Mermaid 架构图。

开发与工程 ✓ Microsoft · 官方

Azure Maps .NET 开发技能

为 .NET 应用提供地理搜索、路线、地图、定位与天气开发指导。

开发与工程 ✓ Microsoft · 官方

Azure AI Vision 图像分析技能

为 Python 编码代理提供 Azure AI Vision 图像理解实现指南。

开发与工程 ✓ Microsoft · 官方

Azure Blob Storage Python 技能

帮助 Python 开发者安全高效地操作 Azure Blob Storage。

开发与工程 ✓ Microsoft · 官方

Azure Queue Storage Python 技能

帮助编码代理使用 Python 构建安全、可靠的 Azure Queue Storage 异步消息处理。

自动化与运维 ✓ Microsoft · 官方

Azure AI 网关治理

用 Azure API Management 统一治理 AI 模型、MCP 工具和智能体流量。

自动化与运维 ✓ Microsoft · 官方

AKS Automatic 就绪评估

评估 Kubernetes 工作负载能否迁移到 AKS Automatic,并定位兼容性阻塞项。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB .NET 资源管理技能

用 .NET 通过 ARM 部署和管理 Azure Cosmos DB 资源。

开发与工程 ✓ Microsoft · 官方

Azure Playwright 工作区管理技能

用 .NET 通过 Azure Resource Manager 配置和管理 Microsoft Playwright Testing 工作区。

开发与工程 ✓ Microsoft · 官方

Azure Cosmos DB Python 技能

帮助 Python 开发者可靠地构建和操作 Azure Cosmos DB NoSQL 应用。

开发与工程 ✓ Microsoft · 官方

Azure Key Vault Python SDK 技能

帮助 Python 编码代理安全管理 Azure Key Vault 中的机密、加密密钥和证书。

开发与工程 ✓ Microsoft · 官方

Azure API Management Python 技能

帮助编码代理使用 Python SDK 管理 Azure API Management 的服务、API、产品、订阅与策略。

开发与工程 ✓ Microsoft · 官方

Azure Monitor 查询 Python 技能

帮助 Python 开发者查询 Azure Monitor 日志与指标。

相关 Skills