Command Line Interface
The otodo CLI is designed for speed and statefulness. Once initialized, it remembers your active workspace, meaning you never have to pass repetitive list flags to manage your tasks.
Infrastructure
Commands for configuring the engine and declarative routing.
otodo init
Initializes the OpenTodo engine on your machine.
| Option | Description |
|---|---|
--dir |
Path to store local SQLite data. Defaults to ~/.otodo/data. |
-u, --url |
PostgreSQL connection string for cloud routing. |
otodo scale
Adjusts the UI thresholds for priority labels.
| Argument | Description |
|---|---|
high |
The integer threshold for a task to be marked HIGH priority. |
medium |
The integer threshold for a task to be marked MEDIUM priority. |
otodo apply
Idempotently applies tasks from a YAML manifest.
| Argument | Description |
|---|---|
file_path |
Path to the .yaml manifest file. |
Todo List Management
Commands for isolating tasks into separate projects or sprints.
otodo create
Provisions a new isolated todo list.
| Argument | Description |
|---|---|
name |
The identifier for the list (e.g., sprint-1). |
otodo use
Switches your active terminal context to a different todo list.
| Argument | Description |
|---|---|
name |
The target list to check out. |
otodo lists
Shows all available todo lists and highlights the currently active one.
otodo rename
Renames an existing todo list.
| Argument | Description |
|---|---|
name1 |
The target list to rename (or the new name if no name2 is provided). |
name2 |
(Optional) The new name for the list. If omitted, renames the active list to name1. |
otodo drop
[Destructive] Permanently deletes a list and all associated tasks.
| Argument | Description |
|---|---|
name |
The list to destroy. |
| Option | Description |
|---|---|
-f, --force |
Bypasses the interactive confirmation prompt. |
Todo Operations
Commands for interacting with the active todo list.
otodo add
Appends a new task to the currently active list.
| Argument | Description |
|---|---|
title |
The description of the task. (Wrap multi-word tasks in "quotes"). |
| Option | Description |
|---|---|
-p, --priority |
Assigns a sorting weight (integer). Defaults to 1. |
otodo update
Updates an existing todo's title or priority.
| Argument | Description |
|---|---|
display_id |
The integer ID shown on the dashboard. |
| Option | Description |
|---|---|
-t, --title |
The new description for the task. |
-p, --priority |
The new priority integer. |
otodo done
Marks a task as completed.
| Argument | Description |
|---|---|
display_id |
The integer ID shown on the dashboard. |
otodo rm
[Destructive] Permanently deletes a task.
| Argument | Description |
|---|---|
display_id |
The integer ID shown on the dashboard. |
Dashboard
Invoking the engine without a command renders the high-density dashboard for the active list. Tasks are automatically sorted by priority.
otodo
| Option | Description |
|---|---|
-a, --all |
Show both pending and completed tasks. |
-d, --done |
Show only completed tasks. |
-h, --high |
Filter for high-priority tasks. |
-m, --medium |
Filter for medium-priority tasks. |
-l, --low |
Filter for low-priority tasks. |