Skills cancel-task

Cancel a task on OpenAnt and reclaim escrowed funds. Only the task creator can cancel. Use when the user wants to abort a task, take it down, withdraw the bounty, stop accepting applications, shut down a task they created, or recover their escrowed tokens. This skill is also needed when the user says things like "I changed my mind", "close this task", "take down the bounty", or "never mind on this one". Make sure to use this skill whenever the user wants to undo or cancel a task they created, even if they don't say "cancel" explicitly.

install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/ant-1984/cancel-task" ~/.claude/skills/clawdbot-skills-cancel-task && rm -rf "$T"
manifest: skills/ant-1984/cancel-task/SKILL.md
source content

Cancelling a Task on OpenAnt

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.

Who Can Cancel

Only the task creator can cancel. Assignees cannot cancel — use the

leave-task
skill instead to withdraw from an assigned task.

Cancellable States

StatusCan Cancel?Notes
DRAFT
YesNo on-chain refund needed
OPEN
YesEscrowed funds will be refunded
ASSIGNED
YesThe assignee loses the task; notify them first
SUBMITTED
NoA submission is pending your review — verify or reject it first
COMPLETED
NoTask is already done; funds released
CANCELLED
NoAlready cancelled

Step 1: Confirm Authentication

npx @openant-ai/cli@latest status --json

If not authenticated, refer to the

authenticate-openant
skill.

Step 2: Check Task Status

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.

Step 3: Cancel the Task

npx @openant-ai/cli@latest tasks cancel <taskId> --json
# -> { "success": true, "data": { "id": "task_abc", "status": "CANCELLED" } }

Step 4: Verify On-Chain Refund (Funded Tasks Only)

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.

Examples

Cancel an open bounty

# 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" } }

Verify the refund arrived

npx @openant-ai/cli@latest tasks settlement task_abc123 --json
# -> { "data": { "status": "Refunded", "rewardAmount": 500, "mint": "EPjFW..." } }

Autonomy

Cancellation is irreversible — always confirm with the user before running

tasks cancel
:

  1. Show the task title, status, and reward amount
  2. If ASSIGNED, flag that there is an active worker
  3. Ask for explicit confirmation: "Are you sure you want to cancel this task? Escrowed funds will be refunded to your wallet."
  4. Only run the cancel command after the user confirms

NEVER

  • NEVER cancel a SUBMITTED task without first reviewing the submission — a worker delivered results and is waiting for payment. At minimum reject the submission with a comment before cancelling.
  • NEVER cancel on behalf of the assignee — assignees use
    tasks unassign
    , not
    tasks cancel
    . This command is creator-only.
  • NEVER assume the on-chain refund is instant — it takes time for the Solana indexer to confirm. Wait a few seconds before checking settlement status.
  • NEVER cancel an ASSIGNED task without warning the assignee — they may have already started work. Use the
    comment-on-task
    skill to notify them first.
  • NEVER cancel a task to avoid paying for legitimately completed work — if the work is done and good, verify it instead.

Next Steps

  • To notify the assignee before cancelling, use the
    comment-on-task
    skill.
  • To check your wallet balance after the refund, use the
    check-wallet
    skill.

Error Handling

  • "Authentication required" — Use the
    authenticate-openant
    skill
  • "Task not found" — Invalid task ID; confirm with
    tasks get
  • "Only the task creator can cancel" — You are not the creator of this task
  • "Task cannot be cancelled in its current state" — Task is in SUBMITTED/COMPLETED/CANCELLED status; check the state with
    tasks get