Pad is a lightweight note-taking CLI with a superpower: it can store runnable shell commands and execute them later.
Think of it as a personal notebook for commands, notes, and quick automation tasks.
- Create normal notes
- Create command notes for shell commands
- Open notes in your editor for natural writing
- List all saved notes
- Read notes back in the terminal
- Update and delete notes
- Run saved command notes with
pad run <name>
From the project root:
uv tool install --editable .If you want to work in the project environment instead:
uv sync
source .venv/bin/activatepad init mynoteThis creates a note file in the pad_notes folder and opens it in your editor ($EDITOR, default: vim).
pad init -c dockerThis creates an empty command note that you then fill with a command like:
docker compose exec web python manage.py migrate directoryThen execute it with:
pad run dockerpad listpad read mynotepad update mynoteThis opens the note in your editor for editing.
pad delete mynoteFor a command note, the file should contain only the command text, for example:
docker compose exec web python manage.py migrate directoryThis keeps the note simple and lets pad run execute it directly.
pad/
├── README.md
├── LICENSE
├── pyproject.toml
├── src/
│ └── pad/
│ ├── __init__.py
│ └── core.py
└── pad_notes/
Run the tests:
uv run pytestMalith Gamage
This project is licensed under the MIT License. See LICENSE for details.