Guide · Agent skill
How to use the Create Quarkus Project agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
The create-quarkus-project skill is a set of instructions and reference files that teaches an AI agent how to create a new Quarkus application. It is for Java developers who want a working Quarkus REST service or microservice scaffold without assembling the build files and extension list by hand. After this guide you will know how to install the skill, ask for a project in plain language, and check what the agent generated and how to run it.
Quick start
- 1Download and unzip the skill. Download the skill ZIP from this page and unzip it into ~/.claude/skills/ or into your project's .claude/skills/ folder. You can also upload it under Settings → Capabilities → Skills in the Claude apps.
- 2Check your Java and build tools. Run java -version and either ./mvnw -v or mvn -v, or ./gradlew -v. Use Java 17, 21 or 25.
- 3Ask for a project in plain language. Describe the Quarkus REST API or microservice you want, including the build tool and any features such as a database.
- 4Review the generated project. Check the layout and the quarkus.platform.version in the build file. Confirm the extensions match your request.
- 5Start dev mode. Run ./mvnw quarkus:dev, then open http://localhost:8080/q/dev-ui to see the Dev UI.
- 6Run tests and package. Run ./mvnw verify to test, and ./mvnw package to build target/quarkus-app/quarkus-run.jar.
What is an agent skill, and what does this one do?
An agent skill is a folder containing a SKILL.md file and optional reference files. When your request matches the skill's description, the agent reads these instructions and follows them while it works. This skill covers one task: creating a new Quarkus project with Maven or Gradle, choosing extensions, and running it in dev mode.
Following the skill, the agent checks your Java and build tool setup, picks the recommended Quarkus stream, and generates the project with the Quarkus CLI, the Maven plugin, or a download from code.quarkus.io. It typically adds extensions such as REST with Jackson, Hibernate ORM with Panache and PostgreSQL JDBC, Hibernate Validator, and SmallRye Health. It then explains how to start dev mode, run tests and package the app.
- If the folder already contains a Quarkus project, the agent does not scaffold a new one. It reads the existing Quarkus version and keeps it.
- Quarkus 4.0 is beta, so the agent avoids it unless you ask for it.
- If an extension is missing from the recommended stream, the CLI can silently pick an older stream, so the agent checks quarkus.platform.version in the generated build file.
Install the skill
Download the skill ZIP from this page and unzip it. You can install it in one of two places. For all your projects, unzip it into ~/.claude/skills/. For a single project, unzip it into that project's .claude/skills/ folder. The folder should contain SKILL.md and the references/ directory.
In the Claude apps you can instead upload the skill under Settings → Capabilities → Skills.
- Personal install: ~/.claude/skills/
- Project install: .claude/skills/ inside your project
- Claude apps: Settings → Capabilities → Skills
Prepare your machine
The skill expects a JDK, a build tool, and network access. Check your versions before you start. The source notes that Quarkus 3.40 recommends Java 25, and 3.27 recommends Java 21. Java 17, 21 or 25 are supported.
You can use Maven or Gradle, or the bundled wrapper (./mvnw or ./gradlew). The Quarkus CLI is optional. It can be installed with SDKMAN.
- Java 17, 21 or 25 (JDK)
- Maven or Gradle, or the bundled ./mvnw or ./gradlew wrapper
- Quarkus CLI (optional)
- Internet access to code.quarkus.io and Quarkus release pages
- Docker or Podman for Dev Services database containers
java -version # Java 17, 21 or 25
quarkus --version # optional Quarkus CLI
./mvnw -v || mvn -v # or ./gradlew -vTrigger the skill with a natural request
You do not need to name the skill. Describe what you want in ordinary words. The skill's description mentions scaffolding, bootstrapping and starting a Quarkus application or REST API, so requests like the ones below are the kind it is written for.
Be specific about what the app needs. Name the build tool, the Java version and the features you want, such as a database or health checks. The agent will still choose defaults for anything you leave out.
- "Create a new Quarkus REST API with Maven and Java 21 for managing books."
- "Bootstrap a Quarkus microservice with Gradle, PostgreSQL and health checks."
- "Scaffold a Quarkus application in this folder and show me how to start dev mode."
- "Start a new Quarkus project with Hibernate Panache and Hibernate Validator."
Understand what the agent generates
The skill names the standard layout the agent works with. Application code goes under src/main/java, configuration in src/main/resources/application.properties, container files in src/main/docker/, and tests in src/test/java. Tests use @QuarkusTest, and @QuarkusIntegrationTest for integration tests.
The agent can scaffold with the Quarkus CLI, the Maven plugin, or code.quarkus.io. A CLI command looks like the one below. The agent fills in the group, artifact, extensions and build tool from your request.
- src/main/java: resources, services, entities
- src/main/resources/application.properties: configuration
- src/main/docker/: Dockerfile.jvm, Dockerfile.native and others
- src/test/java: @QuarkusTest and @QuarkusIntegrationTest classes
quarkus create app com.example:demo \
--extension='rest-jackson,hibernate-orm-panache,jdbc-postgresql,hibernate-validator,smallrye-health' \
--java=21 --mavenRun, test and package the app
Start dev mode with the command below. Dev mode gives live reload, the Dev UI at http://localhost:8080/q/dev-ui, Dev Services that start containers automatically, and continuous testing (press r to run tests).
Generated tests include an *IT class that Maven skips by default. Run it with ./mvnw verify -DskipITs=false. Package the app with ./mvnw package, which produces target/quarkus-app/quarkus-run.jar.
./mvnw quarkus:devAdd extensions later
If you need a feature after the project exists, add an extension with the CLI or the Maven wrapper. The skill's extension table lists common choices: rest-jackson for REST and JSON, hibernate-orm-panache with jdbc-postgresql for database access, smallrye-health for health checks, smallrye-openapi for OpenAPI, and container-image-jib for container images. Use quarkus extension list --installable to see options.
quarkus extension add <name>
./mvnw quarkus:add-extension -Dextensions=<name>What people use it for
- Starting a REST API for a book catalogue with Hibernate Panache and PostgreSQL.
- Creating a Gradle-based microservice with health checks and Prometheus metrics.
- Bootstrapping a Quarkus app with OpenAPI and a REST client for calling another service.
- Generating a Quarkus project as a starting point for a team that wants the same extensions and versions.
Frequently asked questions
Is the create-quarkus-project skill free?
The skill is published under the MIT licence in the github/awesome-copilot repository. The source does not state any price, so check the repository for licence terms before you reuse it.
What do I need installed before using this skill?
You need Java 17, 21 or 25 (a JDK), Maven or Gradle or the bundled wrapper, and internet access to code.quarkus.io. The Quarkus CLI is optional. Docker or Podman is needed for Dev Services database containers.
Where do I put the skill files?
Unzip the downloaded ZIP into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder. In the Claude apps you can upload it under Settings → Capabilities → Skills.
Does the skill run scripts or use the network?
Yes. The skill runs scripts and uses the network, because it calls the Quarkus CLI, the Maven plugin or code.quarkus.io and fetches Quarkus release pages. Review the commands the agent runs before approving them.
Will the skill overwrite an existing Quarkus project?
No. If the folder already contains a Quarkus project, the skill tells the agent not to scaffold a new one and to keep the existing Quarkus version.
Does it work for non-Java projects or only Quarkus?
It covers only Quarkus Java projects. For other stacks, or for upgrading existing Quarkus apps, use a different approach; the skill points to the Quarkus update guide and migration guides for upgrades.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use this skill if you are a Java developer starting a new Quarkus REST service or microservice and want a consistent scaffold with recommended extensions, plus clear dev mode and test instructions. Skip it if your project already runs on Quarkus and only needs feature work, if you use a non-Java stack, or if you want to manage the scaffold entirely by hand.
Download the skill