Epson receipt printer based task ticket system
Project description
kleo-receipts
Named for KLEO, the Assaultron shopkeeper in Fallout 4. Every good merchant needs a receipt printer.
CLI tool for printing task tickets to Epson receipt printers. Fetches tasks from Things and prints them as physical tickets with QR codes for "scan to complete".
Install
brew install yesawoo/tap/kleo-receipts
Or with pip:
pip install kleo-receipts
Usage
# Discover network printers
kleo discover
# Print a single task ticket
kleo print-task "Fix the login bug" --auto
# Preview without printing
kleo print-task "Fix the login bug" --preview
# Server mode: periodically fetch and print tasks from Things
kleo serve --auto
# Custom schedule and tag filter
kleo serve --every "1 day at 09:00" --tag focus --auto
Background Service (Homebrew)
Run kleo as a background launchd service that auto-starts on login:
# Start the service
brew services start kleo-receipts
# Check status
kleo status
# Stop the service
brew services stop kleo-receipts
The service runs kleo serve with no arguments — all configuration comes from the config file. Use kleo config set to customize before starting:
# Configure schedule (default: daily at 9:00 AM)
kleo config set schedule.every="1 day at 09:00"
# Configure tag filter (default: 5m)
kleo config set schedule.tag=focus
# Set Things auth token for QR codes
kleo config set things.auth_token=YOUR_TOKEN
# Disable auto-discovery if using a specific printer
kleo config set printer.printer_name=kleo
Configuration
Kleo loads configuration from ~/.config/kleo/config.toml, environment variables, and CLI flags (highest priority).
# Show current config with sources
kleo config show
# Set a value
kleo config set schedule.every="2 hours"
# Show config file path
kleo config path
Config file format (~/.config/kleo/config.toml):
[schedule]
every = "1 day at 09:00"
tag = "5m"
strategy = "random"
[printer]
auto = true
# printer_name = "kleo"
# host = "192.168.1.100"
[things]
# auth_token = "your-token-here"
Priority: CLI flags > config file > environment variables > defaults.
Environment Variables
| Variable | Default | Description |
|---|---|---|
KLEO_EVERY |
"1 day at 09:00" | Schedule interval |
KLEO_TAG |
"5m" | Things tag to filter |
KLEO_STRATEGY |
"random" | Task selection strategy |
KLEO_PRINTER_NAME |
- | Bonjour printer name |
KLEO_PRINTER_HOST |
- | Network printer host |
KLEO_THINGS_AUTH_TOKEN |
- | Things URL auth token (required for QR codes) |
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file kleo_receipts-0.4.1.tar.gz.
File metadata
- Download URL: kleo_receipts-0.4.1.tar.gz
- Upload date:
- Size: 19.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
efcc5c7733cfc45c914a6c8fc6267141a5bf8a38aa103d525a2955f4796c9a19
|
|
| MD5 |
6f8039de6b58c7fa7327c79569ec1cf3
|
|
| BLAKE2b-256 |
e1e0733a9676cf3d422398ed41273121493c9517d7606434c016e479f67100b7
|
File details
Details for the file kleo_receipts-0.4.1-py3-none-any.whl.
File metadata
- Download URL: kleo_receipts-0.4.1-py3-none-any.whl
- Upload date:
- Size: 25.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9de39e7de7912533c95338265e8d3ea13a40bdfae461b49e51916ad47a94df20
|
|
| MD5 |
8e129023707ad421db3eba584c0eb6a8
|
|
| BLAKE2b-256 |
f8381babecacf37922a7aba5c5f5e57f04d3dbf54eddf85fe8abbdfc03cbc9be
|