FreeTodo — AI-Powered Todo Management

An AI-driven todo app that auto-manages your personal task context, breaking down complex goals into actionable steps.

Stars
★ 2.5k
Last updated
8mo ago
License
NOASSERTION
Primary language
TypeScript

At a glance

How it runs
Web appDesktop appSelf-hosted service
Works with
Portable with changes
Cost
Free software; you pay for model usage
Setup effort
Medium · a few setup steps
You'll need
Python 3.12Node.js 20+pnpmuvFastAPISQLiteChromaDBShell / CLINetwork accessLocal filesystem
Typical use
A professional wants to break down a large project like 'learn a new language' into daily actionable subtasks guided by an AI questionnaire.
Not a fit if
  • Users needing a stable release; the project is still early v0.1
  • Teams wanting cloud sync across devices; data stays in local SQLite
  • Non-technical users unwilling to run both a Python backend and Node.js frontend

What does this agent do, and when should you use it?

FreeTodo is an AI-powered intelligent todo management application with a frontend-backend separation architecture: a FastAPI (Python) backend and a Next.js (React + TypeScript) frontend, plus an Electron desktop wrapper. It uses conversational AI to automatically decompose complex projects into manageable subtasks and extracts actionable todos from chat responses. Key features include hierarchical tasks, priorities, tags, deadlines, a multi-view calendar (day/week/month) with drag-and-drop scheduling, and a multi-panel UI with dark/light themes. The app fully supports English and Chinese. Data is stored locally using SQLite and ChromaDB (a vector database) for AI features. It is part of the FreeU project, currently focusing on the input layer, collecting user daily information and converting it into todos.

FreeTodo provides a RESTful API backend, located in the lifetrace/ directory, started via python -m lifetrace.server on port 8001. The frontend dev server is in free-todo-frontend/, installed with pnpm and run with pnpm dev, automatically detecting the backend port. AI features: contextual task breakdown via guided questionnaires, extraction of tasks from AI chat responses, and suggestions based on your current todo context. The calendar supports drag-and-drop scheduling and quick todo creation from time slots. Data is persisted in SQLite (in lifetrace/data/lifetrace.db) and embeddings in ChromaDB. It also includes an Electron desktop app with native notifications and system tray.

  1. A professional wants to break down a large project like 'learn a new language' into daily actionable subtasks guided by an AI questionnaire.
  2. A freelancer uses the week view of the calendar to drag todos onto time slots and plan their week visually.
  3. A team member creates tasks through the AI chat interface and extracts action items from meeting notes without manual entry.
  4. A privacy-conscious user wants a self-hosted todo app with local storage (SQLite) to avoid cloud dependency.
  5. A developer wants to extend the todo functionality by adding custom panels to the frontend or use the FastAPI backend to build custom integrations.

How do you install or deploy this agent?

Clone the repo: git clone https://github.com/FreeU-group/FreeTodo. Backend dependencies: Install Python 3.12 and uv (use curl -LsSf https://astral.sh/uv/install.sh | sh on macOS/Linux, or irm https://astral.sh/uv/install.ps1 | iex on Windows). In the repo root, run uv sync to install dependencies, then activate the virtual environment (source .venv/bin/activate on macOS/Linux, .venv\Scripts\activate on Windows). Frontend dependencies: Need Node.js 20+ and pnpm; go to free-todo-frontend/ and run pnpm install.

How do you use this agent?

