PM Stickers
Decorative emoji-style stickers that users place on Mission Control board item cards, with free positioning, rotation and z-ordering on the card surface. Covers the eight built-in images, how adding and removing behave, where the picker appears, and the channels behind it.
What it is
PM Stickers are decorative emoji-style stickers that users place on board item cards -- with free positioning, rotation, and z-ordering on the card surface.
Users pick from 8 built-in sticker images (thumbsup, heart, star, check, clock, warning, celebrate, rocket) and place them on any board item. Each sticker has a position, rotation, and z-order. Stickers are soft-deleted and follow their parent item's lifecycle -- a soft-deleted item hides its stickers too.
Where to find it
Stickers live on the board card itself. A picker on an item card lets you choose one of the eight images, and the stickers you place render over the card surface at the position, rotation, and stacking order you gave them -- so a card can carry several at once, overlapping.
How it behaves
Adding a sticker is idempotent (duplicate add for the same item + image is a no-op). Removing an already-deleted sticker succeeds silently. Position is clamped to [-200, 200] and rotation to [-360, 360] in pixel-space storage.
Add, update and remove all require an editor role (owner, admin or member -- not viewer) on the
board the ITEM actually belongs to. The boardId a caller sends is cross-checked against the item's
own board and a mismatch is refused, so naming a board you own cannot reach another board's item;
the board persisted on the row is always the resolved one.
There are no dedicated settings; the feature requires Mission Control to be enabled.
For agents
Defined in src/shared/ipc-channels/pm-item-stickers.ts:
pm:item-stickers:list-- fetch stickers for an itempm:item-stickers:add-- place a new stickerpm:item-stickers:update-- change position/rotationpm:item-stickers:remove-- soft-delete a stickerpm:item-stickers:changed-- push notification on any mutation
Every handler is gated with requirePmEnabled(). Add uses request dedup keyed on {itemId, image} to prevent concurrent duplicate adds.
UI components
StickerPicker.tsx-- picker for selecting a sticker imageCardStickerOverlay.tsx-- renders positioned stickers over a cardStickerLayer.tsx-- z-ordered rendering layersticker-glyphs.ts-- maps sticker image keys to visual glyphs/emoji
Settings
No dedicated settings. Requires missionControlEnabled.
Related
These stickers decorate items that belong to boards, so mission-control.md -- the parent page -- is the one to read if you have not already. The sibling that puts a visible count of its own on an item is pm-voting.md, and if you are after the visual treatment of a board as a whole, pm-data-density.md covers how much of an item a card shows at once. The full behavioural contract is recorded in pm-stickers-contract.md, and every other page in this library is listed in INDEX.md.
Last verified 2026-09-27