You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -160,44 +167,137 @@ Add the following to your MCP client's configuration:
160
167
161
168
## Available Operations
162
169
163
-
The TaskManager supports two main phases of operation:
170
+
The TaskManager now uses a consolidated API with two main tools:
171
+
172
+
### `project` Tool
173
+
Manages high-level projects with multiple tasks.
174
+
175
+
**Actions:**
176
+
-`list`: List all projects in the system
177
+
-`create`: Create a new project with initial tasks
178
+
-`delete`: Remove a project
179
+
-`add_tasks`: Add new tasks to an existing project
180
+
-`finalize`: Finalize a project after all tasks are done and approved
181
+
182
+
### `task` Tool
183
+
Manages individual tasks within projects.
184
+
185
+
**Actions:**
186
+
-`read`: Get details of a specific task
187
+
-`update`: Modify a task's properties (title, description, status)
188
+
-`delete`: Remove a task from a project
189
+
190
+
### Task Status
191
+
Tasks have a status field that can be one of:
192
+
-`not started`: Task has not been started yet
193
+
-`in progress`: Task is currently being worked on
194
+
-`done`: Task has been completed
195
+
196
+
#### Status Transition Rules
197
+
The system enforces the following rules for task status transitions:
198
+
- Tasks follow a specific workflow with defined valid transitions:
199
+
- From `not started`: Can only move to `in progress`
200
+
- From `in progress`: Can move to either `done` or back to `not started`
201
+
- From `done`: Can move back to `in progress` if additional work is needed
202
+
- A task cannot skip states (e.g., cannot go directly from "not started" to "done")
203
+
- When a task is marked as "done", the `completedDetails` field is required
204
+
- Approved tasks cannot be modified
205
+
206
+
These rules help maintain the integrity of task progress and ensure proper documentation of completed work.
207
+
208
+
### CLI Commands
209
+
210
+
#### Task Approval
211
+
212
+
Task approval is controlled exclusively by the human user through a CLI command:
213
+
214
+
```bash
215
+
npm run approve-task -- <projectId><taskId>
216
+
```
217
+
218
+
Options:
219
+
-`-f, --force`: Force approval even if the task is not marked as done
220
+
221
+
This command sets the `approved` field of a task to `true` after verifying that the task is marked as `done`. Only the human user can approve tasks, ensuring quality control.
222
+
223
+
#### Listing Tasks and Projects
164
224
165
-
### Planning Phase
166
-
- Accepts a task list (array of strings) from the user
167
-
- Stores tasks internally as a queue
168
-
- Returns an execution plan (task overview, task ID, current queue status)
225
+
The CLI provides a command to list all projects and tasks:
169
226
170
-
### Execution Phase
171
-
- Returns the next task from the queue when requested
172
-
- Provides feedback mechanism for task completion
173
-
- Removes completed tasks from the queue
174
-
- Prepares the next task for execution
227
+
```bash
228
+
npm run list-tasks
229
+
```
230
+
231
+
To view details of a specific project:
175
232
176
-
### Parameters
233
+
```bash
234
+
npm run list-tasks -- -p <projectId>
235
+
```
177
236
178
-
-`action`: "plan" | "execute" | "complete"
179
-
-`tasks`: Array of task strings (required for "plan" action)
180
-
-`taskId`: Task identifier (required for "complete" action)
181
-
-`getNext`: Boolean flag to request next task (for "execute" action)
237
+
This command displays information about all projects in the system or a specific project, including:
0 commit comments