Quarkus Documentation Lookup
Look up Quarkus framework documentation via WebFetch and cross-reference with project-specific
patterns in the ide-sidecar codebase.
Determine the Project's Quarkus Version
Read the project's pom.xml to find the Quarkus platform version:
grep 'quarkus.platform.version' pom.xml | head -1
The version will be something like 3.27.0 — extract the major.minor (e.g., 3.27).
Documentation URL Map
Quarkus guides support version-specific URLs. Always use the project's version:
- Version-specific (preferred):
https://quarkus.io/version/{major.minor}/guides/{guide}
- Latest (fallback):
https://quarkus.io/guides/{guide}
For example, if the project uses Quarkus 3.27.0, use https://quarkus.io/version/3.27/guides/cdi.
| Topic |
Path |
Use For |
| CDI Introduction |
/cdi |
Bean discovery, basic injection, scopes |
| CDI Reference |
/cdi-reference |
@Inject, @ApplicationScoped, @Produces, @Named, qualifiers, interceptors, observers |
| Mutiny Primer |
/mutiny-primer |
Uni<T>, Multi<T> basics, operators, error handling |
| RESTEasy Reactive |
/resteasy-reactive |
JAX-RS endpoints returning Uni<Response>, @Path, @GET/@POST |
| Testing |
/getting-started-testing |
@QuarkusTest, test profiles, injection in tests |
| Configuration |
/config-reference |
application.yml, profile overrides (%dev, %test), @ConfigProperty |
| Vert.x |
/vertx |
Vert.x integration, WebClient, event bus |
| Scheduler |
/scheduler-reference |
@Scheduled for periodic tasks |
| SmallRye Health |
/smallrye-health |
Health check endpoints |
| All Guides Index |
/ |
Finding guides not listed above |
Navigation Strategy
- Determine the project's Quarkus version from
pom.xml (see above)
- Match the user's question to one or more topics from the table above
- Fetch the relevant page(s) using the version-specific URL
(
https://quarkus.io/version/{major.minor}/guides{path}) — use a targeted prompt to extract
only the relevant section (pages can be very large)
- If a question spans topics (e.g., "how to inject a bean in a test"), fetch both pages
- Check project conventions — search the local codebase for existing usage of the pattern
- For questions not clearly in the table, use WebSearch:
site:quarkus.io/guides/ <topic>
Topic Selection Examples
| User asks about… |
Fetch |
| "how does @Inject work?" |
CDI Introduction |
| "@Produces vs @Named" |
CDI Reference |
| "Uni vs Multi, when to use which?" |
Mutiny Primer |
| "how to return async response from endpoint" |
RESTEasy Reactive |
| "QuarkusTest not injecting my bean" |
Testing + CDI Reference |
| "how do profile overrides work?" |
Configuration |
| "Vert.x WebClient usage" |
Vert.x |
Project-Specific Conventions
Rather than duplicating codebase details here, search these key locations to understand how the
project uses Quarkus patterns:
CDI Bean Wiring
- Bean producer classes:
src/main/java/.../application/*BeanProducers.java — this project
wires processor chains using @Produces + @Singleton + @Named in dedicated producer classes.
Read these files for the canonical pattern.
- CDI event qualifiers:
src/main/java/.../events/ — custom qualifiers for connection lifecycle
(@Lifecycle.*, @ServiceKind.*, @ClusterKind.*). Read to understand the observer pattern.
Reactive Patterns
- Mutiny helpers:
src/main/java/.../util/MutinyUtil.java — project-specific utilities for
common Mutiny patterns. Check here before writing new reactive code.
- Processor chain:
src/main/java/.../processors/Processor.java — abstract Chain of
Responsibility base class; chains are wired in the *BeanProducers classes.
Testing
- Test helper:
src/test/java/.../util/SidecarClient.java — reusable client for API and
GraphQL calls in tests.
- Test profiles and mock responses: Search for
@TestProfile and @ConnectWireMock usage in
src/test/java/ to see how existing tests are structured.
- Mock fixtures:
src/test/resources/*-mock-responses/
Configuration
- Application config:
src/main/resources/application.yml — look for %dev and %test profile
overrides and custom ide-sidecar.* namespaces.
Output Format
- Present official docs excerpt alongside project-specific examples from the codebase
- Note gotchas and common mistakes specific to this project's Quarkus usage
- Link back to the guide URL so the user can read further
- When the project already has an established pattern, show the existing code rather than inventing
a new approach
Tips
- Quarkus guide pages can be very large — always use a targeted WebFetch prompt to extract the
relevant section rather than processing the entire page
- When the user asks about reactive patterns, check
MutinyUtil.java first — it likely has a
helper for the common case
- The
%test profile in application.yml overrides many defaults — always check it when debugging
test-specific behavior
- CDI
@Produces methods in this project follow a consistent pattern in *BeanProducers.java —
look there first for examples of wiring new beans
- If a guide URL returns sparse content or a 404, use WebSearch as fallback to find the current URL
1---2name: quarkus-docs3description: Use when the user asks about Quarkus framework APIs, CDI dependency injection, SmallRye Mutiny reactive programming, JAX-RS REST endpoints, Quarkus testing, or application configuration. Triggers on questions like "how does @Inject work", "Uni vs Multi", "Quarkus test profile", "application.yml config", "@ApplicationScoped vs @Singleton", "@Produces bean", "@Observes event", "CDI observer pattern", "Mutiny transform", "Vert.x HTTP client", or "Quarkus guide for X".4---56# Quarkus Documentation Lookup78Look up Quarkus framework documentation via WebFetch and cross-reference with project-specific9patterns in the ide-sidecar codebase.1011## Determine the Project's Quarkus Version1213Read the project's `pom.xml` to find the Quarkus platform version:1415```bash16grep 'quarkus.platform.version' pom.xml | head -117```1819The version will be something like `3.27.0` — extract the major.minor (e.g., `3.27`).2021## Documentation URL Map2223Quarkus guides support version-specific URLs. Always use the project's version:2425- **Version-specific (preferred)**: `https://quarkus.io/version/{major.minor}/guides/{guide}`26- **Latest (fallback)**: `https://quarkus.io/guides/{guide}`2728For example, if the project uses Quarkus 3.27.0, use `https://quarkus.io/version/3.27/guides/cdi`.2930| Topic | Path | Use For |31| ----------------- | -------------------------- | ------------------------------------------------------------------------------------------- |32| CDI Introduction | `/cdi` | Bean discovery, basic injection, scopes |33| CDI Reference | `/cdi-reference` | `@Inject`, `@ApplicationScoped`, `@Produces`, `@Named`, qualifiers, interceptors, observers |34| Mutiny Primer | `/mutiny-primer` | `Uni<T>`, `Multi<T>` basics, operators, error handling |35| RESTEasy Reactive | `/resteasy-reactive` | JAX-RS endpoints returning `Uni<Response>`, `@Path`, `@GET`/`@POST` |36| Testing | `/getting-started-testing` | `@QuarkusTest`, test profiles, injection in tests |37| Configuration | `/config-reference` | `application.yml`, profile overrides (`%dev`, `%test`), `@ConfigProperty` |38| Vert.x | `/vertx` | Vert.x integration, `WebClient`, event bus |39| Scheduler | `/scheduler-reference` | `@Scheduled` for periodic tasks |40| SmallRye Health | `/smallrye-health` | Health check endpoints |41| All Guides Index | `/` | Finding guides not listed above |4243## Navigation Strategy44451. **Determine the project's Quarkus version** from `pom.xml` (see above)462. **Match the user's question to one or more topics** from the table above473. **Fetch the relevant page(s)** using the version-specific URL48 (`https://quarkus.io/version/{major.minor}/guides{path}`) — use a targeted prompt to extract49 only the relevant section (pages can be very large)504. **If a question spans topics** (e.g., "how to inject a bean in a test"), fetch both pages515. **Check project conventions** — search the local codebase for existing usage of the pattern526. **For questions not clearly in the table**, use WebSearch: `site:quarkus.io/guides/ <topic>`5354### Topic Selection Examples5556| User asks about… | Fetch |57| -------------------------------------------- | ----------------------- |58| "how does @Inject work?" | CDI Introduction |59| "@Produces vs @Named" | CDI Reference |60| "Uni vs Multi, when to use which?" | Mutiny Primer |61| "how to return async response from endpoint" | RESTEasy Reactive |62| "QuarkusTest not injecting my bean" | Testing + CDI Reference |63| "how do profile overrides work?" | Configuration |64| "Vert.x WebClient usage" | Vert.x |6566## Project-Specific Conventions6768Rather than duplicating codebase details here, **search these key locations** to understand how the69project uses Quarkus patterns:7071### CDI Bean Wiring7273- **Bean producer classes**: `src/main/java/.../application/*BeanProducers.java` — this project74 wires processor chains using `@Produces` + `@Singleton` + `@Named` in dedicated producer classes.75 Read these files for the canonical pattern.76- **CDI event qualifiers**: `src/main/java/.../events/` — custom qualifiers for connection lifecycle77 (`@Lifecycle.*`, `@ServiceKind.*`, `@ClusterKind.*`). Read to understand the observer pattern.7879### Reactive Patterns8081- **Mutiny helpers**: `src/main/java/.../util/MutinyUtil.java` — project-specific utilities for82 common Mutiny patterns. Check here before writing new reactive code.83- **Processor chain**: `src/main/java/.../processors/Processor.java` — abstract Chain of84 Responsibility base class; chains are wired in the `*BeanProducers` classes.8586### Testing8788- **Test helper**: `src/test/java/.../util/SidecarClient.java` — reusable client for API and89 GraphQL calls in tests.90- **Test profiles and mock responses**: Search for `@TestProfile` and `@ConnectWireMock` usage in91 `src/test/java/` to see how existing tests are structured.92- **Mock fixtures**: `src/test/resources/*-mock-responses/`9394### Configuration9596- **Application config**: `src/main/resources/application.yml` — look for `%dev` and `%test` profile97 overrides and custom `ide-sidecar.*` namespaces.9899## Output Format100101- Present official docs excerpt alongside project-specific examples from the codebase102- Note gotchas and common mistakes specific to this project's Quarkus usage103- Link back to the guide URL so the user can read further104- When the project already has an established pattern, show the existing code rather than inventing105 a new approach106107## Tips108109- Quarkus guide pages can be very large — always use a targeted WebFetch prompt to extract the110 relevant section rather than processing the entire page111- When the user asks about reactive patterns, check `MutinyUtil.java` first — it likely has a112 helper for the common case113- The `%test` profile in `application.yml` overrides many defaults — always check it when debugging114 test-specific behavior115- CDI `@Produces` methods in this project follow a consistent pattern in `*BeanProducers.java` —116 look there first for examples of wiring new beans117- If a guide URL returns sparse content or a 404, use WebSearch as fallback to find the current URL