FreeTodo — 智能待办管理
AI 驱动的智能待办管理应用,帮你自动分解任务、整理上下文,让目标落地。
- Star 数
- ★ 2.5k
- 最近更新
- 8 个月前
- License
- NOASSERTION
- 主语言
- TypeScript
- FA 评分
- 21/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 个人用户希望将一个大项目(如'学习新语言')自动分解为每日可执行的小任务,并通过对话式引导逐步完成。
- 不适合
- 需要开箱即用稳定版本的用户,项目仍处 v0.1 早期开发阶段
- 希望多设备云同步协作的团队,数据仅存本地 SQLite
- 不愿自行部署 Python 后端与 Node.js 前端的非技术用户
这个 Agent 能做什么,适合哪些场景?
FreeTodo 是一款 AI 驱动的智能待办管理应用,采用前后端分离架构:后端为 FastAPI(Python),前端为 Next.js(React + TypeScript),并支持 Electron 桌面封装。它通过对话式 AI 交互,能自动将复杂任务分解为可执行的子任务,并从对话中提取待办事项。核心功能包括层级任务、优先级、标签、截止日期、多视图日历(日/周/月)以及拖拽排期。界面支持多面板布局、深色/浅色主题,并完整支持中英文。数据存储使用 SQLite 和 ChromaDB(向量数据库)。该项目是 FreeU 项目的一部分,当前重点在输入层,收集用户日常信息并转化为待办事项。
FreeTodo 提供 RESTful API 服务,位于 lifetrace/ 目录,启动命令为 python -m lifetrace.server,默认端口 8001。前端开发服务器位于 free-todo-frontend/,使用 pnpm 安装依赖并运行 pnpm dev,自动检测后端端口。AI 功能:通过引导式问卷自动分解任务;从聊天响应中提取待办;根据当前待办上下文提供建议。日历支持拖拽排期和快速创建。数据层使用 SQLite(lifetrace.db)存储元数据,ChromaDB 存储向量用于 AI 功能。还包含 Electron 桌面应用,支持系统通知和托盘。
- 个人用户希望将一个大项目(如'学习新语言')自动分解为每日可执行的小任务,并通过对话式引导逐步完成。
- 自由职业者使用日历视图进行周计划,拖拽待办事项到具体时间段,直观安排工作日程。
- 团队项目成员通过 AI 聊天快速创建任务,并从会议纪要中提取待办事项,无需手动输入。
- 注重隐私的用户希望自托管待办应用,使用本地 SQLite 数据库,降低云端依赖。
- 开发者希望基于 FastAPI 和 Next.js 扩展或定制待办功能,利用前端模块化结构添加新面板。
如何安装或部署这个 Agent?
克隆仓库:git clone https://github.com/FreeU-group/FreeTodo。后端依赖:安装 Python 3.12 和 uv(curl -LsSf https://astral.sh/uv/install.sh | sh 或 Windows 使用 irm https://astral.sh/uv/install.ps1 | iex)。在仓库根目录运行 uv sync 安装依赖,并激活虚拟环境(source .venv/bin/activate 或 .venv\Scripts\activate)。前端依赖:需要 Node.js 20+ 和 pnpm,进入 free-todo-frontend/ 运行 pnpm install。
如何使用这个 Agent?
启动后端:在激活的虚拟环境中运行 python -m lifetrace.server,首次启动会生成 config.yaml,可编辑 lifetrace/config/config.yaml 自定义配置(如提示词模板在 lifetrace/config/prompt.yaml)。启动前端:在 free-todo-frontend/ 下运行 pnpm dev,它自动探测后端端口并设置代理。浏览器访问前端 URL(通常 http://localhost:3001)。使用 AI 功能需要有 LLM 提供方(如 OpenAI)的 API 密钥,具体配置需在 config.yaml 中设置。
这个 Agent 有哪些优点和局限?
- 基于 AI 的智能任务分解,可自动将复杂目标拆解为可操作步骤。
- 采用 FastAPI + Next.js 前后端分离,易于扩展和二次开发。
- 提供日历多视图和拖拽排期,提升日程管理效率。
- 多语言(中英文)和主题支持及 Electron 桌面应用。
- 项目有清晰的路线图,未来将集成主动服务,可看到演进方向。
- 目前处于开发早期(v0.1),功能可能不稳定,且依赖 AI 基础设施(需 LLM API 密钥)才能充分发挥。
- 需要同时管理后端(Python)和前端(Node.js)两个服务,部署复杂度较高。
- 数据存储在本地 SQLite,缺少云同步能力,不适合多设备协作场景。
- 许可证为 FreeU Community License,包含商业使用附加条件,需仔细评估是否符合自身用途。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| FreeTodo — 智能待办管理 当前 | 21 · 缺口较多 | 网页应用免费 + 模型费 | ★ 2.5k | 8 个月前 | TypeScript | — |
| OpenExecutive 虚拟高管团队 | 43 · 缺口较多 | 自托管服务免费 + 模型费 | ★ 5.6k | 今天 | Python | Claude API |
| GAIA 个人 AI 助手 | 73 · 存在缺口 | 云服务 / SaaS免费版 + 付费版 | ★ 313 | 1 天前 | Python | — |
| Gini Agent:会记忆、会学习的个人智能体 | 62 · 存在缺口 | 命令行工具免费 + 模型费 | ★ 2k | 3 个月前 | TypeScript | Codex · OpenAI API · Claude API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:仓库未提供权限模型、用户确认机制、数据流说明或敏感数据处理细节。依赖列表包含多个第三方包,但无安全审计或漏洞扫描证据。外部效果(如网络请求、文件系统访问)未明确说明。回滚机制未提及。来源归属仅通过README中的贡献者徽章和社区链接体现,但发布者身份未验证。因此所有信任标准均得0分。
证据显示:README和pyproject.toml中的项目描述不一致(README称FreeTodo,pyproject称LifeTrace),但代码结构基本一致。依赖锁定文件uv.lock存在,但未验证其完整性。失败消息未在文档中说明。因此自一致性得1分,依赖可用性得1分,失败消息得0分。
证据显示:README描述了目标用户(个人用户)和多种使用场景(任务管理、日历、AI助手)。能力边界在README中部分说明(如AI任务分解、多视图日历)。触发精度未明确(如AI何时触发任务提取)。环境适配方面,README提供了Windows/macOS/Linux的安装说明,但未提及特定环境限制。因此各得1分。
证据显示:README提供了清晰的项目结构、安装步骤和快速开始指南。命名基本稳定(如lifetrace、free-todo-frontend)。示例和FAQ部分缺失。已知限制未明确列出。许可证为FreeU Community License,但未提供完整文本。版本号在pyproject.toml中为0.1.2,但无变更日志。维护责任通过贡献指南和社区链接体现。因此信息架构得2分,安装说明得2分,其余各得1分。
证据显示:输出可用性方面,README描述了功能,但未提供实际输出示例。边际价值方面,AI任务分解和日历集成可能提供额外价值,但未量化。成本效益方面,依赖较多,但未提供性能或资源消耗数据。因此各得1分。
证据显示:README中的功能声明未提供具体实现细节或测试证据。测试文件存在,但仅覆盖部分功能,且未提供测试结果。跨来源验证不足,仅依赖单一仓库。事实与推断分离方面,README区分了已完成和计划功能,但未明确标注推断。因此各得1分。
- 源码中未见:最小权限约束只授予完成任务所需的权限:用专用账号或只读令牌,并限定可访问的目录和仓库。
- 源码中未见:执行前用户确认开启或自行加上执行前确认;先在沙箱或测试环境跑通,确认行为后再接入真实数据。
- 源码中未见:数据流向说明运行时观察它连接了哪些外部服务(代理或防火墙日志);弄清数据去向之前不要输入敏感数据。
- 源码中未见:敏感信息处理使用专用、低权限、可随时吊销的 API 密钥,不要复用生产凭据,也不要让密钥出现在日志里。
- 源码中未见:依赖安全审查安装前固定版本并做一次依赖扫描(如 npm audit、pip-audit);优先放在容器里运行。
- 源码中未见:外部影响披露先弄清它会写入、发送或修改哪些外部系统,用测试账号或测试仓库验证后再接入正式环境。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 源码中未见:来源归属可核验从官方仓库或包源安装,核对发布者和仓库地址,避免同名仿冒包。
- 发布者身份未验证,请谨慎使用。
- README与pyproject.toml描述不一致,可能影响项目理解。
- 依赖众多且未提供安全审计,存在供应链风险。
- 未提供数据流和权限说明,可能涉及隐私问题。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
0.1.2 0.1.2 (Capybara)
发布说明摘录
What's Changed * Doc update by @Royce17 in https://github.com/FreeU-group/FreeTodo/pull/56 * chore: update wechat.png asset for enhanced visual consistency by @Royce17 in https://github.com/FreeU-group/FreeTodo/pull/59 * chore: update wechat.png asset for improved visual consistency by @Royce17 in https://github.com/FreeU-group/FreeTodo/pull/61 * dev liji by @Royce17 in https://github.com/FreeU-group/FreeTodo/pull/72 * fix(ci): pr-head install checks + tauri prebuild by @Royce17 in https://github.com/FreeU-group/FreeTodo/pull/73 …在 GitHub 查看 ↗ -
0.1.1 0.1.1 (Capybara)
发布说明摘录
What's Changed * Logo update & OnBoardingTour by @Royce17 in https://github.com/FreeU-group/FreeTodo/pull/55 Full Changelog: https://github.com/FreeU-group/FreeTodo/compare/0.1.0...0.1.1 ⚠️ Warning: for macOS dmg After draging FreeTodo into /Applications folder, user should execute the following command in shell: xattr -dr com.apple.quarantine /Applications/FreeTodo.app > Feel free to ignore any subsequent pop-up warnings or errors. Then, you are free to use FreeTodo.在 GitHub 查看 ↗
常见问题
FreeTodo 是否能完全离线运行?
使用 AI 功能需要哪些配置?
lifetrace/config/config.yaml 中设置,并在 prompt.yaml 中可调整提示词。是否支持移动端访问?
任务数据如何备份?
lifetrace/data/lifetrace.db,可以通过备份该文件来备份任务数据,也可导出日历等。