models

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Feb 3, 2026 License: MIT Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type FilenameFormat

type FilenameFormat string

FilenameFormat defines how files should be named

const (
	// FilenameFormatTimestampTitle uses YYYYMMDD-HHMMSS-title.md
	FilenameFormatTimestampTitle FilenameFormat = "timestamp-title"

	// FilenameFormatDateTitle uses YYYYMMDD-title.md
	FilenameFormatDateTitle FilenameFormat = "date-title"

	// FilenameFormatTitle uses title.md
	FilenameFormatTitle FilenameFormat = "title"

	// FilenameFormatTimestamp uses YYYYMMDD-HHMMSS.md
	FilenameFormatTimestamp FilenameFormat = "timestamp"
)

type Note

type Note struct {
	Path             string    `json:"path"`
	Title            string    `json:"title"` // Filename
	FrontmatterTitle string    `json:"frontmatter_title,omitempty"`
	Type             NoteType  `json:"type"`  // Note type from frontmatter (chat, interactive_agent, etc.)
	Group            string    `json:"group"` // Directory grouping (current, plans/name, etc.)
	Content          string    `json:"content,omitempty"`
	Workspace        string    `json:"workspace"`
	Branch           string    `json:"branch,omitempty"`
	CreatedAt        time.Time `json:"created_at"`
	ModifiedAt       time.Time `json:"modified_at"`
	WordCount        int       `json:"word_count"`
	HasTodos         bool      `json:"has_todos"`
	IsArchived       bool      `json:"is_archived"`
	IsArtifact       bool      `json:"is_artifact,omitempty"`
	PlanRef          string    `json:"plan_ref,omitempty"`

	// Remote sync metadata
	Remote *RemoteMetadata `json:"remote,omitempty"`

	// Frontmatter fields
	ID         string   `json:"id"`
	Aliases    []string `json:"aliases"`
	Tags       []string `json:"tags"`
	Repository string   `json:"repository,omitempty"`
}

Note represents a note file

type NoteType

type NoteType string

NoteType represents the type of note

type NoteTypeConfig

type NoteTypeConfig struct {
	FilenameFormat FilenameFormat
	Template       string
}

NoteTypeConfig defines configuration for each note type

type RemoteMetadata

type RemoteMetadata struct {
	Provider  string    `json:"provider,omitempty"`
	ID        string    `json:"id,omitempty"`
	URL       string    `json:"url,omitempty"`
	State     string    `json:"state,omitempty"`
	UpdatedAt time.Time `json:"updated_at,omitempty"`
	Labels    []string  `json:"labels,omitempty"`
	Assignees []string  `json:"assignees,omitempty"`
	Milestone string    `json:"milestone,omitempty"`
}

RemoteMetadata represents sync metadata from remote sources

Jump to

Keyboard shortcuts

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