# Dayflow **Repository Path**: miku-0410/Dayflow ## Basic Information - **Project Name**: Dayflow - **Description**: ⏱️ AI 驱动的智能时间追踪工具 (Windows) - 后台静默录屏,自动分析你的时间都花在哪了 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-11 - **Last Updated**: 2025-12-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
# ⏱️ Dayflow for Windows **智能时间追踪与生产力分析工具** [![Python](https://img.shields.io/badge/Python-3.10+-blue?logo=python&logoColor=white)](https://python.org) [![PySide6](https://img.shields.io/badge/GUI-PySide6-green?logo=qt&logoColor=white)](https://doc.qt.io/qtforpython/) [![License](https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey)](LICENSE) [![Platform](https://img.shields.io/badge/Platform-Windows%2010%2F11-0078D6?logo=windows&logoColor=white)](https://www.microsoft.com/windows) *后台静默录屏 → AI 智能分析 → 可视化时间轴* [![Download](https://img.shields.io/badge/⬇️_下载安装包-EXE-brightgreen?style=for-the-badge)](https://github.com/SeiShonagon520/Dayflow/releases) **中文** | [English](README_EN.md)
--- ## 🎯 这是什么? **Dayflow** 是一款基于 AI 的智能时间追踪工具。它在后台静默录制你的屏幕,通过视觉大模型自动识别你在做什么,然后生成一目了然的时间轴,帮你了解每天的时间都花在哪里了。 ### 💡 为什么需要它? - **不知道时间去哪了?** → Dayflow 自动记录,无需手动打卡 - **想提高工作效率?** → AI 分析你的工作模式,发现分心点 - **需要工作日志?** → 自动生成每日活动报告 - **远程办公考勤?** → 客观记录工作时长和内容 ### 🏆 核心优势 | 优势 | 说明 | |------|------| | **零操作** | 开启即用,无需手动记录,AI 全自动识别 | | **超低功耗** | 1 FPS 录制 + 智能压缩,CPU 占用 < 1% | | **隐私优先** | 数据本地存储,视频分析后自动删除 | | **智能分类** | AI 自动识别:工作/学习/娱乐/社交/休息 | | **生产力评分** | 每段活动的效率打分,量化你的专注度 | --- ## ✨ 功能特性 | 功能 | 描述 | |------|------| | 🎥 **低功耗录屏** | 1 FPS 极低资源占用,后台静默运行 | | 🤖 **AI 智能分析** | 视觉大模型识别屏幕活动,自动归类 | | 📊 **时间轴可视化** | 直观展示每日时间分配,一目了然 | | 💡 **生产力洞察** | AI 驱动的效率评估与改进建议 | | 🔒 **隐私安全** | 数据本地存储,分析后自动清理视频 | ### 🆕 最新功能 | 功能 | 描述 | |------|------| | 📧 **邮件日报** | 每日 12:00 和 22:00 自动发送效率报告到邮箱 | | 📋 **深度分析报告** | 专业级行为分析,识别效率瓶颈,提供改进策略 | | 🤖 **AI 点评** | AI 生成个性化每日总结,朋友式鼓励与建议 | | 🔄 **自动更新** | 检测新版本、后台下载、一键安装,保持最新 | | 🚀 **开机自启动** | 支持开机自动启动并最小化到托盘 | | 🪟 **自定义标题栏** | VS Code 风格,内置日志查看、支持最小化到托盘 | | 📊 **统计面板** | 全新统计页面,查看时间分布与生产力趋势 | | 📅 **日期切换** | 查看历史记录,支持前一天/后一天/今天快捷切换 | | 📥 **CSV 导出** | 一键导出活动数据为 CSV 文件,便于分析和存档 | | ⏸️ **暂停录制** | 处理隐私内容时可暂停,完成后继续录制 | | 🎨 **主题切换** | IDE 风格暗色/亮色主题,自动保存偏好 | | 📦 **EXE 打包** | 支持打包为独立可执行文件,无需 Python 环境 | --- ## 🖥️ 界面预览 ### 时间轴页面 ![Dayflow 时间轴](assets/Dayflow_index.png) *时间轴页面:展示每日活动卡片,包含时间段、应用程序、活动摘要和生产力评分* ### 统计页面 ![Dayflow 统计](assets/Dayflow_Statistics.png) *统计页面:查看本周/本月的时间分布与生产力趋势* ### 📧 邮件日报功能 #### 设置界面 ![邮件设置](assets/Dayflow_Email_Settings.png) *邮件推送设置:配置 QQ 邮箱地址和授权码,支持测试发送* #### 邮件报告效果
报告示例1 报告示例2
*每日效率报告:包含时间统计、分类分布图、AI 个性化点评(不同场景下的报告内容)* #### 深度分析报告 ![深度分析报告](assets/Dayflow_Email_DeepAnalysis.png) *专业分析报告:行为模式诊断、效率瓶颈识别、改进策略建议* 每封邮件包含两个层次的分析: | 模块 | 内容 | 风格 | |------|------|------| | 💬 **今日洞察** | 有趣发现 + 小建议 | 朋友聊天式 | | 📋 **专业分析报告** | 深度行为分析 + 改进策略 | 专家级 | 专业分析报告维度: | 维度 | 说明 | |------|------| | 🔍 **行为模式诊断** | 识别当日工作类型(深度工作/碎片化/多任务切换) | | ⚠️ **效率瓶颈识别** | 基于数据找出低效时段和行为 | | ✨ **优势与亮点** | 用数据支撑的正向反馈 | | 📝 **改进策略** | 2-3 条具体可执行的建议 | #### 功能亮点 | 特性 | 说明 | |------|------| | ⏰ **定时推送** | 每日 12:00 和 22:00 自动发送报告 | | 📊 **数据汇总** | 总记录时长、效率评分、深度工作次数 | | 📈 **分类统计** | 可视化展示各类别时间占比和效率对比 | | 🎯 **专注力分析** | 最长专注、碎片占比、时段效率对比 | | 🤖 **双层分析** | 朋友式点评 + 专业级深度报告 | ### 🔄 自动更新 ![自动更新](assets/Dayflow_AutoUpdate.png) *软件更新:一键检查更新、后台下载、自动安装* Dayflow 支持自动检测和安装更新,让你始终使用最新版本: | 功能 | 说明 | |------|------| | 🔍 **检查更新** | 一键检测 GitHub 最新版本 | | ⬇️ **后台下载** | 多源下载,支持 GitHub 直连和镜像加速 | | 📊 **下载进度** | 实时显示下载进度条 | | 🚀 **一键安装** | 下载完成后自动重启并安装 | | 🔗 **手动下载** | 网络受限时提供手动下载链接 | 更新流程: 1. 点击 **🔍 检查更新** 检测新版本 2. 发现新版本后点击 **⬇️ 下载更新** 3. 下载完成后点击 **🚀 立即安装** 4. 程序自动重启并完成更新 ### 🚀 开机自启动 ![开机自启动](assets/Dayflow_AutoStart.png) *开机启动:开机自动运行,静默启动到系统托盘* | 功能 | 说明 | |------|------| | 🟢 **一键开关** | 设置页面快速启用/禁用 | | 🔇 **静默启动** | 开机后自动最小化到托盘,不打扰工作 | | 📍 **路径检测** | 移动 EXE 后自动提示更新启动路径 | | 🔒 **无需管理员** | 使用用户级注册表,无需管理员权限 | > 💡 **注意**:开机自启动仅在打包后的 EXE 版本可用,开发模式下不可用。 ### 界面说明 | 区域 | 功能 | |------|------| | **自定义标题栏** | VS Code 风格,支持拖拽移动和最小化到托盘 | | **左侧边栏** | 导航菜单:时间轴、统计、设置、录制控制 | | **时间轴页面** | 显示今日所有活动卡片,按时间排序 | | **统计页面** | 查看本周/本月时间分布与生产力趋势 | | **设置页面** | API 配置、邮件设置、主题、自启动、更新、日志 | | **系统托盘** | 最小化后在托盘运行,右键菜单控制 | ### 活动卡片详解 每张卡片包含: - ⏰ **时间范围** - 活动的开始和结束时间 - 📁 **活动类别** - 工作/学习/编程/会议/娱乐/社交/休息 - 💻 **应用程序** - 使用的主要软件 - 📝 **活动摘要** - AI 生成的活动描述 - ⚡ **生产力评分** - 0-100% 的效率评估 --- ## 🚀 快速开始 ### 环境要求 - Windows 10/11 (64-bit) - Python 3.10+ - [FFmpeg](https://ffmpeg.org/download.html) (添加到系统 PATH) ### 安装步骤 ```bash # 1. 克隆项目 git clone https://github.com/SeiShonagon520/Dayflow.git cd Dayflow # 2. 创建 Conda 环境(推荐) conda create -n dayflow python=3.11 -y conda activate dayflow # 3. 安装依赖 pip install -r requirements.txt # 4. 启动应用 python main.py ``` ### 打包为 EXE(可选) 如果想分发给其他人使用,无需安装 Python: ```bash # 安装打包工具 pip install pyinstaller # 运行打包脚本 python build.py # 或直接双击 build.bat ``` 打包完成后,`dist/Dayflow/` 目录可以直接复制给其他人使用。 --- ## 📖 使用指南 ### 1️⃣ 配置 API 1. 打开应用,点击左侧 **⚙️ 设置** 2. 配置 API 信息: - **API 地址**:OpenAI 兼容接口地址 - **API Key**:你的 API 密钥 - **模型名称**:需支持视觉的模型 3. 点击 **测试连接** 验证 4. 点击 **保存配置** > 💡 支持任意 OpenAI 兼容接口:心流API、OpenAI、DeepSeek、本地模型(Ollama)等 ### 2️⃣ 开始录制 1. 点击 **▶ 开始录制** 2. 程序在后台以 1 FPS 静默录屏 3. 每 60 秒生成一个视频切片 4. 自动发送到云端 AI 分析 ### 3️⃣ 查看时间轴 - 分析结果自动显示在首页时间轴 - 每张卡片代表一段活动时间 - 包含:活动类别、应用程序、生产力评分 ### 4️⃣ 邮件日报(可选) 1. 打开 **设置** → **邮件推送** 2. 填写 QQ 邮箱地址和授权码 3. 点击 **保存配置** 4. 点击 **测试发送** 验证 > 💡 授权码获取:QQ 邮箱 → 设置 → 账户 → POP3/SMTP 服务 → 生成授权码 **邮件内容**: - 📊 当日时间统计(总时长、效率评分) - 📈 各类别时间分布 - 💬 AI 生成的个性化点评与建议 ### 5️⃣ 开机自启动(可选) 1. 打开 **设置** → **开机启动** 2. 点击按钮启用/禁用 3. 启用后开机自动运行并最小化到托盘 > 💡 移动 EXE 文件后,程序会自动提示更新启动路径。 ### 6️⃣ 检查更新(可选) 1. 打开 **设置** → **软件更新** 2. 点击 **检查更新** 3. 发现新版本后点击 **下载更新** 4. 下载完成后点击 **立即安装** ### 7️⃣ 系统托盘 - 点击标题栏 ↓ 按钮 → 最小化到托盘 - 点击关闭 × → 询问退出或最小化 - 双击托盘图标 → 打开主窗口 - 右键托盘 → 控制录制/退出 --- ## 📁 项目结构 ``` Dayflow/ ├── 📄 main.py # 启动入口(支持 --minimized 参数) ├── ⚙️ config.py # 配置文件(含版本号) ├── 📦 requirements.txt # 依赖清单 ├── 🔨 build.py # EXE 打包脚本 ├── 🔨 build.bat # 一键打包批处理 ├── 🔄 updater.py # 独立更新程序 │ ├── 🧠 core/ # 核心逻辑 │ ├── types.py # 数据模型 │ ├── recorder.py # 屏幕录制 (dxcam) │ ├── llm_provider.py # AI API 交互 │ ├── analysis.py # 分析调度器 │ ├── email_service.py # 邮件日报 + 深度分析 │ ├── updater.py # 版本检查 + 多源下载 │ └── autostart.py # 开机自启动管理 │ ├── 💾 database/ # 数据层 │ ├── schema.sql # 表结构定义 │ └── storage.py # SQLite 管理 │ ├── 🎨 ui/ # 界面层 │ ├── main_window.py # 主窗口 + 设置面板 │ ├── timeline_view.py # 时间轴组件 │ ├── stats_view.py # 统计面板 │ └── themes.py # 主题管理 │ └── 🖼️ assets/ # 资源文件 └── icon.ico # 应用图标 ``` --- ## ⚙️ 配置选项 ### 环境变量 | 变量名 | 说明 | 默认值 | |--------|------|--------| | `DAYFLOW_API_URL` | API 地址 | `https://apis.iflow.cn/v1` | | `DAYFLOW_API_KEY` | API 密钥 | (空) | | `DAYFLOW_API_MODEL` | AI 模型 | `qwen3-vl-plus` | ### 数据目录 ``` %LOCALAPPDATA%\Dayflow\ ├── dayflow.db # 数据库(活动记录、设置) ├── dayflow.log # 运行日志 ├── chunks/ # 视频切片(分析后自动删除) └── updates/ # 更新文件缓存 └── Dayflow_vX.X.X.exe # 下载的新版本 ``` --- ## 🛠️ 技术栈 | 组件 | 技术 | |------|------| | GUI 框架 | PySide6 (Qt6) | | 屏幕捕获 | dxcam (DirectX) | | 视频处理 | OpenCV | | 网络请求 | httpx (HTTP/2) | | 数据存储 | SQLite | | AI 分析 | 心流 API (OpenAI 兼容) | --- ## 🔐 安全与隐私 Dayflow 高度重视用户隐私,采用多层保护机制确保数据安全: ### 数据存储 | 数据类型 | 存储位置 | 说明 | |----------|----------|------| | 视频切片 | 本地 `%LOCALAPPDATA%\Dayflow\chunks\` | 仅临时存储 | | 分析结果 | 本地 `dayflow.db` | SQLite 数据库 | | 用户设置 | 本地数据库 | API Key、邮箱配置等 | ### 隐私保护措施 | 措施 | 说明 | |------|------| | 📍 **本地优先** | 所有原始录屏数据仅存储在本地,不会上传完整视频 | | 🗑️ **自动清理** | 视频切片在 AI 分析完成后自动删除,不占用磁盘空间 | | 🖼️ **最小化传输** | 仅提取关键帧图片(每个切片最多 8 帧)发送至 AI 分析 | | ⏸️ **暂停功能** | 处理敏感内容时可随时暂停录制,完成后继续 | | 🔒 **本地数据库** | 分析结果存储在本地 SQLite,不上传至云端 | ### 使用建议 - 处理银行、密码等敏感信息时,点击 **⏸️ 暂停** 按钮 - 完成后点击 **▶ 继续** 恢复录制 - 定期检查 `%LOCALAPPDATA%\Dayflow\` 目录确认数据清理正常 > 💡 **提示**:Dayflow 的设计理念是「本地录制 + 云端分析 + 本地存储」,原始视频永远不会离开你的电脑。 --- ## 💡 灵感来源 本项目灵感源于 [Dayflow (macOS)](https://github.com/JerryZLiu/Dayflow) 开源项目。由于原项目仅支持 macOS 系统,因此我基于相同理念开发了这个 Windows 版本,让更多用户能够体验 AI 驱动的智能时间追踪。 感谢原作者的创意和开源精神!🙏 --- ## 📄 许可证 [CC BY-NC-SA 4.0](LICENSE) © 2024-2025 本项目采用 **知识共享 署名-非商业性使用-相同方式共享 4.0** 协议。 - ✅ 可自由学习、修改、分享 - ✅ 修改或引用时请注明原作者 - ❌ 禁止商业使用 --- ## ⭐ Star 历史 Star History Chart ---
**如果觉得有用,请给个 ⭐ Star!**