# Spring AI Alibaba JManus
[](LICENSE)
[](https://openjdk.java.net/)
[](https://spring.io/projects/spring-boot)
[](https://github.com/alibaba/spring-ai-alibaba/stargazers)
π [English](./README.md) | [δΈζ](./README-zh.md)
π Developer Docs: [Quick Start (EN)](./README-dev-en.md) | [εΌεθ
εΏ«ιε
₯ι¨ (δΈζ)](./README-dev.md)
[About](#-about) β’ [Quick Start](#-quick-start) β’ [Contributing](#-contributing)

---
## β¨ About JManus
JManus is a Java implementation of Manus, currently used in many applications within Alibaba Group. It is primarily used for handling exploratory tasks that require a certain degree of determinism, such as quickly finding data from massive datasets and converting it into a single row in a database, or analyzing logs and issuing alerts.
JManus also provides HTTP service invocation capabilities, making it suitable for integration into existing projects. For details, please refer to the developer quick start guide.
## π― JManus Product Features
### π€ **Pure Java Manus Implementation**:
A pure Java multi-agent collaboration implementation that provides a complete set of HTTP call interfaces, suitable for secondary integration by Java developers.

### π οΈ **Plan-Act Mode**:
Allows you to precisely control every execution detail, providing extremely high execution determinism.

### π **MCP Integration**:
Natively supports the Model Context Protocol (MCP) for seamless integration with external services and tools.

### π **Web Interface for Agent Configuration**:
Easily configure agents through an intuitive web management interface without modifying code.

### π **Infinite Context Handling**:
Supports precise extraction of target information from massive content without relying on specific long-context models.

## π Quick Start
Get JManus up and running in under 5 minutes:
### Prerequisites
- π **DashScope API Key** (or alternative AI model provider)
- π³ **Docker** (for containerized deployment) or β **Java 17+** (for source code execution)
### Method 1: Using Docker (Recommended)
#### π³ Using Docker Hub Image
```bash
# Pull the latest develop image
docker pull springaialibaba/jmanus:develop
# Basic startup (temporary data storage)
docker run -d \
--name jmanus \
-p 18080:18080 \
-e DASHSCOPE_API_KEY=your_api_key_here \
springaialibaba/jmanus:develop
# Or start with data persistence (recommended)
docker run -d \
--name jmanus \
-p 18080:18080 \
-e DASHSCOPE_API_KEY=your_api_key_here \
-v $(pwd)/h2-data:/app/extracted/h2-data \
-v $(pwd)/extensions:/app/extracted/extensions \
springaialibaba/jmanus:develop
```
#### π¨π³ Using Alibaba Cloud Image (China Acceleration)
```bash
# Pull Alibaba Cloud accelerated image
docker pull sca-registry.cn-hangzhou.cr.aliyuncs.com/spring-ai-alibaba/jmanus:develop
# Basic startup (temporary data storage)
docker run -d \
--name jmanus \
-p 18080:18080 \
-e DASHSCOPE_API_KEY=your_api_key_here \
sca-registry.cn-hangzhou.cr.aliyuncs.com/spring-ai-alibaba/jmanus:develop
# Or start with data persistence (recommended)
docker run -d \
--name jmanus \
-p 18080:18080 \
-e DASHSCOPE_API_KEY=your_api_key_here \
-v $(pwd)/h2-data:/app/extracted/h2-data \
-v $(pwd)/extensions:/app/extracted/extensions \
sca-registry.cn-hangzhou.cr.aliyuncs.com/spring-ai-alibaba/jmanus:develop
```
#### π§ Advanced Docker Configuration
If you need custom configuration or data persistence:
```bash
# Create data directories
mkdir -p /path/to/jmanus/h2-data
mkdir -p /path/to/jmanus/extensions
# Start with custom configuration (recommended for data persistence)
docker run -d \
--name jmanus \
-p 18080:18080 \
-e DASHSCOPE_API_KEY=your_api_key_here \
-v /path/to/jmanus/h2-data:/app/extracted/h2-data \
-v /path/to/jmanus/extensions:/app/extracted/extensions \
--restart unless-stopped \
springaialibaba/jmanus:develop
```
> π **Data Storage Information**:
> - **H2 Database**: `/app/extracted/h2-data` - Stores application database files
> - **Runtime Data**: `/app/extracted/extensions` - Stores extensions and runtime configurations
> - It's recommended to mount these two directories for data persistence to avoid data loss after container restarts
> π‘ **Image Information**:
> - **Docker Hub Image**: `springaialibaba/jmanus:develop` - Daily automated build and push
> - **Alibaba Cloud Image**: `sca-registry.cn-hangzhou.cr.aliyuncs.com/spring-ai-alibaba/jmanus:develop` - Daily sync, faster access for China users
> - Images support headless Playwright browser functionality
> - Alibaba Cloud image may lag slightly behind Docker Hub version
#### π Access Application
After the container starts, navigate to `http://localhost:18080` in your browser to use JManus.
π **Congratulations!** Your multi-agent system has been quickly deployed via Docker.
---
### Method 2: Running from Source Code
#### 1. Clone and Navigate
```bash
git clone https://github.com/alibaba/spring-ai-alibaba.git
cd spring-ai-alibaba/spring-ai-alibaba-jmanus
```
#### 2. Configure Your API Key
```bash
# Set your DashScope API key
export DASHSCOPE_API_KEY=your_api_key_here
```
> π‘ **Get your DashScope API Key**: Visit [Alibaba Cloud Console](https://bailian.console.aliyun.com/?tab=model#/api-key) to obtain your free API key.
>
> **Using other providers?** Update the configuration in `src/main/resources/application.yml` to use your preferred AI model platform.
#### 3. Database Configuration (Optional)
JManus supports both H2 (default)γMySQL and PostgreSQL databases.
**How To Use MySQL/PostgreSQL**
1. **Configure Database Connection**:
Update the database configuration and JPA database-platform in the application-mysql.yml/application-postgres.yml under 'src/main/resources/':
```yaml
spring:
datasource:
url: your_url
username: your_username
password: your_password
jpa:
database-platform: org.hibernate.dialect.MySQLDialect/PostgreSQLDialect
```
2. **Activate MySQL/PostgreSQL Profile**:
Update configuration in `src/main/resources/application.yml`:
```yaml
spring:
...
profiles:
active: mysql/postgres
```
> π‘ **Note**: The application will automatically create required tables on first startup using JPA's `ddl-auto: update` configuration.
#### 4. Launch the Application
**For Unix-like systems (macOS, Linux):**
```bash
../mvnw spring-boot:run
```
**For Windows systems:**
```bash
../mvnw.cmd spring-boot:run
```
#### 5. Access Your Multi-Agent Dashboard
Navigate to `http://localhost:18080` in your browser.
π **Congratulations!** Your multi-agent system is now live and ready for action.
### π Security Notice
> π‘ **AI Application Security**: As with any AI-powered application in production environments, we recommend implementing appropriate authentication and access controls. For JManus specifically, this includes securing access to model chat interfaces, MCP service configuration, built-in tool management, and system parameter adjustment features to prevent misuse and unauthorized access.
## Stable Release
you can find stable release from here:
[release](https://github.com/rainerWJY/Java-Open-Manus/releases)
## π€ Contributing
We enthusiastically welcome contributions from the developer community! Here's how you can make an impact:
### Contribution Opportunities
You can find available tasks on our [project board](https://github.com/orgs/alibaba/projects/24).
- π **Bug Reports**: [Submit detailed issue reports](https://github.com/alibaba/spring-ai-alibaba/issues)
- π‘ **Feature Requests**: [Propose innovative enhancements](https://github.com/alibaba/spring-ai-alibaba/issues)
- π **Documentation**: Help us improve clarity and completeness
- π§ **Code Contributions**: [Submit pull requests](https://github.com/alibaba/spring-ai-alibaba/pulls) with your improvements
### Development Environment Setup
```bash
# Fork and clone the repository
git clone https://github.com/your-username/spring-ai-alibaba.git
cd spring-ai-alibaba/spring-ai-alibaba-jmanus
# Install project dependencies
mvn clean install
# Apply code formatting standards
mvn spotless:apply
# Start the development server
mvn spring-boot:run
```
### Development Guidelines
- Follow existing code style and conventions
- Write comprehensive tests for new features
- Update documentation for any API changes
- Ensure all tests pass before submitting PRs
---
**Crafted with β€οΈ by the Spring AI Alibaba Team**
β **Star us on GitHub** if JManus accelerated your development journey!