feat: initialize project with BASELINE.md and README.md
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# Project Baseline: AI-Native CRM (Backend)
|
||||
|
||||
## 🏗️ 全局架构 (Global Architecture)
|
||||
本项目是一个 **AI 原生 (AI-Native) CRM** 系统的后端。
|
||||
- **核心理念**:摆脱传统的 REST API 增删改查动作,所有的业务模块定义和数据变更都通过 AI Agent 调用 Tool 实现。
|
||||
- **技术栈**:JDK 19 + Spring Boot 3.2.4 + PostgreSQL。
|
||||
- **关键组件**:
|
||||
- `CrmTools.java`: 系统的“消息枢纽”,包含所有 `@Tool` 方法(Define, Save, Delete),直接与 Repository 交互。
|
||||
- `AgentController.java`: 主要入口,负责处理自然语言指令或业务事实报告。
|
||||
- **隔离机制**:实现了基于 Header `X-Creator-Id` 的简易用户 Session 隔离,所有数据查询和变更均强制绑定 `creatorId`。
|
||||
|
||||
## 💼 业务逻辑 (Business Logic)
|
||||
- **动态模块**:系统支持通过 AI 指令动态创建业务实体(Entities),并在数据库中自动维护。
|
||||
- **AI 优先变更**:禁用了传统的 CRUD REST 接口,强制所有数据变更流经 AI 逻辑,以保证业务意图的记录。
|
||||
|
||||
## 📈 当前开发进度 (Current Progress)
|
||||
- [x] **AI 原生 CRUD**:已实现 Agent 驱动的插入、更新和删除。
|
||||
- [x] **实体关联**:支持通过 `x-link-entity` 扩展 Schema 实现实体间关联选择。
|
||||
- [x] **用户会话隔离**:已完成后端拦截与过滤逻辑,确保多用户数据不串线。
|
||||
- [x] **CORS 配置**:已解决前后端跨域通信问题。
|
||||
|
||||
## ⚠️ 尚未解决的隐患 (Known Issues/Risks)
|
||||
- **并发冲突**:动态 Schema 变更在极高并发下的稳定性待验证。
|
||||
- **权限细化**:目前的 `X-Creator-Id` 仅做基础隔离,缺乏细粒度的 RBAC。
|
||||
|
||||
## 🚀 下一步计划 (Next Steps)
|
||||
1. **AI 增强搜索**:实现通过 AI 生成复杂查询逻辑。
|
||||
2. **仪表盘分析**:开发动态数据的 AI 汇总分析模块。
|
||||
3. **性能监控**:针对 AI Tool 调用的耗时进行埋点监控。
|
||||
|
||||
---
|
||||
*Last Updated: 2026-03-25 by Antigravity*
|
||||
@@ -0,0 +1,49 @@
|
||||
# AI-Native CRM Backend
|
||||
|
||||
🚀 **AI 原生客户关系管理系统 - 后端服务**
|
||||
|
||||
本项目是一个基于 [Spring Boot](https://spring.io/projects/spring-boot) 和 [LangChain4j](https://github.com/langchain4j/langchain4j) 构建的 AI 原生后端系统。
|
||||
|
||||
## 🏗️ 核心理念 (Core Concepts)
|
||||
|
||||
与传统 CRM 不同,本项目完全围绕 **AI Agent** 逻辑构建:
|
||||
- **AI 枢纽 (AI Hub)**:通过 `CrmTools.java` 定义的一系列 `@Tool` 方法,AI Agent 可以直接操作数据库。
|
||||
- **动态实体 (Dynamic Entities)**:支持在运行时通过自然语言指令动态定义新的业务模块。
|
||||
- **免 API 维护**:减少了为每个业务动作手动编写 Controller 的需求,一切数据变更均由 AI 驱动。
|
||||
|
||||
## 🛠️ 技术栈 (Tech Stack)
|
||||
|
||||
- **语言**: Java 19
|
||||
- **框架**: Spring Boot 3.2.4
|
||||
- **持久层**: Spring Data JPA + PostgreSQL
|
||||
- **AI 框架**: LangChain4j 0.30.0
|
||||
- **构建工具**: Maven 3.x
|
||||
|
||||
## 🚀 快速开始 (Quick Start)
|
||||
|
||||
### 前置条件
|
||||
- 已安装 JDK 19 或更高版本。
|
||||
- 本地运行的 PostgreSQL 数据库。
|
||||
- 有效的 AI 模型 API Key(请在环境变量或配置文件中配置)。
|
||||
|
||||
### 运行应用
|
||||
1. 克隆项目并进入 backend 目录。
|
||||
2. 修改 `src/main/resources/application.properties` 配置数据库连接。
|
||||
3. 执行 Maven 命令:
|
||||
```bash
|
||||
mvn clean install
|
||||
mvn spring-boot:run
|
||||
```
|
||||
|
||||
## 📂 项目结构
|
||||
|
||||
- `src/main/java/com/.../crm/controller/AgentController.java`: AI 交互的主入口。
|
||||
- `src/main/java/com/.../crm/tools/CrmTools.java`: AI 直接调用的工具集合。
|
||||
- `src/main/java/com/.../crm/model/SysEntity.java`: 动态实体的元数据定义。
|
||||
- `sql/`: 包含初始化数据库的 SQL 脚本。
|
||||
|
||||
## 📈 当前进度与基准
|
||||
详细的架构和进度记录请参阅:[.antigravity/BASELINE.md](.antigravity/BASELINE.md)
|
||||
|
||||
---
|
||||
*Created by Antigravity*
|
||||
Reference in New Issue
Block a user