Install
openclaw skills install clawdible-audiobooksSearch, browse, and manage Audible audiobooks. Use when the user wants to search for audiobooks on Audible, view their library, get book details, purchase a title, or manage their wishlist. Triggers on phrases like "find audiobook", "buy audiobook", "what's in my Audible library", "search Audible for", "add to wishlist". Requires one-time auth setup.
openclaw skills install clawdible-audiobooksManage Audible via the audible Python library (unofficial API). Works across platforms — macOS, Linux, Windows.
Both scripts auto-install dependencies on first run via pip:
audible — unofficial Audible API clienthttpx — HTTP clientNo manual pip install needed.
Resolve the skill directory at runtime:
SKILL_DIR=$(python3 -c "
import subprocess, json
skills = subprocess.check_output(['openclaw', 'skills', '--json'], text=True)
for s in json.loads(skills):
if s['name'] == 'clawdible':
print(s['path']); break
" 2>/dev/null || find ~/.openclaw -name 'audible_cli.py' -path '*/clawdible/*' 2>/dev/null | head -1 | xargs dirname)
SCRIPT="python3 $SKILL_DIR/audible_cli.py"
AUTH="python3 $SKILL_DIR/audible_auth.py"
Or use the path OpenClaw provides when loading this skill (available as the skill's directory).
Auth stored at ~/.config/audible/auth.json (chmod 600).
Step 1 — generate login URL:
python3 audible_auth.py --locale us
Send URL to user. They open it on any device and sign into Amazon.
Step 2 — after login, Amazon redirects to https://www.amazon.com/ap/maplanding.... User pastes that URL:
python3 audible_auth.py --callback '<redirect URL>'
Verify:
python3 audible_cli.py status
Locale options: us, au, uk, de, ca, fr, in, it, jp, es
Auth file's locale_code is auto-detected; override with --locale if needed.
All commands accept --locale LOCALE and --json.
# Auth status
python3 audible_cli.py status
python3 audible_cli.py status --locale us
# Search catalogue
python3 audible_cli.py search "Project Hail Mary"
python3 audible_cli.py search "Andy Weir" --limit 5 --locale us
# View library
python3 audible_cli.py library
python3 audible_cli.py library --limit 50
# Get book details
python3 audible_cli.py info B08G9PRS1K
# Purchase (requires explicit --confirm — always verify with user first)
python3 audible_cli.py buy B08G9PRS1K --confirm
# Wishlist
python3 audible_cli.py wishlist
python3 audible_cli.py wishlist add B08G9PRS1K
Typical search-and-buy:
search — find title, note the ASINinfo <asin> — confirm correct edition/narratorbuy <asin> --confirm — execute purchaseNever run buy without explicit user confirmation.
--locale when needed (e.g. user's account is US but located in AU)https://www.audible.com/pd/<asin> (adjust domain per locale)| Error | Cause | Fix |
|---|---|---|
| No auth file | Not set up | Run audible_auth.py |
| 401/403 | Token expired | Re-run audible_auth.py |
| 404 | Wrong ASIN or locale | Try different --locale |
| 429 | Rate limited | Wait and retry |
| Buy fails | API blocked | Send manual URL to user |
| InvalidValue on auth | Code expired | Start auth flow again |
audible library is unofficial — Amazon may change their API without notice