mcpField
G
graphql

graphql

github.com/sickn33开发48.9k671 次安装1 天前更新
代码仓库

关于 graphql

涵盖 GraphQL 模式设计、解析器、性能、联邦和客户端集成的开发技能,帮助开发者权衡 GraphQL 与 REST,并针对复杂关系和多样客户端需求设计 API。

主要功能

  1. 01模式设计与解析器
  2. 02使用 DataLoader 避免 N+1
  3. 03面向微服务的联邦
  4. 04Apollo 与 urql 客户端集成
  5. 05GraphQL 与 REST 的选型指导

适用场景

  1. 01设计 GraphQL API 模式
  2. 02减少解析器中的 N+1 查询
  3. 03组织跨微服务的 GraphQL
  4. 04通过 Apollo 或 urql 集成客户端

安装

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

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill graphql

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

附带文件references/detailed-guide.md

详细介绍

GraphQL

GraphQL 让客户端准确获取所需的数据——不多也不少。一个端点、类型化 schema、内省。但让它强大的灵活性也让它变得危险。如果没有适当的控制,客户端可以构造出拖垮服务器的查询。

本技能涵盖 schema 设计、解析器、用于防止 N+1 的 DataLoader、用于微服务的联邦,以及与 Apollo/urql 的客户端集成。关键见解:GraphQL 是一种契约。schema 就是 API 文档。要仔细设计。

2025 年的经验教训:GraphQL 并不总是答案。对于简单的 CRUD,REST 更简单。对于高性能的公共 API,带缓存的 REST 更胜一筹。当你拥有复杂的数据关系和多样化的客户端需求时,才使用 GraphQL。

详细指南

在执行本技能之前,请阅读详细指南。它保留了完整的流程和参考资料。将其安全性、前置条件和验证要求视为强制性要求。对于针对性工作,加载相关章节;对于端到端工作,请完整阅读该指南。

何时使用

  • 用户提到或暗示:graphql
  • 用户提到或暗示:graphql schema
  • 用户提到或暗示:graphql resolver
  • 用户提到或暗示:apollo server
  • 用户提到或暗示:apollo client
  • 用户提到或暗示:graphql federation
  • 用户提到或暗示:dataloader
  • 用户提到或暗示:graphql codegen
  • 用户提到或暗示:graphql query
  • 用户提到或暗示:graphql mutation

示例

用户请求:

使用 @graphql 完成此任务:GraphQL 让客户端准确获取所需的数据——不多也不少。

限制

  • 仅当任务明确符合上述范围时,才使用本技能。
  • 不要将输出视为针对特定环境的验证、测试或专家审查的替代品。
  • 如果缺少必需的输入、权限、安全边界或成功标准,请停止并请求澄清。

评论

支持 Markdown