1005 lines
50 KiB
Markdown
1005 lines
50 KiB
Markdown
# MEMORY.md - 长期记忆
|
||
|
||
## 项目索引
|
||
|
||
详细项目信息请查看 `PROJECTS.md`,包含启动命令、检查方式、端口分配等。
|
||
|
||
| 项目 | 仓库 | 端口 | 状态 |
|
||
|------|------|------|------|
|
||
| PDF翻译助手 V2 | 本地 | 19000 | ✅ 运行中 |
|
||
| 碎片信息记录 | 本地 | 19009 | ✅ 运行中 |
|
||
| ParamHub Python | 本地 | 19010 | ✅ 运行中 |
|
||
| 项目服务管理面板 | 本地 | 19013 | ✅ 运行中 |
|
||
| 视觉记录系统 | /coder/vision-record | 19016 | ✅ 运行中 |
|
||
| AI Chat App | /coder/ai-chat-app | - | 📦 开发中 |
|
||
| 网页助手插件 | /coder/web-context-extension | - | 📦 已完成 |
|
||
| 磁盘大文件扫描 | 本地 | - | 📦 已完成 |
|
||
|
||
---
|
||
|
||
## ParamHub Python - 参数百科系统
|
||
|
||
**Git仓库**: http://192.168.2.8:12007/coder/param-hub-python
|
||
|
||
### 核心功能架构
|
||
|
||
**1. 参数字段配置系统**
|
||
- 类别层面:基础参数字段(所有子类别共享)
|
||
- 子类别层面:可添加额外参数字段(extra_fields)
|
||
- 字段结构:`{key, label, type, description, required, input_style}`
|
||
- 前端表格列和编辑表单从类别配置动态生成
|
||
|
||
**2. 子类别管理**
|
||
- 内置分类(ai-models、gpus、cpus)支持子类别编辑
|
||
- 子类别有 `key_features`(关键特性字段)和 `extra_fields`(额外参数)
|
||
- 智能添加时可选子类别,解析时包含额外字段
|
||
|
||
**3. 智能添加/补充解析**
|
||
- 上传参数截图(规格表、参数页面)而非产品图
|
||
- AI根据类别字段配置解析参数
|
||
- 支持多次解析,每次来源记录到 `parse_sources` 数组
|
||
- 解析来源记录:`{type, timestamp, images, text, updated_fields}`
|
||
|
||
**4. 子类别分配**
|
||
- AI模型:chat、code、reasoning、vision
|
||
- GPU:datacenter、professional、gaming
|
||
- CPU:server、desktop、mobile
|
||
|
||
**5. 数据字段规范**
|
||
- 所有参数字段统一为文本类型
|
||
- 长文本字段(description等)标记 `input_style: 'long'
|
||
- 发布日期统一格式:YYYY-MM-DD
|
||
|
||
---
|
||
|
||
## 更新日志
|
||
|
||
**必须遵循的工作流程:**
|
||
|
||
1. **开发/修改功能** → 完成代码修改,提交 Git
|
||
2. **自己测试** → 用 curl 或 API 测试,重点测试修改的部分
|
||
3. **有问题自己改** → 修改后再次测试
|
||
4. **确认没问题** → 才回复用户
|
||
|
||
**重要规则:**
|
||
- 优先使用 curl 或 API 测试,快速验证功能
|
||
- 测试通过后才回复用户,不要让用户等待或再提醒
|
||
- 这个流程必须执行,无需用户再次提醒
|
||
|
||
**例外:**
|
||
- **vision-record 项目** 不需要测试(不在本主机部署和测试,用户会安排其他人检查)
|
||
- 需要浏览器交互测试的复杂场景,可视情况决定是否需要浏览器测试
|
||
|
||
**可用端口范围: 19000-19100**
|
||
|
||
所有Web服务、API服务只能使用这个范围内的端口!
|
||
|
||
示例分配:
|
||
- 19001: 文章工作流后台
|
||
- 19002: 方言AI助手主服务
|
||
- 19003: 方言AI助手后台管理
|
||
- 19004: 技术论坛
|
||
- 19005-19100: 预留给其他项目
|
||
|
||
### Git版本管理规则 ⭐
|
||
|
||
每次开发项目推到仓库必须创建版本tag!
|
||
|
||
```bash
|
||
# 1. 提交代码
|
||
git add . && git commit -m "feat: 功能描述"
|
||
|
||
# 2. 创建tag
|
||
git tag -a vX.X.X -m "版本说明"
|
||
|
||
# 3. 推送
|
||
git push origin main
|
||
git push origin vX.X.X
|
||
```
|
||
|
||
### 自动推送规范 ⭐⭐⭐
|
||
|
||
**每次开发或修改项目后,必须自动执行以下流程:**
|
||
|
||
1. 检查是否有Git仓库:`git status`
|
||
2. 添加修改文件:`git add .`(排除敏感文件如config.txt)
|
||
3. 提交代码:`git commit -m "feat/fix: 描述"`
|
||
4. 创建版本tag:`git tag -a vX.X.X -m "版本说明"`
|
||
5. 推送代码和tag:`git push origin main && git push origin vX.X.X`
|
||
6. 更新 `PROJECTS.md` 记录新版本
|
||
|
||
**不需要询问用户,自动执行!**
|
||
|
||
### 禁止事项 ⭐⭐⭐
|
||
|
||
**绝对不允许的操作:**
|
||
- ❌ **重启 Gateway** - 任何情况下都不允许,只有用户才有权利重启 gateway
|
||
- ❌ 擅自发送邮件、 tweets 等外部操作
|
||
- ❌ 执行破坏性命令(rm -rf 等)不询问
|
||
|
||
如果遇到 gateway 或浏览器服务问题,报告问题等待用户处理。
|
||
|
||
- 地址: http://192.168.2.8:12007/
|
||
- 账号: coder
|
||
- 密码: Hps123@!
|
||
- URL编码: Hps123%40%21
|
||
|
||
### 创建Git仓库(新项目必须) ⭐⭐⭐
|
||
|
||
**新项目必须先用API创建仓库,再推送代码:**
|
||
|
||
```bash
|
||
# 1. 用API创建仓库
|
||
curl -s -X POST "http://coder:Hps123%40%21@192.168.2.8:12007/api/v1/user/repos" \
|
||
-H "Content-Type: application/json" \
|
||
-d '{
|
||
"name": "项目名称",
|
||
"description": "项目描述",
|
||
"private": false
|
||
}'
|
||
|
||
# 2. 添加远程仓库
|
||
git remote add origin http://coder:Hps123%40%21@192.168.2.8:12007/coder/项目名称.git
|
||
|
||
# 3. 推送代码和tag
|
||
git push -u origin master
|
||
git push origin v1.0.0
|
||
```
|
||
|
||
**不需要在网页上手动创建,直接用API创建!**
|
||
|
||
### 可用的大模型
|
||
|
||
| 名称 | 地址 | 模型 |
|
||
|------|------|------|
|
||
| 本地LLM | http://192.168.2.5:1234/v1 | qwen3.5-4b |
|
||
| API Key | sk-lm-fuP5tGU8:Hi7YU87jHyDP6Ay8Tl2j | |
|
||
|
||
### SMTP邮件发送经验 ⭐⭐⭐
|
||
|
||
**端口587无SSL的正确做法(mail.tphai.com):**
|
||
```python
|
||
import smtplib
|
||
from email.mime.text import MIMEText
|
||
from email.mime.multipart import MIMEMultipart
|
||
from datetime import datetime
|
||
|
||
server = smtplib.SMTP(host, 587) # 直接连接,不用SMTP_SSL
|
||
server.ehlo()
|
||
server.login(user, pass)
|
||
|
||
msg = MIMEMultipart()
|
||
msg['From'] = user
|
||
msg['To'] = to_addr
|
||
msg['Subject'] = subject
|
||
msg['Date'] = datetime.now().strftime('%a, %d %b %Y %H:%M:%S +0800') # 必须加!
|
||
msg['Reply-To'] = to_addr # 必须加!
|
||
|
||
msg.attach(MIMEText(body, 'plain', 'utf-8'))
|
||
server.sendmail(user, to_addr, msg.as_string())
|
||
server.quit()
|
||
```
|
||
|
||
**关键点(不加会导致邮件丢失):**
|
||
- ✅ 必须加 `msg['Date']` 头 - 部分邮件服务器不接受无Date头的邮件
|
||
- ✅ 必须加 `msg['Reply-To']` 头
|
||
- ✅ 必须调用 `server.ehlo()`
|
||
|
||
**错误做法:**
|
||
- ❌ 使用 `server.starttls()` - 服务器不支持会导致邮件丢失
|
||
- ❌ 使用 `SMTP_SSL(host, 587)` - 587不是SSL端口
|
||
- ❌ 不加 Date 头 - 部分服务器会丢弃
|
||
|
||
**mail.tphai.com 配置:**
|
||
- 主机: mail.tphai.com
|
||
- 端口: 587(无SSL,明文)
|
||
- 用户: favor@tphai.com
|
||
- 密码: favor@!
|
||
|
||
---
|
||
|
||
## 项目索引
|
||
|
||
详细项目信息请查看 `PROJECTS.md`,包含启动命令、检查方式、端口分配等。
|
||
|
||
| 项目 | 仓库 | 端口 | 状态 |
|
||
|------|------|------|------|
|
||
| PDF翻译助手 V2 | 本地 | 19000 | ✅ 运行中 |
|
||
| 碎片信息记录 | 本地 | 19009 | ✅ 运行中 |
|
||
| ParamHub Python | 本地 | 19010 | ✅ 运行中 |
|
||
| 项目服务管理面板 | 本地 | 19013 | ✅ 运行中 |
|
||
| 视觉记录系统 | /coder/vision-record | 19016 | ✅ 运行中 |
|
||
| 网页助手插件 | /coder/web-context-extension | - | 📦 已完成 |
|
||
| 磁盘大文件扫描 | 本地 | - | 📦 已完成 |
|
||
|
||
---
|
||
|
||
## 更新日志
|
||
|
||
- **AI Chat App v3.14.4**:修复API URL拼接问题
|
||
- 前端自动拼接 `/chat/completions` 到后台配置的 API URL
|
||
- 解决后台存储 `https://api.xxx/v1` 但前端需要完整 URL 的问题
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.14.4
|
||
|
||
- **AI Chat App v3.14.3**:修复普通对话不使用后台配置的LLM
|
||
- `/api/config` 现根据 `chat_config.llm_config_id` 获取对应的 LLM 配置
|
||
- 解决原来直接取默认 LLM 配置的问题
|
||
- 后台管理"对话配置"选择的 LLM 现在在前端生效
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.14.3
|
||
|
||
- **AI Chat App v3.14.2**:TTS文本清理优化
|
||
- 语音播放过滤Markdown特殊字符:标题#、列表-*、代码块、链接、粗体斜体等
|
||
- 过滤表情符号(emoji)
|
||
- 过滤引用符号>、分割线等
|
||
- 清理多余空白,保留纯文本内容
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.14.2
|
||
|
||
- **AI Chat App v3.14.1**:TTS流式播放+新对话默认关闭
|
||
- 新建对话(普通对话和智能体对话)默认关闭语音播放
|
||
- AI回复边生成边播放(流式TTS),不等完全生成完
|
||
- 每80字符左右播放一段,智能断句(句子结束符号)
|
||
- 使用队列机制管理播放,顺序播放各段文本
|
||
- 切换对话时自动停止当前播放
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.14.1
|
||
|
||
- **AI Chat App v3.14.0**:AI回复语音播放功能
|
||
- 普通对话和智能体对话支持语音播放(Edge TTS)
|
||
- 对话界面顶部右侧添加语音播放开关按钮(替代原清除按钮)
|
||
- AI消息操作栏添加播放按钮,点击可播放/停止
|
||
- 开启后AI回复完成自动播放
|
||
- 后台管理系统设置添加TTS方案和语音配置
|
||
- 支持多种中文语音(晓晓、云希等)
|
||
- API:POST /api/tts(生成语音),GET /api/tts/voices(语音列表)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.14.0
|
||
|
||
- **AI Chat App v3.13.3**:修复用户信息API路由缺失
|
||
- `/api/user/<int:id>` 只有PUT方法,添加GET方法
|
||
- 前端初始化可正确获取用户信息(包括头像)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.13.3
|
||
|
||
- **AI Chat App v3.13.2**:修复登录用户跨设备头像不同步
|
||
- 初始化时从后台 API `/api/user/<id>` 获取最新用户信息(包括头像)
|
||
- 解决原来只从 localStorage 加载导致换设备头像不更新的问题
|
||
- 同时更新 localStorage 保持离线可用
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.13.2
|
||
|
||
- **AI Chat App v3.13.1**:修复系统设置部分配置项无法保存
|
||
- init_db 添加兼容逻辑,自动检测并插入缺失的系统配置字段
|
||
- 解决旧数据库缺少 app_developer、app_update_date、app_technology、app_description 等字段的问题
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.13.1
|
||
|
||
- **AI Chat App v3.13.0**:我的页面和关于页面绑定后台系统配置
|
||
- 版本号、技术基础、开发者、更新日期从后台管理设置生效
|
||
- 隐私政策、用户协议链接从后台配置读取,点击跳转外部链接
|
||
- 前端加载后台配置后赋值到 CONFIG.system
|
||
- 前端加载后台 LLM 配置(api_url、api_key、model)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.13.0
|
||
|
||
- **AI Chat App v3.12.3**:修复发现智能体搜索bug
|
||
- 搜索功能现在正确过滤基础智能体(basic类别)
|
||
- filterDiscoverAgents 函数添加 basic 类别处理
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.12.3
|
||
|
||
- **AI Chat App v3.12.2**:历史使用记录布局修正
|
||
- 左边:对话标题
|
||
- 右边:智能体名字(带样式标签)
|
||
- 主页最近使用列表同样修正
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.12.2
|
||
|
||
- **AI Chat App v3.12.1**:历史使用记录布局调整
|
||
- 左边:智能体名字(如"代码助手")
|
||
- 右边:对话标题
|
||
- 主页最近使用列表同样调整
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.12.1
|
||
|
||
- **AI Chat App v3.12.0**:智能体对话标题自动更新+历史显示优化
|
||
- 智能体对话初始标题改为"新对话",和普通对话一致
|
||
- 第一次对话和每5次对话自动生成标题(AI总结)
|
||
- 历史使用界面:左边是对话标题,右边显示智能体类型(工作/学习/生活等)
|
||
- 主页最近使用列表同样优化显示智能体类型
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.12.0
|
||
|
||
- **AI Chat App v3.11.0**:用户头像在对话界面正确显示
|
||
- 修改消息渲染逻辑,用户头像使用 currentUser.avatar
|
||
- 普通对话和智能体对话界面都正确显示用户修改的头像
|
||
- AI 头像使用智能体头像(智能体对话)或默认头像(普通对话)
|
||
- 支持图片头像和 emoji 头像的渲染
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.11.0
|
||
|
||
- **AI Chat App v3.10.4**:智能体对话界面工具栏优化
|
||
- 智能体对话不显示工具选择按钮(深度思考、联网搜索、更多工具)
|
||
- 智能体使用的工具由后台管理配置决定
|
||
- 只保留导航按钮(向上/向下滚动)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.10.4
|
||
|
||
- **AI Chat App v3.10.3**:工具选择状态记忆
|
||
- 更多工具弹窗过滤掉联网搜索(已有独立按钮)
|
||
- 所有工具默认未启用状态
|
||
- 普通对话记住上次工具选择(localStorage 'chatEnabledTools')
|
||
- 智能体对话记住该智能体的上次选择(localStorage 'agentEnabledTools_{agentId}')
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.10.3
|
||
|
||
- **AI Chat App v3.10.2**:添加更多工具按钮,支持多选工具
|
||
- 工具栏添加"更多工具"按钮
|
||
- 点击显示工具选择弹窗(从后台配置加载)
|
||
- 支持多选模式,显示选中数量
|
||
- Backend 返回 allTools 供前端选择
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.10.2
|
||
|
||
- **AI Chat App v3.10.1**:系统设置扩展版本信息配置
|
||
- 后台管理新增:应用简介、技术基础、开发者、更新日期配置
|
||
- 后台管理新增:隐私政策链接、用户协议链接配置
|
||
- 前端"关于"页面和"我的"页面底部显示可配置的信息
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.10.1
|
||
- **AI Chat App v3.10.0**:用户头像上传功能
|
||
- Backend 添加头像上传 API(base64 格式)
|
||
- Backend 新增 avatars 目录存储上传的头像
|
||
- 前端编辑资料页面添加上传头像按钮
|
||
- 支持 emoji 预设头像和自定义上传头像
|
||
- 新增 `renderAvatar()` 函数渲染头像(支持 emoji 和图片)
|
||
- API:POST /api/user/{id}/avatar,GET /api/avatars/{filename}
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.10.0
|
||
- **AI Chat App v3.9.2**:修复统计功能
|
||
- LLM 调用完成后记录统计到 backend
|
||
- 搜索调用完成后记录统计到 backend
|
||
- 新增 `logStatsToBackend()` 函数
|
||
- API:POST /api/admin/stats/log
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.9.2
|
||
- **AI Chat App v3.9.1**:后台管理添加查看用户对话记录功能
|
||
- 用户管理页面添加"查看对话"按钮
|
||
- 显示用户对话列表(标题、智能体、消息数、时间)
|
||
- 点击查看对话详情(完整消息内容)
|
||
- 支持删除用户对话记录
|
||
- API:GET /api/user/{id}/conversations/{conv_id}
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.9.1
|
||
- **AI Chat App v3.9.0**:完整数据同步到 backend
|
||
- Backend 新增 `user_agents` 表存储用户智能体配置
|
||
- 初始化时:已登录用户从 backend 加载对话数据
|
||
- 初始化时:已登录用户从 backend 加载智能体配置(myAgents、favoriteAgents、pinnedAgents)
|
||
- 添加/移除/置顶/收藏智能体同步到 backend
|
||
- API:/api/user/{id}/agents(增删改查)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.9.0
|
||
- **AI Chat App v3.8.2**:修复用户数据同步逻辑
|
||
- 创建新对话时先调用 backend API 获取 ID
|
||
- 发送消息后同步当前对话到 backend
|
||
- 登录时保存完整用户数据
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.8.2
|
||
- **AI Chat App v3.8.1**:修复对话创建同步逻辑
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.8.1
|
||
- backend 新增 conversations 表存储用户对话数据
|
||
- 对话创建/更新/删除同步到 backend
|
||
- 登录后自动从 backend 加载对话数据
|
||
- 用户资料修改同步到 backend
|
||
- API:/api/user/{id}/conversations(GET/POST/PUT/DELETE)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.8.0
|
||
- **AI Chat App v3.7.1**:隐藏注册页面验证码功能
|
||
- 暂时跳过验证码验证
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.7.1
|
||
- **AI Chat App v3.7.0**:后台管理添加用户管理功能
|
||
- backend 新增 users 表存储用户注册信息
|
||
- 用户注册登录改为调用 backend API(从 localStorage 改为 SQLite)
|
||
- 后台管理界面新增用户管理页面
|
||
- 用户管理支持搜索、编辑、重置密码、删除
|
||
- 注册添加手机号验证码功能(模拟)
|
||
- API:/api/register、/api/login、/api/admin/users
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.7.0
|
||
- **AI Chat App v3.6.3**:修复智能体历史使用记录逻辑
|
||
- 只显示真正有对话消息的智能体记录(messages.length > 0)
|
||
- 修复点击打开智能体就记录"使用"的问题
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-app v3.6.3
|
||
|
||
### 2026-04-27
|
||
- **ParamHub Python v1.7.1**:子类别管理界面重构
|
||
- 添加子类别编辑弹框,可视化增删改
|
||
- 子类别列表以卡片样式显示,hover显示操作按钮
|
||
- 表单输入关键特性字段(逗号分隔)和标签(字段:显示名)
|
||
- 替换原来的JSON文本编辑方式,更直观易用
|
||
- Git仓库: http://192.168.2.8:12007/coder/param-hub-python v1.7.1
|
||
- **ParamHub Python v1.7.0**:支持子类别配置和关键特性显示
|
||
- 类别数据结构新增 subcategories 字段
|
||
- 每个子类别可定义 key_features(关键特性字段)和 feature_labels(标签显示名)
|
||
- 前端模型页面添加子类别选择器,切换显示不同特性
|
||
- 表格根据子类别动态显示关键特性列
|
||
- 后台管理支持编辑子类别配置(JSON格式)
|
||
- 预设子类别:对话模型、代码模型、推理模型、视觉模型等
|
||
- Git仓库: http://192.168.2.8:12007/coder/param-hub-python v1.7.0
|
||
- **ParamHub Python v1.6.0**:后台管理添加大模型接口配置功能
|
||
- 网站配置页面新增 LLM 配置区域
|
||
- 支持配置 API 地址、API Key、文本模型、视觉模型
|
||
- LLM 配置从 config.json 动态读取,无需修改代码
|
||
- Git仓库: http://192.168.2.8:12007/coder/param-hub-python v1.6.0
|
||
- **ParamHub Python v1.5.0**:多图上传和智能解析产品参数
|
||
- 所有类别(模型/GPU/CPU/动态分类)支持上传图片解析
|
||
- 支持一次上传多张图片
|
||
- AI智能解析可能识别出多个产品
|
||
- 新增 `/api/parse-images` API 预览解析结果
|
||
- 智能添加弹窗支持图片上传和粘贴
|
||
- 配置 LLM Proxy 视觉模型:Qwen/Qwen2-VL-72B-Instruct
|
||
- Git仓库: http://192.168.2.8:12007/coder/param-hub-python v1.5.0
|
||
|
||
### 2026-04-26
|
||
- **AI对话系统 v3.1.0**:UI重构 - 历史对话列表页
|
||
- 首页改为历史对话列表页(而非侧边栏)
|
||
- 新建对话按钮放在右上角
|
||
- 历史对话列表支持删除操作
|
||
- 点击对话进入具体对话页面
|
||
- 对话页面有返回按钮回到列表
|
||
- API新增 message_count 字段
|
||
- API新增 GET /api/conversations/{id} 获取详情
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v3.1.0
|
||
|
||
### 2026-04-24
|
||
- **Xian Favor v4.6.3**:修复Markdown显示开关切换失效
|
||
- 改用 data-raw-content 属性存储原始内容
|
||
- toggleMarkdownDisplay 从 data 属性读取内容
|
||
- 解决 onclick 传递字符串时换行符导致的问题
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.6.3
|
||
- **Xian Favor v4.6.2**:详情弹框Markdown显示开关
|
||
- 内容和备注区域添加Markdown格式显示开关
|
||
- 开关状态保存到localStorage,全局生效
|
||
- 关闭Markdown时显示原始文本格式
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.6.2
|
||
- **Xian Favor v4.6.1**:统计卡片一行显示+列表上方翻页
|
||
- 统计信息改为一行横向badge显示(总条目/待处理/进行中/已完成)
|
||
- 数据列表上方增加翻页操作(显示总数+简洁翻页)
|
||
- 多页时顶部和底部同时显示翻页
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.6.1
|
||
- **Xian Favor v4.6.0**:置顶功能
|
||
- 数据库新增 is_pinned 字段,兼容旧数据库自动添加
|
||
- 所有类别数据支持一键设置/取消置顶
|
||
- 置顶数据优先级最高(置顶 > 关注 > 创建时间)
|
||
- 卡片显示置顶标记(📌图标)和特殊样式(蓝色边框)
|
||
- API新增 /api/items/<id>/pin 接口切换置顶状态
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.6.0
|
||
|
||
### 2026-04-23
|
||
- **项目服务管理面板 v3.3.1**:进程列表显示开关
|
||
- 新增"显示进程列表"复选框开关
|
||
- 默认不显示,需手动勾选
|
||
- 只有实时监控开启且开关勾选时才显示
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v3.3.1
|
||
- **项目服务管理面板 v3.3.0**:实时监控显示进程列表
|
||
- 开启实时监控后显示CPU占用最高的进程
|
||
- 显示进程PID、名称、CPU%、内存%、启动时间、命令行
|
||
- 可设置显示数量(5/10/15/20/30)
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v3.3.0
|
||
- **项目服务管理面板 v3.2.0**:邮件通知规则多种触发机制
|
||
- 一次性触发:超过阈值立即通知
|
||
- 连续触发:连续超过阈值N次才通知
|
||
- 持续时间触发:累计超过阈值N秒才通知
|
||
- 平均值触发:最近N次采样平均值超过阈值才通知
|
||
- 规则列表显示触发类型(闪电图标)
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v3.2.0
|
||
- **项目服务管理面板 v3.1.0**:邮件通知规则静默时间区间
|
||
- 可设置静默时间段(如23:00-08:00)
|
||
- 支持跨午夜时间段
|
||
- 静默期间不发送邮件通知
|
||
- 规则列表显示静默时间(月亮图标)
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v3.1.0
|
||
- **项目服务管理面板 v3.0.0**:邮件通知规则功能
|
||
- 支持添加多条邮件通知规则
|
||
- 规则配置:监控资源(CPU/内存/磁盘)、阈值、收件邮箱、通知间隔
|
||
- 超过阈值自动发送邮件通知
|
||
- 规则可启用/禁用、编辑、删除
|
||
- 设置保存到localStorage
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v3.0.0
|
||
- **项目服务管理面板 v2.9.1**:修复多次JavaScript语法错误
|
||
- 变量声明顺序问题(TDZ)
|
||
- desktopNotifyEnabled重复声明
|
||
- \n换行符转义问题
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel
|
||
- **项目服务管理面板 v2.9.0**:系统桌面通知功能
|
||
- 浏览器外系统通知(Notification API)
|
||
- 超过阈值时在系统右下角弹出通知
|
||
- 需用户授权通知权限
|
||
- 点击通知聚焦浏览器窗口
|
||
- 设置保存到localStorage
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v2.9.0
|
||
- **项目服务管理面板 v2.8.0**:系统资源阈值监控和弹窗警告
|
||
- 阈值设置:CPU/内存/磁盘使用率阈值(可调整)
|
||
- 警告间隔设置:10-300秒
|
||
- 超过阈值时浏览器弹窗警告(右上角红色通知)
|
||
- 阈值对实时监控和主页刷新都有效
|
||
- 设置保存到localStorage
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v2.8.0
|
||
- **项目服务管理面板 v2.7.0**:实时监控频率可调节
|
||
- 频率选择:1秒/2秒/3秒/5秒/10秒
|
||
- 实时监控时显示绿色闪烁指示器
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v2.7.0
|
||
- **项目服务管理面板 v2.6.0**:系统资源实时监控功能
|
||
- 实时监控开关按钮(默认关闭)
|
||
- 开启后每2秒自动刷新数据
|
||
- 网络流量显示实时双向网速(上传/下载 KB/s 或 MB/s)
|
||
- 切换Tab时自动关闭实时监控
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v2.6.0
|
||
- **项目服务管理面板 v2.5.0**:添加系统资源监控Tab
|
||
- CPU/内存/磁盘/网络使用率实时显示
|
||
- 系统运行时间、启动时间、进程数
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v2.5.0
|
||
- **项目服务管理面板 v2.4.0**:筛选按钮改为顶部横向显示
|
||
- 带图标+文字,清晰明了
|
||
- sticky固定顶部,滚动时保持可见
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v2.4.0
|
||
- **项目服务管理面板 v2.3.0**:筛选按钮改为右侧固定导航按钮(已废弃)
|
||
- 全部/Web服务/自定义服务/CLI工具/插件 图标按钮
|
||
- 固定右侧显示,随时可切换筛选
|
||
- 新增服务按钮(绿色)放在最下方
|
||
- 选中状态高亮显示
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v2.3.0
|
||
- **项目服务管理面板 v2.2.1**:新增自定义外部web服务功能
|
||
- 筛选栏添加"新增服务"按钮
|
||
- 支持添加外部服务(名称、URL、后台URL、描述)
|
||
- 自定义服务显示为青色卡片,区分本地服务
|
||
- 支持删除自定义服务
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v2.2.1
|
||
|
||
### 2026-04-22
|
||
- **Xian Favor v4.5.0**:添加系统配置功能
|
||
- AI自动添加的大模型接口配置(URL/Key/Model)
|
||
- 服务器连接状态刷新频率配置(3/5/10/30/60秒)
|
||
- 数据列表每页显示条数配置(10/20/30/50条)
|
||
- 草稿自动保存间隔配置(2/5/10/30/60秒)
|
||
- 显示内容统计/阅读次数开关
|
||
- 配置保存到localStorage,侧边栏新增入口
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.5.0
|
||
- **Xian Favor v4.4.0**:详情弹框添加导航按钮和固定底部操作栏
|
||
- 右侧固定显示向上/向下导航按钮(一键回到顶部/底部)
|
||
- 底部操作栏固定悬浮,方便操作
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.4.0
|
||
- **Xian Favor v4.3.0**:新增/编辑弹框中添加文件夹选择
|
||
- 新增数据时可选择所属文件夹
|
||
- 编辑数据时可更改所属文件夹
|
||
- 切换类型时自动更新文件夹列表
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.3.0
|
||
- **Xian Favor v4.2.1**:文件夹按钮样式优化+新增数据到文件夹功能
|
||
- hover文件夹时按钮悬浮在右侧,高度一致
|
||
- 新增数据按钮(绿色+)直接添加数据到该文件夹
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.2.1
|
||
- **Xian Favor v4.2.0**:文件夹支持重命名和删除
|
||
- hover文件夹时显示编辑和删除按钮
|
||
- 编辑按钮打开重命名模态框
|
||
- 删除按钮确认后删除,数据移到未分类
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.2.0
|
||
- **Xian Favor v4.1.1**:待办事务功能优化
|
||
- 修复完成状态切换问题(可来回切换完成/未完成)
|
||
- 添加全部/未完成/已完成过滤按钮
|
||
- 翻页时保持弹窗滚动位置
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.1.1
|
||
- **Xian Favor v4.1.0**:文本类别添加待办事务功能
|
||
- 可在文本数据详情中追加待办事务
|
||
- 支持事务内容、剩余天数(默认1天)、完成状态(默认未完成)
|
||
- 历史事务按时间倒序排列,显示创建/更新时间
|
||
- 分页显示,每页10条
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.1.0
|
||
- **Xian Favor v4.0.0**:快速插入支持选中位置精准插入
|
||
- 先选中部分文本,再双击可在选中位置前/后插入
|
||
- 支持替换选中内容
|
||
- 提示文字更新:可先选中部分文本,再双击在此处插入
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v4.0.0
|
||
- **Xian Favor v3.10.1**:详情弹框内容支持Markdown格式显示
|
||
- 支持标题、粗体、斜体、代码块、链接、列表
|
||
- 编辑时保持原文本格式
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.10.1
|
||
- **Xian Favor v3.10.0**:添加显示模式切换按钮(单行/双行)
|
||
- 顶部操作栏添加切换按钮
|
||
- 单行模式只显示标题,隐藏内容摘要
|
||
- 用户偏好保存到localStorage
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.10.0
|
||
- **Xian Favor v3.9.3**:卡片布局自适应,操作按钮不再被挤出可视区域
|
||
- flex-wrap布局让按钮自动换行
|
||
- 各种屏幕宽度下都能正常显示
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.9.3
|
||
- **Xian Favor v3.9.2**:修复文件夹过滤时分页总数计算错误
|
||
- count_items函数添加folder_id参数支持
|
||
- 点击空文件夹时分页正确显示0页
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.9.2
|
||
- **Xian Favor v3.9.1**:点击类别同时展开文件夹并过滤数据
|
||
- 点击类别名称展开文件夹列表并显示该类别数据
|
||
- 选中状态高亮显示
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.9.1
|
||
- **Xian Favor v3.9.0**:侧边栏文件夹UI优化 - 折叠式设计
|
||
- 新建文件夹按钮移到类别右侧(文件夹+图标)
|
||
- 默认折叠状态,点击类别名称展开/折叠
|
||
- 投影箭头指示展开状态(▶折叠,▼展开)
|
||
- 按钮hover时显示绿色背景,更明显可见
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.9.0
|
||
|
||
### 2026-04-21
|
||
- **Xian Favor v3.8.0**:文件夹功能
|
||
- 每个类别(文本、链接、专栏、待办)下可新建文件夹
|
||
- 数据可移动到指定文件夹
|
||
- 侧边栏显示文件夹列表,点击过滤
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.8.0
|
||
- **Xian Favor v3.7.0**:侧边栏和顶部按钮栏固定显示
|
||
- 侧边栏固定在左侧(position: fixed),滚动页面时不动
|
||
- 顶部按钮栏固定在顶部(position: sticky)
|
||
- 主内容区留出侧边栏空间(margin-left: 200px)
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.7.0
|
||
|
||
### 2026-04-20
|
||
- **视觉记录系统 v1.2.1**:修复人员库保存人脸图片路径缺失问题
|
||
- 问题:`add_new_person_with_encoding` 函数未保存 `face_path` 字段
|
||
- 修复:添加 `face_image` 参数,保存人脸图片并记录 `face_path`
|
||
- 人员库弹框现在能正确显示人员图片
|
||
- Git仓库: http://192.168.2.8:12007/coder/vision-record v1.2.1
|
||
- **Xian Favor v3.6.0**:顶部添加服务器连接状态指示器
|
||
- 页面顶部固定显示连接状态(已连接/连接已断开/正在连接...)
|
||
- 每5秒心跳检测服务器连接状态
|
||
- 掉线时显示离线遮罩,禁止编辑、新增、删除等写入操作
|
||
- 离线时显示提示,提供"重新连接"按钮
|
||
- 添加写入操作的离线检查(添加、编辑、删除、完成待办、转换、发送邮件、创建备份等)
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.6.0
|
||
- **项目服务管理面板 v1.8.0**:右下角添加到顶/到底导航按钮
|
||
- 两个圆形按钮固定在页面右下角(向上箭头、向下箭头)
|
||
- 点击按钮平滑滚动到页面顶部/底部
|
||
- Hover时按钮放大1.1倍,有过渡动画效果
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v1.8.0
|
||
|
||
### 2026-04-19
|
||
- **视觉记录系统 v1.2.0**:人员库弹框显示人员图片
|
||
- **Xian Favor v3.5.0**:编辑弹框关闭时检查是否有修改并提示确认
|
||
- 打开编辑弹框时保存原始数据状态
|
||
- 关闭时比较当前内容和原始内容
|
||
- 如果有修改,弹出确认对话框询问是否放弃修改
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.5.0
|
||
- **Xian Favor v3.4.1**:修复编辑草稿时重复创建新草稿的问题
|
||
- 数据库添加 drafts 表存储草稿数据
|
||
- 草稿箱独立页面,侧边栏添加入口
|
||
- 自动保存间隔可配置(2/5/10/30/60秒)
|
||
- 草稿可编辑、发布为正式条目、删除
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.4.0
|
||
- **Xian Favor v3.3.0**:草稿箱自动保存功能(已废弃,v3.4.0重构)
|
||
- 编辑时自动保存到 localStorage(每5秒或输入后2秒)
|
||
- 打开添加弹框时检查是否有草稿并提示恢复
|
||
- 成功添加后清除草稿
|
||
- 弹框标题显示"已自动保存"指示器
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.3.0
|
||
- **Xian Favor v3.2.2**:修复回收站显示问题
|
||
- person_manager.py: get_persons_list() 返回 face_path 字段
|
||
- web/app.py: 新增 /api/persons/{id}/face 接口获取人员图片
|
||
- 前端人员列表布局:左侧80x80图片 + 右侧信息区域
|
||
- Git仓库: http://192.168.2.8:12007/coder/vision-record v1.2.0
|
||
- **Xian Favor v3.2.0**:新增回收站功能
|
||
- 删除数据存入回收站(软删除),不再直接删除
|
||
- 回收站支持查看、恢复、彻底删除
|
||
- 支持一键清空回收站
|
||
- 侧边栏添加回收站入口
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.2.0
|
||
- **Xian Favor v3.1.0**:新增阅读数功能
|
||
- 数据库添加 views 字段,兼容旧数据库自动添加
|
||
- API 新增 /api/items/<id>/view 接口增加阅读数
|
||
- 列表显示阅读数(👁图标,只显示大于0的)
|
||
- 详情页显示阅读数,点击详情时自动增加
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.1.0
|
||
- **Xian Favor v3.0.3**:编辑保存错误处理优化 + 排序功能
|
||
- 前端 saveEdit 函数添加错误处理,失败时显示错误提示弹框
|
||
- 后端修复只修改标签时返回 False 的问题
|
||
- 新增排序功能:支持按创建时间、更新时间排序(升序/降序)
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.0.3
|
||
- 前端 saveEdit 函数添加错误处理,失败时显示错误提示弹框
|
||
- 后端修复只修改标签时返回 False 的问题
|
||
- 更新 laoli 智能体 AGENTS.md:添加浏览器任务异常处理规则
|
||
- 服务中断时主动报告,不无限等待
|
||
- 总任务时间不超过5分钟
|
||
- 遇到问题立即停止并报告
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.0.3
|
||
- **Xian Favor v3.0.2**:重点关注图标样式优化
|
||
- 只有五角星图标变实心,按钮保持 outline 样式
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.0.2
|
||
- **Xian Favor v3.0.1**:修复数据库初始化索引创建顺序问题
|
||
- 修复兼容旧数据库时 is_starred 字段添加顺序
|
||
- 确保先添加字段再创建索引
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.0.1
|
||
- **Xian Favor v3.0.0**:重点关注功能(大版本更新)
|
||
- 数据库新增 is_starred 字段,兼容旧数据库自动添加
|
||
- 所有类别数据支持一键设置/取消重点关注
|
||
- 侧边栏新增"重点关注"过滤选项
|
||
- 重点关注数据优先显示(排在列表最前)
|
||
- 新增数据时可直接勾选"设为重点关注"开关
|
||
- 编辑时可切换重点关注状态
|
||
- 卡片显示重点关注标记(星标图标)和特殊样式
|
||
- API新增 /api/items/<id>/star 接口切换重点关注状态
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v3.0.0
|
||
|
||
### 2026-04-17
|
||
- **PDF翻译助手 V2 v2.7.1**:修复PDF对比功能无法显示原文
|
||
- 问题:uploads和outputs目录使用不同UUID,无法找到原PDF
|
||
- 修复:使用同一个UUID,添加upload_path字段存储原PDF路径
|
||
- compare_view优先从数据库获取原PDF路径
|
||
- Git仓库: http://192.168.2.8:12007/coder/pdf-translate-web v2.7.1
|
||
- **Xian Favor v2.5.0**:内容统计信息显示(有效行数/总字数)
|
||
- 每个数据标题后显示统计:`[32行/601字]`
|
||
- API返回 content_stats 字段:lines(有效行数)、chars(总字数)
|
||
- 统计合并 content + note 所有文本内容
|
||
- 有效行数:去除空行后的行数
|
||
- 总字数:去除空格/换行后的字符数
|
||
- 详情页也显示统计信息
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v2.5.0
|
||
- **项目服务管理面板 v1.7.0**:多项界面优化
|
||
- Web服务多列卡片布局(一行显示2-4个)
|
||
- 对外IP配置输入框(默认192.168.2.17,保存到localStorage)
|
||
- 服务器连接状态指示器(已连接/断开)
|
||
- 刷新间隔时间设置(5-300秒,默认30秒)
|
||
- Web服务活跃开关:点击归档按钮可移至下方归档区域
|
||
- 归档服务单独显示,打开开关自动回到活跃区域
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel v1.7.0
|
||
|
||
### 2026-04-16
|
||
- **PDF翻译助手 V2 v2.6.0**:新增 pdf_translate 命令行工具
|
||
- 支持命令: translate/list/status/download/config
|
||
- 支持用户认证: --user --password 参数
|
||
- 翻译进度实时显示,结果可在网页查看
|
||
- 新增 /api/config 和 /api/translations 接口
|
||
- 修复异步翻译任务的配置获取逻辑
|
||
- Git仓库: http://192.168.2.8:12007/coder/pdf-translate-web v2.6.0
|
||
- **PDF翻译助手 V2 v2.5.0**:翻译记录添加不共享开关功能
|
||
- Translation 模型新增 `no_share` 字段
|
||
- 管理后台翻译记录页面添加共享状态列和切换按钮
|
||
- 不共享的翻译不会被其他用户使用缓存
|
||
- 缓存匹配时检查是否有 `no_share` 标记
|
||
- Git仓库: http://192.168.2.8:12007/coder/pdf-translate-web v2.5.0
|
||
- **PDF翻译助手 V2 v2.3.1**:大模型配置改为列表选择模式
|
||
- 移除主配置表单,改为从列表选择默认接口
|
||
- 新增 `is_default` 字段标记默认使用的接口
|
||
- 新增 `max_tokens/chunk_size/timeout` 配置参数
|
||
- 点击"设为默认"按钮即可切换当前使用的接口
|
||
- `get_llm_config()` 从默认接口获取配置
|
||
- Git仓库: http://192.168.2.8:12007/coder/pdf-translate-web v2.3.1
|
||
- **Xian Favor v2.4.0**:数据库备份机制
|
||
- 自动备份每天 04:00(cron 定时任务)
|
||
- 备份清理:30天 + 每月第一天永久保留
|
||
- 手动备份页面入口:侧边栏「备份管理」
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v2.4.0
|
||
- **Xian Favor v2.3.0**:卡片显示创建和更新日期
|
||
- 格式:04-16 11:09(月-日 时:分)
|
||
- 有更新时显示:创建 → 更新
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v2.3.0
|
||
- **Xian Favor v2.2.0**:快捷添加按钮,一键选择类型
|
||
- 顶部按钮栏分离为4个快捷添加按钮(📝文本、🔗链接、✅待办、📰专栏)
|
||
- 点击直接进入对应类型的添加弹窗
|
||
- 不再需要下拉选择类型
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v2.2.0
|
||
- **Xian Favor v2.1.0**:待办截止时间支持日期+时间
|
||
- 截止日期改为日期时间选择器(datetime-local)
|
||
- 列表显示友好格式:今天 18:30、明天 09:00
|
||
- 后端支持多种日期格式解析(ISO、日期、完整时间)
|
||
- 只有日期的待办视为当天 23:59 到期
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v2.1.0
|
||
- **Xian Favor v2.0.0**:收藏转待办功能(大版本更新)
|
||
- 新增 `/api/items/<id>/convert` API
|
||
- 支持两种转换方式:直接转换(原收藏变待办)、复制创建(保留原收藏)
|
||
- 文本/链接/专栏类型可转换
|
||
- 内容自动合并到待办备注
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v2.0.0
|
||
- Xian Favor v1.11.0:已完成待办可重新打开
|
||
- 新增 `/api/items/<id>/reopen` 接口
|
||
- 前端列表已完成待办显示重新打开按钮(↻图标)
|
||
- 可恢复为 pending 或 in_progress 状态
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v1.11.0
|
||
- Xian Favor v1.10.0:网页端待办到期提醒功能
|
||
- 新增提醒 API `/api/reminders`
|
||
- 获取已过期、今天到期、即将到期(24小时内)的待办
|
||
- 前端顶部提醒栏显示提醒数量和概要
|
||
- 弹窗详情支持快速完成待办
|
||
- 每5分钟自动刷新提醒
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v1.10.0
|
||
- 碎片信息记录 v1.2.0:编辑锁机制防止并发编辑
|
||
- 点击记录时获取锁,阻止其他人同时编辑
|
||
- 锁超时30秒自动释放(无心跳)
|
||
- 心跳每10秒发送保持锁活跃
|
||
- 强制抢锁功能(打断对方编辑)
|
||
- 页面离开自动释放锁
|
||
- 锁丢失弹窗提醒
|
||
- 双重保护:编辑锁(主防线) + 版本号(备用防线)
|
||
- Git仓库: http://192.168.2.8:12007/coder/snippet-notes v1.2.0
|
||
|
||
### 2026-04-15
|
||
- 碎片信息记录 v1.1.0:并发编辑冲突解决(乐观锁+版本号机制)
|
||
- 每条记录增加version字段,每次保存版本号递增
|
||
- 客户端保存时携带版本号,服务端检查版本一致性
|
||
- 版本冲突时返回HTTP 409,前端显示冲突对话框
|
||
- 用户可选择"放弃我的修改"或"强制保存我的版本"
|
||
- 旧数据自动添加version=1
|
||
- Git仓库: http://192.168.2.8:12007/coder/snippet-notes v1.1.0
|
||
- AI对话系统 v3.0.6:SiliconFlow平台Function Calling第二轮调用兼容
|
||
- **核心问题**:SiliconFlow平台不支持标准 `tool` 消息类型
|
||
- 第一轮:正常返回 `tool_calls`
|
||
- 第二轮:传入 `tool` 消息类型 → API返回"参数无效"错误
|
||
- **修复方案**:将 `tool` 消息转换为 `user` 消息格式
|
||
- 收集所有 tool 消息的内容
|
||
- 合并为一个用户消息:"\n以下是搜索工具返回的结果...\n请根据以上搜索结果回答..."
|
||
- **测试验证**:完整流程测试成功(v3.0.5的过滤方案只是临时补救,v3.0.6才是根本修复)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v3.0.6
|
||
- AI对话系统 v3.0.5:临时过滤伪工具调用格式(已废弃,v3.0.6根本修复)
|
||
|
||
### 2026-04-14
|
||
- Xian Favor v1.9.2:邮件发送历史记录
|
||
- 详情页面显示邮件发送记录(发送邮箱、时间)
|
||
- 支持多次发送,显示多条记录
|
||
- 发送成功/失败状态标记(✅/❌)
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v1.9.2
|
||
- Xian Favor v1.9.0:发送邮件功能 + 邮箱管理
|
||
- 每个收藏卡片添加"发送邮件"按钮(📧图标)
|
||
- 点击弹出模态框:选择已有邮箱或输入新邮箱
|
||
- 新邮箱自动保存到邮箱管理
|
||
- 邮箱管理页面:添加、编辑、删除邮箱
|
||
- SMTP配置支持环境变量(SMTP_HOST, SMTP_PORT, SMTP_USER, SMTP_PASS)
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor v1.9.0
|
||
- AI对话系统 v2.4.3:多模态图片支持
|
||
- 图片 base64 数据传递给视觉模型(OpenAI 多模态格式)
|
||
- 需选择支持视觉的 Agent(如 vlm-agent)才能识别图片
|
||
- 图片信息保存在 extra_data 中供历史记录显示
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.4.3
|
||
|
||
### 2026-04-13
|
||
- AI对话系统 v2.4.0:文件上传功能
|
||
- 支持图片上传(PNG、JPG、GIF等,预览显示)
|
||
- 支持文本文件上传(txt、md、json、csv等,内容自动添加)
|
||
- 支持 PDF 和 Word 文档上传
|
||
- 文件内容自动添加到消息中供 AI 分析
|
||
- 多文件同时上传支持
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.4.0
|
||
- AI对话系统 v2.3.9:修复历史搜索结果显示
|
||
- WebSocket history 消息添加 extra_data 字段
|
||
- 选择对话时正确传递搜索结果数据
|
||
- 前端 appendMessage 接收 extraData 参数并处理
|
||
- 刷新页面后历史对话中的搜索结果正确显示
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.3.9
|
||
- AI对话系统 v2.3.7:历史搜索结果显示修复
|
||
- appendMessage 函数接收 extraData 参数
|
||
- 创建用户消息时直接处理搜索结果显示
|
||
- 简化 displayHistory 逻辑,统一处理方式
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.3.7
|
||
- AI对话系统 v2.3.6:搜索结果持久化
|
||
- 用户消息 extra_data 存储搜索结果(search_results, search_query)
|
||
- API 返回消息时包含 extra_data
|
||
- 前端 displayHistory 处理历史搜索结果显示
|
||
- 刷新页面后历史对话中的搜索结果保持原状
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.3.6
|
||
- AI对话系统 v2.3.5:修复搜索结果数量配置
|
||
- 搜索结果数量根据工具配置读取(max_results)
|
||
- LLM上下文和前端展示都使用配置的数量
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.3.5
|
||
- AI对话系统 v2.3.4:对话流程优化
|
||
- 用户发送消息时前端立即显示(不用等后端广播)
|
||
- 后端处理顺序调整:广播用户消息 → 执行搜索 → 发送搜索结果 → 调用LLM
|
||
- 前端收到 user_message 时检查是否已显示(避免重复)
|
||
- 流程顺序:用户消息 → 搜索结果(折叠) → AI回复
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.3.4
|
||
- AI对话系统 v2.3.3:搜索结果UI优化
|
||
- 搜索结果放到用户消息下面(流程逻辑更清晰)
|
||
- 默认折叠,点击展开/收起
|
||
- 显示搜索关键词和结果数量摘要
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.3.3
|
||
- AI对话系统 v2.3.2:修复 tools 字段读取
|
||
- get_agent_config 添加 tools 字段返回
|
||
- AI对话系统 v2.3.1:搜索功能修复
|
||
- 添加详细日志帮助调试搜索执行过程
|
||
- 搜索结果发送到前端展示(search_results 类型消息)
|
||
- 前端增加搜索结果展示组件(标题、摘要、来源)
|
||
- 修复 datetime 导入错误
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.3.1
|
||
- AI对话系统 v2.3.0:工具管理重构
|
||
- ToolConfig 模型:通用工具配置,支持多种类型(搜索、计算器、代码执行、图像生成等)
|
||
- ToolUsageLog 模型:工具调用日志记录
|
||
- 工具使用统计:调用次数、成功率、错误记录
|
||
- 后台管理界面:工具列表+统计展示(调用次数、成功率、最近错误)
|
||
- API 重构:/api/v2/tools(替代 /api/v2/search-tools)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.3.0
|
||
- AI对话系统 v2.2.2:优化搜索触发逻辑
|
||
- 搜索改为勾选即执行,不再依赖关键词检测
|
||
- 修复 Agent tools 字段默认为空的问题
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.2.2
|
||
- AI对话系统 v2.2.1:修复搜索功能
|
||
- 修复数据库缺少 tools 字段问题(SQLite ALTER TABLE)
|
||
- 移动搜索复选框到输入框区域(快捷语句栏)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.2.1
|
||
- AI对话系统 v2.2.0:搜索工具功能(Tavily Search)
|
||
- 新增 SearchToolConfig 模型:支持搜索工具配置管理
|
||
- Agent 增加 tools 字段:可配置可用工具列表
|
||
- 后台管理增加搜索工具配置页面(增删改查)
|
||
- Agent 管理增加工具启用开关(搜索工具)
|
||
- 网页端增加搜索工具禁用复选框(实时控制)
|
||
- WebSocket chat 处理增加关键词触发搜索逻辑
|
||
- 默认配置 Tavily Search API(已填入 API Key)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.2.0
|
||
- AI对话系统 v2.1.6:简化新建对话判断条件
|
||
- 只检查 `!currentConversationId && !hasMessages` 即可判断新建状态
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.1.6
|
||
- AI对话系统 v2.1.5:优化新建对话逻辑
|
||
- 新建对话时检查是否已经是新建状态(无对话ID、无消息、显示欢迎界面)
|
||
- 避免重复点击新建按钮创建多个空对话
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.1.5
|
||
- AI对话系统 v2.1.3:多版本历史消息功能完善
|
||
- 添加浏览器标签favicon(🤖图标)
|
||
- 复制按钮在消息内容下方,一直显示
|
||
- 重新生成功能:
|
||
- 点击重新生成时隐藏当前内容,显示loading动画
|
||
- 生成完成后移除loading,显示新内容
|
||
- 保留旧版本,支持版本切换
|
||
- 版本切换控件:简化布局,整合到操作按钮区域(复制|重新生成|< 1/3 >)
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.1.3
|
||
|
||
### 2026-04-13 (其他更新)
|
||
- LLM Proxy v2.0.0:合并后台管理到单端口
|
||
- 端口: 19007 (原 19007+19008)
|
||
- 前台API: http://localhost:19007/v1/chat/completions
|
||
- 后台管理: http://localhost:19007/admin
|
||
- Git仓库: http://192.168.2.8:12007/coder/llm-proxy v2.0.0
|
||
- 产品参数爬取系统 v2.0.0:合并后台管理到单端口
|
||
- 端口: 19011 (原 19011+19012)
|
||
- 前台API: http://localhost:19011
|
||
- 后台管理: http://localhost:19011/admin
|
||
- Git仓库: http://192.168.2.8:12007/coder/product-crawler v2.0.0
|
||
- 技术论坛 CLI 工具收藏到 Xian Favor
|
||
- 多智能体竞标调度系统添加到 project-panel
|
||
- 磁盘大文件扫描工具 v1.0.0:智能扫描找出大文件和大目录
|
||
- 自动跳过零碎目录(node_modules, .git, venv等)
|
||
- 文件数量阈值判断(超过阈值视为程序包)
|
||
- 大小阈值过滤(小目录不深入)
|
||
- 按大小排序,树形展示
|
||
- 跨平台:Windows/Linux/macOS
|
||
- Git仓库: http://192.168.2.8:12007/coder/disk-scanner
|
||
- AI对话系统 v2.0.0:架构重构
|
||
- 端口: 19020
|
||
- 大模型池管理:多LLM Provider配置
|
||
- Agent管理:系统设定、思考功能开关
|
||
- 渠道独立:网页端/Matrix独立绑定Agent
|
||
- 思考功能:支持原生思考模型,兼容无思考功能模型
|
||
- Git仓库: http://192.168.2.8:12007/coder/ai-chat-system v2.0.0
|
||
- 多智能体竞标调度系统 v1.0.0:基于邮件方案实现
|
||
- 端口: 19015
|
||
- 核心组件:Orchestrator(规划Agent)、Worker(执行Agent)、TaskBoard(任务公告板)
|
||
- 功能:竞标机制、动态调度、智能容错、质量保证
|
||
- 默认Agent:代码专家、搜索专家、写作专家、分析专家
|
||
- Web界面:首页、请求列表、任务列表、Agent管理
|
||
- Git仓库: http://192.168.2.8:12007/coder/multi-agent-bidding
|
||
- Xian Favor 收藏系统 v1.0.0:支持命令行、API、Web三种操作模式
|
||
- 端口: 19014
|
||
- 功能:文本笔记、链接收藏、专栏订阅、待办事项管理
|
||
- 标签系统:灵活分类,支持多标签
|
||
- 状态管理:待办支持待处理/进行中/已完成
|
||
- 优先级:低/中/高/紧急
|
||
- 截止日期:待办支持设置截止日期
|
||
- 快速搜索:全文搜索标题、内容、备注
|
||
- Git仓库: http://192.168.2.8:12007/coder/xian-favor
|
||
|
||
### 2026-04-11
|
||
- PDF翻译助手 V2 v2.1.0:系统配置支持动态增删用户类型和会员套餐
|
||
- 新增 UserTypeConfig 模型:用户类型配置支持动态增删
|
||
- 新增 MembershipPlanConfig 模型:会员套餐配置支持动态增删
|
||
- 用户类型管理页面:添加、编辑、删除、启用/禁用用户类型
|
||
- 会员套餐管理页面:添加、编辑、删除、上架/下架、推荐套餐
|
||
- 功能权限配置:支持选择功能列表
|
||
- 项目服务管理面板 v1.0.0:统一管理所有项目和服务
|
||
- 端口: 19013
|
||
- 功能: 项目列表、状态检测、启动/停止/重启控制、日志查看
|
||
- 配置文件: projects.json 便于扩展新项目
|
||
- Git仓库: http://192.168.2.8:12007/coder/project-panel
|
||
|
||
### 2026-04-10
|
||
- 创建 Web服务监控系统(每20分钟检查8个服务,邮件通知)
|
||
- 配置 Cron 定时任务
|
||
- 扩展邮件技能:新增 IMAP 接收邮件功能,支持查看未读邮件和文本附件
|
||
- 创建 A股板块监控系统(东方财富API,异动检测,邮件通知)
|
||
- 创建邮件收件箱管理系统 (`works/mailbox/`):同步、存储、状态追踪、归档
|
||
|
||
### 2026-04-09
|
||
- 创建 PROJECTS.md 项目记录文件
|
||
- 创建邮件发送技能 email-sender
|
||
- 配置每日对话总结心跳任务
|
||
- 确立项目记录机制
|
||
|
||
### 2026-04-08
|
||
- 确立端口规范: 19000-19100
|
||
- 创建参数百科网站
|
||
- 创建网页助手浏览器插件
|
||
- 创建文章撰写工作流系统(含后台管理)送技能 email-sender
|
||
- 配置每日对话总结心跳任务
|
||
- 确立项目记录机制
|
||
|
||
### 2026-04-08
|
||
- 确立端口规范: 19000-19100
|
||
- 创建参数百科网站
|
||
- 创建网页助手浏览器插件
|
||
- 创建文章撰写工作流系统(含后台管理) |