A professional command-line interface for TodoPro task management system
Project description
TodoPro CLI
A professional command-line interface for TodoPro task management system, inspired by kubectl.
Features
- Kubectl-inspired: Resource-oriented commands with consistent patterns
- Context-aware: Maintains authentication state and user preferences
- Multi-environment: Switch between dev, staging, and prod contexts seamlessly
- Output flexibility: JSON, YAML, table, and custom formats
- Interactive & scriptable: Menu-driven UI for exploration, flags for automation
- Professional UX: Rich terminal UI with colors, progress indicators, and helpful messages
Installation
# Install from source
uv tool install --from . todopro-cli
Quick Start
# Login to TodoPro
todopro login
# Quick add a task (natural language, just like Todoist)
todopro add "Buy milk tomorrow at 2pm #groceries @shopping"
# List tasks
todopro tasks list
# Create a task (traditional way)
todopro tasks create "Buy groceries"
# Reschedule all overdue tasks to today
todopro tasks reschedule overdue
# Skip confirmation prompt
todopro tasks reschedule overdue --yes
# Get current timezone
todopro auth timezone
# Set timezone (IANA format)
todopro auth timezone Asia/Ho_Chi_Minh
todopro auth timezone America/New_York
todopro auth timezone Europe/London
# 1. Set your timezone
todopro auth timezone Asia/Ho_Chi_Minh
# 2. Check today's tasks (includes overdue)
todopro today
# 3. Reschedule all overdue tasks to today
todopro tasks reschedule overdue
# See what's due today
todopro today
# Get the next task to work on
todopro next
# Complete a task
todopro complete <task_id>
# Reschedule a task to today (quick rescheduling)
todopro reschedule <task_id>
# Reschedule to a specific date
todopro reschedule <task_id> --date tomorrow
todopro reschedule <task_id> --date 2026-02-15
# Task ID Shortcuts
# You can use task ID suffixes instead of full IDs for convenience
# If the full ID is "task-abc123def", you can use:
todopro complete abc123def # Uses suffix
todopro complete 123def # Even shorter suffix
todopro reschedule e562bb # Reschedule to today by suffix
todopro get e562bb # Get task details by suffix
todopro update 123def --content "Updated task"
todopro delete abc123 # Delete by suffix
# View project details
todopro describe project <project_id>
# Get help
todopro --help
Development
# Install with development dependencies
uv pip install -e ".[dev]"
# Run all tests with coverage
uv run pytest --cov=src/todopro_cli --cov-report=term-missing
# Run tests for specific module
uv run pytest tests/test_api_client.py -v
# Generate HTML coverage report
uv run pytest --cov=src/todopro_cli --cov-report=html
# Open htmlcov/index.html in browser
# Format code
black src/ tests/
# Lint code
ruff check src/ tests/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
todopro_cli-0.1.0.tar.gz
(54.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file todopro_cli-0.1.0.tar.gz.
File metadata
- Download URL: todopro_cli-0.1.0.tar.gz
- Upload date:
- Size: 54.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
39b4b8d81209825434258cd6d4f6a00d965f260dd8f7fd552d85d57ab9605b09
|
|
| MD5 |
45346d4e9b632b8578c99179b4ba941f
|
|
| BLAKE2b-256 |
fc56406cf25d4ac2296c41ec233b1046068e6b8a76b4e2c505c2fd483610be2e
|
File details
Details for the file todopro_cli-0.1.0-py3-none-any.whl.
File metadata
- Download URL: todopro_cli-0.1.0-py3-none-any.whl
- Upload date:
- Size: 54.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ccd4fc1d3d63d92c8993fda76fc57d21e89d618f3e44343d4d0cf9c18fd5a517
|
|
| MD5 |
f9818ba8567d75e3ffeb045caf259ce6
|
|
| BLAKE2b-256 |
ab16917c295dd04be6c5a9e21835519d8b5438c86c881cd70d5c2c4eb8af2050
|