Skip to main content

daily

Minimalist CLI for engineers to log daily work. Perfect for daily standups.

PyPI version Python versions

Demo

Requirements

  • Python 3.11 or higher
  • fzf (optional, required only for daily search command)

Features

  • Fast capture: Log work in under 10 seconds
  • Markdown-based: Human-readable files, Git-friendly
  • Tag support: Filter entries by project or topic
  • Cheat sheet: Quick summary for daily standups
  • Interactive search: Browse and edit past notes with fzf
  • No database: Plain files in ~/.daily/dailies/

Installation

Using uv (recommended)

uv tool install daily-cli-tool

Or specify a Python version if you don't have Python 3.11+ as default:

uv tool install daily-cli-tool --python 3.11

Note: Install uv from here if you don't have it.

Using pipx

pipx install daily-cli-tool

Or specify a Python version if needed:

pipx install daily-cli-tool --python python3.11

Note: Install pipx from here if you don't have it.

From source (for development)

# Clone the repository
git clone https://github.com/creusvictor/daily-cli.git
cd daily-cli

# Install with pipx
pipx install .

# Or install with uv
uv sync

From source with uv (for development)

# Clone the repository
git clone https://github.com/creusvictor/daily-cli.git
cd daily-cli

# Install
uv sync

# Run
uv run daily --help

Using pip

pip install daily-cli-tool

From source

git clone https://github.com/creusvictor/daily-cli.git
cd daily-cli
pip install -e .

Quick Start

# Log completed work
daily did "Fixed CI/CD pipeline" --tags cicd,infra

# Plan today's work
daily plan "Review pending PRs" --tags code-review

# Log a blocker
daily block "Waiting for AWS access" --tags aws

# Log a meeting
daily meeting "Sprint planning" --tags team

# Add a quick note
daily quick "Check new API documentation" --tags api

# Show cheat sheet for standup
daily cheat

Commands

Command Description Section
daily did "text" Log completed work Done
daily plan "text" Plan work for today To Do
daily block "text" Log a blocker Blockers
daily meeting "text" Log a meeting Meetings
daily quick "text" Add a quick note Quick Notes
daily cheat Show standup cheat sheet -
daily search Search and open daily files -

All commands support --tags or -t for tagging:

daily did "Deploy to production" --tags deploy,aws
daily did "Code review" -t review

Cheat Sheet

The daily cheat command generates a clean summary for standups:

DONE
- Fixed CI/CD pipeline
- Deployed new feature

MEETINGS
- Sprint planning
- 1:1 with manager

TO DO
- Review pending PRs
- Write documentation

BLOCKERS
- Waiting for AWS access

QUICK NOTES
- Check new API documentation

Options

# Filter by tags
daily cheat --tags aws

# Show today's file instead of yesterday's
daily cheat --today

# Plain text output (no colors)
daily cheat --plain

Weekend Logic

By default, daily cheat skips weekends when looking for "yesterday's" file:

  • On Monday, it shows Friday's entries
  • On Saturday or Sunday, it shows Friday's entries

This matches typical standup workflows where you report on the last workday.

# Override: always skip weekends
daily cheat --workdays

# Override: use literal yesterday (even if weekend)
daily cheat --no-workdays

Configure the default in ~/.daily/config.toml:

# Set to false to always use literal yesterday
skip_weekends = true

Search

The daily search command provides an interactive fuzzy finder (fzf) to browse and edit your daily notes:

# Search all daily files
daily search

# Filter by tags (only show files with these tags)
daily search --tags aws,deploy
daily search -t projectA

Features:

  • Interactive selection: Use arrow keys or fuzzy search to find notes
  • Preview panel: See the content of each note before opening
  • Opens in $EDITOR: Selected file opens in your preferred editor (vim, nano, etc.)
  • Tag filtering: Only show files containing specific tags
  • Sorted by date: Newest files appear first
  • Tag display: Each file shows all tags used (e.g., 2026-02-20 (Friday) - tags: aws,deploy)

Requirements: This command requires fzf to be installed:

# Ubuntu/Debian
sudo apt-get install fzf

# macOS
brew install fzf

# Arch Linux
sudo pacman -S fzf

File Structure

Daily notes are stored in ~/.daily/dailies/ with format YYYY-MM-DD-daily.md:

---
type: daily
date: 2026-01-27
---

## ✅ Done
- Fixed CI/CD pipeline #tags: cicd,infra

## ▶️ To Do
- Review pending PRs

## 🚧 Blockers
- Waiting for AWS access #tags: aws

## 🗓 Meetings
- Sprint planning #tags: team

## 🧠 Quick Notes

Configuration

Create ~/.daily/config.toml to customize behavior:

# Directory where daily notes are stored
dailies_dir = "~/.daily/dailies"

# Skip weekends in daily cheat (Monday shows Friday)
skip_weekends = true

Custom directory

Set DAILY_DIR environment variable (takes priority over config file):

export DAILY_DIR=/path/to/my/dailies

Priority: Environment variable > Config file > Default (~/.daily/dailies)

Development

# Install dev dependencies
uv sync

# Run tests
uv run pytest

# Run tests with coverage
uv run pytest --cov=daily

# Format code
uv run black daily tests

# Lint
uv run ruff check daily tests

# Type check
uv run mypy daily

FAQ

Q: Where are my notes stored? A: In ~/.daily/dailies/ by default. Each day creates a new file like 2026-01-27-daily.md.

Q: Can I edit files manually? A: Yes! Files are plain Markdown. Manual edits are preserved.

Q: Does it work with Obsidian? A: Yes! Point Obsidian to your dailies directory for a nice viewing experience.

Q: Can I use it with Git? A: Absolutely. The files are designed to be Git-friendly.

Q: What if I forget to log something? A: You can edit the Markdown file directly, or use the API with a specific date.

Q: Why does daily cheat show Friday's entries on Monday? A: By default, weekends are skipped so Monday's standup shows Friday's work. Use --no-workdays to show literal yesterday, or set skip_weekends = false in config.

License

MIT

Metadata

Release files for daily-cli-tool 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for daily-cli-tool 1.1.1
File Size Uploaded
daily_cli_tool-1.1.1.tar.gz 649.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for daily-cli-tool 1.1.1
File Interpreter ABI Platform
daily_cli_tool-1.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 664.4 kB

Release files / daily_cli_tool-1.1.1.tar.gz

Download URL daily_cli_tool-1.1.1.tar.gz
Size 649.8 kB
Tags Source
SHA-256 checksum
How to use checksums
cfa1ddc3f3e12b2337c860e766d5c3ec1041060a9b96dccd35f6e039b403885e
BLAKE2b-256 checksum
How to use checksums
b64916361ec5e136e5acc18e6b6b7c1e5880445a711df2129c3a8624f260976c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 24, 2026.

Transparency log

Release files / daily_cli_tool-1.1.1-py3-none-any.whl

Download URL daily_cli_tool-1.1.1-py3-none-any.whl
Size 14.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c789c3c0e973fa5a4525fdcd89fde46ccf9fbb680a5001fceb3bd0d0f0359e41
BLAKE2b-256 checksum
How to use checksums
ade4f9b8f975eb60cc4e60ba1867755ba81b3ad80108321961002b413bc120f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.1.1 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page