Skip to content

Latest commit

 

History

44 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome bb plugins Awesome

Community plugins for bb — the agent IDE that builds itself.

bb ships 21 official plugins bundled inside the app and retired its own remote marketplace rather than running a central one, so third-party plugins are found by word of mouth. This list is the missing directory.

Install forms. Everything here installs from git:

bb plugin install git:https://github.com/<owner>/<repo>.git@main

Some publish to npm as well — 25 packages carry the bb-plugin keyword as of 2026-08-31 — and where an entry lists one, that is the shorter route:

bb plugin install npm:<package>

A plugin living in a subdirectory of a monorepo used to be installable by neither, because bb read the manifest at the repo root. That was fixed in get-bb/bb#1097, closed 2026-08-14 — name the directory and the git: form works:

bb plugin install git:https://github.com/<owner>/<repo>.git@main --subdirectory <path>

A repo carrying a marketplace.json catalog can also be added as a self-hosted marketplace, after which its plugins install by name. bb runs no central marketplace, but it reads third-party ones:

bb marketplace add git:github.com/<owner>/<repo>
bb plugin install <entry>@<marketplace>

Adding a marketplace installs nothing and runs no plugin code; a catalog entry is not reviewed by bb, and the install confirmation names the marketplace, the author and the exact resolved source.

