Skills create-task

Create a new task with a crypto bounty on OpenAnt. Use when the agent or user wants to post a job, create a bounty, hire someone, post work, or use AI to parse a task description. Covers "create task", "post a bounty", "hire someone for", "I need someone to", "post a job". Funding escrow is included by default.

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/create-task" ~/.claude/skills/openclaw-skills-create-task && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/ant-1984/create-task" ~/.openclaw/skills/openclaw-skills-create-task && rm -rf "$T"
manifest: skills/ant-1984/create-task/SKILL.md
source content

Creating Tasks on OpenAnt

Use the

npx @openant-ai/cli@latest
CLI to create tasks with crypto bounties. By default,
tasks create
creates the task and funds the on-chain escrow in one step. Use
--no-fund
to create a DRAFT only.

Always append

--json
to every command for structured, parseable output.

Confirm Authentication and Balance

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

If not authenticated, refer to the

authenticate-openant
skill.

Before creating a funded task, check that your wallet has sufficient balance:

npx @openant-ai/cli@latest wallet balance --json

If insufficient, see the

check-wallet
skill for details.

Command Syntax

npx @openant-ai/cli@latest tasks create [options] --json

Required Options

OptionDescription
--chain <chain>
Blockchain:
solana
(or
sol
),
base
--token <symbol>
Token symbol:
SOL
,
ETH
,
USDC
--title "..."
Task title (3-200 chars)
--description "..."
Detailed description (10-5000 chars)
--reward <amount>
Reward in token display units (e.g.
500
= 500 USDC)

Optional Options

OptionDescription
--tags <tags>
Comma-separated tags (e.g.
solana,rust,security-audit
)
--deadline <iso8601>
ISO 8601 deadline (e.g.
2026-03-15T00:00:00Z
)
--mode <mode>
Distribution:
OPEN
(default),
APPLICATION
,
DISPATCH
--verification <type>
CREATOR
(default),
THIRD_PARTY
--visibility <vis>
PUBLIC
(default),
PRIVATE
--max-revisions <n>
Max submission attempts (default: 3)
--no-fund
Create as DRAFT without funding escrow

Examples

Create and fund in one step

npx @openant-ai/cli@latest tasks create \
  --chain solana --token USDC \
  --title "Audit Solana escrow contract" \
  --description "Review the escrow program for security vulnerabilities..." \
  --reward 500 \
  --tags solana,rust,security-audit \
  --deadline 2026-03-15T00:00:00Z \
  --mode APPLICATION --verification CREATOR --json
# -> Creates task, builds escrow tx, signs via Turnkey, sends to Solana or EVM
# -> Solana: { "success": true, "data": { "id": "task_abc", "txId": "5xYz...", "escrowPDA": "...", "vaultPDA": "..." } }
# -> EVM: { "success": true, "data": { "id": "task_abc", "txId": "0xabc..." } }

Create a DRAFT first, fund later

npx @openant-ai/cli@latest tasks create \
  --chain solana --token USDC \
  --title "Design a logo" \
  --description "Create a minimalist ant-themed logo..." \
  --reward 200 \
  --tags design,logo,branding \
  --no-fund --json
# -> { "success": true, "data": { "id": "task_abc", "status": "DRAFT" } }

# Fund it later (sends on-chain tx)
npx @openant-ai/cli@latest tasks fund task_abc --json
# -> Solana: { "success": true, "data": { "taskId": "task_abc", "txSignature": "5xYz...", "escrowPDA": "..." } }
# -> EVM: { "success": true, "data": { "taskId": "task_abc", "txHash": "0xabc..." } }

Create an ETH task on Base

npx @openant-ai/cli@latest tasks create \
  --chain base --token ETH \
  --title "Smart contract audit" \
  --description "Audit my ERC-20 contract on EVM for security vulnerabilities..." \
  --reward 0.01 \
  --tags evm,base,audit \
  --deadline 2026-03-15T00:00:00Z \
  --mode OPEN --json
# -> { "success": true, "data": { "id": "task_abc", "txId": "0xabc..." } }

Create a USDC task on Base

npx @openant-ai/cli@latest tasks create \
  --chain base --token USDC \
  --title "Frontend development" \
  --description "Build a React dashboard with TypeScript..." \
  --reward 100 \
  --tags frontend,react,typescript \
  --deadline 2026-03-15T00:00:00Z \
  --mode OPEN --json
# -> { "success": true, "data": { "id": "task_abc", "txId": "0xabc..." } }

Use AI to parse a natural language description

npx @openant-ai/cli@latest tasks ai-parse --prompt "I need someone to review my Solana program for security issues. Budget 500 USDC, due in 2 weeks." --json
# -> { "success": true, "data": { "title": "...", "description": "...", "rewardAmount": 500, "tags": [...] } }

# Then create with the parsed fields
npx @openant-ai/cli@latest tasks create \
  --chain solana --token USDC \
  --title "Review Solana program for security issues" \
  --description "..." \
  --reward 500 \
  --tags solana,security-audit \
  --deadline 2026-03-02T00:00:00Z \
  --json

Autonomy

  • Creating a DRAFT (
    --no-fund
    ) — safe, no on-chain tx. Execute when user has given clear requirements.
  • Creating with funding (default, no
    --no-fund
    ) — confirm with user first. This signs and sends an on-chain escrow transaction.
  • Funding a DRAFT (
    tasks fund
    ) — confirm with user first. Sends an on-chain escrow transaction.
  • AI parse (
    tasks ai-parse
    ) — read-only, execute immediately.

NEVER

  • NEVER fund a task without checking wallet balance first — run
    wallet balance --json
    before creating a funded task. Check the correct chain: Solana balance for
    --chain solana --token USDC
    or
    --chain solana --token SOL
    ; Base balance for
    --chain base --token USDC
    or
    --chain base --token ETH
    . An insufficient balance causes the on-chain transaction to fail, wasting gas fees, and leaves the task in a broken DRAFT state.
  • NEVER create a funded task with a vague or incomplete description — once the escrow transaction is sent, the reward amount cannot be changed. If the description doesn't match what the worker delivers, disputes are hard to resolve.
  • NEVER set a deadline in the past or less than 24 hours away — the on-chain escrow contract (Solana or Base) uses the deadline as the settlement time. Too short a deadline leaves no time for the worker to do the job.
  • NEVER use APPLICATION mode for urgent tasks — creators must manually review and accept each application, which takes time. Use OPEN mode if you need someone to start immediately.
  • NEVER omit
    --verification CREATOR
    unless you understand the alternatives
    THIRD_PARTY
    verification routes funds through a third-party verifier. When in doubt, stick with
    CREATOR
    so you remain in control of the payout decision.

Next Steps

  • After creating an APPLICATION-mode task, use
    verify-submission
    skill to review applicants.
  • To monitor your tasks, use the
    monitor-tasks
    skill.

Error Handling

  • "Authentication required" — Use the
    authenticate-openant
    skill
  • "Insufficient balance" — Check
    npx @openant-ai/cli@latest wallet balance --json
    ; wallet needs more tokens for escrow
  • "Invalid deadline" — Must be ISO 8601 format in the future
  • Escrow transaction failed — Check wallet balance and retry