Skip to main content

ToDoWrite CLI Interface - (todowrite_cli)

Package Type: cli | Package Name: todowrite-cli | Status: ✅ Published

A command-line interface for managing complex software projects with hierarchical task management through Goals, Tasks, Concepts, and Commands.

🚀 Installation

From PyPI (Recommended)

pip install todowrite-cli

With PostgreSQL Support

pip install 'todowrite-cli[postgres]'

Development Installation

git clone https://github.com/dderyldowney/todowrite.git
cd todowrite/cli_package
pip install -e .[dev]

Version Information

  • Current Version: Synchronized with todowrite library
  • Version Lock: Always published together with core library
  • Dependencies: Requires todowrite library
  • Python Requirements: 3.12+

📦 Package Context

This is the CLI interface package of the ToDoWrite monorepo:

todowrite/                          # Monorepo root
├── lib_package/                    # Core library (dependency)
├── cli_package/                   # ✅ This package (CLI Interface)
│   ├── src/todowrite_cli/         # CLI source code
│   └── README.md                  # This documentation
├── web_package/                   # Web application (separate)
└── docs/                          # Project documentation

Package Relationships

  • Dependencies: lib_package (todowrite)
  • Version Locked: Always published with same version as core library
  • Semantic Scope: Uses cli scope for commits

Quick Start

Initialize a project

todowrite init

Create a Goal

todowrite create --layer goal --title "Implement User Authentication" --description "Create secure user authentication system"

Create a Task

todowrite create --layer task --title "Design Database Schema" --description "Design and implement database schema for users"

Create a Concept

todowrite create --layer concept --title "OAuth2 Flow" --description "OAuth2 authentication flow implementation"

Create a Command

todowrite create --layer command --title "Build Project" --description "Build the entire project"

Link Nodes

# Use the update command to add parent-child relationships
todowrite update --id "TSK-001" --add-parent "GOAL-001"

Update Progress

todowrite update --id "TSK-001" --status in_progress --progress 50

View Project Status

todowrite list
todowrite get --id "GOAL-001"

Import/Export YAML

todowrite import-yaml
todowrite export-yaml

Commands

Project Management

  • init - Initialize a new project
  • create - Create new nodes (goals, tasks, concepts, commands)
  • get - Get a specific node by ID
  • list - List all nodes with their status
  • status show - Show detailed information about a specific node

Status Management

  • status update - Update node status and progress
  • status complete - Mark a node as completed
  • status list - List all nodes with their status

Import/Export

  • import-yaml - Import nodes from YAML files
  • export-yaml - Export nodes to YAML files
  • sync-status - Check synchronization status between YAML files and database

Database Management

  • db-status - Show storage configuration and status

Configuration

Configuration is stored in ~/.todowrite/config.yaml:

database:
  default_path: "./todowrite.db"
  storage: "sqlite"  # or "postgresql"

yaml:
  base_path: "./configs"

ui:
  colors: true
  table_format: "fancy_grid"

Development

Setup Development Environment

git clone https://github.com/dderyldowney/todowrite.git
cd todowrite/cli_package
pip install -e .[dev]

Run Tests

pytest tests/

Run Linters

black .
isort .
flake8 .
pyright .

Pre-commit Hooks

pre-commit install

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests and linters
  5. Submit a pull request

License

MIT License - see LICENSE file for details.

Metadata

Release files for todowrite-cli 0.6.1

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

Source distribution (sdist)

Source distribution for todowrite-cli 0.6.1
File Size Uploaded
todowrite_cli-0.6.1.tar.gz 12.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for todowrite-cli 0.6.1
File Interpreter ABI Platform
todowrite_cli-0.6.1-py3-none-any.whl Python 3 none any Details

Total release size: 25.3 kB

Release files / todowrite_cli-0.6.1.tar.gz

Download URL todowrite_cli-0.6.1.tar.gz
Size 12.8 kB
Tags Source
SHA-256 checksum
How to use checksums
92c13d44cfb357ac26ce5a0798c11bc15628fb06597c04e9d6e579dc0f964fb7
BLAKE2b-256 checksum
How to use checksums
06c8e7f30db86e9fcaabf3c294731a4b6c1b8cc9c7286aa098f05d3531c4f3c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release files / todowrite_cli-0.6.1-py3-none-any.whl

Download URL todowrite_cli-0.6.1-py3-none-any.whl
Size 12.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
810d14abd650f8851965e65f8db3ea98d8be30b54c5e3a198a5dd708e69e8594
BLAKE2b-256 checksum
How to use checksums
bbb62200e8d2139b63320ce43dd2f40e29d0155a4a502e5f58c2e69aa18c6c55
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.12

Release history Release notifications | RSS feed

This release

0.6.1 This release

2 release files

0.6.0

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

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