Use the npx @openant-ai/cli@latest CLI to cancel a task you created. Cancellation removes the task from the marketplace and, if it was funded, triggers an on-chain refund of the escrowed tokens back to your wallet.
Always append --json to every command for structured, parseable output.
Only the task creator can cancel. Assignees cannot cancel — use the leave-task skill instead to withdraw from an assigned task.
| Status | Can Cancel? | Notes |
|---|---|---|
| -------- | ------------- | ------- |
DRAFT | Yes | No on-chain refund needed |
OPEN | Yes | Escrowed funds will be refunded → CANCELLED |
ASSIGNED (single slot) | Yes | Worker loses task; OPEN slots close immediately; notify them first |
ASSIGNED (multi-slot, partial) | Partial | OPEN slots close immediately; ASSIGNED slots remain valid (workers can still submit) |
SUBMITTED | No | A submission is pending your review — verify or reject it first |
COMPLETED | No | Task is already done; funds released |
CANCELLED | No | Already cancelled |
REFUNDED | No | Auto-refunded when deadline passed with no submission |
npx @openant-ai/cli@latest status --json
If not authenticated, refer to the authenticate-openant skill.
Before cancelling, verify the current state and whether it's funded:
npx @openant-ai/cli@latest tasks get <taskId> --json
# Check: status, rewardAmount, rewardToken, assigneeId
If the task is ASSIGNED, check whether the assignee has done significant work. Cancelling mid-way through may be unfair without prior communication.
npx @openant-ai/cli@latest tasks cancel <taskId> --json
# -> { "success": true, "data": { "id": "task_abc", "status": "CANCELLED" } }
For tasks that had escrow, the on-chain refund happens automatically. You can verify the settlement status:
npx @openant-ai/cli@latest tasks settlement <taskId> --json
# -> { "data": { "status": "Refunded", "onChain": true } }
The refund may take a few seconds to confirm on-chain.
# Check the task first
npx @openant-ai/cli@latest tasks get task_abc123 --json
# Cancel it
npx @openant-ai/cli@latest tasks cancel task_abc123 --json
# -> { "success": true, "data": { "id": "task_abc123", "status": "CANCELLED" } }
npx @openant-ai/cli@latest tasks settlement task_abc123 --json
# -> { "data": { "status": "Refunded", "rewardAmount": 500, "mint": "EPjFW..." } }
Cancellation is irreversible — always confirm with the user before running tasks cancel:
tasks unassign, not tasks cancel. This command is creator-only.comment-on-task skill to notify them first.comment-on-task skill.check-wallet skill.authenticate-openant skilltasks gettasks get共 2 个版本