Skip to content

The viewer card and chat history

Click any author name in the merged chat and a card opens under it. It is the answer to “who is this and should I act on this message”, and it is built so that every line on it is either something the platform told Pyre or something Pyre recorded itself. Press Escape or click anywhere outside to close it.

The top of the card is identity: the viewer’s avatar, their display name, which platform the message came from, how old the account is, and on Twitch whether they are an Affiliate or a Partner. Their profile bio follows underneath when the platform exposes one.

Identity is filled in twice. The card opens instantly with what is already on screen, then upgrades itself as soon as the fresh lookup answers, so a slow platform never means an empty card.

Under the history heading sits a row of chips that answer the questions a moderator actually has in the moment:

  • Following 214d or Not following, the age of the follow.
  • Tier 1, Tier 2 or Tier 3, with (gift) when the sub was gifted.
  • VIP.
  • Banned, or Timed out when the ban has an expiry.

These chips are Twitch only. Kick and YouTube expose no equivalent broadcaster side read, so on those platforms the card simply shows fewer chips.

Two things about how they are read are worth knowing. Each chip is fetched independently, so one failing call cannot blank the others, and an absent chip means Pyre could not read that fact rather than that the fact is false. And every chip is read with the channel owner’s authorization, not yours, which is why a moderator with narrow permissions still sees the full set.

Below identity, the card shows what this viewer has said in this channel. There are two versions of that section and it matters which one you are looking at.

Recent in chat is the fallback. It scrapes the last five messages from this viewer that are still on your screen, so it is always available and always shallow.

Chat history replaces it when Pyre has stored rows to show. That version carries:

  • A summary line: when the viewer was first seen in the channel, and how many messages they have sent.
  • A filter box, so you can search this viewer’s messages rather than scrolling them.
  • Up to twenty five rows, newest last.
  • Moderation rows labelled Banned, Timed out, Unbanned or Deleted, each carrying the moderator who did it, the duration in seconds, and the reason where the platform recorded one.
  • An Imported tag on any row that came from a third party recent messages backfill rather than from Pyre watching the channel live. A moderator weighing evidence needs to know which rows Pyre witnessed.

Deleted messages stay in the list and are marked, because the fact that a message was deleted is usually the point.

Chat history appears only when both of these are true, and neither one implies the other.

  1. The channel owner turned history on for that channel. It is an opt in, per channel, and off is the default. Nothing was ever recorded for a channel before the owner switched it on, so turning it on today does not fill in yesterday.

  2. You are allowed to read it. Access is checked on every single request, so revoking it takes effect immediately rather than at the next sign in.

There are exactly three ways to pass the second condition:

  • You are the channel owner.
  • You hold a formal Pyre moderator grant from the owner whose level covers chat history.
  • Your linked Twitch account is on the owner’s Twitch moderator roster.

Everything else is refused. The check fails closed at every step: a channel Pyre cannot resolve, a channel with history switched off, and a requester who matches none of the three all produce the same result, which is no history section at all.

The channel owner also chooses the retention window: seven, thirty or ninety days, set once for their account, with thirty as the default. Anything older is dropped. An empty history section with the summary line still filled in usually means exactly that: the viewer is known to the channel, but nothing they said falls inside the window any more.

Some cards carry one more block, above the actions: what Twitch’s ban-evasion detection thinks of this account, whether it is being monitored or restricted, and every earlier flag Pyre recorded for it. Those messages also arrive in the feed with a Monitored or Restricted edge, and only moderators ever see either. The whole thing is covered in Suspicious users.

A viewer card for crowbarcarl opened from their name in chat, with a Moderate section reading Acting in PyreChat on Twitch, timeout presets 1m, 10m, 1h, 1d and 1w, a Custom button, Ban and Unban, and below them Block, Block on Twitch, Copy, Subscribe and View on Twitch

When you can moderate the channel the message came from, the card carries a Moderate section above its actions. It names where you are acting, for example Acting in ravenmoth on Twitch, so a card opened from a busy merged feed never leaves you guessing which channel a timeout lands in.

  • Timeout chips: 1m, 10m, 1h, 1d, 1w and Custom. Custom opens a seconds field right in the card (1 second up to two weeks).
  • Ban… opens a confirm with a reason field. Twitch records the reason in its mod log; Kick and YouTube have nowhere to put one, and the field says so.
  • Unban on Twitch and Kick.

The chip you pressed shows … until the platform confirms, then the card says what happened, for example Timed out for 10m · confirmed by Twitch, and stays open so you can keep reading the history. If the platform refuses, the card says it was not applied and the toast carries the platform’s reason.

The section is not there when:

  • the message is from TikTok, which offers apps no moderation;
  • you only watch that Twitch or Kick channel (you are neither its owner nor one of its moderators);
  • you opened the card from a VOD replay line, which is past chat rather than the channel’s live chat.

On YouTube it is always shown, because YouTube does not tell apps which channels you moderate. YouTube decides, and it has no unban for apps (lift YouTube bans in YouTube Studio).

Along the bottom of the card:

  • Block and Unblock. This is a Pyre side hide: the viewer’s messages collapse in your merged chat and nothing at all happens on the platform. They are not banned, not blocked, and not notified. Your block list is saved with your Pyre settings, so it follows you into any browser you sign in on, and every entry is listed under Blocked Users in Settings.
  • Block on Twitch, on Twitch messages only. This one is a platform action: it blocks the account across Twitch using your own Twitch authorization, and it adds a local block as well so they also disappear here.
  • Copy, which copies the username.
  • Subscribe, on Twitch and Kick, opening that platform’s own subscribe page. If you already subscribe to a Twitch channel, the button reads Manage Tier 1 (or 2, or 3) instead, and tells you when the sub was a gift.
  • View on Twitch, View on Kick or View on YouTube, opening the profile.
  • No chips on a Kick or YouTube card. Expected. The chips are Twitch only.
  • No chat history section, but you moderate the channel. Either the owner has not turned history on for that channel, or you are on Kick or YouTube and need a formal grant. See the two conditions above.
  • A chip is missing but you know the answer. Pyre could not read that one fact and left it out rather than guessing. The others are unaffected.
  • History is there but almost empty. Check the owner’s retention window. Rows outside it are gone, and the summary line stays regardless.
  • The card shows no bio or account age. Not every platform returns them for every account. The card renders the fields it received.
  • No Moderate section. The message is from TikTok, from a channel you only watch, or from a VOD replay. See the list above.