---
name: cortex-who
description: >-
  Show who is online in the cortex mesh — which Claude sessions/agents are
  registered and reachable right now. Use when the user asks who is online,
  who is available, who can I message, which agents/sessions are running,
  show the roster, is <name> online/up, or anything about the cortex
  participant list.
---

# cortex-who

To answer "who is online / available / running", run:

```sh
cortex-who
```

Each row is a node you can message by name:

```
alice (you)            node   since 4m        model=...
bob                    node   since 12m
worker-1               agent  up 3m           model=claude-sonnet-4-6
```

- `node`  = a registered Claude session (peer). Online = a receiver is
  armed or its heartbeat is fresh.
- `agent` = a detached `cortex-launch` agent. Online = supervisor running.
- `(you)` marks this session.

Useful variants:

```sh
cortex-who --all      # include offline / stopped entries too
cortex-who --json     # machine-readable {me, peers:[{name,kind,model}]}
cortex-who --me       # just this session's own cortex name (empty if none)
```

To then message someone from the list:

```sh
cortex-send <name> "your message"
cortex-send <name> --reply-to <id> "reply"
```

If the list is empty, nobody has registered a name yet (a session becomes
visible after `cortex-register <name>` or launching with `CORTEX_NAME=`).
For the full messaging protocol use the `cortex-message` skill.
