Skip to main content

Google Tasks CLI Development

This directory contains the source code for the Google Tasks CLI application.

For general usage, we recommend installing the package from PyPI:

pip install gtasks-cli

See the main project README.md for more information on installation and usage.

Features

  • Full Google Tasks API integration with OAuth2 authentication
  • Advanced filtering and search capabilities
  • Context management for different task views
  • Reporting and analytics
  • Time tracking and Pomodoro technique integration
  • Recurring tasks and dependencies
  • Offline mode with synchronization
  • Import/export functionality
  • Optimized Advanced Sync for improved performance
  • Multi-account support
  • Interactive mode with keyboard navigation
  • Task deduplication
  • Rich terminal UI with color coding

Installation for Development

To set up the development environment:

# Clone the repository
git clone <repository-url>
cd gtasks_automation/gtasks_cli

# Create and activate a virtual environment
python3 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Install in development mode
pip install -e .

Post-Installation Setup

After installing the package, we strongly recommend running the setup assistant to configure your environment:

python -m gtasks_cli.setup_assistant

The setup assistant will:

  • Verify that gtasks-cli is properly installed
  • Create the configuration directory (~/.gtasks)
  • Set up default configuration values
  • Guide you through Google authentication setup
  • Test basic functionality

For more information, see SETUP_ASSISTANT.md.

Running Tests

Various test scripts are available in the root directory:

# Run a simple sync test
python simple_sync_test.py

# Run comprehensive duplication tests
python comprehensive_dup_test.py

Usage During Development

During development, you can run the CLI directly:

python -m gtasks_cli.main --help

Common development commands:

# Enter interactive mode for a rich, keyboard-driven interface
python -m gtasks_cli.main interactive

# List tasks
python -m gtasks_cli.main list

# Add a new task
python -m gtasks_cli.main add "Buy groceries" --due "tomorrow"

# Mark task as done
python -m gtasks_cli.main done <task-id>

# Sync with Google Tasks
python -m gtasks_cli.main sync

Production Installation

For production use, install the package from PyPI:

pip install gtasks-cli

Then use the gtasks command directly:

gtasks --help

TODO

  • auto-sync on update/add/delete

Development

This project follows a modular architecture with clear separation of concerns:

  • CLI Layer: Command-line interface using Click framework
  • Core Layer: Business logic for task and tasklist management
  • Integration Layer: Google Tasks API integration and authentication
  • Storage Layer: Local caching and configuration management
  • Reporting Layer: Analytics and reporting functionality

License

MIT

Metadata

Release files for gtasks-cli 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gtasks-cli 0.1.6
File Size Uploaded Provenance Actions
gtasks_cli-0.1.6.tar.gz 153.8 kB Without provenance Details for gtasks_cli-0.1.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for gtasks-cli 0.1.6
File Interpreter ABI Platform Actions
gtasks_cli-0.1.6-py3-none-any.whl Python 3 none any Details for gtasks_cli-0.1.6-py3-none-any.whl

Total release size: 328.3 kB

Release files / gtasks_cli-0.1.6.tar.gz

Download URL gtasks_cli-0.1.6.tar.gz
Size 153.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d83d2d14672651ea9ec311f250f45bda2b2d6ef9a0cdfcdc0b7e5e33c8a94a55
BLAKE2b-256 checksum
How to use checksums
962bc79897cc87ba08866483b0d617f5d53c05081f803f0f49be15f0520c44da
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.0

Release files / gtasks_cli-0.1.6-py3-none-any.whl

Download URL gtasks_cli-0.1.6-py3-none-any.whl
Size 174.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
27e9b5bda669dab8d67e4caf2ca882ac6b7edf84f4705216772895bd440b940e
BLAKE2b-256 checksum
How to use checksums
93eaa6edd5fbf282f11fe4751a91a30416aa5245201d1d1b137e2a72c0efc607
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.0

Security for gtasks-cli 0.1.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page