Explicit-invocation variant of the zlib-kindle skill. This one is hidden
from the model’s normal prompt, so it only runs when Amre asks for a book
directly. The machinery is shared — same script, same rules.
export PATH="/opt/homebrew/bin:$PATH"
cd {baseDir}/../zlib-kindle/scripts
# Full pipeline: search → download → email to amrekin@kindle.com
python3 zlib_kindle.py deliver "<title> <author>" --index 1
# Or step by step
python3 zlib_kindle.py search "<title> <author>" --limit 6
python3 zlib_kindle.py fetch <book-id> --hash <hash-from-search>
python3 zlib_kindle.py send ~/Downloads/dross-books/<file> --title "<Title> by <Author>"
z-lib.by.@kindle.com destination, switches to the same title in a
Kindle-native format (AZW3/MOBI) when one exists.~/Downloads/dross-books/, renaming the file to match
its real bytes.amrekin@kindle.com as an attachment, via the AgentMail
inbox thedross@agentmail.to.Check the printed filename after the download. Z-Library’s advertised
extension is unreliable, and a file with the wrong extension is exactly
what Amazon will refuse to convert. MOBI/AZW3 carry their BOOKMOBI/
TPZ3 marker at byte 60, not byte 0.
Z-Library serves file lists only to signed-in accounts. Check:
python3 zlib_kindle.py account
If it reports NOT configured, downloads of in-copyright titles will
fail. Amre needs to create ~/.openclaw/workspace/secrets/zlib-account.txt
containing email:password (mode 600, inside a git-ignored directory).
Public-domain titles still work without an account — the script falls back
to Project Gutenberg.
The account is currently configured and the eAPI sign-in works, so the download step should succeed. If it does not, report the failing step rather than retrying blindly.
/opt/homebrew/bin/python3 (Homebrew); system python lacks the
agentmail module.