mcpField
A
api-doc-generator

api-doc-generator

github.com/full-stack-skills开发292 次安装5 周前更新
代码仓库

关于 api-doc-generator

api-doc-generator 是一项技能,依据权威契约和源码资料编写 API 文档。它帮助开发者盘点端点、解析模式,并区分已确认信息、推断和冲突,避免臆造 API 行为。

主要功能

  1. 01优先使用契约和源码证据
  2. 02构建端点清单
  3. 03解析嵌套及多态模式
  4. 04记录认证、请求和响应
  5. 05标注证据及未解决冲突
  6. 06根据路由和模型校验文档

适用场景

  1. 01依据 OpenAPI 契约编写 API 文档
  2. 02根据框架代码生成端点文档
  3. 03对照路由定义检查文档
  4. 04识别缺乏依据或相互冲突的 API 信息

安装

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

$npx skills add https://github.com/full-stack-skills/document-skills --skill api-doc-generator

安装后在 Claude Code 中输入/api-doc-generator确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

LICENSE.txt
agents/
openai.yaml
assets/templates/
api-documentation-template-en.md
接口文档模板.md
references/
express.md
fastapi.md
gin.md
nestjs.md
openapi-first.md
scan-and-generate-example.md
spring.md
scripts/
inventory_openapi.py
tests/
test_inventory_openapi.py

详细介绍

API 文档生成器

根据权威资料编写 API 文档,并区分已确认事实与推断。

来源优先级

按以下顺序使用可用的最强来源:

  1. 已纳入版本控制的 OpenAPI/Swagger 契约和生成的架构。
  2. 框架路由定义和注解。
  3. 请求/响应模型和验证规则。
  4. 身份验证、中间件、异常处理和错误目录。
  5. 集成测试和契约测试。
  6. 用户明确授权的运行时观察结果。

如果来源之间存在分歧,应报告不一致,而不是默默选取其中一个。

框架路由

仅阅读相关参考资料:

仅在需要完整示例时使用 references/scan-and-generate-example.md。

对于已纳入版本控制的 OpenAPI 文档,在撰写说明前先生成确定性清单:

python3 scripts/inventory_openapi.py path/to/openapi.yaml --output docs/api-inventory.md

除非明确提供 --force,否则脚本不会覆盖已有输出。

工作流

1. 检查
  1. 检测项目框架、模块、现有 API 契约和文档规范。
  2. 根据用户的表述确定请求范围;只有在没有更具体范围时,才推断为整个 API。
  3. 查找路由注册、基础路径、版本前缀、安全中间件、模型、验证器、错误处理和测试。
  4. 识别生成的文件,以免将其误认为事实来源。
2. 建立端点清单

为每个端点记录:

字段要求
方法和路径解析所有前缀和路由组
操作标识处理器/控制器和稳定的操作名称
用途根据代码/注释推导;标明推断
身份验证方案、范围/角色和公开访问例外
请求路径/查询/标头/ Cookie /请求体字段和验证规则
响应状态码、内容类型、架构和包装结构
错误仅记录处理器、中间件、测试或目录支持的错误
依据所使用的契约或源码位置

不得编造示例值、未记录的错误代码、必填标记或响应字段。

3. 解析架构
  • 跟踪嵌套模型引用和泛型响应包装结构。
  • 保留可空性、可选性、枚举、格式、范围和长度约束。
  • 检测分页和列表封装惯例。
  • 明确展示递归或多态架构。
  • 在示例中隐去机密和个人数据。
4. 生成文档

遵循仓库现有规范。如果没有规范,从 assets/templates/ 复制一个模板,并写入 docs/ 下建议的路径。写入前,报告目标路径以及该文件是否已存在。

每个端点都必须包含:

  1. 摘要和证据状态
  2. 方法和完整路径
  3. 身份验证/授权
  4. 参数和请求体
  5. 响应和有依据的错误
  6. 最简有效示例
  7. 源码位置
5. 验证
  • 将文档中的路由与已发现的清单进行比较。
  • 根据验证器/模型核实路径变量和请求字段。
  • 根据代码或契约核实响应和错误状态码。
  • 检查内部链接和锚点。
  • 标明未解决的冲突和推断字段。
  • 除非实际运行过 API,否则不得声称已完成运行时验证。

证据标签

需要明确确定性时,请使用以下标签:

  • 已确认:契约 — 存在于已检入的 API 契约中。
  • 已确认:源码 — 存在于路由/模型/处理程序源码中。
  • 已确认:测试 — 已由测试验证。
  • 推断 — 合理,但未明确说明。
  • 待确认 — 证据冲突或缺失。

完成契约

报告已生成/更新的文件、已记录的端点数量、使用的权威来源、契约/源码不一致之处、推断的字段,以及因证据不足而跳过的端点。

评论

支持 Markdown