spring-boot-openapi

A set of project rules for documenting a Spring Boot web API with OpenAPI, a standard format for describing API endpoints and metadata. It defines configuration names, API versioning, descriptions, and stable documentation URLs.

In plain words
What is it for?
Use it when adding or reviewing OpenAPI configuration, Swagger UI settings, API metadata, localized titles and descriptions, or specification endpoints in a Spring Boot project.
Why use it?
It keeps API documentation discoverable and consistent across runnable modules. It also ties the displayed API version to the version used in routes.

Cursor rule for Cursor

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add rules/lsampaioweb/ai-instructions/spring-boot-openapi
Clone the repo
git clone --depth 1 https://github.com/lsampaioweb/ai-instructions

Made for: Cursor.

Per session 0 Nothing until a file matches its globs; then the whole rule loads.
When invoked 482 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.00482
Opus 5 $0.00000 $0.00241
Sonnet 5 $0.00000 $0.00096
Haiku 4.5 $0.00000 $0.00048

Measured yesterday against content hash 93df019cd31e, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

spring-boot-openapi scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.cursor/rules/spring-boot-openapi.mdc · 28 lines

What it actually says

Spring Boot OpenAPI Engine

Naming Conventions

  • Name the OpenAPI configuration class OpenApiConfig.
  • Name the @Bean method that creates the OpenAPI bean customOpenAPI().
  • Place OpenApiConfig at the module root or in an openapi sub-package of the feature.

Rules

  • Declare exactly one OpenAPI configuration class per runnable module.
  • Declare OpenApiConfig as a public class.
  • Set info.title to a concise, human-readable module name.
  • Set info.version to the current API version in semantic version format (e.g., 1.0.0).
  • Keep info.version synchronized with the active route version prefix.
  • Set info.description to a one-paragraph summary covering the module's purpose, base URL, and authentication requirements.
  • Resolve info.title and info.description from openapi.* message keys via MessageSource injection.
  • Configure springdoc.swagger-ui.path=/swagger-ui.html in application.yml for a stable, discoverable Swagger UI URL.
  • Configure springdoc.api-docs.path=/api-docs in application.yml for a stable, discoverable OpenAPI spec URL.
  • Define springdoc.swagger-ui.path and springdoc.api-docs.path together in the same change.
  • When an OpenApiConfig component is created or modified, add matching openapi.* keys in all active locale bundles (messages.properties and locale variants) in the same change.
  • Keep the configured springdoc.swagger-ui.path and springdoc.api-docs.path values consistent across base and profile-specific application*.yml files unless a profile-specific override is explicitly required and documented.
  • Apply @Tag and @Operation consistently across all touched endpoints when the module adopts per-endpoint documentation.
  • Keep public schema names and semantics stable; never change them without an explicit versioning decision documented in the same change.
Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 28 lines · 0 tokens per session scan A 93df019cd31e

Subscribe to this mod's changes

spring-boot-openapi is a cursor rule published in the GitHub repository lsampaioweb/ai-instructions (1 stars, last pushed 9d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 482 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.