Skip to content

rynskrmt/wips-cli

Repository files navigation

🇬🇧English | 🇯🇵日本語

wips-cli

CLI tool for developers' quick memos and lightweight journaling.

Release License: MIT macOS Linux Windows Go Version

Demo Video
Basic Usage

What is wips-cli?

wips-cli is a CLI tool that lets you quickly jot down development memos stored locally. Think of it as your personal development journal.

wips is simply the plural form of WIP (Work In Progress). It captures the stream of small intermediate states and thoughts during development that are rarely preserved in commit history.

Requirements

The only requirement is to have git installed for the automatic commit capture features.

Install

You can install wips-cli using one of the options listed below.

Source Command
brew brew install rynskrmt/tap/wips
scoop scoop bucket add rynskrmt https://github.com/rynskrmt/scoop-bucket && scoop install wips
release Download from GitHub Releases
curl curl -sfL https://raw.githubusercontent.com/rynskrmt/wips-cli/main/install.sh | sh
go go install github.com/rynskrmt/wips-cli/cmd/wip@latest
build Clone and run make dev

Manual Installation (Binary)

  1. Download the latest binary for your OS and architecture from GitHub Releases.
  2. Unpack the archive.
  3. Move the wip binary to a directory in your PATH (e.g., /usr/local/bin or ~/bin).
  4. Make sure it has execute permissions: chmod +x /path/to/wip.

Usage

Simply run it with a message to record a note with auto-detected context (Git repo, branch, directory).

wip "Refactoring auth logic"

Interactive Mode

If you run wip without arguments, it starts interactive mode. This is useful for continuous note-taking.

$ wip

Interactive Mode Demo
Interactive Mode

Type your note and press Enter to record it immediately.

  • Type :help for available commands.
  • Press Enter on an empty line or Ctrl+C to exit.

Commands

You can use several commands to manage your notes and view summaries.

wip [command]

Here is the detail for each of the commands

Command Alias Description
summary sum Show summary of events within a specified period (daily, weekly, custom)
search Search events with natural language date filters and regex
tail t Show recent events for the current directory context
edit e Edit an event by ID (default: latest)
delete Delete an event by ID (default: latest)
hooks Manage git hooks integration to automatically log commits
sync Sync logs to external tools (e.g. Obsidian)
config Manage global configuration settings

View Recent Logs

Check the work history in the current directory.

$ wip tail   # or: wip t

View recent logs
View recent logs

Use -g to show history across all projects, and -n to specify the number of entries.

$ wip tail -g      # History across all projects
$ wip tail -n 20   # Show the last 20 entries

Summaries

To view a breakdown of your work for the day, simply run

$ wip summary   # or: wip sum

Summary Demo
Quickly review your daily notes

You can also check previous days or weeks

$ wip sum --week       # This week
$ wip sum --last-week  # Last week
$ wip sum --days 3     # Last 3 days

Export Options

You can export summaries to different formats

$ wip sum --week --format md --out report.md

Sync (Experimental)

You can sync your daily logs to external tools like Obsidian.

Setup for Obsidian

First, configure the path to your Obsidian Daily Notes folder:

$ wip config sync obsidian enable --path "~/ObsidianVault/Daily"

Run Sync

To sync your logs (grouped by directory) to today's daily note:

$ wip sync

This appends your wips-cli logs to a specific section (default: ## wips-cli logs) in your daily note. It is safe to run multiple times; it updates the section without duplicating content.

Options

  • --days <N>: Sync logs for the past N days. Useful for catching up or batch syncing.
    $ wip sync --days 3
  • --all: Sync all history (currently limited to the last 365 days).
    $ wip sync --all
  • --create: Create the daily note if it does not exist. (Default: skip syncing for missing dates)
    $ wip sync --create

Search

Search supports natural language dates and powerful filters.

$ wip search "auth bug" --from "last week"

Recent Activity

Check what you've been doing in the current directory context

$ wip tail   # or: wip t

Use -g to see global activity across all projects.

Git Integration

To enable automatic commit logging, run this inside your repository

$ wip hooks install

Once installed, every git commit will be automatically logged to wips-cli.

Configuration

You can omit specific directories from your summaries (e.g. secret projects) by adding them to the hidden list

$ wip config add-hidden /path/to/secret-project

Use wip config list to see current settings.

License

MIT © rynskrmt

About

CLI tool for developers' quick memos and lightweight journaling.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project