cli + tui to publish to leaflet (wip) & manage tasks, notes & watch/read lists 馃崈
charm leaflet readability golang

Task Basics#

Creation#

Create a simple task:

noteleaf task add "Write documentation"

Create a task with attributes:

noteleaf task add "Review pull requests" \
  --priority high \
  --project work \
  --tags urgent,code-review \
  --due 2025-01-15

Properties#

Description: What needs to be done. Can be updated later with task update.

Status: Task lifecycle state:

  • pending: Not yet started (default for new tasks)
  • active: Currently being worked on
  • completed: Finished successfully
  • deleted: Removed but preserved for history
  • waiting: Blocked or postponed

Priority: Importance level affects sorting and display:

  • low: Nice to have, defer if busy
  • medium: Standard priority (default)
  • high: Important, should be done soon
  • urgent: Critical, top of the list

Project: Group related tasks together. Examples: work, home, side-project. Projects create organizational boundaries and enable filtering.

Context: Location or mode where task can be done. Examples: @home, @office, @phone, @computer. Contexts help filter tasks based on current situation.

Tags: Flexible categorization orthogonal to projects. Examples: urgent, quick-win, research, bug. Multiple tags per task.

Due Date: When the task should be completed. Format: YYYY-MM-DD or relative (tomorrow, next week).

Lifecycle#

Tasks move through statuses as work progresses:

pending -> active -> completed
           |
           v
        waiting
           |
           v
        deleted

Mark task as active:

noteleaf task update 1 --status active

Complete a task:

noteleaf task done 1

Delete a task:

noteleaf task delete 1