ln-775-api-docs-generator — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited ln-775-api-docs-generator (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Type: L3 Worker Category: 7XX Project Bootstrap
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.AspNetCoreFor Python:
MCP ref: "FastAPI OpenAPI documentation customization"
Context7: /tiangolo/fastapiKey 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:
dotnet build --no-restorepython -m py_compile core/openapi_config.py| Stack | 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 .// 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
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.