ns-ui
Session memory that visibly patinates: each remembered fact steps its ink from --foreground toward --muted the longer it goes unused, snaps back and underlines when the agent rehearses it, and is governed by real pin/evict controls.
Use when the panel showing what a long-running agent currently remembers about the user, where each fact visibly ages toward --muted if unreferenced and snaps back to --foreground the turn it's actually cited in a reply — a time-decay-with-rehearsal ledger the user can pin or evict, not a load meter (meter-context-window) or an unused-space treatment (empty-state-dashed).
Install
npx shadcn add https://design.helpmarq.com /r/memory-ledger-decay.jsonns-ui / memory-ledger-decay — turn 11
| Prop | Type | Default | Description |
|---|---|---|---|
| memories | PatinaMemory[] | — | — |
| turn | number | — | current turn index — advances as the conversation proceeds |
| ageThresholds? | readonly [number, number, number] | — | turns-unused boundaries between fresh/aging/fading/dormant. default [1, 4, 9] (0 turns = fresh, 1-3 = aging, 4-8 = fading, 9+ = dormant) |
| onPinToggle? | (id: string, pinned: boolean) => void | — | — |
| onEvict? | (id: string) => void | — | called once a row's evict collapse animation has finished |
| ariaLabel? | string | — | accessible name for the ledger list. default "Session memory" |
| className? | string | — | — |