开发与工程 ✓ Microsoft · 官方 azure-cosmos-dbtypescriptjavascriptcrudnosql-querybulk-operationspartition-key

Azure Cosmos DB TypeScript 技能

为 TypeScript 和 JavaScript 编码代理提供 Cosmos DB 数据操作模式。

FollowSkills 评估 · FSRS-2.0
不推荐
52/ 100 五分制 2.6 / 5
信任安全15 / 25 · 3.0/5

文档推荐 Microsoft Entra 身份认证、区分数据面与管理面,并将密钥放入环境变量,降低了凭据暴露风险;但 CRUD、批量删除和容器创建示例没有用户确认、最小权限、数据流披露或回滚方案,连接字符串示例也未说明其敏感性,因此扣分。

可靠稳定8 / 20 · 2.0/5

主文档覆盖认证、CRUD、查询、分区键、错误处理和并发控制,异常状态码说明较清晰;但批量 API 在主文档使用 executeBulkOperations,而引用文档使用 bulk,版本和接口一致性无法由静态材料确认,也缺少针对该技能的可执行测试,因此按静态上限保守扣分。

适用触发10 / 15 · 3.3/5

触发词、TypeScript/JavaScript 受众以及数据面与管理面边界较明确,覆盖常见 Cosmos DB 场景;但未充分说明不适用场景、输入输出约束、权限前提和环境限制,也没有中文使用 guidance,因此扣分。

规范维护9 / 15 · 3.0/5

具有 YAML 元数据、安装说明、环境变量、分层主题、引用文档、最佳实践、相关 SDK、MIT 许可证和版本字段;但缺少 changelog、明确维护责任与更新流程、FAQ、已知限制及依赖版本锁定说明,因此扣分。

有效结果6 / 15 · 2.0/5

示例可直接作为 CRUD、查询、分页、批处理和 ETag 实现起点,且参数化查询和错误处理具有实际价值;但批量示例存在 API 不一致,部分代码依赖未定义的上下文(如 generateItems),并未证明结果可直接编译运行,因此扣分。

证据核验4 / 10 · 2.0/5

仓库材料提供通用 CI、评估工作流和测试 harness,具备一定审计线索;但提供的证据未显示该技能专属测试、验收标准或第三方执行结果,关键 SDK 声明仍主要依赖文档自身,故仅给有限静态证据分。

证据充分度: 评估于 2026年7月20日 审查版本 9ccaf7c3704a
使用前请注意
  • 批量操作引用中的 container.items.bulk 与主文档的 executeBulkOperations 不一致;使用前应以锁定版本的官方 SDK 类型和 API 文档核对。
  • 删除、批量写入、容器创建和跨分区查询可能产生不可逆数据或显著成本;文档未规定确认、权限、成本预览或恢复流程。
  • 示例未系统说明 Cosmos endpoint、文档内容、查询结果和遥测数据的敏感性及日志脱敏要求。
  • 未提供该技能专属验收测试或编译验证;不要将示例视为已验证的生产代码。
查看完整评分方法 →

它能做什么 & 适用场景

该技能面向 Azure Cosmos DB NoSQL API 的数据平面操作,使用 @azure/cosmos SDK。它涵盖文档的创建、读取、替换、更新、删除和部分更新,以及参数化查询、分页、跨分区查询和批量操作。内容还包括 Microsoft Entra 身份验证、密钥身份验证、分区键、ETag 并发控制和错误处理。它不负责通过 ARM 创建或管理 Cosmos DB 账户、数据库和容器。

指导编码代理安装 @azure/cosmos 与 @azure/identity,配置 Cosmos endpoint、数据库、容器及认证环境变量;生成 CosmosClient、数据库和容器初始化代码;执行文档 CRUD、Patch、SQL 查询、分页查询、跨分区查询和批量操作;处理 404、409、412、429 等错误;使用简单或层次化分区键、ETag 条件更新,并在关闭时释放客户端。

  1. 为使用 Node.js 和 TypeScript 的后端开发者创建 Cosmos DB 文档服务层。
  2. 为需要参数化 NoSQL 查询和分页读取的应用生成查询代码。
  3. 为批量写入、读取、替换、删除或 Patch 文档的服务设计批量操作。
  4. 为使用 Microsoft Entra 身份验证或密钥身份验证的 Cosmos DB 应用配置客户端。
  5. 为多租户或多层级数据模型设计简单或层次化分区键,并避免不必要的跨分区查询。

优缺点一览

优点
  • 覆盖从客户端初始化到 CRUD、查询、批量操作和并发控制的完整数据平面流程。
  • 同时提供 Microsoft Entra、密钥和连接字符串认证示例。
  • 包含参数化查询、分区键、429 错误和 ETag 等实际开发注意事项。
  • 明确区分数据平面 SDK 与 ARM 管理平面 SDK。
局限
  • 仅针对 JavaScript/TypeScript 的 @azure/cosmos 数据平面操作,不覆盖 ARM 资源管理。
  • 需要 Node.js 20 或更高版本及 Azure Cosmos DB 环境。
  • 源材料未提供该单项技能的独立测试覆盖或运行验证结果。
  • 示例依赖用户自行准备 Cosmos endpoint、数据库、容器和认证信息。

如何安装

在 Copilot CLI 或兼容的技能安装流程中运行:npx skills add microsoft/skills,然后在向导中选择 azure-cosmos-ts。技能会安装到所选编码代理的目录,例如 GitHub Copilot 使用 .github/skills/。也可以从仓库中复制 .github/plugins/azure-sdk-typescript/skills/azure-cosmos-ts/ 目录;源材料未规定其他独立安装器。

如何使用

让编码代理处理包含触发词的任务,例如:“使用 @azure/cosmos 和 TypeScript 为 Cosmos DB 实现带参数化查询、分区键和 429 重试处理的文档服务。”使用前配置 COSMOS_ENDPOINT、COSMOS_DATABASE 和 COSMOS_CONTAINER;采用密钥认证时配置 COSMOS_KEY,使用 DefaultAzureCredential 时按说明配置 AZURE_TOKEN_CREDENTIALS。源材料未提供独立的运行命令或测试命令。

对比同类

与 @azure/arm-cosmosdb 相比,本技能使用 @azure/cosmos 处理文档、查询和存储过程等数据平面操作;@azure/arm-cosmosdb 用于通过 ARM 创建账户、数据库和容器。@azure/identity 用于提供身份验证凭据,而不是执行 Cosmos DB 数据操作。

常见问题

这个技能能创建 Cosmos DB 账户吗?
不能。它覆盖 @azure/cosmos 数据平面操作;账户及其他 Azure 资源管理应使用 @azure/arm-cosmosdb。
必须使用 Microsoft Entra 身份验证吗?
不是。技能推荐 Microsoft Entra Token Credential,也提供 endpoint 加 key 和连接字符串认证方式。
需要哪些运行环境?
源材料要求 Node.js >= 20.0.0,并安装 @azure/cosmos 和 @azure/identity。还需要可访问的 Cosmos DB endpoint 及相应配置。
它是否包含完整的测试套件?
源材料没有说明 azure-cosmos-ts 这一单项技能拥有独立测试套件,因此不能据此确认其测试覆盖。

同仓库的其他 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