Book Reader - Learn & Grow Every Day
v1.0.0Read EPUB, PDF, or TXT books from multiple sources with progress tracking, smart chunking, and summary extraction for efficient learning.
Security Scan
OpenClaw
Benign
high confidencePurpose & Capability
The script and SKILL.md align with the stated purpose: searching Gutenberg, downloading EPUB/PDF/TXT, extracting text, and storing reading progress. Declared dependencies (pandoc, pdftotext, Python ebook libs) map to the code's EPUB/PDF handling. One small mismatch: the script uses jq for JSON processing but jq is not mentioned in SKILL.md or the registry metadata.
Instruction Scope
Runtime instructions and the script stay within the declared scope: downloading books (from user-supplied URLs or Gutendex), extracting text, and saving progress to a local workspace (~/.openclaw/workspace). The skill does not instruct reading unrelated system files or exfiltrating data to third-party endpoints beyond fetching book sources and calling the Gutendex API. It mentions Anna's Archive as a source but does not automate access to it (the script points users to the site manually).
Install Mechanism
There is no install spec (instruction-only), so nothing arbitrary is downloaded or executed during installation. Dependencies are installed by the user via OS package manager or pip per SKILL.md. This is the lower-risk pattern.
Credentials
The skill requests no secrets or privileged environment variables. It optionally respects OPENCLAW_WORKSPACE to change its storage location; otherwise it writes state under ~/.openclaw/workspace, which is proportional to its functionality.
Persistence & Privilege
always is false and the skill does not request persistent platform-wide privileges. It stores only its own reading-state file under its workspace and does not modify other skills or system-wide agent settings.
Assessment
This skill appears to do what it says: download books, extract text, and track reading progress in ~/.openclaw/workspace. Before installing or running: 1) Ensure you have the runtime tools the script actually needs — SKILL.md omits jq (the script uses jq for JSON parsing), and the Python EPUB path requires ebooklib and bs4/lxml if pandoc is not present. 2) Be mindful of legality and ethics: the script can download from arbitrary URLs and references Anna's Archive (a shadow library); avoid downloading copyrighted material unless you have the right to do so. 3) Review network usage policies: downloads come from Gutendex or user-provided URLs, so only use trusted sources. 4) The script writes reading-state.json in your workspace and may include file paths and notes — treat that as local data. If you need higher assurance, run the script in a sandbox or review the code locally before giving it files or network access.Like a lobster shell, security has layers — review code before you run it.
latest
book-reader
Read books (epub, pdf, txt) from various sources with progress tracking.
Purpose
Enable AI agents to read full-length books for learning, summarization, and knowledge extraction.
Features
- Multiple sources: Anna's Archive, Project Gutenberg, local files
- Format support: EPUB, PDF, TXT
- Progress tracking: Remember where you left off
- Smart chunking: Read books in digestible sections
- Summary generation: Extract key insights as you read
Tools Required
curlorwget- Download bookspandoc- Convert EPUB to text (optional, fallback to python)pdftotext(poppler-utils) - Extract PDF text- Python 3 with
ebooklibandbeautifulsoup4(for EPUB parsing)
Usage
Search for a book
./book-reader.sh search "Thinking Fast and Slow"
Download a book
./book-reader.sh download <book-id> [output-file]
Read a book (with progress tracking)
./book-reader.sh read <file> [--from-page N] [--pages N]
Show reading progress
./book-reader.sh status
Installation
# Install dependencies
sudo apt-get install poppler-utils pandoc # Linux
# brew install poppler pandoc # macOS
pip3 install ebooklib beautifulsoup4 lxml
# Make executable
chmod +x book-reader.sh
Book Sources
-
Project Gutenberg (70k+ public domain books)
- API: https://gutendex.com
- Free, legal, no DRM
-
Anna's Archive (shadow library)
- Millions of books, papers, comics
- Legal gray area depending on jurisdiction
- Use responsibly
-
Local files (your own epub/pdf collection)
Reading State
Progress tracked in ~/.openclaw/workspace/memory/reading-state.json:
{
"currentBook": "Thinking, Fast and Slow",
"file": "/path/to/book.epub",
"totalPages": 499,
"pagesRead": 127,
"lastRead": 1770957900,
"bookmarks": [50, 200],
"notes": "Interesting insight about System 1 vs System 2..."
}
Example Workflow
# Find the book
./book-reader.sh search "Daniel Kahneman Thinking"
# Download it
./book-reader.sh download 12345 ~/books/thinking-fast-slow.epub
# Start reading
./book-reader.sh read ~/books/thinking-fast-slow.epub --pages 50
# Continue later
./book-reader.sh read ~/books/thinking-fast-slow.epub --pages 50
# Check progress
./book-reader.sh status
Privacy & Ethics
- Public domain books (Gutenberg): Fully legal
- Copyrighted books: Check your local laws
- Consider buying books you find valuable to support authors
- Use for personal learning, not redistribution
Limitations
- PDF OCR quality varies
- DRM-protected books not supported (by design)
- Large PDFs may be slow to parse
- EPUB formatting may be imperfect in plain text
Use responsibly. Support authors when possible.
Comments
Loading comments...
