> ## Documentation Index
> Fetch the complete documentation index at: https://docs.murmur.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# murmur task update

> Update the status, subject, description, or dependency edges of an existing task on an agent's checklist without removing or recreating it.

Modifies an existing [task](/concepts/agents) on an [agent's](/concepts/agents) checklist. Changes the [task's](/concepts/agents) status, subject, description, or dependency edges. On success, prints the [task](/concepts/agents) ID.

## Synopsis

```bash theme={null}
murmur task update [flags] [slug] <task-id>
```

On a VM, the slug is optional — omitting it updates a [task](/concepts/agents) on the current [agent's](/concepts/agents) own checklist.

## Arguments

| Name           | Type   | Required  | Description                                                                                                         |
| -------------- | ------ | --------- | ------------------------------------------------------------------------------------------------------------------- |
| `slug`         | string | on laptop | The [agent's](/concepts/agents) slug. Optional on VMs (defaults to self).                                           |
| `task-id`      | string | yes       | ID of the [task](/concepts/agents) to update.                                                                       |
| `-s`           | string | no        | New status. One of: `pending`, `in_progress`, `completed`, `deleted`.                                               |
| `--subject`    | string | no        | New subject line.                                                                                                   |
| `-d`           | string | no        | New description.                                                                                                    |
| `--blocks`     | string | no        | Comma-separated [task](/concepts/agents) IDs that this [task](/concepts/agents) blocks. Appended to existing edges. |
| `--blocked-by` | string | no        | Comma-separated [task](/concepts/agents) IDs that block this [task](/concepts/agents). Appended to existing edges.  |
| `--workspace`  | string | no        | [Workspace](/concepts/workspaces) name. Overrides the value from `murmur.yaml`.                                     |

### Task statuses

| Status        | Meaning                     |
| ------------- | --------------------------- |
| `pending`     | Not yet started.            |
| `in_progress` | Work is underway.           |
| `completed`   | Finished.                   |
| `deleted`     | Removed from the checklist. |

## Examples

### Mark a task as completed

```bash theme={null}
murmur task update fix-auth -s completed t_8f3a1b2c
```

```
t_8f3a1b2c
```

### Change a task's subject

```bash theme={null}
murmur task update fix-auth --subject "Add rate limiting to all auth endpoints" t_8f3a1b2c
```

```
t_8f3a1b2c
```

### Add dependency edges

Mark that `t_9d4e2f1a` cannot start until `t_8f3a1b2c` finishes:

```bash theme={null}
murmur task update fix-auth --blocked-by t_8f3a1b2c t_9d4e2f1a
```

```
t_9d4e2f1a
```

You can also express this from the other direction — mark that `t_8f3a1b2c` blocks `t_9d4e2f1a`:

```bash theme={null}
murmur task update fix-auth --blocks t_9d4e2f1a t_8f3a1b2c
```

```
t_8f3a1b2c
```

### Update multiple fields at once

```bash theme={null}
murmur task update fix-auth -s in_progress -d "Started implementing IP-based throttle" t_8f3a1b2c
```

```
t_8f3a1b2c
```

### Self-update on a VM

When running on an [agent](/concepts/agents) VM, omit the slug:

```bash theme={null}
murmur task update -s completed t_8f3a1b2c
```

```
t_8f3a1b2c
```

## Errors

| Code               | Meaning                                                                                            | What to do                                                                                                                      |
| ------------------ | -------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| `NOT_FOUND`        | No [agent](/concepts/agents) with that slug exists, or the [task](/concepts/agents) ID is invalid. | Check the slug and [task](/concepts/agents) ID. Use [`murmur task ls`](/cli/task-ls) to see existing [tasks](/concepts/agents). |
| `UNAUTHENTICATED`  | Identity token is missing or expired.                                                              | Run `murmur auth` or check your `murmur.local.yaml` configuration.                                                              |
| `INVALID_ARGUMENT` | Unknown status value.                                                                              | Use one of: `pending`, `in_progress`, `completed`, `deleted`.                                                                   |

## Related

* [Agents](/concepts/agents) — concept overview
* [`murmur task create`](/cli/task-create) — add a [task](/concepts/agents) to an [agent's](/concepts/agents) checklist
* [`murmur task ls`](/cli/task-ls) — list all [tasks](/concepts/agents) on an [agent's](/concepts/agents) checklist
* [`murmur task get`](/cli/task-get) — retrieve details for a single [task](/concepts/agents)
* [`murmur status`](/cli/status) — query [agent](/concepts/agents) status
