Skip to content

Guide · Agent skill

How to use the Spring Boot Project Skeleton agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

This skill is a set of instructions that tells an AI coding agent how to create a new Spring Boot Java backend project from scratch. It is aimed at Java developers who want a quick, consistent starting point with common dependencies, database settings and a docker-compose file for Redis, PostgreSQL and MongoDB. After this guide you will know what the skill does, how to install it, how to ask for it in plain language, and what to check before using the result.

Spring Boot Project Skeletongithub/awesome-copilot · MIT

Quick start

  1. 1Install prerequisites. Confirm Java 21, Docker and Docker Compose are installed, and that curl and unzip are available.
  2. 2Download the skill ZIP. Get the create-spring-boot-java-project ZIP from this page.
  3. 3Place the skill. Unzip it into ~/.claude/skills/ for personal use or into .claude/skills/ in a project, or upload it under Settings → Capabilities → Skills in the Claude apps.
  4. 4Make a natural request. Ask the agent to create a new Spring Boot Java project, and give it a project name if you have one.
  5. 5Review the commands. Check the curl, unzip and docker commands the agent proposes, especially the hardcoded settings.
  6. 6Run the tests. Let the agent run ./mvnw clean test to confirm the project builds and the tests pass.
  7. 7Start the services (optional). Run docker-compose up -d and ./mvnw spring-boot:run to start the databases and the app, then docker-compose rm -sf to stop them.

What an agent skill is and what this one does

An agent skill is a folder containing a SKILL.md file. The file holds instructions that an AI agent reads when your request matches the skill's description. This skill's description is 'Create Spring Boot Java Project Skeleton'.

When triggered, the skill tells the agent to walk you through creating a ready-to-run Java project. It downloads a project template from start.spring.io with Lombok, configuration processor, web, data-jpa, PostgreSQL, data-redis, data-mongodb, validation, cache and testcontainers dependencies preselected. It then adds SpringDoc OpenAPI and ArchUnit dependencies, writes Redis, JPA and MongoDB settings into application.properties, creates a docker-compose.yaml with Redis 6, PostgreSQL 17 and MongoDB 8, adds the data folders to .gitignore, and runs ./mvnw clean test.

Install the skill

Download the skill ZIP from this page. Then choose one of two options.

For a personal skill available in all your projects, unzip it into ~/.claude/skills/. For a skill that only applies to one project, unzip it into that project's .claude/skills/ folder. In both cases the result should contain the SKILL.md file.

You can also upload the ZIP in the Claude apps under Settings → Capabilities → Skills.

  • Personal location: ~/.claude/skills/
  • Project location: .claude/skills/ inside your project

Check the requirements before you start

The skill expects several tools to already be on your system. If any are missing, the steps will fail.

  • Java 21 (check with java -version)
  • Docker and Docker Compose
  • curl and unzip command-line tools
  • Internet access to start.spring.io
  • The Maven wrapper (./mvnw) is produced by the template, so you do not install Maven separately
java -version

Trigger the skill with a natural request

You do not need a special command. Describe what you want in plain language that matches the skill's purpose. The agent should then follow the skill's steps and ask for a project name when needed. The skill uses demo-java as the default project name if you do not give one.

Good requests name the goal and the stack, for example: 'Create a new Spring Boot Java project called orders-service with local Redis, PostgreSQL and MongoDB.'

  • 'Start a new Spring Boot backend called inventory-api.'
  • 'Set up a Spring Boot Java project skeleton with local databases.'
  • 'Create a Spring Boot project with docker-compose for Redis, Postgres and Mongo.'

Customise the project before generating it

The skill's instructions allow changes before the template is downloaded. You can change the artifactId and packageName to alter the project name and package. You can change bootVersion to use a different Spring Boot version. The dependency list is also set in the download command, so edit it if you need a different stack.

Ask the agent to make these changes in your request, or edit the skill's SKILL.md before you run it.

  • artifactId: project name (default demo-java)
  • packageName: Java package (default com.example)
  • bootVersion: Spring Boot version (set to 3.4.5 in the skill)
  • dependencies: the comma-separated list of starter names

Review the security settings before any real use

The generated configuration is for local development. The skill hardcodes the password rootroot in application.properties and in docker-compose.yaml for Redis, PostgreSQL and MongoDB. It also sets spring.jpa.show-sql=true and spring.jpa.hibernate.ddl-auto=update. Do not use this output for a production project without changing these values.

The skill runs shell commands and downloads files over the network, including a request to start.spring.io. Read the commands the agent proposes before approving them.

  • Replace hardcoded passwords before sharing or deploying the project
  • Turn off SQL logging and review ddl-auto=update for anything beyond a prototype

Run and verify the project

The skill ends by running the Maven tests to confirm the project works. Optionally, you can start the containers, run the app and stop the containers yourself.

The optional commands start the services with docker-compose up -d, run the app with ./mvnw spring-boot:run, and stop the services with docker-compose rm -sf.

./mvnw clean test docker-compose up -d ./mvnw spring-boot:run docker-compose rm -sf

What people use it for

  • Starting a new Spring Boot service with a consistent baseline for a team
  • Prototyping an app that needs relational, cache and document databases on one machine
  • Generating a Maven project with OpenAPI docs and Testcontainers already in the dependency list
  • Learning how a Spring Boot project is laid out with Redis, JPA and MongoDB configured

Frequently asked questions

Is the Spring Boot Project Skeleton skill free to use?

The skill is published under the MIT licence, as stated on this page. Check the licence file in the source repository if you plan to redistribute it.

What do I need installed to use this skill?

You need Java 21, Docker and Docker Compose, plus the curl and unzip command-line tools and internet access to start.spring.io. Without Java 21, Docker or Docker Compose the steps will fail.

Where do I put the skill so Claude can use it?

Unzip the ZIP into ~/.claude/skills/ for all your projects, or into .claude/skills/ inside one project. You can also upload the ZIP in the Claude apps under Settings → Capabilities → Skills.

Can I change the Spring Boot version or project name?

Yes. The skill lets you change bootVersion to update Spring Boot and artifactId and packageName to rename the project. The skill's default bootVersion is 3.4.5.

Is this safe for production projects?

No. The skill hardcodes the password rootroot in configuration and docker-compose, enables SQL logging and sets ddl-auto=update. It is meant for local development and prototypes.

Why does the agent need to run scripts and use the network?

The skill runs curl to download the project template from start.spring.io, unzip to extract it, and Maven and Docker commands to test and start services. Review each command before approving it.

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 who wants a quick, consistent local Spring Boot baseline with Redis, PostgreSQL and MongoDB, and you already have Java 21 and Docker set up. Pick something else for production projects, for different Spring Boot stacks you do not want to edit, or if you cannot run the commands and Docker setup on your machine.

Download the skill