Pages
Teams & Users — Ideas v8

Source: qdash /teams — c67 person expand card, 2026-08-14

v7 with the expand made first-class. UxAvatar now renders at its real size (the initials were being crushed by a text override — component was right, usage was wrong). Every person row in every state expands into the same sectioned card: identity & attribution → open work → agents & usage — the c59 sectioned idiom on DataTable's bare details well. Open work only appears when there is some; the card is the same component everywhere (TeamsPersonExpandCard).

State 1

First run

Unchanged except the avatars — no roster, the queue is the page.

Teams & UsersSpend, sensitive-data access, and risk per person.
8 identities observed — none mapped yet. Assign your first person below; teams are created as you type.
Map your identitiesobserved, not verified — assigning is evidence, not accessor connect your IdP — most of this maps automatically
3 of 8 assigned · $12 of $41 attributedwhen the queue empties, this page becomes your ledger
p
priya@meridian.devClaude Code · priya-mbp · first seen Tue$11Paymentscreate "Payments" ↵
m
marcus@meridian.devClaude Code + Cursor · marcus-mbp$9assign team…
c
ci-runner@meridian.dev3 agents · builds-04 · pipeline hours only$14assign team…
+ 5 more · autocomplete offers existing teams first, creates on enter

Teams

No teams yet — they appear here as you assign, with spend attribution from the first hour.
State 2

All clear — expandable ledger

Now expandable too — the card is how you answer "who is dana, what runs under her?" on a quiet day. No open-work section renders when there's nothing open; the card is identity + footprint.

Teams & UsersSpend, sensitive-data access, and risk per person — sorted by spend.
Nothing needs you. 14 people across 4 teams, fully mapped — $1,340/30d all attributed.
14people
across 4 teams
100%mapped
IdP not connected
$1,340attributed · 30d
of $1,340 — everything
0at risk
no open findings
Person
Team
Identity
Activity
Spend · 30d
p
priya
Paymentsorg ✓3 agents · 12m ago$169
m
marcus
Platformorg ✓3 agents · 48m ago$121
d
dana
Dataorg ✓3 agents · 1h ago$112
+ 1 more — show all · $938
100% mapped · IdP not connected —

Teams

State 3

Attention · 14 — the card at work

Expand felix: identity first (the @duck.com alias explained, machines, OS user, the team write path), then his risk story exploded into actionable rows with verbs, then the agents that generated it. The row said "1 Critical" — the card shows the evidence and hands you the verb.

Teams & UsersSpend, sensitive-data access, and risk per person — ranked by risk.
2 people and 4 identities need you — felix has an , sofia an , and $306/30d has no owner.
14people
+1 this week — chen
71%mapped
10 of 14 — 4 need assigning
$1,034attributed · 30d
of $1,340 — from /api/costs
2at risk
felix · sofia
3 of 14 people run on consumer keys — credential detail and risk live on /identity
Person
Team
Risk story
Identity
Activity
Spend · 30d
f
felixalias
Data1 Critical — undecided egress · Sunconsumer key2 agents · 31m ago$70
s
sofia
Platform1 Elevated — secrets.yaml read · Friorg ✓2 agents · 2h ago$98
p
priya
Paymentsokorg ✓3 agents · 12m ago$1692.4× median
c
chennew
okconsumer key1 agent · 19m ago$4
+ 10 more, all ok — show · $693
$306/30d unattributed — 4 identities · 3 have suggestions

Teams

click filters the roster · estimated · same /api/costs rollup Cost Center reads
State 4

Attention · 214

Same card at scale — expand answers "who is this and why is their row red" without losing your place in a 214-person list. Column search in the Person header.

Teams & UsersSpend, sensitive-data access, and risk per person — ranked by risk.
6 people and 61 identities need you — worst six below, and $4.1k/30d has no owner ·
214people
+9 this week
71%mapped
153 of 214 — 61 need assigning
$14.3kattributed · 30d
of $18.4k — from /api/costs
6at risk
2 Critical · 4 Elevated
risk: any open
team: all ▾search lives in the Person column header ↓
Team
Risk story
Spend · 30d
r
r.vance
Payments-EU2 Critical — undecided egress · plaintext secret$402
j
j.okaforalias
1 Critical — sensitive repo on unmanaged machine$261
a
a.lindqvist
ML-Infra1 Elevated — customer-data export · Thu$1,240
+ 208 more — search above, or sort by spend · $14.1k
$4.1k/30d unattributed — 61 identities · 44 have suggestions · 12 look like service accounts

Teams

Notes

The expand card — what's in, what's out

What the card shows, in order

Identity & attribution first — the evidence layer (email, source, OS user, machines, first/last seen, the alias explained, and the team write path). Then open work: the risk story exploded into rows with verbs. Then agents & usage: the footprint that generated it all. Everything derives from userRollups() + the joins the page already fetches.

What it deliberately omits

Credential severity math (/identity owns the 5-band verdict — the card links), spend history and trends (Cost Center), session logs and per-agent config (agent detail →, level 2 unchanged). The card answers "who is this, what's open, what runs under them" — not "show me everything".

Could-adds, parked for checkpoint

A 7-day activity sparkline (qdash Spark exists), per-model spend split, a "recent sessions" row like c59's AgentCard, and inline egress decision buttons (decide without leaving the page — big, needs product care). All fit section 3 or a fourth section without changing the shape.

Qpoint Brand Style Guide