Skip to content

redis-developer/multi-agent-app-spring-ai

Repository files navigation

Multi-Agent App Spring AI � Demo Collection

This repository contains a set of small, focused Spring Boot applications that explore different multi-agent patterns using Spring AI. It is part of a personal learning journey into agentic systems, not an official framework.

The goals for each module are to be:

  • Narrow in scope (one main idea per module)
  • Easy to read, clone, and modify
  • Explicit about orchestration and data flow

As new ideas are explored, additional modules will be added alongside 1-orchestration.

Modules

1. Orchestration (1-orchestration)

Demo that accompanies the article "Building a Multi-Agent Application with Spring AI � Part 1: Orchestration". It focuses on:

  • Explicit orchestration in application code (no agent runtime or graph)
  • Clear, structured contracts between agents
  • Controlled context passing and Redis-backed chat memory
  • A repeatable internal agent pattern (config, service, result, domain contract)

See the module README for details:

  • 1-orchestration/README.md

Future modules

Planned areas for additional demos include:

  • Testability and deterministic agent behavior
  • Observability and tracing across agents
  • Failure handling and recoverability

Each new demo will live in its own numbered submodule (for example, 2-<name>, 3-<name>).

Project structure

multi-agent-app-spring-ai/
├── build.gradle.kts       # Root Gradle configuration
├── settings.gradle.kts    # Multi-module declaration
├── gradle.properties      # Shared versions and project metadata
├── 1-orchestration/       # Demo 1: orchestration-focused multi-agent app
└── [future demo modules]/

Getting started

Prerequisites

  • Java 21
  • Gradle wrapper (included in this repo)
  • Docker (to run Redis via docker compose, optional but recommended)
  • Redis instance (for modules that use chat memory)
  • OpenAI API key and any module-specific credentials (for example, Bluesky for 1-orchestration)

Build all modules

From the repository root:

./gradlew build

Run the orchestration demo

From the repository root:

./gradlew :1-orchestration:bootRun

The application starts in CLI mode, runs the multi-agent pipeline, and prints the final markdown report to the console.

Start Redis with Docker

To start a local Redis instance using Docker Compose (recommended for demos):

docker compose up -d

This uses the docker-compose.yml file at the project root and exposes Redis on localhost:6379.

Adding a new demo module

When you are ready to add another demo:

  1. Create the module directory (for example, 2-your-demo-name/).
  2. Add it to settings.gradle.kts:
    include("2-your-demo-name")
  3. Create 2-your-demo-name/build.gradle.kts with a short description and any extra dependencies.
  4. Add a standard Spring Boot structure under 2-your-demo-name/src/.
  5. Document the module in its own README.md.

Related articles

This repository is the code companion for the article series:

  • "Building a Multi-Agent Application with Spring AI � Part 1: Orchestration" (link to be added)

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages