memo
April 13, 2026 · View on GitHub
Caution
Status: Under development
ℹ️ About
Memo is a Python CLI for managing Apple Notes and Apple Reminders from the terminal. It is built for a keyboard-driven workflow, so you can browse, read, edit, move, export, and complete items without leaving your shell.
Memo is also used by OpenClaw.
Full documentation is available at antoniorodr.github.io/memo.
🎬 Demo

✨ Features
- View notes and reminders directly from the terminal
- Read note content as clean Markdown
- Add and edit notes without leaving your editor
- Move notes between folders and browse subfolders
- Search notes with fuzzy matching
- Mark reminders as completed from the CLI
- Export notes to HTML and convert them to Markdown
🛠️ Technologies
The project is built with:
📋 Requirements
Before starting, make sure the required tools and dependencies are installed on your machine:
python3.13 --version
echo $EDITOR
Memo depends on Apple Notes, Apple Reminders, and AppleScript, so it is intended for macOS. For manual and uv installs, Python 3.13 or newer is required.
If you want to add or edit notes from the CLI, set $EDITOR to your preferred terminal editor.
📦 Installation
Manual installation
git clone https://github.com/antoniorodr/memo
cd memo
pip install .
Homebrew installation
brew tap antoniorodr/memo
brew install antoniorodr/memo/memo
Installation with uv
uv tool install git+https://github.com/antoniorodr/memo
🚀 Getting Started
Once installed, set your editor and inspect the available commands:
export EDITOR="vim"
memo --help
memo notes --help
memo rem --help
Use memo notes to work with Apple Notes and memo rem to manage Apple Reminders from the terminal.
Note
When editing notes with images, Memo preserves them by inserting [MEMO_IMG_N] placeholders into the text shown in your editor. Keep a placeholder to preserve the corresponding image, or remove it to delete that image.
Important
Because of AppleScript limitations, preserved images are appended to the end of the note after editing, even if their placeholders appear elsewhere in the text.
For full usage details and examples, see the documentation site.
❤️ Do you like my work?
If you find the project useful, you can support the author here: