Initial commit
This commit is contained in:
27
commands/add-one-task.md
Normal file
27
commands/add-one-task.md
Normal file
@@ -0,0 +1,27 @@
|
||||
---
|
||||
argument-hint: task description
|
||||
description: Add a task to the project task list
|
||||
---
|
||||
|
||||
Add a task to the project task list.
|
||||
|
||||
If the user provided a description, it will appear here:
|
||||
|
||||
<description>
|
||||
$ARGUMENTS
|
||||
</description>
|
||||
|
||||
## Steps
|
||||
|
||||
1. Extract the description from the user's input
|
||||
2. If no description was provided, ask the user for one
|
||||
3. Add the task:
|
||||
|
||||
@../shared/scripts/task-add.md
|
||||
|
||||
4. Confirm to the user that the task was added
|
||||
|
||||
## Notes
|
||||
|
||||
- The description should be clear and actionable
|
||||
- Do not include the checkbox syntax in the description (the script adds it)
|
||||
48
commands/do-all-tasks.md
Normal file
48
commands/do-all-tasks.md
Normal file
@@ -0,0 +1,48 @@
|
||||
---
|
||||
argument-hint: optional instructions
|
||||
description: Process all tasks automatically
|
||||
---
|
||||
|
||||
Process all tasks automatically.
|
||||
|
||||
Repeatedly work through incomplete tasks from the project task list.
|
||||
|
||||
If the user provided additional instructions, they will appear here:
|
||||
|
||||
<instructions>
|
||||
$ARGUMENTS
|
||||
</instructions>
|
||||
|
||||
If the user did not provide instructions, work through ALL incomplete tasks until NONE remain.
|
||||
|
||||
## Steps
|
||||
|
||||
1. Track attempt count and previously attempted tasks to prevent infinite loops
|
||||
2. Use the `@tasks` skill to extract the first incomplete task from `.llm/todo.md`
|
||||
3. If a task is found:
|
||||
- Check if we have already attempted this task 1 time
|
||||
- If yes, mark it as blocked (with `- [!]`) and continue to next task
|
||||
- If no, launch the `@tasks:do-task` agent to implement it
|
||||
- **Do NOT add instructions to the agent prompt** - the agent is self-contained and follows its own workflow (including precommit, commit, rebase)
|
||||
- Do NOT mark the task as complete yourself - the `do-task` agent does this
|
||||
4. Repeat until no incomplete tasks remain or the user's instructions are met
|
||||
5. When all tasks are completed, archive the task list:
|
||||
|
||||
@../shared/scripts/task-archive.md
|
||||
|
||||
## Notes
|
||||
|
||||
- Each task is handled completely by the `do-task` agent before moving to the next
|
||||
- The `do-task` agent marks tasks as complete - do NOT call `task_complete.py` yourself
|
||||
- Each task gets its own commit for clear history
|
||||
- After each agent returns, check the task list again to see if more tasks remain
|
||||
|
||||
## User feedback
|
||||
|
||||
Throughout the process, provide clear status updates:
|
||||
|
||||
- "Starting task: [task description]"
|
||||
- "Task completed successfully: [task description]"
|
||||
- "Task failed: [task description]"
|
||||
- "Skipping blocked task: [task description]"
|
||||
- "All tasks completed - task list archived to .llm/YYYY-MM-DD-todo.md" or "Stopping due to failures"
|
||||
7
commands/do-one-task.md
Normal file
7
commands/do-one-task.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
description: Find and implement the next incomplete task from the project task list
|
||||
---
|
||||
|
||||
Find and implement the next incomplete task from the project task list.
|
||||
|
||||
@../shared/task-workflow.md
|
||||
36
commands/plan-tasks.md
Normal file
36
commands/plan-tasks.md
Normal file
@@ -0,0 +1,36 @@
|
||||
---
|
||||
name: plan-tasks
|
||||
description: Capture conversation planning into self-contained tasks at end of discussion
|
||||
---
|
||||
|
||||
# Plan Tasks
|
||||
|
||||
Transform conversation planning and requirements into a markdown task list where each task is completely self-contained with all necessary context inline.
|
||||
|
||||
@../shared/task-format.md
|
||||
|
||||
## When to Use
|
||||
|
||||
Use 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`.
|
||||
|
||||
## Input
|
||||
|
||||
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`.
|
||||
|
||||
## Task Writing Guidelines
|
||||
|
||||
Each task should be written so it can be read independently from `- [ ]` to the next `- [ ]` and contain:
|
||||
|
||||
1. **Full absolute paths** - Never use relative paths
|
||||
2. **Exact class/function names** - Specify exact names of code elements
|
||||
3. **Analogies to existing code** - Reference similar existing implementations
|
||||
4. **Specific implementation details** - List concrete methods or operations
|
||||
5. **Module/package context** - State which module or package the work belongs to
|
||||
6. **Dependencies and prerequisites** - Note what needs to exist or be imported
|
||||
7. **Expected outcomes** - Describe what success looks like
|
||||
|
||||
## Example
|
||||
|
||||
```markdown
|
||||
- [ ] 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()`.
|
||||
```
|
||||
21
commands/sweep-todos.md
Normal file
21
commands/sweep-todos.md
Normal file
@@ -0,0 +1,21 @@
|
||||
---
|
||||
description: Find all TODO and TASK comments and add them to the project task list
|
||||
---
|
||||
|
||||
Find all TODO and TASK comments and add them to the project task list.
|
||||
|
||||
Search the codebase for all TODO and TASK comments and add them to `.llm/todo.md`. Each TODO or TASK found in the code will be converted to a task in the markdown task list.
|
||||
|
||||
## Steps
|
||||
|
||||
1. Find all occurrences of "TODO" in the codebase using grep/search
|
||||
2. For each occurrence, gather:
|
||||
- File path
|
||||
- Line number
|
||||
- Full TODO comment text
|
||||
3. Strip comment markers (`//`, `#`, `/* */`) from the TODO/TASK text
|
||||
4. Add each TODO or TASK as a new task entry to `.llm/todo.md`:
|
||||
```markdown
|
||||
- [ ] Implement TODO from src/api/client.ts:87: Extract commonality in getRootNodes and getChildNodes
|
||||
- [ ] Implement TODO from test/utils.test.ts:103: Use deep object equality rather than loose assertions
|
||||
```
|
||||
Reference in New Issue
Block a user