{"id":"ed5e901c-9152-4e60-9937-b712213f3e5a","shortId":"jXZ9LR","kind":"skill","title":"401-frameworks-quarkus-core","tagline":"Use when building or reviewing core Quarkus applications with CDI beans and scopes, SmallRye Config and profiles, lifecycle, interceptors and events, virtual threads, and test-friendly design. This should trigger for requests such as Review Java code for Quarkus application struc","description":"# Quarkus Core Guidelines\n\nApply Quarkus core guidelines for CDI beans, configuration, profiles, and lifecycle.\n\n**What is covered in this Skill?**\n\n- @QuarkusMain and application entry (when custom main is needed)\n- CDI scopes: @ApplicationScoped, @Singleton, @Dependent; bean disambiguation (@Default, @Alternative, @Named)\n- Constructor injection with @Inject\n- CDI interceptors (@Interceptor, @InterceptorBinding) for cross-cutting concerns\n- CDI events: @Observes StartupEvent / ShutdownEvent, @ObservesAsync for async dispatch\n- Programmatic injection with Instance<T> for dynamic bean selection\n- @ConfigMapping and structured configuration with Bean Validation (@Valid)\n- Profile-specific properties (%dev, %test, %prod) and @IfBuildProfile\n- Startup and shutdown observers (@Startup, @PreDestroy)\n- Virtual threads with @RunOnVirtualThread (Java 21+)\n- Native-image safety: @RegisterForReflection, @DisabledOnNativeImage\n\n**Scope:** Apply recommendations based on the reference rules and good/bad code examples.\n\n## Constraints\n\nBefore applying any Quarkus changes, ensure the project compiles. If compilation fails, stop immediately. After applying improvements, run full verification.\n\n- **MANDATORY**: Run `./mvnw compile` or `mvn compile` before applying any change\n- **PREREQUISITE**: Project must compile successfully before applying Quarkus core improvements\n- **SAFETY**: If compilation fails, stop immediately — compilation failure is a blocking condition\n- **BLOCKING CONDITION**: Compilation errors must be resolved by the user before proceeding\n- **VERIFY**: Run `./mvnw clean verify` or `mvn clean verify` after applying improvements\n- **BEFORE APPLYING**: Read the reference for detailed rules, good/bad patterns, and constraints\n\n## When to use this skill\n\n- Review Java code for Quarkus application structure and CDI\n- Apply best practices for Quarkus configuration and beans\n- Improve CDI interceptors, events, or programmatic injection in Quarkus\n- Add virtual-thread configuration or tune CDI lifecycle\n\n## Workflow\n\n1. **Read reference and assess project context**\n\nRead `references/401-frameworks-quarkus-core.md` and inspect the current project setup before proposing changes.\n\n2. **Gather scope and decide target improvements**\n\nIdentify requested outcomes, constraints, and the minimum safe set of changes to apply.\n\n3. **Apply framework-aligned changes**\n\nImplement or refactor configuration/code following the reference patterns and project conventions.\n\n4. **Run verification and report results**\n\nExecute appropriate build/tests and summarize what changed, what was verified, and any follow-up actions.\n\n## Reference\n\nFor detailed guidance, examples, and constraints, see [references/401-frameworks-quarkus-core.md](references/401-frameworks-quarkus-core.md).","tags":["401","frameworks","quarkus","core","cursor","rules","java","jabrena","agent-skills","ai-skills","claude","claude-code"],"capabilities":["skill","source-jabrena","skill-401-frameworks-quarkus-core","topic-agent-skills","topic-ai-skills","topic-claude","topic-claude-code","topic-claude-code-skills","topic-claude-code-subagents","topic-claude-skills","topic-cursor-agent","topic-cursor-ai","topic-cursor-skills","topic-cursorai","topic-github-copilot"],"categories":["cursor-rules-java"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/jabrena/cursor-rules-java/401-frameworks-quarkus-core","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add jabrena/cursor-rules-java","source_repo":"https://github.com/jabrena/cursor-rules-java","install_from":"skills.sh"}},"qualityScore":"0.631","qualityRationale":"deterministic score 0.63 from registry signals: · indexed on github topic:agent-skills · 362 github stars · SKILL.md body (2,796 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-26T12:53:37.579Z","embedding":null,"createdAt":"2026-04-18T22:02:17.970Z","updatedAt":"2026-04-26T12:53:37.579Z","lastSeenAt":"2026-04-26T12:53:37.579Z","tsv":"'/mvnw':187,232 '1':295 '2':313 '21':145 '3':333 '4':350 '401':1 'action':371 'add':285 'align':337 'altern':85 'appli':51,153,166,180,193,202,240,243,268,332,334 'applic':13,46,70,264 'applicationscop':79 'appropri':357 'assess':299 'async':107 'base':155 'bean':16,57,82,115,122,275 'best':269 'block':216,218 'build':8 'build/tests':358 'cdi':15,56,77,91,100,267,277,292 'chang':169,195,312,330,338,362 'clean':233,237 'code':43,162,261 'compil':173,175,188,191,199,208,212,220 'concern':99 'condit':217,219 'config':20 'configmap':117 'configur':58,120,273,289 'configuration/code':342 'constraint':164,253,323,378 'constructor':87 'context':301 'convent':349 'core':5,11,49,53,204 'cover':64 'cross':97 'cross-cut':96 'current':307 'custom':73 'cut':98 'decid':317 'default':84 'depend':81 'design':33 'detail':248,374 'dev':129 'disabledonnativeimag':151 'disambigu':83 'dispatch':108 'dynam':114 'ensur':170 'entri':71 'error':221 'event':26,101,279 'exampl':163,376 'execut':356 'fail':176,209 'failur':213 'follow':343,369 'follow-up':368 'framework':3,336 'framework-align':335 'frameworks-quarkus-cor':2 'friend':32 'full':183 'gather':314 'good/bad':161,250 'guidanc':375 'guidelin':50,54 'identifi':320 'ifbuildprofil':133 'imag':148 'immedi':178,211 'implement':339 'improv':181,205,241,276,319 'inject':88,90,110,282 'inspect':305 'instanc':112 'interceptor':24,92,93,278 'interceptorbind':94 'java':42,144,260 'lifecycl':23,61,293 'main':74 'mandatori':185 'minimum':326 'must':198,222 'mvn':190,236 'name':86 'nativ':147 'native-imag':146 'need':76 'observ':102,137 'observesasync':105 'outcom':322 'pattern':251,346 'practic':270 'predestroy':139 'prerequisit':196 'proceed':229 'prod':131 'profil':22,59,126 'profile-specif':125 'programmat':109,281 'project':172,197,300,308,348 'properti':128 'propos':311 'quarkus':4,12,45,48,52,168,203,263,272,284 'quarkusmain':68 'read':244,296,302 'recommend':154 'refactor':341 'refer':158,246,297,345,372 'references/401-frameworks-quarkus-core.md':303,380,381 'registerforreflect':150 'report':354 'request':38,321 'resolv':224 'result':355 'review':10,41,259 'rule':159,249 'run':182,186,231,351 'runonvirtualthread':143 'safe':327 'safeti':149,206 'scope':18,78,152,315 'see':379 'select':116 'set':328 'setup':309 'shutdown':136 'shutdownev':104 'singleton':80 'skill':67,258 'skill-401-frameworks-quarkus-core' 'smallry':19 'source-jabrena' 'specif':127 'startup':134,138 'startupev':103 'stop':177,210 'struc':47 'structur':119,265 'success':200 'summar':360 'target':318 'test':31,130 'test-friend':30 'thread':28,141,288 'topic-agent-skills' 'topic-ai-skills' 'topic-claude' 'topic-claude-code' 'topic-claude-code-skills' 'topic-claude-code-subagents' 'topic-claude-skills' 'topic-cursor-agent' 'topic-cursor-ai' 'topic-cursor-skills' 'topic-cursorai' 'topic-github-copilot' 'trigger':36 'tune':291 'use':6,256 'user':227 'valid':123,124 'verif':184,352 'verifi':230,234,238,365 'virtual':27,140,287 'virtual-thread':286 'workflow':294","prices":[{"id":"127a68ad-2d82-4f22-9254-05fd4c26a203","listingId":"ed5e901c-9152-4e60-9937-b712213f3e5a","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"jabrena","category":"cursor-rules-java","install_from":"skills.sh"},"createdAt":"2026-04-18T22:02:17.970Z"}],"sources":[{"listingId":"ed5e901c-9152-4e60-9937-b712213f3e5a","source":"github","sourceId":"jabrena/cursor-rules-java/401-frameworks-quarkus-core","sourceUrl":"https://github.com/jabrena/cursor-rules-java/tree/main/skills/401-frameworks-quarkus-core","isPrimary":false,"firstSeenAt":"2026-04-18T22:02:17.970Z","lastSeenAt":"2026-04-26T12:53:37.579Z"}],"details":{"listingId":"ed5e901c-9152-4e60-9937-b712213f3e5a","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"jabrena","slug":"401-frameworks-quarkus-core","github":{"repo":"jabrena/cursor-rules-java","stars":362,"topics":["agent-skills","ai-skills","claude","claude-code","claude-code-skills","claude-code-subagents","claude-skills","cursor-agent","cursor-ai","cursor-skills","cursorai","github-copilot","intellij-idea","java","prompting","system-prompts"],"license":"apache-2.0","html_url":"https://github.com/jabrena/cursor-rules-java","pushed_at":"2026-04-26T12:50:01Z","description":"A curated and opinionated collection of Skills and Agents to be used in modern SDLC workflows for Java Enterprise development with your favorite AI Agent harness.","skill_md_sha":"a269b3a2700eaf494c3e8aa565d58f7ee2249903","skill_md_path":"skills/401-frameworks-quarkus-core/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/jabrena/cursor-rules-java/tree/main/skills/401-frameworks-quarkus-core"},"layout":"multi","source":"github","category":"cursor-rules-java","frontmatter":{"name":"401-frameworks-quarkus-core","license":"Apache-2.0","description":"Use when building or reviewing core Quarkus applications with CDI beans and scopes, SmallRye Config and profiles, lifecycle, interceptors and events, virtual threads, and test-friendly design. This should trigger for requests such as Review Java code for Quarkus application structure and CDI; Apply best practices for Quarkus configuration and beans; Improve CDI interceptors, events, or programmatic injection in Quarkus; Add virtual-thread configuration or tune CDI lifecycle. Part of cursor-rules-java project"},"skills_sh_url":"https://skills.sh/jabrena/cursor-rules-java/401-frameworks-quarkus-core"},"updatedAt":"2026-04-26T12:53:37.579Z"}}