SuperAPI AI 工具集

api-patterns

编程与开发

查看项目

更新于 10-15 20:21

技能介绍

API Patterns 是一套 API 设计原则与决策方法技能,定位为 2025 年的 API 设计参考,核心理念是帮助使用者“学会思考”,而不是复制固定模式。

用途 该技能用于在 API 设计过程中提供决策支持,覆盖从 API 风格选型到响应结构、版本演进、认证、限流、文档与安全测试等环节。它强调根据具体上下文选择方案,而非默认套用某一种模式。

主要能力 技能以内容地图的形式组织多个主题文件,每个文件对应特定问题,并标注了何时阅读:

  • api-style.md:REST、GraphQL、tRPC 的决策树,用于选择 API 类型。
  • rest.md:资源命名、HTTP 方法、状态码,用于设计 REST API。
  • response.md:信封模式、错误格式、分页,用于确定响应结构。
  • graphql.md:模式设计、适用场景、安全,用于评估 GraphQL。
  • trpc.md:TypeScript monorepo 与类型安全,用于 TS 全栈项目。
  • versioning.md:URI、Header、Query 版本管理,用于规划 API 演进。
  • auth.md:JWT、OAuth、Passkey、API Keys,用于选择认证模式。
  • rate-limiting.md:令牌桶、滑动窗口,用于 API 保护。
  • documentation.md:OpenAPI/Swagger 最佳实践,用于文档编写。
  • security-testing.md:OWASP API Top 10、认证与授权测试,用于安全审计。

使用方式 技能提出“选择性阅读规则”:只阅读与当前请求相关的文件,先查看内容地图,再定位所需内容。技能还提供决策清单,建议在设计 API 前确认:是否询问过 API 消费者、是否针对当前上下文选择 API 风格、是否定义一致的响应格式、是否规划版本策略、是否考虑认证需求、是否规划限流、是否确定文档方案。

技能附带脚本 scripts/api_validator.py,用于 API 端点验证,命令为:python scripts/api_validator.py <project_path>。

适用场景 适用于需要设计或评审 API 的开发场景,包括选择 REST、GraphQL 或 tRPC、规划响应格式与分页、制定版本策略、选择认证与限流方案、编写 API 文档以及进行 API 安全测试。

限制与反模式 技能明确列出不应做的事:不要默认对所有场景使用 REST;不要在 REST 端点中使用动词(如 /getUsers);不要返回不一致的响应格式;不要向客户端暴露内部错误;不要跳过限流。应当做的事:根据上下文选择 API 风格;询问客户端需求;充分编写文档;使用合适的状态码。

相关技能 技能还指向相关方向:API 实现可参考 @[skills/backend-development],数据结构可参考 @[skills/database-design],安全细节可参考 @[skills/security-hardening]。

其他信息 该技能的官方文本暂未提供,具体实现细节、支持平台与收费方式暂未提供。