<!-- enhance-docs page=reference/cli/canvas/work/update -->
<!-- enhance-docs release-sha256=8a804cfc9a6fc6b942b8daf6a82266ad6e308291ae4351abee3346bc696d1258 -->

# enhance-dev canvas work update

```text
enhance-dev canvas work update [options]
```

## Arguments

This command takes no positional arguments.

## Options

| Option | Required | Default | Meaning |
| --- | --- | --- | --- |
| `--canvas <url-or-id>` | Yes | None | Canvas URL or UUID. |
| `--activity-id <uuid>` | Yes | None | Active agent-work lease id returned by canvas realtime activity begin. |
| `--phase <phase>` | Yes | None | Agent work now in progress: reading, writing, creating, deleting, or rendering. |
| `--node-ids <ids>` | No | None | Stable canvas node ids affected by the current agent activity. |
| `--bounds <json>` | No | None | Optional world-space activity bounds as x, y, width, and height JSON. |

## Input

This command takes its input from the options above. It has no published input schema.

## Output

This command writes JSON records to standard output. It has no published output schema.

## Examples

```bash
enhance-dev canvas work update --canvas <url-or-id> --activity-id <uuid> --phase <phase>
```

## Exit behaviour

| Exit code | Meaning |
| --- | --- |
| `0` | The command succeeded. |
| `1` | The command failed for another reason (`INTERNAL`). A write may have an unknown outcome. |
| `2` | The command line was malformed. Nothing ran. |
| `3` | The API refused the input (`BAD_REQUEST`). |
| `4` | The credential is missing or expired (`UNAUTHORIZED`). |
| `5` | The API refused the request (`FORBIDDEN`, `NOT_FOUND`, `CONFLICT`, `RATE_LIMITED`). |
| `6` | A batch finished only in part. Retry with the same `--client-token`. |

## Versions

Minimum tested versions: Enhance CLI and MCP runtime 0.1.40, plugin 1.0.38, Node.js 24. No older floor is published.
