markTaskDone
Mark tasks as complete in your knowledge base using task IDs or fuzzy text search. Update task status across sections like today or backlog to track progress.
Instructions
Mark a task as complete. Provide either a taskId (from getTasks) or searchText to fuzzy-match the task.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| taskId | No | The task ID (from getTasks output) | |
| text | No | Text to search for in task titles (fuzzy match) | |
| section | No | Which section the task is in | today |
Implementation Reference
- src/tools/tasks.ts:78-87 (handler)The MCP tool handler for "markTaskDone", which delegates to the brain implementation.
toolHandler("markTaskDone", async ({ taskId, text, section }) => { if (taskId) { await brain.markTaskDone(section, taskId); } else if (text) { await brain.markTaskDoneByText(section, text); } else { throw new Error("Provide either taskId or text"); } return { success: true }; }) - src/core/brain.ts:171-184 (handler)The implementation of markTaskDone in the brain class.
async markTaskDone( section: "today" | "backlog", taskId: string ): Promise<void> { const log = getLogger(); const brainSection: BrainSection = `tasks/${section}`; await this.sync.atomicUpdate( brainSection, (current) => toggleTaskDone(current, taskId, brainSection), `feat(ai): mark task done` ); log.info("markTaskDone", { section, taskId }); } - src/tools/tasks.ts:58-58 (registration)The tool name registration for "markTaskDone".
"markTaskDone",