Erupt AI Deep LLM Integration
Deep integration with today's popular large language models for low-code AI application development.

Fully Embracing Harness Engineering
| Capability | Description |
|---|---|
| LLM | 19 built-in adapters: ChatGPT, Claude, Gemini, Ollama, Qwen, Doubao, GLM, DeepSeek, Moonshot, MiniMax, Mistral, Grok, Mimo, Fireworks, Together, OpenRouter, OrcaRouter, Requesty, plus an Open AI Adapter for any OpenAI-compatible endpoint |
| Chat | Session management (AiChat), message history (AiChatMessage), SSE streaming output, configurable context rounds (maxContext) |
| Agent | Customizable visual control of prompts; dynamically controllable agent prompt words |
| Tools | Register tools via @AiToolbox + @Tool and call them during conversations; erupt-ai ships EruptUserTools (current user info, roles and menu permissions, server time), and erupt-ai-claw adds EruptModelTools (module list, model list, model schema, plus CRUD over model data driven by structured filter / sort / page parameters) |
| MCP | Supports mounting external MCP Servers for flexible tool capability extension |
| MCP Server | Built-in MCP Server with Bearer authentication; supports direct connection from Cursor / Claude and other clients |
| Knowledge Base (RAG) | Visual knowledge base management: document upload, automatic chunking, vector embedding, semantic retrieval — invoked autonomously by the AI during conversations (Agentic RAG) |
| Vector Store | Pluggable vector store layer supporting Qdrant / Milvus / PGVector / Redis / Memory backends |
| AI Staff | Digital employees bound to system accounts and duty personas; run scheduled tasks and push work reports to DingTalk / Feishu / Slack (extend the StaffChannel abstract class to add your own channel) |
| Security | Built-in strict interface permission control; AI chat capabilities can be dynamically granted through user permissions |
Quick Start
- Add the dependency:
xml
<dependency>
<groupId>xyz.erupt</groupId>
<artifactId>erupt-ai</artifactId>
<version>${erupt.version}</version>
</dependency>- Configuration options:
yaml
erupt:
ai:
# Define the global system prompt
system-prompt: |
You are Erupt AI, skilled at conversations in both Chinese and English. You provide safe, helpful, and accurate answers.
You will refuse to answer any questions involving terrorism, racial discrimination, pornography, violence, etc.
Erupt AI is a proper noun and should not be translated into other languages.
# SSE timeout in milliseconds (default: 15 minutes)
sse-timeout: 900000
# Typing configuration
message-chunk-size: 20
message-delay: 30
# Max sequential tool invocations per chat turn; the ReAct loop aborts beyond this, guarding against runaway tool-call loops
max-sequential-tools-invocations: 30- After startup, the AI Manager menu group is registered automatically: Language Model (LLM), Embedding Model, Connector (MCP), External Agent (A2A), Expert, AI Role and AI Chat — plus Skill once erupt-ai-claw is added:

- Interactive conversation — open it on the right of any page and ask about the data in front of you:

Feature Guide
| Page | Contents |
|---|---|
| Configure LLMs | Add and test models, 19 built-in adapters |
| Chat Workbench | Immersive conversation, multimodal image input, model picker |
| Experts (Preset AI Roles) | Freeze a prompt, model and parameters into a selectable identity; rewrite prompts with EruptPromptHandler |
| Build Custom Tools | Register any Spring Bean method as an AI tool with @AiToolbox + @Tool |
| Authorize Tools by Role | Draw each role's tool boundary and give it its own system prompt |
| Connect External MCP Servers | Mount external MCP Servers to widen the model's toolset |
| Expose Erupt as an MCP Server | Expose erupt's AI Tools so Cursor / Claude Code can connect |
| Inject System Prompts Dynamically | SystemPromptProvider dynamic injection, LlmRequest request-level extensions |
| Connect External Agents (A2A) | Google A2A protocol, automatic discovery and delegation to sub-agents |
| Long-Term Memory | Persistent memory isolated per user |
| AI Writing Assistant for Forms | Generate / polish / continue / shorten / expand form text fields |
Extension Modules
| Module | Description |
|---|---|
| 🦞 Erupt AI Claw | Drive the server with natural language: operate Erupt data, run shell, read/write files, Agent Skills |
| 🎨 Erupt AI Canvas | Generate a page from one sentence, wired live to the Erupt backend |
| 📖 Erupt AI RAG | Knowledge bases with vector retrieval; the AI decides when to query which base (Agentic RAG) |
| 👩💻 Erupt AI Staff | Digital staff: system account + duty persona + cron schedule, reports pushed to DingTalk / Feishu / Slack |