Start the backend: in the activated virtual environment, run python -m lifetrace.server. On first run, config.yaml is auto-generated from default_config.yaml; edit lifetrace/config/config.yaml to configure settings, including AI prompt templates in lifetrace/config/prompt.yaml. Start the frontend: in free-todo-frontend/, run pnpm dev; it automatically detects the backend port and sets up a proxy. Open the browser to the frontend URL (usually http://localhost:3001). To use AI features, you need an LLM provider (e.g., OpenAI) API key, configured in config.yaml.

What are this agent's strengths and limitations?

Pros
  • AI-enabled task breakdown automatically converts complex goals into actionable steps.
  • Separation of FastAPI and Next.js makes the codebase modular and extensible.
  • Multi-view calendar with drag-and-drop scheduling enhances time management.
  • Bilingual support (English/Chinese) and theming, plus Electron desktop app.
  • Clear roadmap towards proactive services, showing evolution potential.
Limitations
  • Still in early development (v0.1), may be unstable, and AI features depend on external LLM APIs.
  • Requires managing two services (Python backend and Node.js frontend), increasing deployment complexity.
  • Local SQLite storage lacks cloud sync, making multi-device collaboration difficult.
  • License is FreeU Community License with additional commercial terms, requiring careful evaluation.

How does this agent compare with similar options?

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
FreeTodo — AI-Powered Todo Management This agent 21 · Major gaps Web appFree + model costs ★ 2.5k 8mo ago TypeScript —
OpenExecutive Virtual Executive Team 43 · Major gaps Self-hosted serviceFree + model costs ★ 5.6k today Python Claude API
GAIA — Personal AI Assistant 73 · Some gaps Hosted serviceFreemium ★ 313 1d ago Python —
Gini Agent: The Agent That Remembers and Learns 62 · Some gaps CLIFree + model costs ★ 2k 3mo ago TypeScript Codex · OpenAI API · Claude API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Major gaps
21/ 100 5-point scale 1.1 / 5
Trust 0/29
Reliability 3/14
Adaptability 4/18
Convention 8/18
Effectiveness 4/13
Verifiability 2/8
Why each dimension lost points
Trust0 / 29 · 0.0/5

Evidence: The repository provides no permission model, user confirmation mechanism, data flow description, or sensitive data handling details. The dependency list includes many third-party packages, but no security audit or vulnerability scanning evidence. External effects (e.g., network requests, file system access) are not clearly stated. Rollback mechanisms are not mentioned. Source attribution is only via contributor badges and community links in README, but publisher identity is unverified. Therefore all trust criteria score 0.

Reliability3 / 14 · 1.1/5

Evidence: The project description in README and pyproject.toml are inconsistent (README says FreeTodo, pyproject says LifeTrace), but the code structure is largely consistent. A uv.lock file exists, but its integrity is not verified. Failure messages are not documented. Therefore self-consistency scores 1, dependency availability scores 1, and failure messages score 0.

Adaptability4 / 18 · 1.1/5

Evidence: README describes target users (individuals) and multiple usage scenarios (task management, calendar, AI assistant). Capability boundaries are partially described (e.g., AI task breakdown, multi-view calendar). Trigger precision is not clear (e.g., when AI triggers task extraction). Environment fit is addressed with installation instructions for Windows/macOS/Linux, but no specific environment limitations are mentioned. Therefore each scores 1.

Convention8 / 18 · 2.2/5

Evidence: README provides a clear project structure, installation steps, and quick start guide. Naming is mostly stable (e.g., lifetrace, free-todo-frontend). Examples and FAQ are missing. Known limitations are not explicitly listed. License is FreeU Community License, but full text is not provided. Version is 0.1.2 in pyproject.toml, but no changelog. Maintenance responsibility is indicated via contribution guidelines and community links. Therefore information architecture scores 2, install notes score 2, and others score 1.

Effectiveness4 / 13 · 1.5/5

Evidence: Output usability is described in README, but no actual output examples are provided. Marginal value is suggested by AI task breakdown and calendar integration, but not quantified. Cost-benefit is not addressed; many dependencies but no performance or resource data. Therefore each scores 1.

Verifiability2 / 8 · 1.3/5

Evidence: Feature claims in README are not backed by specific implementation details or test evidence. Test files exist but cover only some functionality, and no test results are provided. Cross-source corroboration is lacking, relying solely on this repository. Fact-inference separation is partially done; README distinguishes completed and planned features, but inferences are not clearly labeled. Therefore each scores 1.

Risks and how to mitigate them
  • Not found in source: least-privilege scopingGrant only what the task needs: a dedicated account or read-only token, scoped to specific directories and repos.
  • Not found in source: confirmation before actingTurn on (or add) a confirmation step before it acts, and try it in a sandbox or test environment before real data.
  • Not found in source: data-flow disclosureWatch which external services it contacts (proxy or firewall logs) and keep sensitive data out until you know where it goes.
  • Not found in source: sensitive-data handlingUse dedicated, low-privilege, revocable API keys — never production credentials — and keep secrets out of logs.
  • Not found in source: dependency securityPin versions and run a dependency audit (npm audit, pip-audit) before installing; prefer running it in a container.
  • Not found in source: disclosed external effectsEstablish which external systems it writes to, sends to or changes, and verify with test accounts or repos before production.
  • Not found in source: rollback or recovery pathBack up first, or work on a git branch or snapshot, so its changes can be undone.
  • Not found in source: verifiable attributionInstall from the official repo or registry and check the publisher and URL to avoid look-alike packages.
  • Publisher identity is unverified; use with caution.
  • README and pyproject.toml descriptions are inconsistent, which may affect understanding.
  • Many dependencies without security audit pose supply chain risks.
  • No data flow or permission documentation, potential privacy concerns.
Evidence confidence: Low Reviewed Aug 12, 2026 Reviewed revision 800cd27344fe
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. plugin/media-crawler/v1.0.0 Crawler Plugin Pre-release
    Release notes excerpt
    该插件的功能是爬取 7 大平台、AI 总结
    View on GitHub ↗
  2. 0.1.2 0.1.2 (Capybara)
    Release notes excerpt
    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 …
    View on GitHub ↗
  3. 0.1.1 0.1.1 (Capybara)
    Release notes excerpt
    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.
    View on GitHub ↗

FAQ

Can FreeTodo work completely offline?
AI features require a connection to an LLM service (likely external API), but core features like task management and calendar work offline, with data stored locally.
What configuration is needed to use AI features?
You need to configure an LLM provider API key (e.g., OpenAI) in lifetrace/config/config.yaml, and you can adjust prompts in prompt.yaml.
Is there mobile support?
There is no native mobile app, but the responsive web interface can be accessed via mobile browsers, and the desktop app is available for Windows/macOS.
How can I back up my task data?
Data is stored in lifetrace/data/lifetrace.db; you can back up that file to preserve your tasks.
View on GitHub ↗ Install ↓

Related agents