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

# Supervisor agent detail: state history and performance

> Read a single agent from the wallboard leaderboard — the state-transition timeline (available, on call, wrap-up, break, offline, with reasons) and the performance panel (points, rank, badges, core metrics) that supervisors use in coaching.

# Supervisor agent detail: state history and performance

The per-agent detail page answers "what has this one agent been doing" — a
state-transition timeline for adherence, plus a performance panel for
coaching. It is the drill-in target behind every row on the supervisor
leaderboard.

## Where the page lives

Open **Voice → Wallboard**. The supervisor leaderboard ranks your roster by
the scoring rules you configured. Click any agent row and you land on the
per-agent detail page. The same deep link works anywhere you paste it — a
support ticket, an audit note, a coaching follow-up.

There is no sidebar entry for this page by design: the leaderboard selects
the agent, and the row click drills in. Keep this guide alongside
[Supervisor coaching](/guides/supervisor-coaching) and
[Voice coaching templates](/guides/voice-coaching-templates).

This page is about **human** contact-center agents. It is unrelated to the
AI voice-template catalog covered in
[Browse and deploy voice agent templates](/guides/voice-agent-templates)
(**Agents → Templates**, `/agents/templates`) — a common mix-up, so name the
distinction whenever you link either one.

## State-history timeline

The main card is the agent's state-transition timeline, backed by
`GET /voice/agents/:id/state-history`. The day picker above the table scopes
the window to one local day (default: today) and a refresh button re-pulls
on demand.

Summary tiles across the top total the day's time per known state:

* **Available** — ready for the queue.
* **On call** — actively handling a conversation.
* **Wrap-up** — after-call work.
* **Break** — away / aux time.
* **Offline** — signed out.

A state with no time in the window renders a dash, so an absent state reads
differently from a trace amount.

Below the tiles, the **State transitions** table lists every recorded
transition, newest first:

* **Time** — when the transition happened.
* **From / To** — the previous and new states; the first-ever row of an
  agent's history shows `initial` in the From column.
* **In state** — how long the agent stayed in that state; the newest row
  shows a dash because it is still in flight.
* **Reason** — the free-form note the agent (or a supervisor) attached, such
  as a break code or a forced-state reason; organic call-lifecycle
  transitions leave it blank.

Read it for rhythm: available → on call → wrap-up → available is the healthy
loop; long breaks with no reason, or wrap-up that never returns to
available, are the coaching signals. The wallboard's live feed already shows
the current flip — this timeline is the history view, the shift you are
reviewing rather than the moment you are watching.

## Performance panel

The **My performance** card at the top shows the same gamification view the
agent sees on their own panel, so a supervisor can inspect it without taking
over the agent's session. A period toggle — Today, 7 days, 30 days — scopes
the numbers.

It shows:

* **Total points** for the period and the agent's **rank** across the roster
  (for example, #3 of 18).
* **Badges** earned in the period.
* Core metrics: **calls handled**, **avg QA score**, **avg CSAT**, and
  **avg handle time**.
* **How points were earned** — the per-rule points breakdown.

Coaching use: match the metric to the theme. Low rank paired with high
handle time points at efficiency work; a low QA score points at quality
reviews; the points breakdown tells you which scoring rule the agent is not
recently earning. Because the panel is the agent's own self-view, the
coaching conversation starts from the same numbers the agent can see — no
surprise mismatch.

## Roles and access

* Any signed-in role can open the page; the performance panel is
  self-scoped. A plain agent opening a teammate's link sees their own card,
  not the teammate's — the API only serves another agent's points to
  elevated roles.
* **Owner, admin, or supervisor** roles also see the state-history card.
  Adherence and break-compliance detail is restricted to those elevated
  roles; without one, that section stays hidden.

Grant supervisor-class access in team management when a shift lead needs the
state-history timeline; viewers still get the URL and their own performance
panel.

## URL pattern

Share or bookmark the detail URL directly:

```
https://orbit.devotel.io/en/voice/agents/<agentId>
```

Use the agent id shown on the leaderboard row. Paste the link into a ticket
or chat and the supervisor lands on the same view.

## Troubleshooting

* **"No state changes on this day"** — the agent never transitioned in the
  chosen window, or the link carries a stale id. Pick another day and verify
  the id against the leaderboard row.
* **Empty performance panel** — the agent has no scored activity in the
  period. Handling calls and completing QA reviews start earning points; the
  panel says so on its empty state.
* **State-history card missing** — your role is below
  owner/admin/supervisor, so the adherence surface is hidden by design.
* **Errors from the endpoint** — a 400/403 means the id or role check
  failed; a 500 means the backend rejected the read. Use the refresh button
  to retry.

## Keep going

* [Supervisor coaching](/guides/supervisor-coaching) — the coaching loop
  this page feeds.
* [Voice coaching templates](/guides/voice-coaching-templates) — reusable
  coaching plans.
* [The wallboard](/guides/wallboard) — the leaderboard and alarm rules that
  select the agent.
