Skip to main content

Usage

Description

Search and filter issues using a wide range of criteria. Supports text search, date ranges, label filtering, metadata queries, and more.

Parameters

Core Filters

string
Filter by status: open, in_progress, blocked, deferred, closed, pinned, hooked. Default: non-closed, non-pinned.
string
Filter by priority: 0-4 or P0-P4
string
Filter by type: bug, feature, task, epic, chore, decision, merge-request, molecule, gate, convoy. Aliases: mrmerge-request, featfeature, molmolecule, dec/adrdecision
string
Filter by assignee

Label Filters

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 by label glob pattern (e.g., tech-* matches tech-debt, tech-legacy)
string
Filter by label regex pattern (e.g., tech-(debt|legacy))
boolean
Filter issues with no labels
string
Filter by title text (case-insensitive substring match)
string
Filter by title substring (case-insensitive)
string
Filter by description substring (case-insensitive)
string
Filter by notes substring (case-insensitive)

Date Ranges

string
Filter issues created after date (YYYY-MM-DD or RFC3339)
string
Filter issues created before date (YYYY-MM-DD or RFC3339)
string
Filter issues updated after date
string
Filter issues updated before date
string
Filter issues closed after date
string
Filter issues closed before date

Priority Ranges

string
Filter by minimum priority (inclusive, 0-4 or P0-P4)
string
Filter by maximum priority (inclusive, 0-4 or P0-P4)

Hierarchy

string
Filter by parent issue ID (shows children of specified issue)
boolean
Exclude child issues (show only top-level issues)

Scheduling

boolean
Show only issues with defer_until set
string
Filter issues deferred after date
string
Filter issues deferred before date
string
Filter issues due after date
string
Filter issues due before date
boolean
Show only issues with due_at in the past (not closed)

Metadata

string[]
Filter by metadata field (format: key=value, repeatable)
string
Filter issues that have this metadata key set

Special Filters

string
Filter by specific issue IDs (comma-separated, e.g., bd-1,bd-5,bd-10)
string
Filter by spec_id prefix
boolean
Filter issues with empty or missing description
boolean
Filter issues with no assignee
boolean
Show only pinned issues
boolean
Exclude pinned issues (default)
boolean
Show only ready issues (status=open, excludes hooked/in_progress/blocked/deferred)
string
Filter by molecule type: swarm, patrol, or work
string
Filter by wisp type: heartbeat, ping, patrol, gc_report, recovery, error, escalation

Display

integer
default:"50"
Limit results (default 50, use 0 for unlimited)
boolean
Show all issues including closed (overrides default filter)
boolean
Show detailed multi-line output for each issue
string
Sort by field: priority, created, updated, closed, status, id, title, type, assignee
boolean
Reverse sort order
boolean
Display issues in a tree format with status/priority symbols
boolean
Alias for --pretty: hierarchical tree format
boolean
Watch for changes and auto-update display (implies --pretty)
boolean
Disable pager output

Advanced

string
Output format: digraph (for golang.org/x/tools/cmd/digraph), dot (Graphviz), or Go template
boolean
Include template molecules in output
boolean
Include gate issues in output (normally hidden)
boolean
Include infrastructure beads (agent/rig/role/message) in output
string
Query a different rig’s database (e.g., --rig gastown, --rig gt-, --rig gt)

Output

boolean
Output JSON for agent use

Examples

Basic Queries

Label Filtering

Text Search

Date Filters

Priority Ranges

Hierarchy

Time-Based

Metadata

Special Queries

Sorting

Cross-Rig

Watch Mode

JSON Output

With --json flag:

Complex Queries

Stale Issues

Sprint Planning

Security Issues

Technical Debt

Output Formats

Compact (Default)

Long Format

Pretty/Tree Format

Default Filters

By default, bd list excludes:
  • Closed issues (use --all or --status closed to include)
  • Pinned issues (use --all or --pinned to include)
  • Template molecules (use --include-templates)
  • Gate issues (use --include-gates)
  • Infrastructure beads (use --include-infra)

Best Practices

For Agents

  1. Always use --json for parsing
  2. Use --limit to control result size
  3. Use --sort for deterministic ordering
  4. Filter by metadata for agent-specific queries
  5. Use --ready instead of manual status filtering for claimable work

For Humans

  1. Use --pretty for visual scanning
  2. Combine filters for precise queries
  3. Use --watch during active development
  4. Save complex queries as shell aliases

Performance Tips

  1. Add --limit for large result sets
  2. Use specific filters instead of text search when possible
  3. Avoid --all unless needed (excludes closed by default)
  4. Use --rig for targeted cross-rig queries