task_complete
Marks an OmniFocus task as completed with an optional timestamp. If the task has incomplete children, requests clarification on whether to complete them as well.
Instructions
Complete an OmniFocus task — marks it done with a completion timestamp. Accepts an optional ISO-8601 date for the completion time; defaults to now. Idempotent: returns noChange: true if the task is already completed. When the task has incomplete children, returns clarification-needed asking whether to complete children too — call the clarify tool with the user's choice. Do not use to drop or delete a task. Returns { done: true, id, name } or { noChange: true, id, name } — name lets the agent describe the change without a follow-up read. Side effects: sets completedAt, sets meta.syncPending = true. Example: task_complete({ id: "abc123" }) Example: task_complete({ id: "abc123", at: "2026-05-01T09:00:00Z" })
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| at | No | ISO-8601 completion time. Defaults to now. | |
| id | Yes | Persistent task ID. |