Skip to content

Releases: thekaushikls/mo

v0.5.0: A Stitch in Time

Choose a tag to compare

@thekaushikls thekaushikls released this 16 May 15:33

What's New

Breaking Changes

mo.toml has a new schema. The [vault] section is gone — path and version are now top-level fields.

Before:

[vault]
path = "./vault"

After:

version = "0.5.0"
path = "./vault"

Re-run mo init or update your mo.toml manually.

New Command:

  • mo log month - View all entries for the current month. Works across weekly log files.
mo log month

Improvements

  • Tags are always sorted alphabetically in log entries
  • Projects and people are sorted alphabetically in mo.toml
  • mo.toml now tracks the mo version used to create it
  • Log queries support date-range filtering across multiple weeks

Internal

  • registry.rs → config.rs, Registry → Vault
  • weekly.rs → store.rs with new multi-week query support

Full Changelog: v0.3.0...v0.5.0

v0.3.0: Full Spectrum

Choose a tag to compare

@thekaushikls thekaushikls released this 04 May 05:01

What's New

Breaking Changes

  • Removed note command - use --note tag on work, home, or play instead
  • Renamed feeling command to mood
  • Renamed feedback command to talk

New Commands

  • mo home "<message>" - Log house chores (supports tags)
  • mo play "<message>" - Log fun / hobby entries (supports tags)
  • mo today - Formatted daily view as a standalone command

New Tags

  • --note - Mark an entry as a note
  • --research - Mark an entry as research

Improvements

  • Renamed "flags" to "tags" across CLI and codebase
  • Unified command handling - mood, talk, work, home, and play all route through a single handler with optional tags
  • mo login --mood now uses the shared command handler

Full Changelog: v0.1.3...v0.3.0

v0.1.3: First Blood

Choose a tag to compare

@thekaushikls thekaushikls released this 26 Apr 05:54

What's New

New Commands

  • mo break / mo break "lunch" - Log a break, with optional reason
  • mo log today - Show only today's entries
  • mo note "<text>" - Scratchpad-style freeform notes
  • mo feedback "<text>" - Bug reports and feedback entries
  • mo project ls / mo project add - Manage projects directly
  • mo people ls / mo people add - Manage people directly
  • mo --version - Show current version
  • mo log - Show last N entries from current week's log (default: 5)
  • mo log file - Print the current log file path

Improvements

  • Fixed timestamp precision - consistent nanosecond formatting across all entries
  • Refactored entity management - Project and Person logic moved to entity.rs
  • Removed nested add subcommand - projects and people managed via mo project and mo people
  • Added macOS to CI builds
  • Default vault path changed to current directory (.) instead of ./sample/vault

Fixes

  • Break handler wired up correctly

Full Changelog: v0.1.0...v0.1.3

v0.1.0: Baby Steps

Choose a tag to compare

@thekaushikls thekaushikls released this 06 Apr 05:24

v0.1.0 — 2026-04-06

First release of mo, a CLI tool to log work from the terminal.

Commands

  • mo init --path <dir> — Initialize a new vault with mo.toml config
  • mo login — Start work day (appends to weekly log)
  • mo login --feeling <mood> — Start with a mood entry
  • mo logout — End work day
  • mo work "<message>" — Log a work entry with timestamp
  • mo feeling <mood> — Record how you're feeling
  • mo add project "<name>" --alias <alias> — Add a project to the registry
  • mo add person "<name>" --alias <alias> — Add a person to the registry
  • mo completions <shell> — Generate shell completions (bash, zsh, fish)

Work Flags

Log entries support flags for categorization:

--meeting --feature --unplanned --todo --blocked --done --urgent

Architecture

  • Append-only .log files, one per ISO week (logs/2026-W14.log)
  • Pipe-delimited format, one record per line
  • Entity registry in mo.toml (people, projects with aliases)
  • Config supports local (./mo.toml) and global (~/.config/mo/mo.toml) paths

Builds

  • Linux (x86_64)
  • Windows (x86_64)