Files
ai-chat-app/MEMORY.md

25 KiB
Raw Blame History

MEMORY.md - 长期记忆

开发规范

开发测试流程

必须遵循的工作流程:

  1. 开发/修改功能 → 完成代码修改,提交 Git
  2. 让 laoli 智能体测试 → 用浏览器实际测试,重点测试修改的部分
  3. 有问题自己改 → 修改后再次让 laoli 测试
  4. 确认没问题 → 才回复用户

重要规则:

  • 不要用 curl 快速测试,网页任务要用浏览器测试
  • 所有测试任务都交给 laoli 智能体执行
  • 测试通过后才回复用户,不要让用户等待或再提醒
  • 这个流程必须执行,无需用户再次提醒

例外:

  • vision-record 项目 不需要 laoli 测试(不在本主机部署和测试,用户会安排其他人检查)
  • 其他在本主机上开发的项目仍需 laoli 测试

⚠️ 测试期间避免重启服务:

  • 在让 laoli 测试之前,先确认服务稳定运行
  • 如果需要修改代码重启服务,先 kill laoli 的测试任务
  • 重启后再重新启动测试任务
  • 不要在 laoli 测试期间重启服务,会导致浏览器连接中断

可用端口范围: 19000-19100

所有Web服务、API服务只能使用这个范围内的端口

示例分配:

  • 19001: 文章工作流后台
  • 19002: 方言AI助手主服务
  • 19003: 方言AI助手后台管理
  • 19004: 技术论坛
  • 19005-19100: 预留给其他项目

Git版本管理规则

每次开发项目推到仓库必须创建版本tag

# 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. 创建版本taggit tag -a vX.X.X -m "版本说明"
  5. 推送代码和taggit push origin main && git push origin vX.X.X
  6. 更新 PROJECTS.md 记录新版本

不需要询问用户,自动执行!

禁止事项

绝对不允许的操作:

  • 重启 Gateway - 任何情况下都不允许,只有用户才有权利重启 gateway
  • 擅自发送邮件、 tweets 等外部操作
  • 执行破坏性命令rm -rf 等)不询问

如果遇到 gateway 或浏览器服务问题,报告问题等待用户处理。

创建Git仓库新项目必须

新项目必须先用API创建仓库再推送代码

# 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

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 - 📦 已完成
磁盘大文件扫描 本地 - 📦 已完成

更新日志

2026-04-19

  • 视觉记录系统 v1.2.0:人员库弹框显示人员图片
  • Xian Favor v3.4.0:重构草稿箱功能
    • 数据库添加 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//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:重点关注图标样式优化
  • Xian Favor v3.0.1:修复数据库初始化索引创建顺序问题
  • Xian Favor v3.0.0:重点关注功能(大版本更新)
    • 数据库新增 is_starred 字段,兼容旧数据库自动添加
    • 所有类别数据支持一键设置/取消重点关注
    • 侧边栏新增"重点关注"过滤选项
    • 重点关注数据优先显示(排在列表最前)
    • 新增数据时可直接勾选"设为重点关注"开关
    • 编辑时可切换重点关注状态
    • 卡片显示重点关注标记(星标图标)和特殊样式
    • API新增 /api/items//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:00cron 定时任务)
    • 备份清理30天 + 每月第一天永久保留
    • 手动备份页面入口:侧边栏「备份管理」
    • Git仓库: http://192.168.2.8:12007/coder/xian-favor v2.4.0
  • 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.6SiliconFlow平台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:历史搜索结果显示修复
  • 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:修复搜索结果数量配置
  • 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优化
  • 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:优化搜索触发逻辑
  • AI对话系统 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:简化新建对话判断条件
  • AI对话系统 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:合并后台管理到单端口
  • 产品参数爬取系统 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:统一管理所有项目和服务

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
  • 创建参数百科网站
  • 创建网页助手浏览器插件
  • 创建文章撰写工作流系统(含后台管理)