Tasks

Agent-proposed tasks with mandatory human approval.

The Tasks superskill implements supervised autonomy for your AI agent. Your agent proposes tasks with descriptions and context, but nothing moves forward without your approval. Track progress through a clear lifecycle — proposed, approved, in progress, done — on a Kanban board or calendar view. Rejected tasks can be re-proposed with updated scope, creating a feedback loop between human judgment and agent execution.

What your agent can do

Capabilities available out of the box.

  • Let your AI agent propose tasks with descriptions and context
  • Approve or reject proposed tasks from the web dashboard
  • Track task progress through a clear lifecycle: proposed, approved, in progress, done
  • View tasks on a Kanban board or calendar for easy planning
  • Re-propose rejected tasks with updated scope or approach
  • Coordinate multi-step workflows across other superskills

Commands

CLI commands available with this superskill.

List Tasks

List tasks, optionally filtered by status.

clawpow tasks list
Get Task

Get full task details by ID.

clawpow tasks get
Create Task

Propose a new task for human review.

clawpow tasks create
Update Task

Update task details or transition status.

clawpow tasks update
Delete Task

Delete a task.

clawpow tasks delete
Skill Reference
# Tasks

A structured approval workflow -- propose work items, get human sign-off, then execute with confidence.

## When to Use
- Agent wants to propose work items for the user to review before executing
- User wants to organize a project into trackable tasks
- User needs a structured approval workflow -- agent proposes, human approves
- Agent needs to update progress on approved tasks

## How It Connects
- **All skills** -> Propose tasks before executing expensive or irreversible operations (publishing, generating, sending).
- **Research** -> Create research tasks to track what needs investigation.
- **Social Media** -> Propose a content calendar as tasks for human approval before creating posts.
- **Design** -> Propose design briefs as tasks for approval before generating images.
- **Newsletter** -> Propose newsletter editions as tasks before creating and sending.

## Workflow

1. **Create** a task with `tasks create` -- status starts as `proposed`
2. **Human reviews** in the dashboard -- approves or rejects with reason
3. If approved, **start work** with `tasks update --status in_progress`
4. When done, **mark complete** with `tasks update --status done`
5. If rejected, read the rejection reason and revise or create a new task

## Quick Start

List your tasks:
```bash
clawpow tasks list --json
```

Propose a new task:
```bash
clawpow tasks create --title "Write blog post about AI agents" --priority high --labels seo,content --json
```

## Commands

### Create a Task
```bash
clawpow tasks create --title "Task title" --json
clawpow tasks create --title "Task title" --description "Details..." --priority high --labels seo,content --due 2026-03-15 --json
```
**Options:**
- `--title <text>` (required) -- Task title
- `--description <text>` -- Detailed description
- `--priority <level>` -- low, medium, high (default: medium)
- `--labels <list>` -- Comma-separated labels (e.g., seo,content,social)
- `--due <date>` -- Due date as ISO date (e.g., 2026-03-15)

**Returns:** `{"taskId": "..."}`

New tasks always start with status `proposed`.

### List Tasks
```bash
clawpow tasks list --json
clawpow tasks list --status approved --json
```
**Options:**
- `--status <status>` -- Filter: proposed, approved, in_progress, done, rejected
- `--limit <number>` -- Max results (default 25)
- `--cursor <cursor>` -- Pagination cursor

**Returns:** `{"page": [...], "isDone": boolean, "continueCursor": "..."}`

Each task: `{_id, title, description, status, priority, labels, dueDate, rejectionReason, updatedAt, _creationTime}`

### Get Task
```bash
clawpow tasks get <taskId> --json
```
**Returns:** Full task object.

### Update a Task
```bash
clawpow tasks update <taskId> --status in_progress --json
clawpow tasks update <taskId> --title "Updated title" --priority high --json
```
**Options:**
- `<taskId>` (required, positional) -- Task ID
- `--title <text>` -- New title
- `--description <text>` -- New description
- `--priority <level>` -- low, medium, high
- `--labels <list>` -- New labels (replaces existing)
- `--due <date>` -- New due date
- `--status <status>` -- Transition status

**Allowed status transitions (agent):**
- `approved` → `in_progress` (start working)
- `in_progress` → `done` (mark complete)
- `rejected` → `proposed` (re-propose after revision)

You cannot approve or reject tasks — only the human can do that from the dashboard.

**Returns:** `null` on success

### Delete a Task
```bash
clawpow tasks delete <taskId> --json
```
**Returns:** `null` on success

## Status Lifecycle

```
proposed → [human approves] → approved → in_progress → done
proposed → [human rejects]  → rejected → proposed (re-propose)
```

## Important Notes

- Always use `--json` for machine-parseable output
- The approval workflow is key: agents can only create tasks as "proposed" -- humans must approve before work starts. This is the safety mechanism for expensive operations.
- Tasks start as `proposed` -- you cannot skip to `approved` or `in_progress`
- Check `rejectionReason` on rejected tasks to understand what to change
- Use labels to categorize tasks by domain (e.g., seo, social, content, design)
- All task operations are free (no credits consumed)

Related superskills

Works great together with these.