todoist
Todoist CLI client for managing tasks from the terminal
Description
todoist is a command-line client for the Todoist task management service, written in Go. It provides full task lifecycle management including listing, adding, modifying, closing, and deleting tasks. Supports project and label management, task filtering, priority levels, and due dates. Integrates with peco or fzf for interactive fuzzy selection. Outputs can be formatted as CSV for scripting. Requires a Todoist account and API token.
Install
brew install sachaos/todoist/todoistAI Summary
A Go-based CLI client for Todoist that provides full task management with filtering, labels, projects, and fuzzy-selection integration.
Capabilities
- + List, add, modify, close, and delete tasks
- + Manage projects and labels
- + Filter tasks with custom filter syntax
- + Quick-add tasks with natural language processing
- + Integration with peco/fzf for interactive selection
- + CSV output for scripting and data export
- + Shell completion for bash and zsh
- + View completed tasks and karma stats
Use When
- → You use Todoist and want to manage tasks without leaving the terminal
- → You want to script task creation and management
- → You prefer keyboard-driven task management over a GUI
Avoid When
- x You don't have a Todoist account
- x You want an offline-only todo manager
- x You need a full project management suite beyond task tracking
Usage Patterns
List all tasks
todoist list Shows all active tasks from your Todoist account
Quick-add a task
todoist quick 'Buy groceries tomorrow #Shopping' Adds a task using Todoist's natural language parsing
Filter tasks by project
todoist list --filter '#Work' Shows only tasks in the Work project
Close a task
todoist close TASK_ID Marks a task as complete