ln-775-api-docs-generator by levnikolaevich/claude-code-skills
npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-775-api-docs-generator类型: L3 工作者 类别: 7XX 项目引导 父级: ln-770-横切设置
使用 Swagger/OpenAPI 配置 API 文档。
| 方面 | 详情 |
|---|---|
| 输入 | 来自 ln-770 的上下文存储 |
| 输出 | Swagger/OpenAPI 配置 |
| 技术栈 | .NET (Swashbuckle), Python (FastAPI 内置) |
接收上下文存储并扫描 API 端点。
所需上下文:
STACK: .NET 或 PythonPROJECT_ROOT: 项目目录路径幂等性检查:
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
AddSwaggerGen 或 UseSwagger{ "status": "skipped" }API 分析:
使用 MCP 工具获取当前文档。
对于 .NET:
MCP ref: "Swashbuckle ASP.NET Core OpenAPI Swagger configuration"
Context7: /domaindrivendev/Swashbuckle.AspNetCore
对于 Python:
MCP ref: "FastAPI OpenAPI documentation customization"
Context7: /tiangolo/fastapi
需研究的关键模式:
| 字段 | 描述 | 必需 |
|---|---|---|
| 标题 | API 名称 | ✓ 是 |
| 版本 | API 版本 (v1, v2) | ✓ 是 |
| 描述 | 简要描述 | 可选 |
| 联系 | 支持联系方式 | 可选 |
| 许可证 | API 许可证 | 可选 |
| 方案 | 用例 | OpenAPI 类型 |
|---|---|---|
| JWT Bearer (推荐) | Authorization 头中的令牌 | http + bearer |
| API Key | 头或查询参数中的密钥 | apiKey |
| OAuth2 | 完整的 OAuth2 流程 | oauth2 |
| 无 | 公共 API | 无安全 |
| 特性 | .NET | Python | 默认 |
|---|---|---|---|
| XML 注释 | ✓ 支持 | 不适用 | ✓ 启用 |
| 响应示例 | ✓ 手动 | ✓ Pydantic | ✓ 启用 |
| 请求验证 | ✓ 注解 | ✓ Pydantic | ✓ 启用 |
| "尝试一下"功能 | ✓ 是 | ✓ 是 | ✓ 启用 |
| 文件 | 用途 |
|---|---|
Extensions/SwaggerExtensions.cs | Swagger 服务注册 |
*.csproj (更新) | 启用 XML 文档 |
生成过程:
要添加的包:
Swashbuckle.AspNetCore注册代码:
builder.Services.AddSwaggerServices();
// ...
app.UseSwaggerServices();
csproj 更新:
<PropertyGroup>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>$(NoWarn);1591</NoWarn>
</PropertyGroup>
| 文件 | 用途 |
|---|---|
core/openapi_config.py | OpenAPI 自定义 |
生成过程:
注意: FastAPI 内置 OpenAPI 支持。此工作者自定义默认配置。
注册代码:
from core.openapi_config import custom_openapi
app.openapi = lambda: custom_openapi(app)
验证步骤:
dotnet build --no-restorepython -m py_compile core/openapi_config.py| 技术栈 | URL |
|---|---|
| .NET | http://localhost:5000/swagger |
| Python | http://localhost:5000/docs |
| Python (ReDoc) | http://localhost:5000/redoc |
# .NET
curl http://localhost:5000/swagger/v1/swagger.json | jq .
# Python
curl http://localhost:5000/openapi.json | jq .
// 仅为结构 - 实际代码通过 MCP ref 生成
options.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme
{
Description = "JWT Authorization header using Bearer scheme",
Name = "Authorization",
In = ParameterLocation.Header,
Type = SecuritySchemeType.Http,
Scheme = "bearer",
BearerFormat = "JWT"
});
# 仅为结构 - 实际代码通过 MCP ref 生成
from fastapi.security import HTTPBearer
security = HTTPBearer()
{
"status": "success",
"files_created": [
"Extensions/SwaggerExtensions.cs"
],
"packages_added": [
"Swashbuckle.AspNetCore"
],
"registration_code": "builder.Services.AddSwaggerServices();",
"message": "Configured Swagger/OpenAPI documentation"
}
GenerateDocumentationFile 更新 csproj 并抑制警告 1591AddSwaggerGen/UseSwagger 存在,返回 status: "skipped"dotnet build 或 py_compile)版本: 2.0.0 最后更新: 2026-01-10
每周安装数
154
仓库
GitHub 星标数
245
首次出现
2026年1月24日
安全审计
安装于
claude-code142
codex139
cursor139
opencode139
gemini-cli138
github-copilot133
Type: L3 Worker Category: 7XX Project Bootstrap Parent: ln-770-crosscutting-setup
Configures API documentation with Swagger/OpenAPI.
| Aspect | Details |
|---|---|
| Input | Context Store from ln-770 |
| Output | Swagger/OpenAPI configuration |
| Stacks | .NET (Swashbuckle), Python (FastAPI built-in) |
Accept Context Store and scan for API endpoints.
Required Context:
STACK: .NET or PythonPROJECT_ROOT: Project directory pathIdempotency Check:
AddSwaggerGen or UseSwagger{ "status": "skipped" }API Analysis:
Use MCP tools for current documentation.
For .NET:
MCP ref: "Swashbuckle ASP.NET Core OpenAPI Swagger configuration"
Context7: /domaindrivendev/Swashbuckle.AspNetCore
For Python:
MCP ref: "FastAPI OpenAPI documentation customization"
Context7: /tiangolo/fastapi
Key Patterns to Research:
| Field | Description | Required |
|---|---|---|
| Title | API name | ✓ Yes |
| Version | API version (v1, v2) | ✓ Yes |
| Description | Brief description | Optional |
| Contact | Support contact | Optional |
| License | API license | Optional |
| Scheme | Use Case | OpenAPI Type |
|---|---|---|
| JWT Bearer (Recommended) | Token in Authorization header | http + bearer |
| API Key | Key in header or query | apiKey |
| OAuth2 | Full OAuth2 flow | oauth2 |
| None | Public API | No security |
| Feature | .NET | Python | Default |
|---|---|---|---|
| XML Comments | ✓ Supported | N/A | ✓ Enable |
| Response Examples | ✓ Manual | ✓ Pydantic | ✓ Enable |
| Request Validation | ✓ Annotations | ✓ Pydantic | ✓ Enable |
| Try It Out | ✓ Yes | ✓ Yes | ✓ Enable |
| File | Purpose |
|---|---|
Extensions/SwaggerExtensions.cs | Swagger service registration |
*.csproj (update) | Enable XML documentation |
Generation Process:
Packages to Add:
Swashbuckle.AspNetCoreRegistration Code:
builder.Services.AddSwaggerServices();
// ...
app.UseSwaggerServices();
csproj Update:
<PropertyGroup>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<NoWarn>$(NoWarn);1591</NoWarn>
</PropertyGroup>
| File | Purpose |
|---|---|
core/openapi_config.py | OpenAPI customization |
Generation Process:
Note: FastAPI has built-in OpenAPI support. This worker customizes the default configuration.
Registration Code:
from core.openapi_config import custom_openapi
app.openapi = lambda: custom_openapi(app)
Validation Steps:
Syntax check:
dotnet build --no-restorepython -m py_compile core/openapi_config.pyAccess documentation:
| Stack | URL |
|---|---|
| .NET | http://localhost:5000/swagger |
| Python | http://localhost:5000/docs |
| Python (ReDoc) | http://localhost:5000/redoc |
Verify content:
OpenAPI spec validation:
# .NET
curl http://localhost:5000/swagger/v1/swagger.json | jq .
# Python
curl http://localhost:5000/openapi.json | jq .
// Structure only - actual code generated via MCP ref
options.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme
{
Description = "JWT Authorization header using Bearer scheme",
Name = "Authorization",
In = ParameterLocation.Header,
Type = SecuritySchemeType.Http,
Scheme = "bearer",
BearerFormat = "JWT"
});
# Structure only - actual code generated via MCP ref
from fastapi.security import HTTPBearer
security = HTTPBearer()
{
"status": "success",
"files_created": [
"Extensions/SwaggerExtensions.cs"
],
"packages_added": [
"Swashbuckle.AspNetCore"
],
"registration_code": "builder.Services.AddSwaggerServices();",
"message": "Configured Swagger/OpenAPI documentation"
}
GenerateDocumentationFile and suppress warning 1591AddSwaggerGen/UseSwagger exists, return status: "skipped"dotnet build or py_compile)Version: 2.0.0 Last Updated: 2026-01-10
Weekly Installs
154
Repository
GitHub Stars
245
First Seen
Jan 24, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
claude-code142
codex139
cursor139
opencode139
gemini-cli138
github-copilot133
lark-cli 共享规则:飞书资源操作指南与权限配置详解
27,500 周安装