From markdown-tasks
Captures planning discussion into self-contained markdown tasks in .llm/todo.md. Each task includes full context for isolated execution.
How this command is triggered — by the user, by Claude, or both
Slash command
/markdown-tasks:plan-tasksThe summary Claude sees in its command listing — used to decide when to auto-load this command
# Plan Tasks Transform conversation planning and requirements into a markdown task list where each task is completely self-contained with all necessary context inline. ## Task Format The task list is in `.llm/todo.md`. NEVER use the `Read` tool on `.llm/todo.md`. Always interact with the task list exclusively through the Python scripts. ### Task States - `[ ]` - Not started (ready to work on) - `[x]` - Completed - `[!]` - Blocked after failed attempt ### Standalone Context Each task is extracted and executed in isolation. The `task_get.py` script extracts only one task at a time - i...
Transform conversation planning and requirements into a markdown task list where each task is completely self-contained with all necessary context inline.
The task list is in .llm/todo.md.
NEVER use the Read tool on .llm/todo.md. Always interact with the task list exclusively through the Python scripts.
[ ] - Not started (ready to work on)[x] - Completed[!] - Blocked after failed attemptEach task is extracted and executed in isolation. The task_get.py script extracts only one task at a time - it cannot see other tasks in the file. Therefore:
~/.claude/plans/*.md), archive it locally before adding any tasks:
.llm/plans/ directory if it does not exist~/.claude/plans/<auto-generated-name>.md to .llm/plans/<yyyy-mm-dd>-<descriptive-name>.md2025-12-04-thread-safety-tests.md).llm/plans/ absolute path in each taskUse this command at the end of a planning conversation when you have discussed requirements, approaches, and implementation details but have not started coding yet. This captures the conversation context into actionable tasks in .llm/todo.md.
The input is the current conversation where planning and requirements have been discussed. Transform the plans, ideas, and requirements from the discussion into self-contained tasks in a markdown checklist format, appended to .llm/todo.md.
Add every task in a single bash command that chains one task_add.py call per task with &&:
python ${CLAUDE_PLUGIN_ROOT}/scripts/task_add.py .llm/todo.md "First task
Context line 1" && \
python ${CLAUDE_PLUGIN_ROOT}/scripts/task_add.py .llm/todo.md "Second task" && \
python ${CLAUDE_PLUGIN_ROOT}/scripts/task_add.py .llm/todo.md "Third task"
Running the whole batch as one command keeps the write window to .llm/todo.md extremely short, so concurrent sessions writing to the same file are far less likely to interleave their tasks. Never add tasks across separate commands.
Each task should be written so it can be read independently from - [ ] to the next - [ ] and contain:
- [ ] Create a new test class `SynchronizedBagTest` at `/Users/craig/projects/eclipse-collections/unit-tests-thread-safety/src/test/java/org/eclipse/collections/impl/bag/mutable/SynchronizedBagTest.java` to test thread-safety of `org.eclipse.collections.impl.bag.mutable.SynchronizedBag`. Similar to how `SynchronizedMutableListTest` covers `SynchronizedMutableList`, this should extend `SynchronizedTestTrait` and implement test traits like `SynchronizedCollectionTestTrait`, `SynchronizedMutableIterableTestTrait`, and `SynchronizedRichIterableTestTrait`. The test should verify that all public methods of SynchronizedBag properly synchronize on the lock object using the `assertSynchronized()` method. Include tests for bag-specific methods like `addOccurrences()`, `removeOccurrences()`, `occurrencesOf()`, `forEachWithOccurrences()`, and `toMapOfItemToCount()`.
npx claudepluginhub motlin/claude-code-plugins --plugin markdown-tasks/save-planSaves the current conversation plan and task list to a timestamped implementation file, then provides instructions for continuing in a new context.
/decompositionBreaks down complex tasks into detailed, actionable subtasks with rich descriptions that can be executed independently. Interviews the user to resolve unclear points before creating todos.
/tasksBreaks down an implementation plan into small, actionable tasks with a step-by-step guide. Checks git status and offers options for handling uncommitted changes before proceeding.