@smsunarto/bb-plugin-t3sidebar
v0.1.0
Published
An inbox-style sidebar: one flat list of cards that never re-orders.
Maintainers
Readme
t3sidebar
A thread list that only moves when you move it.
t3sidebar replaces the scrolling thread list in bb's left sidebar with an inbox.
Threads sort by creation time, newest first, and hold that place until you park them. Status lives inside each card instead of in its position, so the sidebar only moves when you act — no row slides away under your cursor because an agent finished something.
You clear the list with two email verbs: snooze a thread until a wake time, or settle it when you are done. Both shelves collapse to one counted header.
Install
From npm — one command:
bb plugin install npm:@smsunarto/bb-plugin-t3sidebarFrom source — clone the repo and install the plugin as a local path source. This is also how you install a change that is not released yet:
git clone https://github.com/smsunarto/bb-plugins.git
cd bb-plugins
bun install
bun run --filter '@smsunarto/bb-plugin-t3sidebar' build
bb plugin install ./plugins/t3sidebarThe source path needs Bun and the bb CLI. Note that
bb plugin install git:<url>@<ref> does not work for these plugins: bb reads
the manifest at the repository root, so it cannot see plugins/<id>.
Requirements
- bb ≥ 0.36
- Nothing else. No accounts, keys, or external services.
Usage
Installing does not change your sidebar by itself. Open Settings → Appearance → Sidebar and choose t3sidebar (inbox).
bb's own list stays the default, and comes back the moment you switch away or disable the plugin.
Three shelves
- Inbox — newest first, with pinned threads in their own shelf above.
- Snoozed — hidden until the wake time you chose. A snoozed thread comes back early if it starts working or asks you something.
- Settled — work you are done with, collapsed to one line and shown for 24 hours. Settling also archives the thread in bb, so every other surface agrees, and new attention un-settles and unarchives it. After a day the row stops being drawn but stays archived.
An empty shelf disappears.
Cards
Three lines: the project and a status slot, the title in bold when unread, then the
branch, activity counts, PR number, and the agent. The status slot shows what the
thread needs — failed, waiting on you, working, or finished while you were away —
and its age (now, 7m, 3d) when it needs nothing. Hovering swaps that slot for
the two park buttons.
A working thread can never be parked
Workflows, background agents, background commands, plan mode, and goals all count as live work. Any of them blocks parking and wakes a parked thread, so running work is never hidden.
Snoozing
The hover button snoozes until 09:00 tomorrow.
Child threads
A flat list has nowhere to nest a child, so a child is hidden while its parent is on screen. Two chips in the thread header carry the relation instead: on a parent, a chip that opens its children and reads Needs you when one is blocked on you; on a child, a chip that names the parent and opens it.
The rest
- A project scope picker — the one control the plugin adds.
- Right-click for open in split, mark read/unread, pin, archive, delete.
- Drag a card to a split pane, or Cmd/Ctrl-click to open one.
- bb's search, its thread shortcuts, and modifier-click split-open all keep working.
Configuration
There is nothing to configure. The snooze presets assume a 09:00 morning, an 18:00 evening, and a week starting Monday, in your local timezone. The settled shelf reaches back 24 hours. None of these are settings.
Troubleshooting
My sidebar looks the same after installing. Choose t3sidebar in Settings → Appearance → Sidebar. Installing alone changes nothing.
A thread I settled is not on the Settled shelf. The shelf only reaches back 24 hours. Older work is still settled and still archived — look for it in bb's archived view.
A snoozed thread came back early. That is the design: a snoozed thread wakes when it starts working or asks you a question.
Un-settling did not bring the thread back. Archive and unarchive run on the thread's host, which can be offline. When an unarchive fails, bb keeps the thread archived and the thread leaves the sidebar until you unarchive it in bb yourself.
Uninstalling left data behind. The shelves live in the plugin's own database,
which bb removes with the plugin — but a copy of them is cached in the browser's
localStorage under t3sidebar:v1:* (thread ids, park timestamps, and provider ids,
names, and logo paths). bb's uninstall does not clear web storage. Clear site data if
that matters to you.
Credits
Forked from bb's own example.
| | |
|---|---|
| Upstream | get-bb/bb → examples/plugins/t3sidebar |
| Commit | f13c2d35f96540012b305f3b555839b30e1b6163 (2026-08-07) |
The provider brand marks are vendored SVG geometry from get-bb/bb and depict
third-party brands. A host-served logo always wins over them, rendered as a muted
silhouette rather than in brand color — by design.
Develop from source
Install from source as shown under Install, then check a change with:
bun run --filter '@smsunarto/bb-plugin-t3sidebar' typecheck
bun run --filter '@smsunarto/bb-plugin-t3sidebar' testThe test script needs Node 22.6+.
