Agent skill
weread
WeChat Reading (微信读书) CLI tool for fetching notes and highlights. Use when: (1) user asks about weread/微信读书 notes or highlights, (2) fetching today's or recent reading notes, (3) exporting book highlights, (4) managing reading bookshelf, (5) any task involving reading notes from WeChat Reading.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/weread
SKILL.md
weread-cli
CLI tool for fetching notes and highlights from WeChat Reading (微信读书).
Quick Start
# Login via WeChat QR code
weread login
# List books with notes
weread list
# Get highlights from a book
weread get <bookId>
Commands
Authentication
weread login # Open browser for QR code login
weread logout # Clear saved cookies
weread whoami # Check login status
Fetching Data
# List all books with notes
weread list [--json]
# Get book highlights and reviews
weread get <bookId> [options]
--json, -j JSON output
--highlights, -H Only show highlights
--reviews, -R Only show reviews
--since, -s Filter by date (today, yesterday, YYYY-MM-DD)
# List books from shelf (sorted by recent read time)
weread shelf [-n <limit>] [--json]
Practical Examples
1. Get Today's/Yesterday's Notes
Fetch notes created after a specific date:
# Today's highlights from a book
weread get CB_3x2HoH --since today
# Yesterday's notes
weread get CB_3x2HoH --since yesterday
# Notes after a specific date
weread get CB_3x2HoH --since 2024-01-15
2. Export to Markdown
Export book highlights as Markdown file:
# Export highlights only
weread get CB_3x2HoH -H > notes.md
# Full export with reviews
weread get CB_3x2HoH > notes.md
The text output is already formatted with chapter headers (## Chapter) and quote markers (>).
3. JSON + jq Processing
Use JSON output for batch processing:
# Get all highlight texts
weread get CB_3x2HoH --json | jq -r '.highlights[].markText'
# Count highlights per chapter
weread get CB_3x2HoH --json | jq '.chapters | length'
# Extract book info
weread get CB_3x2HoH --json | jq '.book | {title, author}'
# List all book IDs with notes
weread list --json | jq -r '.[].bookId'
# Get total highlight count across all books
weread list --json | jq '[.[].bookmarkCount] | add'
4. Shelf Management
List and manage your bookshelf:
# Recent 10 books
weread shelf -n 10
# All books as JSON
weread shelf --json
# Get book IDs from shelf
weread shelf --json | jq -r '.[].bookId'
5. Get Recent Notes from All Books
Workflow: Get shelf -> Fetch today's notes from each book:
# Step 1: Get recent books from shelf
weread shelf -n 5 --json | jq -r '.[].bookId'
# Step 2: For each book, fetch today's notes
for id in $(weread shelf -n 5 --json | jq -r '.[].bookId'); do
echo "=== Book: $id ==="
weread get "$id" --since today -H
done
# One-liner: Recent notes from top 3 books
for id in $(weread shelf -n 3 --json | jq -r '.[].bookId'); do weread get "$id" --since today; done
With book titles:
# Get recent notes with book titles
weread shelf -n 5 --json | jq -c '.[] | {id: .bookId, title: .title}' | while read book; do
id=$(echo "$book" | jq -r '.id')
title=$(echo "$book" | jq -r '.title')
echo "=== $title ==="
weread get "$id" --since today -H
done
Authentication Options
Priority: ENV variable > Local cache > CookieCloud
-
QR Login (recommended):
bashweread login -
Environment variable:
bashexport WEREAD_COOKIE="wr_vid=xxx;wr_skey=xxx" weread list -
CookieCloud (for synced cookies):
bashexport COOKIECLOUD_SERVER="https://your-server.com" export COOKIECLOUD_UUID="your-uuid" export COOKIECLOUD_PASSWORD="your-password" weread list
FAQ
Q: How do I find a book's ID?
weread list --json | jq '.[] | {title: .book.title, id: .bookId}'
Q: Cookie expired?
weread logout && weread login
Q: Where are cookies stored?
~/.config/weread/cookies.json
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?