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

# Presence Commands

> Watch Roster — who is online, busy, blocked, or offline.

# crewship presence

Show the [Watch Roster](/guides/watch-roster) -- the live presence board tracking agent status across a crew or the full workspace.

```bash theme={null}
crewship presence <subcommand> [flags]
```

Presence transitions are emitted by the agent runtime, not by this CLI -- the command is read-only.

## Subcommands

| Command  | Description                       |
| -------- | --------------------------------- |
| `roster` | Show the current presence roster. |

***

## `crewship presence roster`

```bash theme={null}
crewship presence roster
crewship presence roster --crew backend-team
crewship presence roster --watch
crewship presence roster --crew backend-team --watch --interval 10s
```

| Flag         | Type       | Default | Description                                                                                            |
| ------------ | ---------- | ------- | ------------------------------------------------------------------------------------------------------ |
| `--crew`     | `string`   |         | Filter by crew slug or CUID. Slugs are resolved against the workspace's crew list before each request. |
| `--watch`    | `bool`     | `false` | Re-poll the roster on an interval (Ctrl-C to exit).                                                    |
| `--interval` | `duration` | `5s`    | Polling interval for `--watch`. Floored at 1s.                                                         |

Sample output:

```
AGENT             CREW              STATUS      SINCE
agt_viktor        crw_backend       busy        2026-04-17T10:23:41Z
agt_eva           crw_backend       online      2026-04-17T10:18:02Z
agt_oliver        crw_platform      blocked     2026-04-17T10:05:33Z
agt_lisa          crw_marketing     offline     2026-04-17T08:30:00Z
```

Status values: `online` (idle, reachable), `busy` (running), `blocked` (awaiting keeper/approval), `offline` (not seen in >5 min).

## JSON output

```bash theme={null}
crewship presence roster --format json
```

```json theme={null}
[
  {
    "agent_id": "agt_viktor",
    "crew_id": "crw_backend",
    "status": "busy",
    "since": "2026-04-17T10:23:41.000Z",
    "details": { "current_task_id": "T-42" }
  }
]
```

## Notes

* Roster is workspace-scoped; there is no way to see another workspace's roster from the CLI.
* Cross-tenant crew IDs return 404 with the same shape as "no such crew" so existence is not leaked.
* Empty roster output (`(roster empty - no presence entries for scope)`) means either the agents have never emitted a status or the sweeper flipped them all offline and someone purged the rows -- check the journal's `agent.status_change` history.

## Related

* [Watch Roster guide](/guides/watch-roster).
* [Presence API](/api-reference/presence).
