task_move
Move a task to a different project, make it a subtask, or send it to the inbox. Specify exactly one destination to reparent the task.
Instructions
Move an OmniFocus task to a new location — a different project, another task (as a subtask), or the inbox. Exactly one destination must be specified: projectId, parentId, or toInbox: true. Do NOT use task_move to reorder siblings within the same parent (task_reorder handles that); prefer task_update when you only need to change editable fields, not reparent. Idempotent: returns noChange: true when the task is already at the destination. Returns { moved: true, id, from, to } or { noChange: true, id, at }. Side effects: reparents the task in OmniFocus, sets meta.syncPending = true. Example: task_move({ id: "abc123", projectId: "prj456" }) Example: task_move({ id: "abc123", parentId: "tsk789" })
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Persistent ID of the task to move. | |
| toInbox | No | Set to true to move the task to the inbox (clear any project or parent). Mutually exclusive with projectId and parentId. | |
| parentId | No | Move under this parent task (as a subtask). Mutually exclusive with projectId and toInbox. | |
| projectId | No | Move into this project. Mutually exclusive with parentId and toInbox. |