Forked from lmbimmerboye/todo-list
README.md
An LM Studio plugin that allows your models to manage and track tasks via a todo list.
This plugin is designed to work with LM Studio. Simply load it through the LM Studio plugin interface.
The plugin provides the following tools:
readTodosView the current todo list. Displays both pending and completed items.
addTodoAdd a new task to the todo list.
task (string): The task descriptioncompleteTodoMark a task as completed (checked off). It remains in the list history but is marked done.
id (number): The numeric ID of the task (e.g., 1, 2)removeTodoPermanently delete a single task by its ID.
id (number): The ID to deleteclearAllTodosDANGER: Delete ALL tasks (both pending and completed). Use only if the user explicitly asks to 'wipe', 'clear', or 'reset' the entire list.
The readTodos tool returns tasks in a pipe-separated format to avoid newline escaping issues:
--- PENDING TASKS --- | [ ] #1: Task description | [ ] #2: Another task | --- COMPLETED --- | [x] #3: Completed task
This format prevents the LLM from learning to use escaped newlines (\n) in its tool calls, which was a known issue with previous versions.
npm install
npm run dev
npm run build
npm run push
todo-list/ ├── src/ │ ├── index.ts # Plugin entry point and tool definitions │ ├── todoManager.ts # Core todo list management logic │ └── config.ts # Configuration settings ├── todos.json # Persistent storage for todo items ├── package.json # Dependencies and scripts ├── tsconfig.json # TypeScript configuration └── manifest.json # Plugin metadata
todos.json file is valid JSON\n in output|) separators instead of newlinesMIT