Flomo CLI: Terminal Client for Flomo Notes
Flomo CLI: Terminal Client for Flomo Notes
A lightweight Python CLI that lets you capture thoughts and notes to Flomo without leaving the terminal. Supports direct arguments, piped content, file input, and hashtag-based tagging — making it easy to integrate Flomo into any scripting or automation workflow.
Project Overview
Flomo is a minimalist micro-note-taking app focused on capturing fleeting thoughts. Flomo CLI exposes its webhook API as a first-class terminal tool, enabling power users and developers to send notes programmatically — from shell scripts, pipe chains, or keyboard shortcuts.
Key Features
- Multiple Input Methods: Send notes via inline arguments, stdin pipe, or file path
- Hashtag Tag Support: Add tags naturally using
#hashtagsyntax inline - Webhook URL Override: Point to a different endpoint per-request without changing config
- Verbose Mode: Inspect raw JSON responses for debugging
- Secure Config: Webhook URL stored in config file, keeping credentials out of shell history
- pipx Compatible: Install as an isolated CLI tool with no dependency conflicts
Technical Implementation
- Language: Python 3
- API: Flomo incoming webhook (HTTP POST with JSON payload)
- Auth: Webhook URL as credential (treated as secret)
- Installation:
pip install -e .orpipx install - Config: Webhook URL configured once, reused across sessions
Development Highlights
- Designed a clean CLI interface supporting three distinct input modes (argument / pipe / file)
- Implemented per-request webhook override to support multiple Flomo accounts
- Added verbose JSON output for easy debugging and automation scripting
- Packaged for pipx to ensure clean, isolated installation
Tech Stack
- Language: Python
- API Protocol: HTTP POST / JSON webhook
- Packaging: pip / pipx
- Requirements: Flomo PRO account with webhook access