Overview โ
OpenTask is a self-hosted, AI-enhanced task manager. Single Docker container with SQLite โ your data stays on your server. AI is entirely optional.
๐ Web (PWA) ยท ๐ฑ iOS (native) ยท โ Apple Watch ยท ๐ REST API
(theme toggle also available in the top bar)




AI-native task management โ
Every task gets AI-generated commentary (see image below) and an attention score (see "13" below). AI sees your full task list and writes a one-liner โ what it means, why it matters, what you might be forgetting.

Each task gets an attention score so you can filter by Stale, Act Soon, Quick Win, or Misprioritized โ surfacing tasks like "Birthday card for Mom due Sunday โ she's been waiting on the yellow flowers one, and it's been on your list for 5 days."
Natural language input. Type "weekly sprint meeting with team thursday 10am, remember to post in Slack, it's important" and AI parses it into a structured task โ extracting the title, due date, recurrence, priority, project, and notes. No forms, no dropdowns, no manual field entry.


What's Next. AI recommendations that surface overlooked or forgotten tasks โ the ones that have been sitting quietly while you focus on what's urgent.
AI is entirely optional โ disabled by default. When it's off, every trace of AI disappears from the UI. When it's on, it uses different models for different features: fast models for parsing, capable models for analysis. Works with Claude, GPT-4.1-mini, Grok, DeepSeek, and local models via Ollama. See AI Features for setup.
Built around how you actually work โ
OpenTask treats snooze as a first-class action, not an afterthought. Due dates on most tasks are reminders, not deadlines โ and snoozing them forward is the normal workflow.
Every task has a quick panel with time presets, fine-grained adjustments, and a bulk snooze button that clears your entire overdue list in one tap. Urgent tasks are excluded from bulk snooze and always require a deliberate decision. See Tasks & Priority and Snooze & Time for details.


Native push notifications โ
A native iOS companion app delivers real push notifications with interactive snooze actions โ including Apple Watch support. Snooze or complete tasks directly from the notification without opening the app. Source code included โ not on the App Store.



Full API โ
Every operation in the UI is available over HTTP. OpenTask ships with a REST API, an OpenAPI 3.1 spec, and Bearer token auth. Script it with curl, pipe it into Apple Shortcuts, or build integrations with signed webhooks that fire on task events.
More โ
- Full undo/redo. Every action is logged and reversible.
- Trash & archive. Deleted tasks go to trash, completed tasks go to archive. Nothing is permanently lost until you say so.
- Data export. JSON and CSV export of all your tasks, projects, and completions. Nothing is locked in.
- Reverse proxy auth. Works with Authelia, Authentik, and other auth proxies out of the box.
Ready to try it? Get started โ
Tech stack โ
- Runtime: Next.js 16 (App Router) + React 19 + TypeScript
- Database: SQLite with WAL mode (better-sqlite3)
- Auth: NextAuth/Auth.js (credentials provider, JWT sessions)
- Styling: Tailwind CSS 4 + Shadcn UI
