1. 为ScriptRecommend组件新增customerId参数,支持从父组件传入客户ID 2. 添加动态获取最后一条学员消息的逻辑,从后端API拉取会话历史 3. 为ArchiveMessageEvent类添加Jackson忽略未知属性注解 4. 新增部署文档和项目说明文档AGENTS.md、CLAUDE.md
112 lines
3.9 KiB
Markdown
112 lines
3.9 KiB
Markdown
# Agent Instructions for 九艺AI坐席辅助系统
|
|
|
|
## 部署规则(核心)
|
|
|
|
### ⚠️ 任何代码修改后必须同步服务器部署
|
|
|
|
**无论前端、后台还是后端,任何代码修改完成后,都必须立即同步到服务器并重新部署,绝对不能只做本地修改就结束。**
|
|
|
|
---
|
|
|
|
## 一、前端 Sidebar 部署
|
|
|
|
**模块路径**: `frontend/sidebar/`
|
|
**服务器部署路径**: `/www/wwwroot/deploy-package/frontend/sidebar/`
|
|
**容器名称**: `ai-assistant-sidebar`
|
|
**访问地址**: `https://ai.9artedu.com/sidebar/`
|
|
|
|
### 部署流程
|
|
```bash
|
|
# 1. 本地构建
|
|
cd frontend/sidebar && npm run build
|
|
|
|
# 2. 同步到服务器
|
|
scp -r -o StrictHostKeyChecking=no -i root.pem frontend/sidebar/dist/* root@8.133.162.25:/www/wwwroot/deploy-package/frontend/sidebar/dist/
|
|
|
|
# 3. SSH 登录服务器,重新构建镜像并重启容器
|
|
ssh -o StrictHostKeyChecking=no -i root.pem root@8.133.162.25 << 'EOF'
|
|
cd /www/wwwroot/deploy-package/frontend/sidebar
|
|
docker build -t deploy-package-sidebar .
|
|
docker stop ai-assistant-sidebar
|
|
docker rm ai-assistant-sidebar
|
|
cd /www/wwwroot/deploy-package
|
|
docker-compose up -d sidebar
|
|
EOF
|
|
```
|
|
|
|
---
|
|
|
|
## 二、后台 Admin 部署
|
|
|
|
**模块路径**: `frontend/admin/`
|
|
**服务器部署路径**: `/www/wwwroot/deploy-package/frontend/admin/`
|
|
**容器名称**: `ai-assistant-admin`
|
|
**访问地址**: `https://ai.9artedu.com/admin/`
|
|
|
|
### 部署流程
|
|
```bash
|
|
# 1. 本地构建
|
|
cd frontend/admin && npm run build
|
|
|
|
# 2. 同步到服务器
|
|
scp -r -o StrictHostKeyChecking=no -i root.pem frontend/admin/dist/* root@8.133.162.25:/www/wwwroot/deploy-package/frontend/admin/dist/
|
|
|
|
# 3. SSH 登录服务器,重新构建镜像并重启容器
|
|
ssh -o StrictHostKeyChecking=no -i root.pem root@8.133.162.25 << 'EOF'
|
|
cd /www/wwwroot/deploy-package/frontend/admin
|
|
docker build -t deploy-package-admin .
|
|
docker stop ai-assistant-admin
|
|
docker rm ai-assistant-admin
|
|
cd /www/wwwroot/deploy-package
|
|
docker-compose up -d admin
|
|
EOF
|
|
```
|
|
|
|
---
|
|
|
|
## 三、后端微服务部署
|
|
|
|
**模块路径**: `backend/*-service/`
|
|
**服务器部署路径**: `/www/wwwroot/deploy-package/backend/*-service/`
|
|
**技术栈**: Spring Boot + Docker Compose
|
|
|
|
### 微服务列表
|
|
| 服务名 | 容器名 | 端口 | 部署路径 |
|
|
|--------|--------|------|----------|
|
|
| gateway | ai-assistant-gateway | 8080 | `backend/gateway/` |
|
|
| auth-service | ai-assistant-auth | 8081 | `backend/auth-service/` |
|
|
| archive-service | ai-assistant-archive | 8082 | `backend/archive-service/` |
|
|
| conversation-service | ai-assistant-conversation | 8083 | `backend/conversation-service/` |
|
|
| intent-service | ai-assistant-intent | 8084 | `backend/intent-service/` |
|
|
| recommend-service | ai-assistant-recommend | 8085 | `backend/recommendation-service/` |
|
|
| generation-service | ai-assistant-generation | 8086 | `backend/generation-service/` |
|
|
| kb-admin-service | ai-assistant-kbadmin | 8087 | `backend/kb-admin-service/` |
|
|
| analytics-service | ai-assistant-analytics | 8088 | `backend/analytics-service/` |
|
|
|
|
### 部署流程(以某个服务为例)
|
|
```bash
|
|
# 1. 本地构建 JAR 包(通常在对应服务目录下)
|
|
cd backend/auth-service && mvn clean package -DskipTests
|
|
|
|
# 2. 将 JAR 包同步到服务器的 deploy-package 对应目录
|
|
scp -o StrictHostKeyChecking=no -i root.pem target/*.jar root@8.133.162.25:/www/wwwroot/deploy-package/backend/auth-service/
|
|
|
|
# 3. SSH 登录服务器,重启对应容器
|
|
ssh -o StrictHostKeyChecking=no -i root.pem root@8.133.162.25 << 'EOF'
|
|
cd /www/wwwroot/deploy-package
|
|
docker-compose up -d --build auth-service
|
|
EOF
|
|
```
|
|
|
|
---
|
|
|
|
## 服务器信息
|
|
|
|
- **IP**: `8.133.162.25`
|
|
- **SSH 私钥**: `root.pem`(项目根目录)
|
|
- **部署根目录**: `/www/wwwroot/deploy-package/`
|
|
- **Docker Compose 文件**: `/www/wwwroot/deploy-package/docker-compose.yml`
|
|
- **前端站点**: `https://ai.9artedu.com/sidebar/`
|
|
- **后台站点**: `https://ai.9artedu.com/admin/`
|
|
- **代理**: 宝塔 Nginx → Docker Nginx (8089) → 各容器
|