Skip to main content

llm-tools-todo

PyPI Changelog Tests License

LLM plugin providing session-based todo management tools for Simon Willison's llm, a la Claude Code.

Installation

Install this plugin in the same environment as LLM. You'll need at least LLM 0.26a1 or later.

llm install llm-tools-todo

From source

git clone https://github.com/dannyob/llm-tools-todo
cd llm-tools-todo
llm install .

Usage

The plugin provides a single Todo toolbox with six todo management operations:

Available Tools

  • begin - Start a new todo session
  • end - End current session and cleanup
  • list - Display all todos in current session
  • write - Replace entire todo list
  • add - Add new todo items
  • complete - Mark todos as completed

Basic Usage

# Start a new todo session
llm prompt -m gpt-4o-mini "Please start a new todo session" --tool Todo

# Add some tasks
llm -c prompt -m gpt-4o-mini "Add tasks: review code, run tests, update docs" --tool Todo

# Mark tasks complete
llm -c prompt -m gpt-4o-mini "Mark the first task as completed" --tool Todo

Session Management

Each todo session gets a unique identifier and stores data in temporary files. Sessions are automatically managed:

  • Session files stored as /tmp/llm-todos-{session_id}.json
  • Data persists until session is ended with end
  • Multiple concurrent sessions supported

Todo Item Structure

Each todo item includes:

  • Unique ID
  • Content description
  • Status (pending/in_progress/completed)
  • Priority (high/medium/low)
  • Created and updated timestamps

Development

Setup Development Environment

# Clone and set up development environment
git clone https://github.com/dannyob/llm-tools-todo
cd llm-tools-todo
make dev-setup
source .venv/bin/activate

Testing

make test           # Run all tests
make test-coverage  # Run tests with coverage report
make quick-test     # Fast test run (exits on first failure)

Plugin Testing

After installation, verify the plugin is working:

llm tools  
# above should show Todo tools listed
llm prompt "Please start a new todo session" --tool Todo
llm prompt -c "Add a single Todo, saying 'check todo list works'" --tool Todo
llm prompt -c "What is in my todo list?" --tool Todo
llm prompt -c "Mark the check todo item as done" --tool Todo
llm prompt -c "Now end the Todo list" --tool Todo

Credits and Thanks

Inspired by Claude Code's simple Todo functionality, and Joe Haddad's claude-todo-emulator.

Coded with Claude.

Metadata

Release files for llm-tools-todo 0.3

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

Source distribution (sdist)

Source distribution for llm-tools-todo 0.3
File Size Uploaded Provenance
llm_tools_todo-0.3.tar.gz 14.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for llm-tools-todo 0.3
File Interpreter ABI Platform
llm_tools_todo-0.3-py3-none-any.whl Python 3 none any Details

Total release size: 25.5 kB

Release files / llm_tools_todo-0.3.tar.gz

Download URL llm_tools_todo-0.3.tar.gz
Size 14.1 kB
Tags Source
SHA-256 checksum
How to use checksums
0932e6fd9c1e480acad08c7821d26c30e544cc3bfdbb703ce38f313172234d91
BLAKE2b-256 checksum
How to use checksums
4d0eee7e35a64c8e4e38ac22946236ee397aa4ffcf6ac00401d05e8d9f38aa4a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.10

Release files / llm_tools_todo-0.3-py3-none-any.whl

Download URL llm_tools_todo-0.3-py3-none-any.whl
Size 11.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b526236e63ab236f094a4edba84c6dbda90fb6b816aa3839966e527888c83255
BLAKE2b-256 checksum
How to use checksums
e9b99eedf5dc6c084230a4040ae1fae8170bad1dc090d38ffedf852370536876
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.10

Security for llm-tools-todo 0.3

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.

Release history Release notifications | RSS feed

This release

0.3 This release

2 release files No provenance

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