Versions in this module Expand all Collapse all v1 v1.3.0 Jun 1, 2026 Changes in this version + const TopicBoardUpdated + const TopicTaskBlocked + const TopicTaskClaimed + const TopicTaskCompleted + const TopicTaskCreated + const TopicTaskDeleted + const TopicTaskReleased + const TopicTaskUpdated + func CategoryName(category loomv1.TaskCategory) string + func IsTerminal(status loomv1.TaskStatus) bool + func ParseCategory(s string) loomv1.TaskCategory + func ParsePriority(s string) loomv1.TaskPriority + func PriorityName(priority loomv1.TaskPriority) string + func StatusName(status loomv1.TaskStatus) string + type DecomposeRequest struct + AgentID string + BoardID string + Context string + Goal string + MaxDepth int + ParentTask *Task + Strategy loomv1.DecomposeStrategy + type DecomposeResponse struct + Dependencies []*TaskDependency + Reasoning string + Tasks []*Task + type Decomposer struct + func NewDecomposer(manager *Manager, tracer observability.Tracer, logger *zap.Logger) *Decomposer + func (d *Decomposer) Decompose(ctx context.Context, llm types.LLMProvider, req *DecomposeRequest) (*DecomposeResponse, error) + type ListTasksOpts struct + AssigneeAgentID string + BoardID string + Category loomv1.TaskCategory + Limit int + Offset int + ParentID string + Priority loomv1.TaskPriority + Query string + Status loomv1.TaskStatus + type Manager struct + func NewManager(store TaskStore, bus *communication.MessageBus, tracer observability.Tracer, ...) *Manager + func (m *Manager) AddDependency(ctx context.Context, dep *TaskDependency) error + func (m *Manager) ClaimTask(ctx context.Context, taskID, agentID, sessionID string) (*Task, error) + func (m *Manager) CloseTask(ctx context.Context, taskID, reason string) (*Task, error) + func (m *Manager) CompactClosedTasks(ctx context.Context, boardID string, maxAge time.Duration, ...) (int, error) + func (m *Manager) CreateBoard(ctx context.Context, board *TaskBoard) (*TaskBoard, error) + func (m *Manager) CreateTask(ctx context.Context, t *Task) (*Task, error) + func (m *Manager) CreateTaskIdempotent(ctx context.Context, t *Task) (*Task, bool, error) + func (m *Manager) DeleteTask(ctx context.Context, id string) error + func (m *Manager) GetBlockedTasks(ctx context.Context, boardID string) ([]*Task, error) + func (m *Manager) GetBoard(ctx context.Context, id string) (*TaskBoard, error) + func (m *Manager) GetHistory(ctx context.Context, taskID string) ([]*TaskHistoryEntry, error) + func (m *Manager) GetReadyFront(ctx context.Context, boardID string, opts ReadyFrontOpts) ([]*Task, error) + func (m *Manager) GetTask(ctx context.Context, id string) (*Task, error) + func (m *Manager) GetTaskByIdempotencyKey(ctx context.Context, key string) (*Task, error) + func (m *Manager) HasOpenSkillTasks(ctx context.Context, skillName, sessionID string) (bool, error) + func (m *Manager) ListBoards(ctx context.Context) ([]*TaskBoard, error) + func (m *Manager) ListBySkillRun(ctx context.Context, skillName, sessionID string) ([]*Task, error) + func (m *Manager) ListTasks(ctx context.Context, opts ListTasksOpts) ([]*Task, int, error) + func (m *Manager) ReleaseTask(ctx context.Context, taskID, sessionID string) (*Task, error) + func (m *Manager) RemoveDependency(ctx context.Context, fromTaskID, toTaskID string) error + func (m *Manager) SetBus(bus *communication.MessageBus) + func (m *Manager) SetGraphMemory(store memory.GraphMemoryStore) + func (m *Manager) Store() TaskStore + func (m *Manager) TransitionTask(ctx context.Context, taskID string, newStatus loomv1.TaskStatus) (*Task, error) + func (m *Manager) UpdateTask(ctx context.Context, t *Task, fields []string) (*Task, error) + type ReadyFrontOpts struct + AgentID string + MaxResults int + MinPriority loomv1.TaskPriority + type Task struct + AcceptanceCriteria string + Approach string + AssigneeAgentID string + BoardID string + Category loomv1.TaskCategory + ChildIDs []string + ClaimedAt *time.Time + ClaimedBySession string + CloseReason string + ClosedAt *time.Time + CompactedSummary string + CompactionLevel int + CreatedAt time.Time + Description string + EntityIDs []string + EstimatedEffort string + ID string + Metadata map[string]string + Notes string + Objective string + OutputPolicy *loomv1.OutputPolicy + OwnerAgentID string + ParentID string + Priority loomv1.TaskPriority + SkillIdempotencyKey string + Status loomv1.TaskStatus + Tags []string + Title string + UpdatedAt time.Time + type TaskBoard struct + CreatedAt time.Time + ID string + Lanes []TaskLane + Metadata map[string]string + Name string + WorkflowID string + type TaskDependency struct + CreatedAt time.Time + CreatedBy string + FromTaskID string + Metadata map[string]string + ToTaskID string + Type loomv1.TaskDependencyType + type TaskHistoryEntry struct + Action string + AgentID string + DetailsJSON string + ID string + NewStatus string + OldStatus string + SessionID string + TaskID string + Timestamp time.Time + type TaskLane struct + Name string + Status loomv1.TaskStatus + TaskIDs []string + WIPLimit int + type TaskStore interface + AddDependency func(ctx context.Context, dep *TaskDependency) error + ClaimTask func(ctx context.Context, taskID, agentID, sessionID string) (*Task, error) + Close func() error + CloseTask func(ctx context.Context, taskID, reason string) (*Task, error) + CreateBoard func(ctx context.Context, board *TaskBoard) (*TaskBoard, error) + CreateTask func(ctx context.Context, task *Task) (*Task, error) + DeleteTask func(ctx context.Context, id string) error + GetBlockedTasks func(ctx context.Context, boardID string) ([]*Task, error) + GetBoard func(ctx context.Context, id string) (*TaskBoard, error) + GetDependencies func(ctx context.Context, taskID string) ([]*TaskDependency, error) + GetDependents func(ctx context.Context, taskID string) ([]*TaskDependency, error) + GetHistory func(ctx context.Context, taskID string) ([]*TaskHistoryEntry, error) + GetReadyFront func(ctx context.Context, boardID string, opts ReadyFrontOpts) ([]*Task, error) + GetTask func(ctx context.Context, id string) (*Task, error) + GetTaskByIdempotencyKey func(ctx context.Context, key string) (*Task, error) + HasOpenSkillTasks func(ctx context.Context, skillName, sessionID string) (bool, error) + ListBoards func(ctx context.Context) ([]*TaskBoard, error) + ListBySkillRun func(ctx context.Context, skillName, sessionID string) ([]*Task, error) + ListTasks func(ctx context.Context, opts ListTasksOpts) ([]*Task, int, error) + RecordHistory func(ctx context.Context, entry *TaskHistoryEntry) error + ReleaseTask func(ctx context.Context, taskID, sessionID string) (*Task, error) + RemoveDependency func(ctx context.Context, fromTaskID, toTaskID string) error + TransitionTask func(ctx context.Context, taskID string, newStatus loomv1.TaskStatus) (*Task, error) + UpdateTask func(ctx context.Context, task *Task, fields []string) (*Task, error)