feat: 实现CutThenThink P0阶段核心功能

项目初始化
- 创建完整项目结构(src/, data/, docs/, examples/, tests/)
- 配置requirements.txt依赖
- 创建.gitignore

P0基础框架
- 数据库模型:Record模型,6种分类类型
- 配置管理:YAML配置,支持AI/OCR/云存储/UI配置
- OCR模块:PaddleOCR本地识别,支持云端扩展
- AI模块:支持OpenAI/Claude/通义/Ollama,6种分类
- 存储模块:完整CRUD,搜索,统计,导入导出
- 主窗口框架:侧边栏导航,米白配色方案
- 图片处理:截图/剪贴板/文件选择/图片预览
- 处理流程整合:OCR→AI→存储串联,Markdown展示,剪贴板复制
- 分类浏览:卡片网格展示,分类筛选,搜索,详情查看

技术栈
- PyQt6 + SQLAlchemy + PaddleOCR + OpenAI/Claude SDK
- 共47个Python文件,4000+行代码

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
congsh
2026-02-11 18:21:31 +08:00
commit c4a77f8aa4
79 changed files with 19412 additions and 0 deletions

125
README.md Normal file
View File

@@ -0,0 +1,125 @@
# CutThenThink
智能截图OCR与AI分析工具
## 项目简介
CutThenThink 是一款基于 PyQt6 的桌面应用程序集成了OCR文字识别和AI智能分析功能。用户可以通过截图、选择区域然后使用OCR提取文字并利用多种AI模型进行智能分析和处理。
## 主要功能
- **智能截图**: 支持多种方式截图(矩形选择、窗口选择、全屏等)
- **OCR识别**: 基于PaddleOCR的高精度文字识别
- **AI分析**: 支持多种AI模型OpenAI GPT、Anthropic Claude等
- **内容编辑**: 内置编辑器,支持图片标注和文字编辑
- **历史记录**: 本地数据库保存所有截图和分析记录
- **快捷操作**: 全局快捷键支持,快速截图和分析
## 技术栈
- **GUI框架**: PyQt6 6.6.1
- **数据库**: SQLAlchemy 2.0.25
- **OCR引擎**: PaddleOCR 2.7.0.3
- **AI模型**: OpenAI API、Anthropic API
- **图像处理**: Pillow 10.0.0
## 安装
### 环境要求
- Python 3.8+
- 操作系统: Windows / macOS / Linux
### 安装步骤
1. 克隆项目
```bash
git clone <repository_url>
cd CutThenThink
```
2. 创建虚拟环境
```bash
python -m venv venv
source venv/bin/activate # Linux/macOS
# 或
venv\Scripts\activate # Windows
```
3. 安装依赖
```bash
pip install -r requirements.txt
```
4. 配置AI服务
创建配置文件 `config.yaml`:
```yaml
ai:
provider: "openai" # 或 "anthropic"
openai:
api_key: "your-openai-api-key"
model: "gpt-4"
anthropic:
api_key: "your-anthropic-api-key"
model: "claude-3-sonnet-20240229"
```
## 使用方法
启动应用:
```bash
python src/main.py
```
默认快捷键:
- `Ctrl+Shift+A`: 截图并分析
- `Ctrl+Shift+S`: 仅截图
- `Ctrl+Shift+H`: 打开历史记录
- `Esc`: 取消截图
## 项目结构
```
CutThenThink/
├── src/
│ ├── gui/ # GUI组件
│ │ ├── widgets/ # 自定义控件
│ │ └── styles/ # 样式文件
│ ├── core/ # 核心功能
│ ├── models/ # 数据模型
│ ├── config/ # 配置管理
│ └── utils/ # 工具函数
├── data/ # 数据目录
│ ├── images/ # 截图存储
│ └── database/ # 数据库文件
├── requirements.txt # 项目依赖
├── .gitignore # Git忽略文件
└── README.md # 项目说明
```
## 开发计划
- [x] 项目初始化
- [ ] 基础GUI框架搭建
- [ ] 截图功能实现
- [ ] OCR识别集成
- [ ] AI分析功能
- [ ] 数据库存储
- [ ] 历史记录管理
- [ ] 配置系统
- [ ] 快捷键支持
- [ ] 打包发布
## 贡献指南
欢迎提交Issue和Pull Request
## 许可证
MIT License
## 联系方式
- 项目地址: [GitHub Repository]
- 问题反馈: [Issues]