Files
PicAnalysis/.project/brainstorm.md
wjl 1a0ebde95d feat: 初始化 PicAnalysis 项目
完整的前后端图片分析应用,包含:
- 后端:Express + Prisma + SQLite,101个单元测试全部通过
- 前端:React + TypeScript + Vite,47个单元测试,89.73%覆盖率
- E2E测试:Playwright 测试套件
- MCP集成:Playwright MCP配置完成并测试通过

功能模块:
- 用户认证(JWT)
- 文档管理(CRUD)
- 待办管理(三态工作流)
- 图片管理(上传、截图、OCR)

测试覆盖:
- 后端单元测试:101/101 
- 前端单元测试:47/47 
- E2E测试:通过 
- MCP Playwright测试:通过 

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-22 20:10:11 +08:00

329 lines
9.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 头脑风暴记录 - 图片OCR与智能文档管理系统
## 会议时间
2026-02-21
## 参与人员
- 产品负责人
- 技术架构师
- AI/ML专家
## 头脑风暴主题
### 1. 用户旅程和交互流程
#### 1.1 典型使用场景
**场景A: 会议记录快速转化**
```
用户截取线上会议截图 → 上传系统 → OCR识别 → AI提取要点 → 生成待办事项 → 分配截止日期
```
**场景B: 收集资料归档**
```
用户看到有用的文章/图表 → 截图保存 → OCR提取文字 → AI自动打标签 → 归档到知识库
```
**场景C: 待办事项管理**
```
截图聊天记录中的任务 → OCR识别 → 一键转化为待办 → 设置提醒 → 后续跟踪
```
#### 1.2 交互优化点
- 支持快捷键触发截图(全局快捷键)
- OCR完成后自动进入编辑模式
- AI分析结果可一键应用或手动调整
- 待办事项支持拖拽排序
- 标签支持快捷输入(按回车添加)
### 2. 边界情况和异常处理
#### 2.1 OCR相关
| 场景 | 处理方案 |
|------|----------|
| 图片模糊/质量差 | 提示用户重新上传,提供图片预处理选项 |
| OCR无文字结果 | 友好提示"未检测到文字",允许手动输入 |
| OCR部分识别失败 | 标注不确定区域,允许用户修正 |
| 多语言混合图片 | 自动检测语言或让用户指定 |
#### 2.2 AI相关
| 场景 | 处理方案 |
|------|----------|
| AI API调用失败 | 降级到模板匹配或允许手动输入 |
| API配额用尽 | 提示用户并阻止新请求,提供配额管理 |
| 响应超时 | 设置合理超时时间,提供重试选项 |
| 标签/分类不合理 | 允许用户反馈改进prompt |
#### 2.3 文件相关
| 场景 | 处理方案 |
|------|----------|
| 文件过大 | 前端预校验,超出限制友好提示 |
| 不支持的格式 | 明确告知支持的格式列表 |
| 网络中断上传失败 | 支持断点续传或重试机制 |
### 3. 数据模型优化建议
#### 3.1 增加的实体
- **Folder**: 文件夹,用于组织文档和待办
- **Reminder**: 提醒记录,支持定时提醒
- **ActivityLog**: 操作日志,审计追踪
- **Template**: 模板,预设待办/文档格式
#### 3.2 关系优化
- 支持待办事项之间的依赖关系
- 文档可以关联多个待办事项
- 标签支持层级结构
### 4. 安全性和权限控制
#### 4.1 多租户隔离
- 每个用户的数据完全隔离
- 用户间不能查看彼此数据
- 未来可扩展为团队共享模式
#### 4.2 API密钥管理
- 用户个人的AI API密钥加密存储
- 支持平台提供密钥(配额管理)
- 密钥使用量统计和限流
#### 4.3 数据安全
- 定期自动备份
- 敏感操作二次确认
- 敏感信息脱敏显示
### 5. 性能优化点
#### 5.1 前端优化
- 图片上传前压缩(减少带宽)
- 虚拟列表(大量文档/待办场景)
- 图片懒加载
- Service Worker缓存
#### 5.2 后端优化
- OCR任务队列化避免阻塞
- AI分析异步处理
- 数据库查询优化(索引、分页)
- 图片CDN加速可选
#### 5.3 OCR优化
- 图片预处理(去噪、锐化、旋转校正)
- 文字区域检测ROI裁剪
- 缓存OCR结果避免重复识别
### 6. 可扩展性考虑
#### 6.1 插件化架构
- OCR提供商插件化
- AI提供商插件化
- 存储后端插件化(本地/OSS/S3
#### 6.2 Webhook支持
- OCR完成通知
- AI分析完成通知
- 待办事项到期提醒
#### 6.3 API开放
- RESTful API完整文档
- Web API密钥管理
- SDK提供Python/JavaScript
### 7. AI Prompt工程
#### 7.1 智能标签生成Prompt支持动态创建
```
你是一个智能文档助手。请分析以下文本生成3-5个最相关的标签。
要求:
1. 标签应简洁明了2-4个字
2. 优先提取:主题、领域、关键实体
3. 如果现有标签库中没有合适的,可以创建新标签
4. 新标签应该具有普遍性和复用性
5. 以JSON数组格式返回
用户现有标签:
{existing_tags}
文本内容:
{content}
返回格式:
{
"tags": ["标签1", "标签2", "标签3"],
"new_tags": ["新标签1"], // 如果创建了新标签
"confidence": 0.95
}
```
#### 7.2 智能分类建议Prompt支持动态创建分类
```
你是一个智能文档助手。请分析以下文本,判断其最合适的分类。
要求:
1. 首先从现有分类中选择最匹配的
2. 如果现有分类都不合适,创建一个新分类
3. 新分类名称应该简洁、清晰、有概括性
4. 推荐一个合适的图标emoji
现有分类:
{existing_categories}
文本内容:
{content}
返回格式:
{
"category": "分类名称", // 已有或新建
"is_new": false, // 是否新建
"suggested_icon": "📄", // 推荐图标
"confidence": 0.88,
"reason": "分类理由"
}
```
#### 7.3 文档类型智能检测Prompt
```
你是一个智能文档类型识别助手。请分析以下文本,判断文档类型。
常见文档类型:
- 会议记录:包含会议、讨论、纪要等关键词
- 待办事项包含任务、计划、TODO等
- 学习笔记:包含笔记、重点、总结等
- 发票/票据:包含金额、日期、发票等
- 合同/协议:包含条款、签署、协议等
- 资料文章:一般性文章、资料
- 代码/技术:包含代码、技术文档
- 其他:无法明确分类
文本内容:
{content}
返回格式:
{
"type": "meeting_notes", // 类型标识
"type_name": "会议记录", // 类型显示名
"confidence": 0.92
}
```
#### 7.4 待办提取Prompt增强版
```
你是一个智能待办助手。请从以下文本中提取待办事项。
要求:
1. 识别所有行动项和任务
2. 提取优先级(根据紧急程度关键词:紧急、重要、尽快等)
3. 如果有明确时间,提取截止日期
4. 每个待办事项简洁明确
5. 如果文本本身就是要办事项列表,直接提取
文本内容:
{content}
返回JSON格式
{
"todos": [
{
"title": "完成项目报告",
"description": "需要在周五前提交给经理",
"priority": "high",
"due_date": "2024-01-12", // 如果有明确日期
"suggested_tags": ["工作", "报告"]
}
],
"is_todo_list": true // 是否本身就是待办列表
}
```
#### 7.5 图片质量评估Prompt
```
你是一个图片质量评估助手。请评估以下OCR结果的质量。
OCR结果
{ocr_result}
置信度:{confidence}
请评估:
1. 文本是否完整可读
2. 是否有明显错误或乱码
3. 是否有重要信息缺失
返回格式:
{
"quality": "good", // good/acceptable/poor
"confidence_score": 0.75, // 综合质量分数
"issues": [], // 发现的问题列表
"suggestion": "continue" // continue/manual/retry
}
```
### 8. 创意功能想法
#### 8.1 智能推荐
- 基于历史行为推荐标签
- 相似文档推荐
- 智能归档建议
- **动态分类建议**:根据内容自动创建新分类
- **标签自动补全**:输入时智能推荐相关标签
#### 8.2 数据可视化
- 标签云展示(大小随使用频率变化)
- 待办完成率图表
- 文档创建趋势
- **三种状态待办统计**:未完成/已完成/已确认占比
#### 8.3 快捷操作
- 拖拽截图到浏览器自动上传
- 邮件转发创建待办
- 微信/钉钉机器人集成
- **全局快捷键截图**:系统级快捷键触发截图上传
#### 8.4 AI增强
- 自动提取文档关键信息(日期、人名、金额)
- 智能总结长文档
- 多文档合并分析
- **AI创建新类型**:根据内容自动创建新的文档/待办类型
- **智能分类图标**为新分类自动匹配合适的emoji图标
#### 8.5 待处理图片优化
- **图片自动增强**:模糊检测、自动锐化、降噪
- **批量处理**:一键重试所有待处理图片
- **智能裁剪**:自动检测并裁剪到文字区域
- **OCR提示**:对于模糊图片给出改善建议
#### 8.6 三状态待办工作流
- **自动化流转** overdue自动提醒 → completed自动归档
- **批量确认**:一键确认所有已完成待办
- **定时清理**已确认超过N天的自动归档
- **完成感奖励**:完成任务时的动效反馈
---
## 决策记录
| 决策点 | 选择方案 | 理由 | 时间 |
|--------|----------|------|------|
| 前端框架 | React | 生态丰富Ant Design组件库成熟 | 2026-02-21 |
| 后端框架 | Express | 成熟稳定,中间件丰富 | 2026-02-21 |
| 数据库 | SQLite开发/PG生产 | 开发简单,生产可扩展 | 2026-02-21 |
| OCR方案 | 可配置(本地+云端) | 灵活性最高,适应不同场景 | 2026-02-21 |
| AI集成 | 抽象层设计 | 便于扩展新提供商 | 2026-02-21 |
---
## 待讨论问题
1. [ ] 是否需要支持批量导入历史图片?
2. [ ] 待办事项是否需要支持子任务?
3. [ ] 是否需要文档版本历史?
4. [ ] 是否需要支持全文搜索(高亮)?
5. [ ] 是否需要导出功能PDF/Word
---
## 下一步行动
- [x] 完成需求文档
- [x] 完成头脑风暴记录
- [ ] 技术选型确认
- [ ] 架构设计文档
- [ ] 详细开发计划