beads

package
v0.3.0-alpha.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 16, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Overview

Package beads provides bidirectional sync between Drover and Beads

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BdAdd

func BdAdd(title string, epicID string, blockedBy []string) (string, error)

BdAdd creates a task via bd CLI

func BdClose

func BdClose(taskID, reason string) error

BdClose closes a task via bd CLI

func ExportToBeads

func ExportToBeads(epics []types.Epic, tasks []types.Task, deps []types.TaskDependency, config SyncConfig) error

ExportToBeads writes Drover state to .beads/beads.jsonl

func ImportFromBeads

func ImportFromBeads(config SyncConfig) ([]types.Epic, []types.Task, []types.TaskDependency, error)

ImportFromBeads reads .beads/beads.jsonl and returns Drover types

func RunBdCommand

func RunBdCommand(args ...string) (string, error)

RunBdCommand executes a bd CLI command

Types

type BeadEpic

type BeadEpic struct {
	Title       string `json:"title"`
	Description string `json:"description,omitempty"`
	Status      string `json:"status"`
}

BeadEpic is the epic data

type BeadLink struct {
	From     string `json:"from"`
	To       string `json:"to"`
	LinkType string `json:"link_type"` // "blocked_by", "relates_to"
}

BeadLink represents a dependency

type BeadRecord

type BeadRecord struct {
	Type      string          `json:"type"` // "bead", "epic", "link"
	ID        string          `json:"id"`
	Timestamp time.Time       `json:"timestamp"`
	Data      json.RawMessage `json:"data"`
}

BeadRecord represents a single line in beads.jsonl

type BeadTask

type BeadTask struct {
	Title       string   `json:"title"`
	Description string   `json:"description,omitempty"`
	Status      string   `json:"status"` // "open", "active", "closed"
	Priority    int      `json:"priority,omitempty"`
	Labels      []string `json:"labels,omitempty"`
	EpicID      string   `json:"epic_id,omitempty"`
	ClosedAt    string   `json:"closed_at,omitempty"`
	Reason      string   `json:"reason,omitempty"` // "completed", "wontfix", etc.
}

BeadTask is the task data within a bead record

type SyncConfig

type SyncConfig struct {
	BeadsDir     string
	SyncInterval time.Duration
	AutoSync     bool
}

func DefaultSyncConfig

func DefaultSyncConfig(projectDir string) SyncConfig

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL