LLM tools for todo management
Project description
llm-tools-todo
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.
From PyPI (recommended)
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
todo_begin- Start a new todo sessiontodo_end- End current session and cleanuptodo_list- Display all todos in current sessiontodo_write- Replace entire todo listtodo_add- Add new todo itemstodo_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
todo_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 # Should list Todo tools
llm prompt "Please start a new todo session" --tool Todo
llm -c "What is in my 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.
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
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 llm_tools_todo-0.1.tar.gz.
File metadata
- Download URL: llm_tools_todo-0.1.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
638f4dc11d6e0f1868ff4431b5332a1fd73b47fb5c2834cfe180dd150a7ef0a5
|
|
| MD5 |
51fa631690b32138082d4fe79dda5689
|
|
| BLAKE2b-256 |
a98696f3c085dcd9d1743f65f5a4ff75c9d4c6dd56059b2b98546ed4314092bd
|
File details
Details for the file llm_tools_todo-0.1-py3-none-any.whl.
File metadata
- Download URL: llm_tools_todo-0.1-py3-none-any.whl
- Upload date:
- Size: 11.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a91204f44b1cc2de031c5d4ae32cd3f94b1dfa44a03b10252111d725509e3497
|
|
| MD5 |
b94919d377450bb3b4b14487873d59c5
|
|
| BLAKE2b-256 |
fd109fc01201e7c7fb3505444addbc3a46bc28520a23797e45360683bf0e7662
|