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
todowritelibrary - Version Lock: Always published together with core library
- Dependencies: Requires
todowritelibrary - 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
cliscope 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 projectcreate- Create new nodes (goals, tasks, concepts, commands)get- Get a specific node by IDlist- List all nodes with their statusstatus show- Show detailed information about a specific node
Status Management
status update- Update node status and progressstatus complete- Mark a node as completedstatus list- List all nodes with their status
Import/Export
import-yaml- Import nodes from YAML filesexport-yaml- Export nodes to YAML filessync-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
- Fork the repository
- Create a feature branch
- Make your changes
- Run tests and linters
- 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)
| File | Size | Uploaded | |
|---|---|---|---|
| todowrite_cli-0.6.1.tar.gz | 12.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|