Skip to main content

Usage

Description

Show ready work: open issues with no active blocking dependencies. This is the primary command for finding work that can be started immediately. Excludes in_progress, blocked, deferred, and hooked issues. Uses blocker-aware semantics to find truly claimable work.
Note: bd list --ready is NOT equivalent - it only filters by status=open without checking blockers.

Parameters

Filtering

integer
default:"10"
Maximum issues to show
integer
Filter by priority (0-4)
string
Filter by assignee
boolean
Show only unassigned issues
string
Filter by issue type: task, bug, feature, epic, decision, merge-request. Aliases: mrmerge-request, featfeature, molmolecule, dec/adrdecision
string[]
Filter by labels (AND: must have ALL). Can combine with --label-any.
string[]
Filter by labels (OR: must have AT LEAST ONE). Can combine with --label.
string
Filter to descendants of this bead/epic
string
Filter by molecule type: swarm, patrol, or work

Molecule Mode

string
Filter to steps within a specific molecule
boolean
Find molecules ready for gate-resume dispatch

Sorting

string
default:"priority"
Sort policy: priority (default), hybrid, oldest

Display

boolean
default:"true"
Display issues in a tree format with status/priority symbols
boolean
Display issues as a plain numbered list

Advanced

boolean
Include issues with future defer_until timestamps
boolean
Include ephemeral issues (wisps) in results
string
Query a different rig’s database (e.g., --rig gastown, --rig gt-, --rig gt)
string[]
Filter by metadata field (format: key=value, repeatable)
string
Filter issues that have this metadata key set

Output

boolean
Output JSON for agent use

Examples

Basic Usage

Filtering

Molecule Mode

Sorting

Cross-Rig

Metadata Filtering

JSON Output

With --json flag:

Molecule Ready Output

With --mol flag and --json:

Display Modes

Pretty Format (Default)

Tree-style display with visual indicators:

Plain Format

Numbered list for scripting:

Blocker Semantics

An issue is “ready” if:
  1. Status is open (not in_progress, blocked, deferred, hooked, closed)
  2. No open blocking dependencies (all blocks deps are closed)
  3. Parent is closed (for parent-child relationships)
  4. Not deferred (unless --include-deferred)
  5. Not ephemeral (unless --include-ephemeral)
Issues with status=blocked are excluded even if blockers are closed. Use bd update to change status to open.

Best Practices

For Agents

  1. Start with bd ready --json to find work
  2. Use --unassigned to avoid conflicts
  3. Filter by --label for area expertise
  4. Claim immediately with bd update --claim

For Humans

  1. Use --pretty for visual scanning
  2. Filter by --priority for urgent work
  3. Check --parent for epic-specific tasks
  4. Review estimate before claiming

Agent Workflow

Comparison: ready vs list —ready

Always use bd ready for finding work, not bd list --ready.