Skip to content

Cards that name themselves

Five agent cards all labelled “Claude” are five cards you have to open to tell apart. A board only saves you time if you can read it at a glance.

So Offsite asks the agent to do the labelling. Every agent session starts with a short briefing from Offsite, and the agent uses it to name its own card in its first response and to keep a one-line recap current at the end of every turn.

Default names only The agents named themselves Claude Claude Codex api-refactor auth diff ready, waiting for your review flaky tests found the retry race, writing the fix docs site deployed the preview, nothing blocking
The same three sessions. Nothing about them changed except that each one says what it is.

Rename a card yourself and that name is final: Offsite marks it as yours, and from then on the agent’s own rename command is refused — it is told to keep your name and not to rename.

Only your rename locks the name. The label a session is born with (“Claude”, “Codex”, or whatever you typed when starting it) does not, which is why the agent can replace it in its first response.

The recap answers “what was this one about again?” — the question you have after lunch, after a flight, or after looking at another card for an hour.

  • Small cards show it under the name. Shrink a card, or look at the board overview on iPhone, and the card still says what it is doing.
  • A card that needs you wins over the recap. If the session is waiting for a decision, the line reads Needs attention instead — the more urgent fact.
  • Full-size cards keep it one tap away: an ⓘ pill sits in the card’s bottom-right corner, next to the turn spinner, whenever the session has a recap. Click it on the Mac for a small popover; tap it on the iPhone for a bottom sheet you swipe away. Nothing pops up on its own.

A notification carries the session’s name. With default names, “waiting for input” tells you that something wants you. With self-named sessions, “api-refactor is waiting for input” tells you whether it is worth unlocking your phone.

The name is short for the same reason: it has to fit a push notification title on a Watch. See Notifications.

  • The briefing reaches each CLI through its own supported channel: Claude via --append-system-prompt, Codex via developer_instructions, Grok via --rules. Nothing is patched into your global config.
  • The agent writes both through the offsite CLI: offsite session name '<name>' and offsite session recap '<line>'. See Offsite for agents.
  • Names and recaps are asked for in the language you write in, not the agent’s default.
  • Limits: a name is guided at 3 words / ~15 characters and hard-capped at 30; a recap is guided at under 30 words and hard-capped at 200. Both are collapsed to a single line of printable characters.
  • Each session record carries a name_source stamp: auto at creation, agent after the agent names it, user after you rename it. Only user blocks further agent renames.
  • The recap is stored with a timestamp, and the popup shows its age (“3h ago”) so an old recap never reads as the current state.
  • Mac cards switch to the compact presentation below roughly 300 × 160 points; on the iPhone board overview every card uses it.
  • Cards without an agent — Terminal, Git, Files, Browser, Simulator — carry the name you give them.