wechat-official-batch-download
Skill44 starsChanged 39 days agoMITView on GitHub
Use this skill when the user wants to batch download, archive, verify, or build a corpus from WeChat Official Account articles, or needs to fetch articles as writing references. Especially when using mp.weixin.qq.com links, down.mptext.top/dashboard, wechat-article-exporter, exported Excel/JSON link pools, or a local downloader/MCP. It teaches the agent to acquire official article URLs first, preserve raw HTML/Markdown/images/metadata, verify counts and fidelity, and avoid storing cookies, auth keys, or login secrets.
In this repository2 other files it gives its agents.
- wechat-directorSkill
- wechat-writerSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
20 rules. About 0 are common, 14 are distinctive, and 6 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈14
Distinctive · estimate
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 9
Use this skill for WeChat Official Account article batch download, corpus building, and download verification.
- Distinctive: line 47
Do not claim "all articles" without a counted official URL pool or a user-verified export.
- Very specific: line 48
Treat down.mptext.top/dashboard/ and wechat-article-exporter primarily as link-pool/export tools, not guaranteed final body downloaders.
- Distinctive: line 49
If a website's body download fails, keep the exported links and switch to local download.
- Very specific: line 50
Never store or print cookies, auth-key, X-Auth-Key, API keys, tokens, browser storage, or login secrets.
- Distinctive: line 51
Do not treat mirrors/search snippets as official source material unless clearly labeled as fallback.
- Distinctive: line 52
Do not claim exact text fidelity unless raw visible article text and preserved Markdown were compared after whitespace normalization.
- Very specific: line 62
Keep only real mp.weixin.qq.com/s/...
- Distinctive: line 67
Use the local downloader available in the user's environment.
- Very specific: line 68
If an MCP downloader is available, call initialize, tools/list, and smoke-test 3 links before batch work.
- Distinctive: line 69
If using scripts, preserve raw HTML first, then derive Markdown and metadata from the raw source.
- Distinctive: line 89
Do not paste full article text into chat.
- Distinctive: line 93
Use this route when the user needs articles as writing references, not as a permanent corpus.
- Very specific: line 99
No HTML/JSON/metadata artifacts.
- Distinctive: line 104
If no project directory exists yet, the agent creates it:
- Very specific: line 115
If a project already exists, reuse it and add files under its _source/.
- Distinctive: line 127
No local image download, no image folder, no cleanup needed after reference use.
- Distinctive: line 134
When the project is archived, reference files archive with it.
- Distinctive: line 135
No separate cleanup needed.
- Distinctive: line 150
If no downloader exists, create a small local script only after the link pool is known and after checking legal/compliance boundaries.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
WeChat Official Batch Download
Use this skill for WeChat Official Account article batch download, corpus building, and download verification.
The default goal is not just "download some pages". The goal is a traceable corpus:
real mp.weixin.qq.com/s/... links
-> raw HTML + preserved Markdown + images + metadata
-> count/fidelity verification
-> valid article inventory + reportWhen To Use
- User asks to batch download WeChat Official Account articles.
- User provides many
mp.weixin.qq.com/s/...links or a link-pool file. - User wants all/latest articles from one account.
- User mentions
down.mptext.top,wechat-article-exporter, dashboard export, Excel/JSON address list, or WeChat corpus. - User asks whether a downloaded corpus is complete, official, readable, or faithful.
Route First
Classify the request. Default is reference — you do NOT need to say which mode unless you want corpus mode.
reference(default): one or more article URLs downloaded as writing references. Lightweight, no local images, no corpus. Files go to project_source/.single: one user-provided article URL, downloaded as corpus (with images, HTML, metadata).recent: latest N articles, default 10 if no count is provided.all: all backend/export-visible articles for a target account.link-pool: user already has Excel/JSON/TXT links.verify: check an existing corpus.fallback: official link pool unavailable or site downloader failed.
The agent classifies like this:
- User says "下载这篇文章" / "帮我拉一下" / "参考一下" / "放到 source 里" → reference (default)
- User says "做个语料库" / "全部下载" / "要验收" / "包括图片" → corpus mode (single / all / link-pool)
Non-Negotiable Rules
- Official corpus work starts with real
https://mp.weixin.qq.com/s/...URLs. - Do not claim "all articles" without a counted official URL pool or a user-verified export.
- Treat
down.mptext.top/dashboard/andwechat-article-exporterprimarily as link-pool/export tools, not guaranteed final body downloaders. - If a website's body download fails, keep the exported links and switch to local download.
- Never store or print cookies,
auth-key,X-Auth-Key, API keys, tokens, browser storage, or login secrets. - Do not treat mirrors/search snippets as official source material unless clearly labeled as fallback.
- Do not claim exact text fidelity unless raw visible article text and preserved Markdown were compared after whitespace normalization.
Preferred Workflow
- Establish the official URL pool.
- Best: fixed/logged-in WeChat backend or user-exported official address list.
- Good fallback:
down.mptext.top/dashboard/or privatewechat-article-exporterexport. - Acceptable input: user-provided Excel/JSON/TXT containing real article URLs.
- Normalize the link pool.
- Keep only real
mp.weixin.qq.com/s/...article links. - Deduplicate.
- Save
links.jsonwith count, source route, and timestamp.
- Keep only real
- Download articles.
- Use the local downloader available in the user's environment.
- If an MCP downloader is available, call
initialize,tools/list, and smoke-test 3 links before batch work. - If using scripts, preserve raw HTML first, then derive Markdown and metadata from the raw source.
- Produce mandatory artifacts for every successful article.
html_raw/*.htmlarticles_preserved/*.mdimages/<article>/...meta/*.json
- Verify the corpus.
- URL count vs attempted count.
- raw HTML count.
- preserved Markdown count.
- valid body count.
- image count and missing-image count.
- fidelity warnings.
- failed URLs and retry/fallback notes.
- Report clearly.
- Give output directory and counts.
- Separate official source, fallback source, failures, and warnings.
- Do not paste full article text into chat.
Reference Route (写作参考模式)
Use this route when the user needs articles as writing references, not as a permanent corpus.
Output rules
- Each article becomes one standalone Markdown file.
- Images keep original WeChat CDN links — do not download to local.
- No HTML/JSON/metadata artifacts.
- No acceptance report.
Project directory
If no project directory exists yet, the agent creates it:
To-be-used/Project_[Title]/
└── _source/
├── Refer_[ArticleTitle1].md
├── Refer_[ArticleTitle2].md
└── ...- Project title: derived from article topic or user-provided intent.
- If a project already exists, reuse it and add files under its
_source/. - Filename:
Refer_+ article title (sanitized). - One
.mdper article, never merged into one file. - Frontmatter includes source URL and fetch date.
Image handling
<!-- Keep original WeChat image links, do not download -->
No local image download, no image folder, no cleanup needed after reference use.
Lifecycle
- User provides one or more article URLs.
- Agent fetches each article, converts to Markdown.
- Each
.mdsaved to_source/Refer_[Title].md. - When the project is archived, reference files archive with it.
- No separate cleanup needed.
Tool Adaptation
This skill does not assume one fixed workstation. Use the best available local equivalent:
- Local Python Scripts:
scripts/downloader.py: Multi-threaded downloader. Uses a direct connection by default with a high-fidelity Chrome UA to bypass the hotlinking block; the CF Worker proxy pool is opt-in via--proxy. With no proxy available (pool file missing or empty) it also falls back to a direct request, and if every proxy attempt fails it retries once directly instead of aborting the batch. Supports request throttling (--delay) and authentication (--cookie).scripts/exporters/md_exporter.py: Exporter converting raw HTML to preserved Markdown.scripts/exporters/html_exporter.py: Exporter normalizing HTML into clean, offline-friendly single files viano-referrermetadata injection and protocol-relative stylesheet link corrections (https:prefixing).
- local Python/Node downloader
- existing WeChat article export script
- MCP downloader with tools such as
single_article_downloadorbatch_download_articles - browser-assisted capture for single article troubleshooting
If no downloader exists, create a small local script only after the link pool is known and after checking legal/compliance boundaries.
Read References As Needed
- For operational detail, read
references/batch-download-sop.md. - For the website/tool comparison, read
references/tool-comparison.md. - For a portable handoff summary to show a human, read
references/portable-usage.md.
Changelog
- v1.2.1 (2026-10-07): Fixed the
--proxytoggle, which was a no-op:Downloader.__init__rebuilt aProxyManagerwhenever it was passedNone, so the pool was loaded even without the flag and the documented "direct by default" behaviour never took effect. NowNonereally means direct, and when the pool is used but every attempt fails the downloader retries once directly instead of aborting the batch. - v1.2.0 (2026-06-27): Disabled CF Worker proxy pool by default. Reconfigured downloader to prioritize direct HTTPS requests using browser User-Agent. Added
--proxytoggle,--delaythrottling, and--cookieauthorization parameters. - v1.1.0 (2026-06-27): Added local Python proxy pool downloader and Markdown/HTML exporters. Kept images and stylesheets on WeChat CDN and injected
no-referrermeta to bypass hotlinking block, ensuring clean single-file structures. - v1.0.0: Initial release of the batch download skill specification.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

