Beads Viewer (bv) is a Terminal User Interface written in Go for browsing and managing tasks in projects using the Beads issue tracking system. Unlike traditional issue trackers that treat tasks as simple lists, Beads Viewer treats projects as Directed Acyclic Graphs (DAGs), enabling visualization of dependencies, bottlenecks, and critical paths.
The interface features Vim-style keyboard navigation, a split-view dashboard showing lists and detailed information, Markdown rendering with syntax highlighting, and real-time filtering for Open, Closed, and Ready tasks. It includes file-watching that auto-refreshes when the .beads/beads.jsonl file changes.
Beads Viewer offers multiple view modes including List view for fast browsing, Kanban board for workflow visualization, Graph view for dependency exploration, Insights dashboard for graph metrics, History view for git commit correlation, and Tree view for hierarchical exploration.
The system computes nine graph-theoretic metrics: PageRank for identifying foundational blockers, Betweenness for revealing cross-team bottlenecks, HITS for distinguishing epics from infrastructure tasks, Critical Path for finding zero-slack tasks, Eigenvector Centrality for surfacing strategic dependencies, plus Degree, Density, Cycles, and Topological Sort analysis.
For AI agent integration, Beads Viewer provides robot mode via --robot-* flags: --robot-triage for comprehensive analysis with rankings, --robot-next for the top priority item, --robot-plan for parallel execution tracks, --robot-insights for full graph metrics, and --robot-graph for dependency export in JSON, DOT, or Mermaid formats. This programmatic access enables AI agents to intelligently select and prioritize tasks.
Quick actions include exporting issues to timestamped Markdown with diagrams, copying issues as formatted Markdown, opening the beads.jsonl file in an editor, time-traveling to compare against git revisions, and fuzzy search by ID, title, or content.