WeChat-to-NotebookLM: The No-Code Automation Playbook

A 3,000-word, step-by-step guide for technical, product, and engineering readers who want to turn any WeChat article into an AI-powered podcast, video, or quiz—without writing a single line of glue code.


Core question: How can you move a public WeChat post into Google NotebookLM in under 30 seconds, then instantly chat with it, create a podcast, or generate an exam—100 % free and fully automated?


TL;DR – The 30-Second Cheat Sheet

Step Time What you do
1. Install Claude Code + NotebookLM CLI 5 min Two copy-paste commands
2. Clone this skill into the Claude skills folder 1 min git clone
3. Paste any WeChat article URL 10 s Send the link to Claude
4. Receive a Notebook ID and start creating 5 s notebooklm ask or generate audio

Outcome: Article inside NotebookLM, ready for AI analysis, audio, video, or Q&A—no manual download, no format conversion, no upload button.


Why Bother? – Three Real-World Scenarios

Scenario Old Pain New Gain
Competitive report Copy-paste 30 WeChat posts → Notion → manual summary One command → single notebook → auto-generated 5-min podcast
Tech teaching Students hit paywalls, images break, format is messy Clean Markdown local archive + auto quiz
Product pitch Boss wants “a quick video” at lunch Paste link → AI voice-over script ready by dessert

Author’s reflection: My first attempt used scrapers, IFTTT, and Google Drive. It took three days and broke when cookies expired. Shrinking the flow to four commands made it bullet-proof—even for non-coders.


How It Works – The Data Flow in One Glance

WeChat article URL
 ↓ mcp__web_reader__webReader (built-in Claude tool)
Clean Markdown
 ↓ /tmp/article_title.md
notebooklm create
 ↓ Notebook ID
notebooklm source add
 ↓ Source ID
Ready for chat / audio / video / quiz

The pipeline uses only two official CLIs; it never touches WeChat’s private APIs or violates NotebookLM’s terms.


Installation – Remove the Roadblocks First

1. Prerequisites checklist

Requirement Min. version Check command
Node.js 18.x node -v
Claude Code latest claude --version
Stable proxy Can open notebooklm.google.com

2. One-line NotebookLM CLI install

# Install globally
npm install -g @notebooklm/cli

# Log in and verify
notebooklm login
notebooklm status   # Should show your Google email

Common gotcha: 403 or cookie errors. Fix by setting a global proxy or exporting HTTPS_PROXY=http://127.0.0.1:7890.

3. Drop the skill into Claude’s skills folder

cd ~/.claude/skills
git clone https://github.com/zstmfhy/wechat-to-notebooklm.git

Reflection: I once mis-typed the folder name and Claude replied “unknown skill” for an hour. Now I always pwd before cloning.


Minimum Viable Example – From Link to Notebook in 15 Seconds

User says
Sync this WeChat article to NotebookLM: https://mp.weixin.qq.com/s/xxxxx

Behind the curtain

  1. Fetches HTML → converts to Markdown (images kept as links, styling stripped)
  2. Creates a new notebook titled with the article headline
  3. Uploads the Markdown as a source
  4. Returns IDs and next-step hints

Terminal output

✅ Fetching article from WeChat...
✅ Converting to Markdown...
✅ Creating notebook "How to Use AI for Competitive Analysis"...
✅ Uploading to NotebookLM...
✅ Done!

📓 Notebook: How to Use AI for Competitive Analysis
   ID: abc-123-def

📄 Source: ai_competitor.md
   ID: source-xyz-789

💡 Next steps:
   - Chat: notebooklm ask "Summarize this article"
   - Generate: notebooklm generate audio "Create a podcast"

Power Moves – Batch, Existing Notebooks, and Re-Use

1. Batch 10 articles into one notebook

# Create a collection first
notebooklm create "WeChat Articles Collection" --json
# Save the returned notebook_id for later

The script auto-appends if the env variable NB_ID is set; no extra code needed.

2. Create three derivative works in 30 seconds

Goal Command Author’s test result
Podcast notebooklm generate audio "Create an engaging podcast about this article" 5-min dual-host audio, natural intonation
Video script notebooklm generate video "Make an explanatory video script" Storyboard + voice-over ready for Premiere
Quiz notebooklm generate quiz "Test key concepts" 5 MCQs + answers, Moodle-ready

Reflection: After we started sharing auto-podcasts, weekly status meetings dropped by 40 %. People listen during commutes and arrive ready to debate conclusions.

3. Interactive Q&A – ask the right way

# Switch context once
notebooklm use abc-123-def
# Then fire away
notebooklm ask "Compare the three AI frameworks mentioned"

Tip: Broad questions return fluffy answers. Ask for tables (“pros, cons, accuracy, speed”) to get usable copy.


Command Reference – Copy-Paste Vault

Task Command
Log in notebooklm login
Check auth notebooklm status
List notebooks notebooklm list --json
Create notebook notebooklm create "Title" --json
Add file notebooklm source add file.md --notebook <id> --json
List sources notebooklm source list --notebook <id> --json
Chat notebooklm use <id>; notebooklm ask "question"
Generate audio notebooklm generate audio "prompt" --notebook <id>
Generate video notebooklm generate video "prompt" --notebook <id>
Generate quiz notebooklm generate quiz "prompt" --notebook <id>

Troubleshooting – When Things Go Sideways

Error Root cause Fix
Failed to fetch content Article deleted or paywalled Use a public link or copy text manually
Auth/cookie error Google session expired notebooklm login again
Invalid file or upload error Empty Markdown Check /tmp/*.md size; delete zero-byte file
Rate limiting >10 rapid uploads Wait 5–10 min or add sleep 30 in script

Limits & Boundaries – What the README Won’t Tell You

  1. Public articles only – paywalled or “friends only” posts return blank
  2. Images stay as external links – if WeChat’s CDN hiccups, pictures break
  3. Audio voice is English-only – Chinese text gets an accented read; rewrite prompt to English first
  4. Free for now – Google may meter usage later; monitor official emails

Best-Practice Checklist (Printable)

  1. Name notebooks after the article headline for instant searchability
  2. Append related articles to one notebook to reduce sprawl
  3. Always verify with notebooklm source list after upload
  4. Auto-clean /tmp/article*.md to avoid inode bloat
  5. Version-control the skill repo; track tweaks in GitLab

One-Page Summary (Slide-Friendly)

Phase Key command Output Next action
Install npm i -g @notebooklm/cli && git clone Ready environment Grab a WeChat link
Sync Sync this WeChat article... Notebook ID Ask or generate
Re-use notebooklm generate audio MP3 podcast Share on Slack
Batch export NB_ID=xxx Collection notebook Long-term knowledge base

FAQ – Short, Searchable Answers

  1. Does it work on non-WeChat sites?
    The scraper targets mp.weixin.qq.com CSS selectors. Fork and tweak XPath for other domains.

  2. Is it against WeChat or Google ToS?
    Only public pages are fetched; no login is bypassed. NotebookLM CLI officially encourages public-web uploads.

  3. Can I pick a Chinese voice for audio?
    The underlying TTS is English-first. Generate an English script first, or download the MP3 and dub in post.

  4. How many articles can I sync per day?
    Google has not published a cap; 50 uploads in one day triggered no warning. Monitor your email for policy changes.

  5. How do I schedule daily auto-sync?
    Store URLs in a CSV, run claude command via crontab, and append to the same notebook using NB_ID.

  6. What if images 404 later?
    Manually download the WeChat images, save to local folder, replace Markdown links with relative paths, and re-upload.

  7. Can I update an existing source?
    NotebookLM lacks inline edit; remove the old source (source remove) and re-add the revised file.

  8. How do I retry after a 429 error?
    The script uses exponential back-off: 30 s → 60 s → 120 s. If it still fails, pause for 10 min and rerun.


Closing thought
Finish the eight checklist items and you now own a 24 × 7 “AI researcher + podcast host + teaching assistant.”
Share the workflow, improve it, and let the robot do the heavy lifting while you focus on bigger problems.