spring-cloud-developer
Skill0 starsChanged 17 days agoMITView on GitHub
Designs and implements Spring Cloud features for Java applications. Use when working with Spring Cloud Gateway, centralized configuration, service discovery, service-to-service HTTP clients and resilience, Spring Cloud Stream, contract testing, or when diagnosing Spring Cloud compatibility and runtime behavior. Establish the project's Spring Boot and Spring Cloud versions before giving version-specific guidance.
In this repository6 other files it gives its agents.
- ci-cd-developerSkill
- java-developerSkill
- java-performance-developerSkill
- postgresql-developerSkill
- spring-boot-developerSkill
- spring-sso-developerSkill
The file
We split this skill into the rules it gives an agent
12 rules. About 0 are common, 11 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈11
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 12
Use this skill for distributed-system capabilities provided by Spring Cloud.
- Distinctive: line 16
Before proposing a dependency or API, inspect the build files, dependency management, configuration, and deployment shape.
- Distinctive: line 28
Add only the component needed for a stated operational or architectural requirement.
- Distinctive: line 29
Keep service contracts, domain behavior, persistence, and application-level security in the owning service.
- Distinctive: line 33
Treat configuration sources, forwarded headers, service identities, discovery metadata, and broker messages as trust boundaries.
- Distinctive: line 35
Prefer observable, reversible rollout and configuration changes.
- Distinctive: line 36
Use constructor injection for required dependencies and avoid field injection.
- Very specific: line 38
Prefer Spring Boot's managed starters, auto-configuration, validated @ConfigurationProperties, and built-in test support before adding …
- Distinctive: line 42
Read the project's version and deployment configuration before suggesting changes.
- Distinctive: line 44
Verify dependency coordinates, properties, defaults, and APIs against documentation for the project's release train.
- Distinctive: line 45
Keep configuration typed and validated where application-owned settings are bound.
- Distinctive: line 51
Use the focused references below after establishing the project's exact Spring Boot, Java, and Spring Cloud release-train versions:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Spring Cloud Developer
Use this skill for distributed-system capabilities provided by Spring Cloud. Use spring-boot-developer for application-level Spring Boot structure and features; use this skill for Spring Cloud components and the boundaries between services.
Establish the project
Before proposing a dependency or API, inspect the build files, dependency management, configuration, and deployment shape. Establish:
- Spring Boot and Java versions from the project, not the installed toolchain.
- The Spring Cloud release train managed by the project and whether it is compatible with that Boot line. Check the official Spring Cloud release train compatibility table and the project's BOM; do not infer compatibility from a familiar version number.
- Which Cloud components are already present and the concrete problem each should solve.
- The runtime topology: single process, multiple service instances, gateway, config server, discovery system, broker, and deployment platform as applicable.
- Which service or platform owns each concern, including service identity, authorization, configuration, message delivery, and health reporting.
Preserve the project's existing dependency-management model. Prefer the compatible Spring Cloud BOM and Boot-managed dependencies; do not pin individual Spring Framework, Spring Cloud, or transitive library versions without a demonstrated need.
Design rules
- Add only the component needed for a stated operational or architectural requirement. A monolith does not need discovery or a gateway merely because Spring Cloud offers them.
- Keep service contracts, domain behavior, persistence, and application-level security in the owning service. Cloud infrastructure routes, configures, discovers, or protects traffic; it does not replace those boundaries.
- Make network failure explicit: set timeouts, bound retries and concurrency, use idempotency where requests may be replayed, and define fallback behavior. Avoid retry amplification across gateway and service layers.
- For service-to-service HTTP, prefer the project's established client. Use Boot's HTTP Service Client/
RestClientfor straightforward blocking calls; add Spring Cloud LoadBalancer or OpenFeign only for service-name resolution, client-side instance selection, or a useful declarative client boundary. - For messaging, define delivery, ordering, replay, duplicate handling, and dead-letter ownership explicitly. A binder abstraction does not make broker guarantees identical or provide exactly-once business effects.
- Treat configuration sources, forwarded headers, service identities, discovery metadata, and broker messages as trust boundaries. Apply authentication and authorization at the resource that owns the data or action.
- Design for replicas and partial failure. Identify which state is local, shared, or durable, and verify that routing, sessions, caches, discovery, and messaging behave correctly across instances.
- Prefer observable, reversible rollout and configuration changes. Keep secrets out of source-controlled configuration and constrain management endpoints.
- Use constructor injection for required dependencies and avoid field injection. Do not add Lombok by default; follow an existing project's convention when it already uses Lombok.
- Preserve the application's established web stack. For new servlet applications, Spring MVC is the default; choose Gateway WebFlux or Web MVC from the gateway's actual execution model and do not mix blocking work into reactive event loops.
- Prefer Spring Boot's managed starters, auto-configuration, validated
@ConfigurationProperties, and built-in test support before adding custom infrastructure.
Workflow
- Read the project's version and deployment configuration before suggesting changes.
- State the failure mode or capability being addressed and choose the smallest appropriate Spring Cloud component.
- Verify dependency coordinates, properties, defaults, and APIs against documentation for the project's release train.
- Keep configuration typed and validated where application-owned settings are bound; keep credentials external to the repository.
- Choose the narrowest useful test: unit tests for policy and mapping, binder/test-binder tests for message functions, and integration tests for routing, Config Data, discovery, load balancing, remote failures, broker behavior, and serialization. Cover success and rejection/failure paths. A test binder or mocked client does not prove the real network or broker boundary.
- Build and run relevant tests with the project's wrapper. Report commands and actual results, then document local dependencies and operational assumptions.
Topic map
Use the focused references below after establishing the project's exact Spring Boot, Java, and Spring Cloud release-train versions:
- Compatibility and support windows: version-compatibility.md.
- API gateway and edge routing: gateway.md.
- Externalized and distributed configuration: config.md.
- Service discovery and registry selection: service-discovery.md.
- Service-to-service HTTP clients and client-side load balancing: http-clients.md.
- Timeouts, retries, circuit breakers, and bulkheads: resilience.md.
- Functional messaging, binders, consumer groups, failure handling, and testing: stream.md.
- Producer/consumer HTTP and messaging contracts: contract-testing.md.
- Observability, security, and integration testing are cross-cutting concerns; apply the matching Spring Boot and Spring Security guidance and test the real remote boundary.
For Spring Boot application concerns, see spring-boot-developer. For OAuth2/OIDC and SAML login or federation, see spring-sso-developer.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

