界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
效率与协作 · SKILL.md

weread

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.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: weread description: | 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.

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

  1. QR Login (recommended):

    weread login
    
  2. Environment variable:

    export WEREAD_COOKIE="wr_vid=xxx;wr_skey=xxx"
    weread list
    
  3. CookieCloud (for synced cookies):

    export 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

我的收藏