(The plugin SDK was renamed and published as @get-bb/plugin-sdkget-bb/bb#1134, closed 2026-08-14 — so a plugin can depend on it instead of vendoring the types. @bb/plugin-sdk under the old name is still absent from npm; entries written before the rename vendor it and are unaffected.)

Plugins are full-trust code running in the bb server. Read the source before installing.

Contents

Providers

  • bb-plugin-kimi — Kimi Code as an ACP provider.
  • bb-plugin-factory-droid — Factory Droid as an ACP provider.
  • omp — a pi-style OhMyPi provider with provider/model grouping (openai-codex/gpt-5, openrouter/…), intended to replace the bundled ACP omp.
  • amp — Amp as an ACP provider through a bundled bridge over the official @ampcode/sdk; /orb in a thread's first prompt runs it in an Amp Orb sandbox, and Oracle sub-agent calls render as a card with a streaming trace. · npm @smsunarto/bb-plugin-amp
  • bb-plugin-copilot — writes a managed customAcpAgents entry into bb's config.json so copilot --acp --stdio runs as provider acp-copilot through bb's own ACP client; a missing Copilot CLI is reported as needs-configuration instead of a load failure. Note the PATH probe accepts any binary named copilot that answers --version, including the unrelated AWS ECS Copilot CLI.
  • bb-opencode — OpenCode as a provider over a detached opencode serve and the official @opencode-ai/sdk rather than bb's ACP guest: OpenCode agents picked in the composer, /name slash commands, permission asks on bb's native card, revert/redo, Task children bound to their own threads, and bb opencode status|version|logs. Pinned to OpenCode 1.18.x.
  • bb-auggie — Augment Code's Auggie CLI as provider acp-auggie: a background service resolves the auggie binary off PATH and the usual npm/homebrew bins, writes a managed entry into bb 0.40's provider-acp customAgents setting and strips the deprecated customAcpAgents copy from config.json, reports a missing CLI as needs-configuration, and adds bb auggie status|repair|unregister plus a themed provider icon. The PATH probe only checks the file is executable, so any binary named auggie is registered. No LICENSE file.
  • bb-plugin-fx — fx, the Zig coding agent, as a provider over its own fx acp stdio protocol: one fx subprocess per thread, the durable fx session resumed after the process or the bridge exits, and a model catalog from fx models --json with the account default fx status names kept selectable even when the public catalog omits it, pushed to fx through session/set_config_option so a model fx rejects fails the turn instead of running elsewhere. It advertises only the auto permission mode and answers every fx session/request_permission itself with the allow-once option, so bb shows you no approval prompt for file writes or shell commands. Needs the fx CLI on PATH and fx login.
  • bb-droid — registers droid exec --output-format acp as provider acp-droid by upserting a managed entry into bb 0.40's built-in ACP plugin customAgents setting rather than config.json, and deleting a leftover customAcpAgents entry on repair; a secret Factory API key setting for when the interactive droid login drops, plus bb droid status|repair|unregister. Overlaps bb-plugin-factory-droid above, which writes the older config.json key and adds reasoning-effort levels this one does not. No LICENSE file.
  • bb-plugin-antigravity-acp — registers the local Antigravity CLI (agy) as a bb provider; threads on it shell out to agy -p ... --output-format json once per turn and use --conversation for best-effort continuity, and each turn appends a kind: "generation" line to ~/.antigravity-acp/usage.jsonl in the shape bb-plugin-usage already reads.
  • bb-plugin-codex-events-bridge — polls every active Codex thread's normalized event log and republishes each row on bb.realtime, so other plugins can subscribe to the provider-codex stream instead of each re-polling the thread events DB. The other four codex-* plugins below all depend on it.
  • bb-plugin-codex-context — Codex context-pressure dashboard built on the events bridge: a live per-thread context percentage in the thread header, and a sidebar panel with context bars, daily and cross-thread token totals, compaction history and read-only account rate-limit status.
  • bb-plugin-codex-goal — renders the native goal state of Codex-backed threads — objective, status, tokens used, token budget, elapsed time and a capped per-thread history. Requires the events bridge.
  • bb-plugin-codex-live — a transient live console for the Codex provider: reasoning deltas, command output, file-change diffs, MCP/tool progress and background-task updates, coalesced by thread and item id, in a sidebar panel and a thread-scoped action. Completed items disappear after 60 seconds and nothing is persisted — bb's own timeline stays the durable view. Requires the events bridge.
  • bb-plugin-codex-raw — diagnostic companion to the events bridge: keeps an in-memory per-thread ring of provider-codex notifications bb did not normalize, and exposes them in a settings section plus RPC and CLI reads. Useful when an event you expected never arrives.
  • bb-plugin-omniroute-acp — registers a locally-running OmniRoute instance as a provider, with a real model dropdown backed by OmniRoute's own /api/v1/models so its auto-routing combos (auto/smart, auto/coding, auto/cheap) appear rather than one placeholder; turns go to its OpenAI-compatible completions endpoint, and a 5-minute background service polls its usage analytics into a usage RPC because bb-plugin-usage has no ingestion API to push into.
  • bb-plugin-pi-gateways — reaches Google AI Studio, TokenRouter, OpenRouter, NVIDIA Build, OpenCode Zen, the Kilo Code gateway and custom OpenAI-compatible endpoints through pi. OpenCode and Kilo are reached over HTTP by token, so neither CLI has to be running.
  • bb-plugin-favorite-models — star a provider's models and pin them above the full list, for when a provider exposes hundreds. Russian README.
  • ds4 — configures a local DwarfStar (antirez/ds4) inference server that starts when its bb model is used and stops after idle.

Threads & workflow

  • Stale Resume — catches the failure where a thread's Claude Code session file no longer exists once its working directory has changed, tells the parent thread instead of leaving the child silently dead, and brings it back with bb stale-resume recover; check and status from the same CLI.
  • bb-plugin-advisor — reviews a coding thread with a second model in a hidden reviewer thread; a pre-final agent tool plus post-turn review, with findings that re-raise across turns until the reviewer re-checks and closes them.
  • bb-plugin-bus — peer messaging between threads; addressed sends wake the recipient with a real turn, so no listener process is needed.
  • bb-plugin-auto-sections — files task-keyed threads into sidebar sections automatically.
  • thread-organizer — configurable workflow sections in the sidebar, with unread routing to an Inbox.
  • thread-hover-cards — previews a thread's status, its latest agent update and repository or PR context from the sidebar, on hover.
  • timeline-comments — attaches durable comment threads to selected text in a bb timeline.
  • bb-plugin-next-steps — suggests next steps above an empty composer.
  • prompt-shaper — adds an Improve prompt action to the composer that sends your rough draft to a hidden helper agent, which applies the prompt-shaper skill and returns a rewritten prompt in place for review before you send. (The package is bb-plugin-prompt-shaper; its directory is improve-prompt.)
  • Mane Control — switches Ponytail between Off, Lite, Full and Ultra from the thread composer, shows the current mode on the horse control and styles the resulting mode commands in the timeline. Requires Ponytail, which is an agent skill rather than a bb plugin and so is not listed here; without it the control blocks mode changes instead of failing quietly.
  • prime-agent — registers prime-agent as an ACP provider: installs the shim and logo, provisions the customAcpAgents config entry and reloads the server config.
  • bb-plugin-todo — hierarchical session todos with nested sub-tasks, dependsOn/requires, and dispatch to multiple agents.
  • bb-plugin-session-goal — keeps a session's goal and success criteria on a composer card so they stay in view.
  • agentation — click any element of the bb UI, including another plugin's surface, and file it as an annotation carrying the route, owning plugin id and DOM selector; staged batches are assigned to a thread from its composer, and agent tools acknowledge, reply to and resolve them. · npm @smsunarto/bb-plugin-agentation
  • GTD Sidebar — replaces the sidebar thread list with an action-oriented inbox: a thread sits in Next Action or Waiting by whether you or the agent moves next, and snoozing it to a wake time or settling it shelves it. Renamed from t3sidebar at 0.4.0 — it installs under the new id as a separate plugin and shelves do not carry over, and @smsunarto/bb-plugin-t3sidebar is frozen at 0.3.0. Forked from bb's own examples/plugins/t3sidebar and built on experimental SDK slots. · npm @smsunarto/bb-plugin-gtd-sidebar
  • Thread stages — supplies the Deferred/Idle/Active/Blocked/Completed workflow to Ribbon sidebar below, which draws it — as of v0.10.0 it no longer registers a sidebar replacement of its own, and without Ribbon installed it stores stages but displays nothing; a thread moves to Active when a turn or background command starts anywhere in its hierarchy and back to Idle when none are running, while the other three are only ever set by hand. . chords file the open thread and walk you to the next one, ⇧⌘. undoes the last filing, and Completed auto-archives after 7 days by default. bb thread-stages list|show|update from the CLI. (Renamed from Thread tasks.)
  • Missing keyboard shortcuts — adds the shortcuts bb does not bind: ⌘[/⌘] for browser history, ⌘N/⇧⌘N for a new thread with or without the current thread's project, ⌘L to focus the primary composer, and ⇧⌘L / ⌃` to toggle a side chat or thread terminal.
  • emoji-react — adds one emoji button per configured reaction to the assistant-message text-selection menu; clicking one drafts a reply quoting the highlighted text.
  • bb-plugin-writing-check — checks each English message you send for spelling and grammar in a hidden worker thread and inserts the corrections below the message; explanations are written in Simplified Chinese.
  • Agent Checklists — gives a thread a persisted list of steps the agent reads and ticks off through agent_checklist_get / agent_checklist_update, with progress in the workbench and a read-only detail view; state lives in the plugin's own SQLite store.
  • Comprehension — turns a message, a text selection or a whole thread into an HTML explainer, from a message action or the thread header. Needs bb ≥ 0.38.
  • Plannotator — embeds the upstream Plannotator plan-review app in the thread panel and hands its approval or feedback back to the agent via a plannotator_review_plan tool; you supply the Plannotator binary yourself.
  • Cascade — niri-style scrollable tiling: every live thread is a column in a horizontally scrolling strip, rows group those columns by section, project or machine, and hjkl moves while HL reorders.
  • T3 Sidebar — inbox-style replacement for the sidebar thread list, and the reference example for app.slots.experimental_threadList published standalone from bb's own examples; bb's list comes back the moment you switch away. · npm bb-plugin-t3sidebar
  • Dispatch — expands a one-liner into a full prompt and routes it to the right project as a new thread, from the new-thread composer.
  • Arc Switcher — ⌘D cycles the seven most recently opened threads, Arc-style; each one keeps a stable emoji marker so it stays recognisable as the most-recent order shuffles under it. Ships no LICENSE, so strictly nobody has been granted the right to use it yet.
  • UltraGoal — keeps a durable objective on a thread and staffs it: the orchestrator posts the remaining work as a dependency DAG where each slice declares its own file scope, a runnable done-gate and its deps, and the plugin's scheduler spawns one fresh worker per ready slice up to a slot count, re-staffs dead workers, streams audit findings into fix slices, and by default sends each finished slice to a second model to verify before it closes. bb ultragoal CLI and a plan pane; Codex threads are left alone, since Codex has native Goal. It hides worker threads by mutating bb's sidebar DOM directly and builds on experimental SDK slots, so it is more exposed to bb UI churn than most entries, and the repo was three days old when it was listed.
  • Tinted Threads — replaces the sidebar thread list with rows tinted red when a thread is blocked on input or errored and green while work is running, grouped by project with sub-threads nested under their parent; subtitles carry provider and model, a workspace label, uncommitted diffstat and PR checks and review state, and a right-click menu opens the thread's pull request. Ships no LICENSE, so nobody has been granted the right to use it yet.
  • Bots — saved bots each with their own instructions, provider, model and reasoning level; starting a chat spawns an ordinary bb thread and injects that bot's instructions into every turn of it, and deleting a bot leaves its chats behind without the persona.
  • Handoff — moves a session in both directions — captures a thread's transcript from bb's provider-independent event log, renders it as a document and spawns a new thread on another installed provider, optionally on another enrolled machine with the uncommitted work carried as a patch; or adopts a Claude Code, Codex, Gemini CLI or OpenCode session that ran outside bb, local or remote, as a bb thread. Panel, bb handoff CLI and a bundled skill. Continuation is transcript-based, not a native resume, and the cross-machine patch is capped at 2 MB.
  • Stelow — a Kanban board over Stelow workflows: a card spawns a worker thread and moves to Gate pending while a structured question is open, gate approvals are written as .stelow/approvals/<dirHash>/*-approved.md receipts, .md artifacts open in a text-selection reviewer, and bb stelow status|ask|seed|advance|preset drives the same state from the CLI. Workflow state stays in stelow.json/.stelow/, so Stelow's skills must be installed separately. Ships no LICENSE.
  • Chief — runs threads as an org chart: one global Chief thread you talk to, a project chief it stands up per bb project, and a task architect spawned per task with a generated brief, each tier locked by bb.agents.configure to only the tools and skill its rank is allowed. A nav panel draws the tree beside the Chief chat using the host's own ThreadChat, and bb chief status|handoff|workflow|retire|tidy covers the same from the CLI. Reads the companion Command Center plugin over cross-plugin rpc for open questions and the harness the composer picked, and keeps working when it is absent. Ships no LICENSE, so strictly nobody has been granted the right to use it yet.
  • Command Center — a board joining the questions agents raise through bb inbox ask with the work you queue yourself; answers are delivered back into the asking thread, archiving a card archives the worker threads attached to its task, and a request dispatches to the separate chief-nav plugin or, when it is absent, to a directly spawned worker. Sends its own macOS banners through osascript, badges its own sidebar row with a content script because navPanel has no badge, and on load installs bb's Tasks plugin and chief-nav from a git URL without asking. Ships no LICENSE.
  • Kanban — a nav-panel board of every visible thread in every standard project, with the lane derived from bb runtime state and the environment's pull request: active is working, failed is blocked, and an idle thread lands in done, review or blocked by whether its PR is merged, open/draft or closed unmerged. Drag, keyboard drag or Move left/right buttons override a lane by hand and the ordering persists in the plugin's own SQLite store, a kanban_transition tool lets an agent move only its own thread, and a five-minute reconcile plus thread events keep it current. Ships no LICENSE, so strictly nobody has been granted the right to use it yet.
  • Context Meter — a bar above the composer showing a thread's context tokens against a soft limit you set rather than the provider's full window, refreshed when a turn reports new usage, and rendered in the banner slot so it survives the compact layout that hides bb's own ring.
  • Project Instructions — per-project standing instructions appended to the system prompt of every thread in that project, kept in bb's per-plugin key-value storage instead of a committed AGENTS.md; a settings section that holds an unsaved draft per project and a bb project-instructions get|set|clear|list CLI write through one path, and both refuse text over bb's 4096-character contribution limit rather than letting bb truncate the tail silently.
  • hmps/bb-plugins — three fixes for bb's web UI on an iPhone, each installable on its own: ios-composer-touch cancels the focus transfer that costs iOS Safari a second tap on send and pads the composer buttons out to 44px, ios-status-bar parks a fixed rail in each safe area so Safari tints the status bar with --background instead of black, and mobile-large-editor rebuilds the "make prompt box larger" toggle the thread composer drops below 768px. Ships no LICENSE, and the release tags for the last two were never pushed, so those two install by --subdirectory plugins/<name> rather than from the repo's own marketplace. Its t3sidebar and usage-tracker are forks of plugins already listed here.
  • Pi Agent Switch — adds a picker to the Pi composer that lists the primary agents found in Pi's and OpenCode's agent directories, shows which one the thread is running, and switches by sending /agent <name>; a pick made in the new-thread composer is replayed once the thread exists. Pi only.
  • Session Brief — pins a card in the thread header with that thread's context fill, project branch and dirty files, child threads and pending todos, plus subscription remaining for the vendor of the model in use — read from the Pi, OpenCode or Grok OAuth sessions already on disk, access token only, never refreshed. Built on an experimental SDK slot.
  • Autobahn — a Kanban board whose cards are threads in Open/WIP/R4R/Closed lanes, where a Driver agent dispatches ready work into free WIP capacity, runs planning and verification as hidden child threads on disposable managed worktrees, and stops at a human approval form before a card closes; workflow state and an append-only event ledger live in the plugin's SQLite, and the Open lane merges controller threads with unstarted GitHub issues read through the official GitHub plugin. Ships no LICENSE, so strictly nobody has been granted the right to use it yet.
  • Council — convenes a council of advisor agents: three seeded personas, each spawned as its own bb thread, run through discussion rounds whose STANCE: / VOTE: / PASS: lines are tallied into a verdict with a dissent section; council_deliberate and council_register_vote tools plus a bb council CLI.
  • Recap — generates concise, display-only summaries for BB threads manually or after idle, with compact banner, recap card, on-demand display, and automatic cleanup. Each recap spawns a hidden worker thread in the source thread's environment and spends one model call at a provider, model and reasoning level you pick, then stops and archives it — so the after-idle mode costs a call per thread that goes quiet.
  • Codex Plan — renders the plan a codex thread publishes as a checklist with per-step status and the explanation markdown, in a nav panel, a right panel, a thread-header pill and a settings section, and approve / reject / request-changes sends a <plan_decision>-enveloped steer message back into the thread; it reads nothing itself — the repo's bb-plugin-codex-events-bridge, which polls bb's own normalized thread event log and republishes it on bb realtime, has to be installed alongside it. Built on an experimental header slot, and the root package.json says MIT while the repo ships no LICENSE file.
  • Ribbon sidebar — replaces bb's sidebar thread list with one that groups visible root threads by project, section, or any grouping a plugin supplies through getGroupingCatalogV1; drag or bb ribbon-sidebar place sets manual order within a group, filtering and grouping are per-client and cannot use the same dimension at once, and on first mount it imports and verifies Thread stages' existing placement so the old organization survives the handoff. Sections can be moved, projects are read-only because bb's SDK does not expose project movement, and if the UI fails to load it delegates to bb's original list.
  • Sidebar Filter — replaces the sidebar thread list with a project-grouped one that drops projects with no active threads — "active" means non-archived by default, or currently running (runtime indicator, workflows, background agents/commands, goals, plan mode) when set to running; pinned threads keep their own section, child threads nest under their parent, and per-thread and per-project ⋯ menus cover pin, read state, rename, copy id, archive and delete through bb's own flows. Collapse state persists per client in localStorage. Takes the exclusive thread-list slot, so it cannot run beside another thread-list replacement.
  • Model Presets — saved provider/model/effort/speed presets in the New thread composer, applied by click or Mod+Shift+L then 1-9, each optionally appending its own instructions to every thread started with it — the injection is gated on the thread actually running the preset's provider and model, so changing the model by hand opts out. Drives the composer by writing bb's internal bb.promptbox.* localStorage keys (pinned to storage version 1), so a change to that private contract breaks it. One commit and v0.1.0 when it was listed.
  • Companion Chat — opens a thread panel that spawns a fresh hidden thread beside the current one, using bb's own new-thread composer so it can run on any installed provider, model and reasoning level while reusing the source thread's environment; unlike bb's builtin side chat it forks nothing, so the companion starts with none of the source conversation. Each launch is its own panel instance, and closing the tab leaves the hidden thread with no entry point, so keep it open for chats you plan to resume.
  • Chief of Staff — turns a backlog you type into a panel into one spawned agent thread per item, each worker given a cos_ask native tool: routine questions are answered on the spot from a standing-instructions setting, decision questions block the tool call and surface as a card until you answer or dismiss them, and on the escalation timeout (default 4h) the worker is told to take the safest reversible option and note the assumption; a one-minute sweep re-prompts workers that go idle, COS:DONE / COS:BLOCKED in a worker's final message moves the item, and bb chief-of-staff brief|list|add|retry|decide|remove does the same from the CLI. Waiters live only for the current plugin load, so a reload leaves a pending decision for the sweep to expire rather than delivering it. Its manifest name bb-plugin-chief-of-staff is already taken on npm by an unrelated GitHub-backed plugin of the same display name, so install from git. No LICENSE file.
  • Grill — replaces the thread composer with a form holding a whole round of clarifying questions, each with the agent's recommendation pre-selected and a "Something else…" free-text row, and returns the answers as a new message instead of holding the tool call open; dismissing it tells the agent to ask in plain chat. Ships no LICENSE, so strictly nobody has been granted the right to use it yet.
  • Autorouter — picks the provider, model and reasoning level for a new thread from a model-rated 0-100 difficulty score, live Codex/Claude Code/Cursor quota and a bundled CursorBench cost table, weighted by a $ to $$$ frugality setting; routing happens on its own nav panel wrapping bb's native new-thread composer, or via bb autorouter route. Every submission first spends a hidden classification thread that sends your prompt text to whichever provider is rating it, which may not be the provider the work ends up on; the benchmark table is compiled in, so new provider models need a new release to be scored. No LICENSE file.
  • Goal — keeps one durable objective on a thread in the plugin's own SQLite store and re-prompts the thread with an agent-only continuation each time it goes idle, holding off while you have a message queued or an interaction pending and pausing on turn failures and usage limits; the agent can only end it through bb_goal_complete, which requires a summary and verification evidence, or bb_goal_blocked, which requires the same external blocker for three consecutive goal turns, each applied as a revision-guarded transition. bb goal start|status|edit|pause|resume|cancel|history|show|delete, a composer banner and a history panel. One author, 37 commits over six days, and v0.1.1 when it was listed.
  • Labels Pro — many-to-many labels on threads, kept in the plugin's own SQLite rather than on bb's thread rows — a nav panel and a thread-header chip create and toggle them, bb labels assigns, lists threads by label and marks every thread with a label as read, and auto-tag labels automation-spawned threads (originPluginId=automations) and names a label after the Tasks project a thread is attached to, with backfill-automations / backfill-task-projects for threads that already exist; publishes a labels realtime channel and a Zod RPC contract that its two sibling plugins, Sidebar Pro and Notifications Pro, read for label filtering and mute-by-label. Five commits in one afternoon with no tag and no npm package, so it installs from @main.
  • Sidebar Pro — fork of T3 Sidebar that adds the controls it leaves out: filter the thread list by status, by provider, or by Labels Pro label in only/hide mode, sort by created, attention, updated or title, toggle one-line rows against three-line cards, and mark every attention thread read at once (respecting the active label filter); the preference is kept per device in localStorage. The label filter and row chips appear only when the separate Labels Pro plugin is installed — a 404 or 503 from its RPC is treated as absence and the list behaves like stock T3. It takes the exclusive thread-list slot, so it cannot run beside another thread-list replacement, and the repo was two days old, at five commits, one author and no release tag, when it was listed.
  • bb-plugin-task-comment-float — a companion panel for the official Tasks plugin, which it does not patch or replace: browse every task grouped by status or project with the same search, chip filters and sort, open a row to edit and comment, and dispatch agents with the task kept on screen.
  • bb-plugin-kanban — a board whose cards are bb threads, moving between Backlog, Ready, In progress, Review and Done as thread lifecycle events fire, with drag to override. Threads settled in T3 Sidebar go to a separate shelf, collapsed by default.
  • bb-plugin-t3sidebar — an inbox-style replacement for bb's sidebar thread list, with collapsible thread folders. Began as an example in the bb repo and is the reference implementation of app.slots.experimental_threadList, so it is exposed to changes in that slot.
  • bb-plugin-harness — an opt-in, operator-driven coding workflow that turns a task into an explicit durable lifecycle; the standard harness stays the immutable default and this one is entered deliberately.
  • Handoff — hands the current thread to another agent: a writer model drafts a compact outline of the conversation plus the latest assistant output, then a new root thread continues in the same workspace. The provider is bound at spawn, so a handoff is always a new thread rather than a provider switch inside the old one.
  • Session Notes — attaches short private notes to individual messages in a thread, so scrolling back through a transcript shows your own annotations beside the output they refer to. Explicitly never injected into a model's context.
  • Sticky Notes — durable shared notes laid over a thread, created from a button in the native composer and dragged into place; layout is stored relative to the nearest edges, and dragging one below the viewport discards it.
  • perspectives — adds two agent tools: help, which asks one hidden expert a question synchronously and returns the answer as the tool result, and gather_perspectives, which takes 3-7 caller-supplied lenses, runs a hidden panel concurrently and delivers the synthesis back to the calling thread later as a Perspectives panel result message. Each call spawns hidden threads, so it costs real model calls.
  • Agentation → Mentions — a derivative of Scott Sunarto's Agentation pinned to an exact upstream revision, adding bb mentions, queued delivery and verified identity tags to visual feedback. Scott's own Agentation remains the maintained visual-annotation plugin; licensed MIT AND PolyForm-Shield-1.0.0, which is not a plain permissive licence.

Editing & files

  • bb-plugin-files — file browser and editor for a thread's environment.
  • bb-plugin-filetree — lazy-loading file tree in the side panel.
  • VS Code Server — embeds a code-server or VS Code Server instance in a thread's right panel as an iframe, opening at the thread's workspace or storage folder via ?folder=. It does not start a server: you run one yourself and give the plugin its URL in settings, so the server also has to permit being framed.
  • Git Graph — read-only commit graph in a thread side panel, running git inside that thread's own environment — including one hosted on another connected machine, rather than on whichever repo the bb window happens to be pointing at.
  • bb-plugin-md-annotate — Google-Docs-style inline comments on markdown.
  • excalidraw — create and edit Excalidraw drawings, then attach them to a conversation.
  • bb-plugin-excalidraw — opens a workspace .excalidraw file as a canvas, with SHA-256 compare-and-swap agent tools, a bb excalidraw read/create/apply CLI, and a diagram-design skill.
  • Server File Explorer — read-only Files panel for the machine running the bb server, with folder navigation, an absolute-path bar, browser history and markdown shown rendered or raw.
  • Audio Preview — claims fifteen audio extensions as a file-panel opener and renders an HTML5 player where bb's own preview returns "Preview not available for audio/mp4" — the file is served through a host preview URL at bb's one-hour TTL cap, and if the browser cannot decode that stream the bytes are re-read over rpc and played as a correctly-typed blob. Leaves .mp4 and .webm to bb, since those containers are often video. Relative paths are rejected if they contain .., so a claimed file cannot escape its file root. One commit, and the repo was a week old when it was listed.
  • Git History — read-only commit graph in a thread's right panel across local, remote, tag and stash refs, with commit details, per-file patches rendered in bb's native diff viewer, and a collapsible uncommitted-files section with working-tree diffs; git runs on the thread environment's host, so it follows a repo on a connected machine. The deeper of the two commit-graph entries — Git Graph above stops at the newest 200 commits and lists commit details and search as future work.
  • Video Preview — a file-panel opener for mp4, m4v, mov, webm, mkv and ogv, plus a content script that upgrades attachment download pills to an inline <video> in project attachments and in Tasks; the server entry is a no-op, all of it is the app half. No LICENSE file.
  • color-swatches — renders CSS colour literals as swatches in thread code and in submitted user messages — hex, rgb(), hsl(), oklch() and friends.
  • open-in-moss — opens local Markdown file links in Moss rather than bb's built-in file viewer.

Code intelligence

  • bb-plugin-code-intelligence — tree-sitter code search and impact analysis. (unmaintained — upstream archived the repo)
  • design-doctrine — learn, browse and apply product-design rules drawn from your own bb feedback.
  • Call Stacks — the agent publishes named call-stack flows into a thread panel, each frame carrying file:line, in/out types, the guarding condition, loop context and an added/modified/removed marker; publishing lints those frames against the workspace files, a re-hash on every thread idle flags frames whose files changed, and it ships a bb callstack CLI and a call-stack-driven-development skill.

Host & environment

  • Terminal Jobs — runs a long terminal command as a durable job: state in the plugin's own SQLite, artifacts written on the target host, and an at-least-once completion notice delivered to one immutable owner thread, so the verdict outlives the session that started it. Backend only — bb terminal-job run|watch|show|retry-notification and a terminal-jobs skill, with no panel, HTTP route or agent tool.
  • bb-plugin-system — CPU, memory, disk and top processes as a panel, homepage tiles and a bb system CLI.
  • Wterm Terminal Preview — early-preview Ghostty-backed alternative to bb's thread terminal with persistent reattachment, TUI mouse input, font controls and file upload for SSH and Herdr workflows. Drives bb's own terminal sessions rather than spawning its own, and uploads land in .bb-wterm-uploads/ under the terminal's working directory. Built on an experimental SDK slot, so it is more exposed to bb UI churn than most entries.
  • bb-plugin-worktree-setup — per-repo worktree provisioning and git hooks.
  • browser — lets agents drive your own Chrome through a browser extension, signed in as you are.
  • bb-plugin-browser — drives a browser you already have (Brave, Chrome, Chromium, Edge, Vivaldi or Opera) over CDP on a profile of its own, headless by default; each thread gets its own tab named by CDP target id, so tabs survive plugin reloads and bb restarts, threads share cookies and logins but can never move each other's page, browser_show relaunches on screen when a login wall or CAPTCHA needs you, and the idle reaper only ever closes tabs the plugin opened.
  • stay-awake — keeps macOS from idle-sleeping while bb runs. The display still sleeps and closing the lid still sleeps the machine.
  • codex-environments — uses Codex local environment files for bb worktrees and services.
  • bb-plugin-accounts — Claude Max account usage and auto-switching, with thread auto-continue after a rate limit.
  • bb-plugin-cf-tunnel — reach bb remotely over your own Cloudflare Tunnel and Access policy, with expiring shared ports.
  • agent-proxy — installs CLIProxyAPI and keeps it running as a launchd/systemd login service, so several Claude and Codex accounts answer on one loopback OpenAI/Anthropic/Gemini endpoint; OAuth sign-in, provider keys, usage and Claude Code/Codex wiring in a panel, plus a bb agent-proxy CLI. It installs a third-party binary as a login service that outlives bb. · npm @smsunarto/bb-plugin-agent-proxy
  • usage-tracker — Codex and Claude Code usage percentages in a sidebar footer strip that expands to the 5-hour and weekly windows with reset times.
  • bb-plugin-usage — token counts and estimated API cost per agent, model provider and machine, read from Codex, Claude Code, Grok, OpenCode and Pi session logs on every enrolled host.
  • Usage — a second take on the same idea: Claude Code, Codex and Pi token usage and estimated cost in a nav panel and a CLI, read from local session logs on the host running bb.
  • Usage limits below chat — one compact row under the composer showing the session and weekly limits of the provider selected in that composer — Codex, Claude Code or Cursor — with the signed-in account on the right.
  • Grok Usage — adds a Grok Build weekly-limit row to Settings → Usage limits, reusing the existing grok login session in ~/.grok/auth.json instead of asking for another key.
  • Grok Build Usage — adds live Grok Build subscription and weekly credit usage to Settings → Usage Limits, including the subscription name, reset timing, and provider status when Grok Build is missing or not signed in. A second take on the entry above, reading the same ~/.grok/auth.json session but arriving differently: it registers a companion provider — bb's built-in ACP provider already owns the acp-grok id — and handles both the current weekly credit response and the legacy monthly counter.
  • Lanes — normalises Claude, Codex, OpenCode Zen Go and OpenRouter headroom into one set of gauges on the homepage and a nav panel; the last two are the lanes bb tracks nothing about.
  • bb-plugin-docker — containers, images, volumes and networks on a connected bb host in a nav panel, with container logs, one-shot exec, prunes that need an explicit --yes, and a bb docker CLI; the docker argv runs in a bundled host entry rather than in the bb server, so it follows the enrolled host and never goes through a shell.
  • Provider Usage — a live 15-minute throughput chart, binned per 10 seconds and attributed to the threads doing the work, next to remaining plan quota and reset windows from bb's own system.usageLimits and 7/30/90-day token volume read from Codex, Claude Code, Cursor and opencode transcripts — with bb's thread/tokenUsage/updated events covering any provider that has no scanner, so a new ACP agent charts itself; panel, homepage section, sidebar accessory and a bb usage CLI, plus a picker across paired machines.
  • tokenmaxx — dashboard for the third-party tokenmaxx daemon — every signed-in Codex and Claude Code account with its rate-limit windows and reset times, token throughput and cost analytics, manual switching, and auto-rotation with threshold, dwell and hysteresis; a sidebar figure carries how full the whole pool is, and daemon start/stop, routing install, doctor and provider login run through the CLI, login in a bb terminal you can type into. You must be running tokenmaxx yourself — the plugin does not install it.
  • Ports — listening TCP ports from every connected bb host in one panel, each grouped under the bb project source or environment whose path contains the process's working directory (longest path wins) and the rest under External ports; a row opens the port through a bb shared-port tunnel, falling back to http://127.0.0.1:<port> when no tunnel can be created, copies that URL, or SIGTERMs the process after a confirmation and a re-scan that checks the PID still owns the port. Reads lsof on each host, so TCP only, and a Linux or FreeBSD host needs it installed. Built on the experimental host-entry SDK surface, and ships no LICENSE.
  • Xcode — tracks every Xcode, xcodebuild, agent and CI build on the machine by watching toolchain processes and learning DerivedData roots from the builds themselves, with live rows above the composer, per-project history, and verdicts, compiler errors and failed tests at file:line; the same panel streams a booted simulator over hardware H.264 with tap, drag, pinch, paste and keyboard, and renders every SwiftUI preview to diff against the last run (that tab needs EmergeTools SnapshotPreviews added to your project). Agent tools that run builds or touch a simulator stay unregistered until you switch them on. Only works when the bb server itself runs on macOS.
  • Skills.sh — installs skills.sh skills into bb's own global skills directory (<data-dir>/skills) so every agent bb runs picks them up, instead of per-tool copies under .claude/ or .codex/; a sidebar panel and a bb skills add|list|check|update|remove|find CLI mirror the npx skills commands, and check/update compare the git tree SHA of each installed skill folder against its source so only drifted skills are rewritten.
  • iOS Simulators — boots, shuts down and streams iOS simulators from a thread panel, keeping a baguette server alive with a watchdog that remembers the pid it spawned across plugin reloads, and embedding the stream through a loopback proxy that strips the frame-ancestors 'none' header baguette sends; you supply the baguette binary. Ships no LICENSE.
  • Traces — indexes the agent session logs already on disk — Codex, Claude Code, Pi, OMP and dsh — into its own SQLite store and browses sessions and per-event trajectories in a nav panel, on every enrolled host.
  • UA Fetch — a web_fetch agent tool that classifies a blocked or bot-walled response and re-probes it with a set of crawler User-Agents, caching the winning one per host.
  • Cloud Machines — spins up Vercel Sandbox VMs that install bb and enrol themselves as machines over bb connect, listed in a nav panel with per-row wake, stop and delete and a sortable, status-filterable table; templates build custom OCI images in a throwaway sandbox and push them to Vercel's registry, and Claude Code or pi.dev credentials are injected into a machine's environment at creation rather than baked into the image. GUI only, no CLI; it calls the built-in connect plugin for a publicly reachable server URL, and Vercel caps a sandbox at 45 minutes on Hobby, so a machine is not long-lived. Ships no LICENSE.
  • Host Monitor — CPU, RAM, swap, disk, network throughput, load average and uptime for every enrolled bb host in one panel, plus a sidebar popover and a draggable floating window, with adjustable yellow/red percentage thresholds and a per-host process list whose stop action re-checks identity, ownership, ancestry and elevation and then needs a 60-second one-use confirmation token; the sampler runs as a bb host worker on each machine, and the process projection carries no command lines, paths, environment or usernames. Built on the experimental host-entry and sidebar-accessory SDK surfaces, so it needs bb 0.40+; installs from git tags (host-monitor/vX.Y.Z), not npm.
  • Kernel Browser — opens Kernel cloud browsers from a thread — a bb kernel-browser CLI and kernel_browser_* agent tools for open/snapshot/click/type/eval/close, video replays, and managed logins run on Kernel's own hosted login page so the plugin never handles a password; live views, finished replays and login pages render inline in the message stream through ::kernel-live, ::kernel-replay and ::kernel-auth-login directives, every action is refused unless the target is one this plugin opened and recorded in its own SQLite table, and a thread's targets are closed when it is archived or deleted. Drives navigation through Kernel's server-side Playwright execution API rather than CDP, so the browser runs on Kernel's paid cloud and needs an API key, not a local install. First-party code from Kernel itself.
  • Perf — per-plugin handler call counts, total/average/worst time, error counts and service or schedule health in Settings, with a background sampler persisting each server session's totals to SQLite so they survive a restart (bb's own counters are in-memory), plus each plugin's app-bundle byte size and the browser's own fetch+parse time for it captured by a content script; no CLI and no other UI surface, and the collectClientLoads setting is shown but does not actually stop the content script from posting.
  • Floating Terminal — a draggable, resizable terminal window floating over bb, opened from the sidebar footer or Ctrl+, with one tab per PTY in any project checkout or any connected machine's home directory; the open-tab list, active tab and window geometry are persisted, so hiding the window, reloading the app or restarting bb reattaches the same shells with their scrollback, and a shell that died while you were away is dropped. Drives bb's own bb.sdk.terminalssessions rather than spawning its own, polls output on a sequence cursor instead of streaming, and below bb's compact breakpoint becomes avisualViewport`-sized sheet with an on-screen bar for esc/tab/ctrl/arrows and finger scrolling of the scrollback.
  • Claude Account Switcher — adds a Switch Claude login action to a Claude Code thread's header — runs claude auth login --claudeai on that thread's own machine, opening the consent page in Chrome Incognito through a short-lived BROWSER shim that only accepts a claude.com/cai/oauth/authorize URL, checks claude auth status --json reports a claude.ai subscription rather than an API key, then stops only that thread's runtime so the next message starts on the new login; refuses unless the thread is idle or errored, holds a per-machine lock so two switches cannot overlap, and persists helper-terminal ownership in KV so a reload cannot orphan one. The Claude login is machine-wide — other loaded threads keep their old runtime until each is released.
  • Disk Usage — walks a directory on the machine running the bb server and lists the largest entries at each level with drill-down, sizing files by allocated blocks rather than apparent size, counting a hardlinked inode once per dev:ino and never following symlinks; a 500,000-entry budget stops a runaway scan and marks the result truncated, scans are cached per path until --refresh and concurrent requests for one path join a single walk, and bb disk-usage [path] [--top N] [--json] prints the same list.
  • darknoon/bb-plugins — two plugins: Dev Servers finds HTML dev servers running in bb worktrees with lsof/ps, shows each with its linked chat, port, process and bb terminal, previews it in a thread panel tab through a bb shared-port tunnel or a Tailscale Serve URL when bb is reached over a *.ts.net origin, and hands out stable per-worktree port blocks so bb dev-servers start --command 'pnpm dev --port {port}' opens the server in a bb terminal it remembers; Startup writes a per-user macOS LaunchAgent that runs bb-app@latest after login, with LaunchAgent, runtime, login-keychain and Tailscale health under Settings → Extensions and a bb startup status|enable|disable|handoff CLI whose handoff lists visible and hidden running threads and needs an explicit confirmation before restarting bb. Every managed start pulls bb-app@latest, so bb updates itself at each login; it refuses to overwrite or remove a LaunchAgent that does not carry its own ownership marker. Ships no LICENSE.
  • Skills Sync — reconciles a flat skills install folder (default ~/.agents/skills) against the git repos the skills came from, by comparing three trees — the commit pinned in a marker file, upstream HEAD, and the local install — and sorting every skill into new, deprecated, clean, dirty-conflict or dirty-only; each changed file is diffed twice, raw and through a punctuation/whitespace normaliser, so repo-wide cosmetic churn is reported separately from real edits, and apply acts only on the names you pass, refuses foreign folders and skipped buckets, backs up local edits before overwriting, and writes the pin marker last and only when nothing upstream is left unresolved. A dirty-conflict can be handed to a spawned bb thread that writes a merged skill into a cache staging directory for you to accept or discard. Panel with a sidebar count, a bb skills-sync sources|status|diff|apply CLI, an optional scheduled fetch, and a bundled update-skills skill. Reads and writes the bb server's own filesystem, so on a multi-machine setup it syncs the server's skills folder, not a remote host's. Ships no LICENSE.
  • bb-plugin-workspaces — a multi-root layer over bb's one-folder-per-project model: groups ordinary bb projects into named workspaces and runs one agent thread per folder, without modifying bb itself.
  • bb-plugin-wakatime — WakaTime-style time tracking for agent work: wall-clock working time while at least one thread is running, broken down by project, machine and model, with parallel threads not inflating the total.
  • bb-plugin-homepage-dashboard — puts a homelab estate on the bb homepage and in its own panel, grouped by category, with real HTTP health probes for what is publicly reachable and plain inventory for the rest.

Memory & knowledge

  • bb-plugin-memory-ui — browse, search, edit, pin and forget bb memories, with version history.

Notifications

  • ntfy notifications — pushes to your phone through ntfy.sh when a thread needs your attention, with bb ntfy test|status to check the wiring. The topic is a secret setting, which is the right call: on ntfy the topic name is the only thing between your notifications and anyone who guesses it.
  • bb-plugin-ios-notifications — Web Push to your iPhone when a thread finishes or fails.
  • bb-plugin-notify — agent-to-user pings as an in-app toast or a webhook, with quiet hours.
  • notify — native macOS notifications when a thread finishes or fails, posted by the bb window so they carry bb's icon and click through to the thread; holds them in a durable queue while bb is closed, plus a notify_user tool and a bb notify command. · npm @smsunarto/bb-plugin-notify
  • Chime — plays a short sound when a thread's turn starts, finishes, fails, asks a question or requests approval; each of the six events has its own toggle and sound from Calm/Glass/Wood/Minimal themes, a one-second window collapses storms in favour of questions, approvals and failures, and only one tab per browser origin sounds — or the bb host does, through afplay on macOS.
  • Notifications Pro — desktop OS toasts, an app/Dock badge and an in-app center with unread history, mark-read and dismiss, fired on the edge where a thread newly needs attention — unread, waiting for input, errored, pending interaction — rather than on turn end, and separately when a task is assigned to you; the same edge can send Web Push to a home-screen PWA, and the plugin's own service worker skips the push UI when a bb window is visible so one edge raises one alert. Muting threads by label needs the author's separate Labels Pro, and the assigned-task source their Tasks Pro (task-comment-float); both degrade to off when absent. Ships no LICENSE, and no tag or npm package — install from a clone.

Integrations

  • linear — search Linear issues from the prompt box and attach agent-ready context.
  • bb-plugin-linear — the deeper of the two Linear entries: issues, inbox, triage, projects and cycles in a nav panel, each thread bound to the issue it works on in the header and in the agent's own context, and a dozen linear_* tools covering search, comment and issue create/update.
  • Sentry Issues — read-only Sentry issue browser for bounded issue snapshots across configured projects, with severity summaries, searchable issue details, and optional links to local BB triage threads.
  • Shortcut — the Shortcut stories assigned to you as a compact kanban grouped by workflow state, with shortcut_list_assigned / shortcut_get_story agent tools and a hand-off into a thread; the API token is a secret setting.
  • Beads — browse and update Beads issues in a project panel, shelling out to the bd CLI as the source of truth rather than keeping its own copy; Beads must already be installed.
  • bb-plugin-jenkins — a second Jenkins plugin, aimed at deploys rather than browsing: star the jobs you ship, group them into your own folders, and fire parameterised builds or saved presets in one click, with live status on the homepage.
  • bb-plugin-exec-tracking — records provider/model/reasoning evidence per run.
  • bb-plugin-argocd — read-only Argo CD browser: application sync and health, managed resources, deploy history and pod logs, with agent tools and a bb argocd CLI.
  • bb-plugin-jenkins — Jenkins jobs, builds and console logs as a panel, with agent tools, a bb jenkins CLI, and build triggering behind a confirmation.
  • bb-slop-cop — polls GitHub for PRs matching rules you define, dispatches a bb agent to review each match, and posts the review with gh; new rules run in shadow mode and only review authors with write access.
  • gh-stack — drives gh stack in a thread's workspace: a layer rail with each PR's state and +N −M diff, checkout with auto-stash, draft toggle, sync/submit/merge/prune, and a button that hands the split to the thread's agent. · npm @smsunarto/bb-plugin-gh-stack
  • taskboard — per-project GitHub, Linear or Jira issues as a list or kanban board, with drag-to-move through the provider's own statuses, a bb taskboard CLI, and a mention that attaches a task's context to a prompt.
  • GitHub Activity — comments and mentions on the GitHub pull requests and issues you authored, in one searchable panel that keeps open and resolved activity together; shells out to the gh CLI (gh api graphql), so GitHub CLI must already be installed and authenticated, and resolved state lives in the plugin's own KV store.
  • GitHub Extended — a GitHub+ panel and bb github-extended CLI for cached issues, pull requests and Dependabot alerts, with filters, saved views, user-triggered GitHub actions, agent work and reviews, thread linking, and mention providers; uses the authenticated gh CLI.
  • Shortcut Agent — the Epic-scoped counterpart to the Shortcut entry: one Epic's stories as a nav-panel dependency graph split into ready, active, blocked and done, with a bb shortcut-agent CLI and shortcut_agent_* tools to claim, complete, release and link stories, and a Start work menu item that spawns a bb thread carrying the story's description; every write stays off until Enable agent mutations is set.
  • Jira — Jira Cloud synced into a local SQLite cache: a projects grid, a filterable issue list with inline editing, versions behind a release gate that refuses to ship while attached issues are still open, an activity feed derived from changelogs and comments, read-only jira_* agent tools and a bb jira CLI.
  • Jira Card — renders ::jira-card{key=ABC-123} in an assistant reply as a live Jira issue card — status, priority, assignee, Open in Jira, Refresh, and a Summarize button that runs a hidden thread over the description and comments; a jira_card tool and bb jira-card show|refresh return the same fields plus the directive to emit, and snapshots are cached for five minutes so scrolling history does not re-hit Jira.
  • SQL — Postgres in a nav panel: connection CRUD in the plugin's own SQLite, a schema and table tree with describe and record preview, a query editor with persisted history and a .sql file opener honouring a -- @conn Name hint, plus sql_query and sql_list_connections agent tools; every statement runs inside BEGIN READ ONLY with a statement timeout and a row cap, so the database itself rejects writes until 0.5, and connection passwords sit in that SQLite in plaintext.
  • Diffui — mounts Diffui's own canvas element in a bb nav page and thread panel, wraps the sidebar thread list to show only the canvases created from bb, and adds diffui_create_canvas / diffui_generate_options / diffui_get_canvas / diffui_create_build_link tools, an @diffui mention that attaches a canvas or brand as context, a bb diffui status|canvases|new CLI, and a Build with bb canvas action that uploads the selected designs as attachments and spawns a thread from them; needs a Diffui account and API key. First-party integration by Diffui's own author; the preferred build transport waits on an unmerged bb PR and falls back to a relay websocket, then the clipboard.
  • CRM — a CRM workspace in a nav panel — companies, contacts and deals as sortable tables with facets, saved views and deep-linked record drawers, shared activity timelines, custom fields and eleven-currency deal amounts, all in the plugin's own SQLite store; agent definitions run as hidden bb threads on manual, scheduled, CRM-event or signed-webhook triggers with 25 crm_* agent tools and a bundled crm skill, plus a bb crm CLI for list/show/create/update/archive/bulk/import/export and opt-in Gmail, Calendar, Outlook and Slack sync. A port of the MIT-licensed trycompai/crm. Tokens are operator-pasted secret settings — the SDK cannot run an OAuth flow — and the website tracking collector adds four auth: "none" HTTP routes on the bb server, gated by site key, token and allowed-domain checks.
  • Dependabot — groups a repo's open Dependabot alerts by dependency across every bb project whose git remote is on GitHub plus an extraRepos setting, reading them through the authenticated gh CLI, and spawns a bb thread per dependency carrying a generated fix prompt; needs gh auth login with security_events scope and reports a missing one as needs-configuration. Overlaps GitHub Extended's cached alert view, but the action is different.
  • bb-plugin-linear — a Linear workspace inside bb: browse custom views and issues, search and filter by assignee, create issues, update workflow status and launch agents against them. (A second, smaller Linear plugin is listed above.)
  • bb-plugin-agent-plugins — install an Agent Plugin — skills plus MCP servers — once and have it flow to every provider, instead of configuring each one separately.
  • Feature Flags — a LaunchDarkly sidebar page: one row per flag, one column per environment, each cell a toggle. Models a flag as a single entity whose on/off state alone is per-environment.
  • bb-plugin-support-inbox — pulls in bug reports, clusters duplicates and drafts replies for review.

Appearance

  • bb-plugin-ayu — ayu themes plus a palette explorer.
  • bb-plugin-sidebar-sync — keeps the sidebar arrangement — nav order, hidden rows, collapsed sections — the same in every bb UI; width and open state stay per-device.
  • bb-plugin-fontsize — scales the whole interface from a sidebar footer button that cycles 13/16/20/26px, plus a settings panel with ±1px control; the size is stored per device.
  • monokai — dark Monokai palette that also repaints the terminal's 16 ANSI colors, the diff viewer's rows and gutters, the file tree's git-status column, inline code tokens and the composer stop button; dark appearance only. · npm @smsunarto/bb-plugin-monokai
  • Breadcrumbs — puts a thread's section, project and ancestor threads before its title in the header, each part toggled on its own; the project name opens settings, rename and remove, and the section name opens what bb's own sidebar section header opens. Ancestors are off by default, and a fork is not an ancestor — bb gives it a sourceThreadId rather than a parent. (Renamed from Project header breadcrumb.)
  • Icons — gives every project and thread section an icon and optional color, picked from a 2,530-icon Hugeicons catalog — the same set bb draws its own chrome from — and drawn wherever bb names a project or section, including Thread stages' sidebar rows. (Renamed from Project icons, and now covers sections too.)
  • Cobalt2 — the Cobalt2 palette as a bb theme; CSS only, no server behaviour.
  • Agent Orbs — gives each active child thread a stable identity: a generated Oreo avatar and a friendly codename.
  • Composer Beam — draws an animated beam around a composer while its thread is running or submitting. Frontend only.
  • Fluid Thinking — replaces only the Thinking… / Working… indicator with the morphing Fluid Functionalism one.
  • Mesh Gradient — a mesh-gradient studio in a thread's right panel: drag, recolor and reshuffle radial-gradient points, preview the result as an OG card, hero or avatar with a WCAG readability badge, save to a shared library that both an @gradient mention and a mesh_gradient agent tool read, export PNG, CSS/SVG or design tokens into the thread's checkout, and install its six palettes as bb themes.
  • Thread Provider Icons — draws each thread's provider mark before its title in the sidebar, in the provider's own brand colour, with unknown acp-* agents falling back to a generic ACP mark and labelled from their provider id; it takes the exclusive experimental_threadList slot to wrap bb's own list, so it cannot run alongside another thread-list replacement.
  • ChatGPT theme — repaints bb in the OpenAI ChatGPT (Codex) desktop palette, one stylesheet covering light and dark plus the terminal's 16 ANSI colors and their readable foregrounds, with values read from the live Codex DOM rather than pixel-sampled; colors and shadows only, no dimensions or positions.
  • Message Timestamps — puts the send time on your own messages — a clock time today, Yesterday/a date for older ones, and the full date on hover; the server pages the thread timeline for user-sent rows and a content script paints the time onto bb's own chat DOM by matching its Tailwind class names, so a bb restyle drops the times rather than erroring. Ships no LICENSE.
  • Image Preview — restyles images in chat messages: one image becomes a capped thumbnail, several in the same message become a grid of up to four tiles with a +N badge, and clicking or pressing Enter opens a lightbox with arrow-key navigation; image-file links in a message get a generated thumbnail too. Frontend content script only — the server entry just logs. Ships no LICENSE, so strictly nobody has been granted the right to use it yet.
  • Fonts — sets an installed font family per role — interface, code and serif — plus each role's size, weight, style, line height and letter spacing, written over the theme's --font-sans/--font-mono/--font-serif and text-size variables so the type survives a palette change; the family list comes from Chromium's Local Font Access API with manual family entry where that is unavailable, and settings live in the client's own localStorage, synced across windows over BroadcastChannel. The server entry only logs, so no font catalog leaves the client.
  • ben-vargas/bb-plugins — three unrelated plugins, each installable on its own: full-width adds a thread-header toggle that lifts bb's 760px chat cap through one attribute on <html>, so split panes and embedded chats widen together; project-activity-sort reorders sidebar project sections by each project's newest non-archived thread while still rendering bb's own list; and xai-voice serves bb's voice transcription from xAI's /v1/stt using XAI_API_KEY or the Grok CLI's OAuth session, delegating an expired token's refresh to the grok CLI rather than writing its auth store. full-width targets bb-internal markup and degrades to a no-op if bb renames it, and the sort plugin takes the exclusive thread-list slot, so it cannot run alongside another thread-list replacement. The repo was about a week old when it was listed. · npm @benvargas/bb-plugin-full-width, @benvargas/bb-plugin-project-activity-sort, @benvargas/bb-plugin-xai-voice
  • Vercel theme — a Vercel-style palette for bb — #000 content over #0a0a0a chrome in dark, white over off-white in light, Geist and Geist Mono with system fallbacks, separate light and dark code themes, and the terminal's 16 ANSI colors plus diff, file-tree and sugar-high chat-code variables in both modes; the server entry only logs.
  • endless — Frank Ocean's Endless as a theme family: endless, the achromatic silver print, and endless-color, the same structure with rare pops sampled from the film's painted stair.
  • bb-plugin-tokyo-night — the two Tokyo Night palettes, Night (#1a1b26, deep indigo) and Storm, each pairing its dark base with a light counterpart.
  • theme-preview — a skeleton of the whole bb app — sidebar, splits, side panels, overlays, real thread timelines and controls — drawn from the active theme's tokens, so a palette can be judged on app-shaped surfaces before it ships.
  • hide-sidebar-footer-actions — frontend-only, hides the Remote access and Report a bug buttons in the sidebar footer; the Settings button and the update badge stay.
  • Русификатор bb — translates bb's interface labels into Russian, deliberately leaving conversation text, code, diffs and your own input untouched.

Fun

  • bb-plugin-strudel — Strudel live-coding music REPL, with agents.
  • bb-plugin-ambient-live — sample-browser ambient DAW.
  • Pomodoro — a configurable Pomodoro timer that reminds you to take a break. The timer runs on the bb server, so it keeps counting while the panel is closed. Requires bb 0.39 or later.

Authoring tools

  • Plugin Studio — inspect the plugins your bb has actually loaded from a nav panel: a read-only snapshot of their source and status, taken in-process rather than by starting a second runtime.
  • bb-smithers-workflows — plugin verification and release-gate workflows.
  • create-plugin / validate-plugin-artifacts — scaffolding and artifact-validation scripts. These are repo tooling (tooling/*.mjs), not installable plugins.
  • at-plugin — adds installed and community plugins to bb's existing @ menu, so a plugin can be referenced in a conversation the way a file or thread is.
  • BB UI Reference — a movable window comparing bb's plugin surface map and semantic palette against the running app, opened from a question-mark button in the Footer action surface; useful when deciding which surface a plugin should render into.

Writing a plugin

bb plugin new <name> scaffolds one. The authoritative reference is the bb-plugin-authoring skill shipped inside the app; bb plugin types writes the SDK type declarations into your types/ directory.

Conventions this ecosystem has settled on:

  • Name the repo and package bb-plugin-<thing>.
  • Tag the repo with the bb-plugin topic — that is currently the only way anyone finds you.
  • Pin engines.bbPluginSdk (^0.4.1 at time of writing); managed installs refuse a mismatch.
  • Put every runtime import in dependencies, not devDependencieszod above all. Managed installs run npm install --omit=dev, so a devDependencies entry that server.ts imports fails the build and the plugin cannot be installed at all. This is the single most common breakage on this list.
  • The exception is the frontend modules bb injects itself. Its build rewrites those imports to globalThis.__bbPluginRuntime and never resolves them from node_modules, so they are safe in devDependencies and belong there. Read off bb 0.40.0's own shim table on 2026-08-31: react, react-dom, react-dom/client, react/jsx-runtime, react/jsx-dev-runtime, @get-bb/plugin-sdk/app, sonner, vaul, clsx, tailwind-merge, class-variance-authority, @pierre/diffs, @pierre/diffs/react, and ten @radix-ui/react-* packages — alert-dialog, context-menu, dialog, dropdown-menu, hover-card, menubar, navigation-menu, popover, select, tooltip. The list GROWS: 0.40.0 added the last three, so re-read it rather than trusting this line. zod is not on that list, which is exactly why it is the one that keeps breaking builds. Judge a plugin by whether a clean npm install --omit=dev plus bb plugin build . succeeds, not by reading its package.jsonreact and sonner in devDependencies look like the fatal mistake and are not it.
  • private: true is fine and does not block a git: install — it only stops npm publish. (This entry used to claim the opposite. Verified against the installer's own steps on 2026-08-15.) It does mean there is no npm package, which since get-bb/bb#1097 closed no longer strands a plugin in a monorepo subdirectory: --subdirectory installs it from git.
  • Ship a LICENSE. Without one, the default is all rights reserved, and a directory that tells people to install your plugin is asking them to do something you have not permitted.
  • Ship a prebuilt dist/ if you publish to npm: npm installs run --ignore-scripts and never build. Point bb.server at your source (./server.ts), not at ./dist/server.js — a manifest that targets a committed artifact means the code that runs is not the code a reader reviews.

Contributing

Pull requests welcome. One entry per plugin: link, then a single sentence describing what it does, in the section that fits. Keep it factual — no marketing copy. A plugin qualifies if its package.json has a bb key or it imports @bb/plugin-sdk.

Link the plugin's directory, not its repo root. In a monorepo, point at .../tree/main/<path>. Since get-bb/bb#1097 closed, --subdirectory installs work, so a precise link is something a reader can act on rather than a place to start hunting.

One plugin can live in more than one repo, and every check here passes on a copy. Mirrors and vendored snapshots build and install exactly as well as the original — an install reproduction says nothing about provenance. When the same plugin appears twice:

  • Link the upstream, meaning whichever repo the others name as their source, or failing that the earliest to exist. Record the copies in discovery-ledger.json so the weekly sweep does not re-propose them.
  • Compare name and version in package.json and hash the entry file — an identical server.ts across two repos settles it in one step.
  • A vendored copy is not misconduct and is often documented by the copier. Declining the mirror is about pointing readers at the maintainer, not about judging the copy.

License

CC0-1.0 — public domain.

About

A curated list of community plugins for bb, the agent IDE — the ecosystem's missing directory.

Topics

Resources

Stars

44 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages