A dependency-aware Beads work queue for each Paseo workspace.
npmjs · Paseo 0.9+
paseo plugin add npm:@omercnet/paseo-beads@2.0.1Preview releases are unreleased plugin code. Install only if you want to test it; stable remains the default. Published 2026-10-20.
Security scan passed · 0 blocking · 0 advisory.
paseo plugin add npm:@omercnet/paseo-beads@2.0.1-next.279.1GitHub · Paseo 0.8 fallback
paseo plugin add omercnet/paseo-plugins --ref f17eeeaa3b10f8b6cd27891d8e8c7c8ea67061d6 --path paseo-beadsGit security status and fallback installation are pinned to commit f17eeeaa3b10.
From the plugin's README
Paseo plugins are trusted, unsandboxed code. Review the source before installing it on the daemon host.
From npm:
paseo plugin install npm:@omercnet/paseo-beads
Update the installed npm package with:
paseo plugin update paseo-beads
Paseo shows the installed and proposed revisions and asks for approval before applying an ordinary update. Review the source changes before approving them.
Open a workspace, choose New tab in Explorer, then select Beads. You can also run Open Beads from the Command Center while viewing a workspace or one of its agents. Press Ready beads in the sidebar for ready work across every workspace on the host.
README
A dependency-aware Beads work queue for every Paseo workspace. Paseo Beads turns active issues into a read-only delivery view that makes the ready frontier, work in progress, and blockers immediately visible.
It adds a workspace-scoped Beads Explorer panel and an Open Beads Command Center item. It also adds a Ready beads sidebar row and a linkable bead screen.
https://github.com/user-attachments/assets/f85e3c94-fbc1-49b6-9439-25bb7f66e9d7
Issue IDs, titles, assignees, labels, and details come from a temporary synthetic Beads project. Both PNGs were captured from an isolated Paseo daemon at 2× pixel density after browser DevTools verified the rendered page contained no private organization names.
Within each lane, issues are ordered by priority, most recent update, then ID. In-progress and hooked issues enter In progress first; remaining blocked issues enter Blocked; ready issues enter Ready frontier; all remaining active issues enter Other.
The panel calls workspace-scoped Paseo plugin RPC handlers. On the daemon host, each handler resolves
the workspace directory through Paseo and executes the bd CLI with --readonly and -C:
bd list --json --sort priority, then runs one authoritative
bd list --ready --json --limit 0 query and intersects its IDs with the displayed issues. It also
runs bd where --json and returns a digest of the database location as an opaque databaseId,
so workspaces that share one database, such as git worktrees, can be recognized. This is best
effort: when bd cannot say, the snapshot is the same without it.bd show <issue-id> --json --include-dependents plus the same authoritative
readiness query.The server validates and normalizes the CLI JSON before returning bounded data to the panel. The
plugin never reads or writes .beads storage directly and exposes no issue mutation controls.
The list and selected detail poll every 10 seconds. Refresh requests the list immediately. A failed background refresh keeps the previous data visible with an inline error; initial and detail failures provide a retry action.
The Ready beads row lists the host's workspaces through the Paseo SDK and calls the same list
handler for them, one workspace at a time, every 2 minutes while the app is in the foreground and
whenever its popover opens. A snapshot an open panel read in the last 10 seconds is reused instead
of rerunning bd. Workspaces that share a database, such as git worktrees, report the same
databaseId, so an issue counts once however many workspaces read it and is listed under the first
workspace that reported it. The first scan reads every workspace to learn which ones share a
database. Later scans read each database once and skip its other workspaces. A workspace is skipped
only while a successful read in the last 10 minutes vouches that it reads a database the scan has
already read, so a failed or older read puts it back in the scan. Workspaces without Beads count as
zero and are rechecked every 5 minutes. When bd is unavailable, or a workspace cannot be read,
the popover says so instead of reporting an empty host, and a failed refresh is shown next to the
last result. Once nothing shows the count, for example when the host disconnects, a scan that is
still running starts no further workspace reads.
^0.11.0 || ^0.12.0 with plugins enabled is required.bd 1.0 or newer must be available on the Paseo daemon's PATH.bd binary, an uninitialized Beads project, an empty
project, request failures, and missing issue details.bd CLI exclusively and does not
create, edit, close, or assign issues.bd that cannot report its database (bd where --json) leaves every workspace counted on its
own, so git worktrees of one project are counted separately.Paseo plugins are trusted, unsandboxed code. Review the source before installing it on the daemon host.
From npm:
paseo plugin install npm:@omercnet/paseo-beads
Update the installed npm package with:
paseo plugin update paseo-beads
Paseo shows the installed and proposed revisions and asks for approval before applying an ordinary update. Review the source changes before approving them.
Open a workspace, choose New tab in Explorer, then select Beads. You can also run Open Beads from the Command Center while viewing a workspace or one of its agents. Press Ready beads in the sidebar for ready work across every workspace on the host.
bun install
bun run check
bun run test
bun run test:coverage
bun run typecheck
The package is @omercnet/paseo-beads at version 0.1.0. Release Please maintains versions,
changelog entries, component tags, and GitHub releases from Conventional Commits in the monorepo.
Scanned 23 Oct 2026, 13:11 UTC from omercnet/paseo-plugins/paseo-beads.