Kaizen

Small improvements, every day.

The compound interest of discipline.

kaizen is a terminal tool for recording daily micro-improvements. Deleted dead code? kaizen done. Renamed a confusing variable? kaizen done. Added a missing test? kaizen done.

No project management. No categories. No priorities. Just a timestamped record of getting better, one small thing at a time.


Table of Contents


Features

Feature Description
One-Command Recording kaizen done "what you did" — nothing else required.
Streak Tracking Consecutive days with at least one improvement.
Daily / Weekly / Monthly Views See what you improved and when.
Undo Remove the last entry if you made a mistake.
All-Time Stats Total improvements, active days, daily average.
Zero Dependencies Ruby stdlib only (pstore, date).
Offline Only No cloud. No sync. No accounts.

Installation

gem install kaizen-log

Requirements

  • Ruby >= 3.0.0

No external gems required.


Quick Start

# Record improvements throughout the day
kaizen done "Removed 3 unused imports"
kaizen done "Split 200-line function into two"
kaizen done "Added timeout to HTTP client"

# Review your day
kaizen today

# Check your streak
kaizen streak

Example output:

$ kaizen done "Removed 3 unused imports"
Recorded #1: Removed 3 unused imports
First improvement today.

$ kaizen done "Added error handling to API call"
Recorded #2: Added error handling to API call
2 improvements today.

$ kaizen today
Today (2):
  [09:15] Removed 3 unused imports
  [14:30] Added error handling to API call

Commands

done — Record an Improvement

kaizen done "what you improved"
  • Maximum 200 characters.
  • Timestamped with date and time.
  • Shows today's count and current streak.

Examples:

kaizen done "Deleted dead CSS rules"
kaizen done "Renamed confusing variable"
kaizen done "Fixed N+1 query in dashboard"
kaizen done "Removed console.log from production code"
kaizen done "Added index to slow database query"

undo — Remove Last Entry

kaizen undo

Removes the most recently recorded entry. Useful for typos or accidental entries.

today

kaizen today

Shows all improvements recorded today.

yesterday

kaizen yesterday

Shows all improvements recorded yesterday.

week

kaizen week

Shows improvements from the last 7 days, grouped by date.

Example output:

Last 7 days: 9 improvements
------------------------------------
  2026-04-24 (Thu) — 3
    [09:15] Removed unused imports
    [11:00] Added test for edge case
    [16:45] Simplified error handling
  2026-04-23 (Wed) — 2
    [10:30] Fixed typo in README
    [14:00] Removed dead code in utils
  2026-04-22 (Tue) — 4
    ...

month

kaizen month

Shows improvements from the last 30 days.

log — Custom Range

kaizen log [days]
  • Default: 7 days
  • Shows improvements from the last N days.
kaizen log 90    # last 90 days

streak

kaizen streak

Shows your current streak of consecutive days with at least one recorded improvement.

Current streak: 12 days

stats

kaizen stats

Shows all-time statistics.

All time:
  Total improvements: 147
  Active days:        34
  Average per day:    4.3
  Current streak:     12 days
  Today:              3

Philosophy

Kaizen (改善) is the Japanese concept of continuous improvement through small, incremental changes.

This tool does not track tasks, priorities, or deadlines. It tracks what you already did. The difference matters:

  • A task list is about the future. Kaizen is about the present.
  • A task list creates pressure. Kaizen creates evidence.
  • A task list can grow without bound. Kaizen only records what actually happened.

The streak is not a gamification trick. It is a mirror. If it breaks, you know why.


Database

Improvements are stored in a local PStore database. Each entry has the following structure:

Field Type Description
id Integer Auto-incrementing identifier
text String What you improved (max 200 chars)
date String ISO date (YYYY-MM-DD)
time String Local time (HH:MM)

Configuration & Data Location

Platform Path
Linux / macOS ~/.config/kaizen/improvements.db
Windows %USERPROFILE%\.config\kaizen\improvements.db

The directory is created automatically on first run.


Development

Setup

git clone https://github.com/YumaKakuya/kaizen.git
cd kaizen

Running Locally

ruby -Ilib bin/kaizen done "test improvement"

Building the Gem

gem build kaizen-log.gemspec


License

MIT License. See LICENSE for the full text.


A journey of a thousand miles is built from a single step repeated.