{"adoption": {"forks": 502, "observed_at": "2026-08-28T04:05:46.512575+00:00", "stars": 1869}, "canonical_url": "https://ross.abutalabs.com/products/pywechat", "card": {"archived": false, "artifact_type": "library", "description": "仍然可用的微信RPA！支持4.0系列微信pywechat是一个基于pywinauto实现的windows桌面微信自动化操作工具，基本实现了PC微信内置的各项操作。", "domain": ["messaging-platforms", "developer-tools", "windows"], "enriched": true, "function": ["workflow-automation", "gui", "sdk", "chatbot"], "health_score": 96, "homepage": null, "language": "Python", "license": "NOASSERTION", "license_family": "other", "maturity": "active", "member_repos": ["Hello-Mr-Crab/pywechat"], "name": "Hello-Mr-Crab/pywechat", "platform": ["windows", "python"], "pushed_at": "2026-08-20T14:04:29+00:00", "repo": "Hello-Mr-Crab/pywechat", "stars": 1869, "tags": ["rpa", "wechat", "ui-automation", "pywinauto", "desktop-automation", "auto-reply", "chat-export", "unofficial-api", "skill-for-agents", "automation", "desktop"], "topics": ["python", "pywechat", "pywinauto", "wechat"], "urls": [], "use_cases": ["automate sending WeChat messages from a Windows PC with python", "auto-reply to incoming WeChat messages", "export or read WeChat chat history programmatically", "monitor new messages in a WeChat chat window", "post to or scrape WeChat Moments via script", "retrieve WeChat contact lists and friend details", "send files or voice messages to WeChat contacts automatically", "give an AI agent a skill to operate desktop WeChat"], "what_it_is": "A Python library for automating the Windows desktop WeChat client through pywinauto-based UI automation (no reverse-engineering hooks), covering message and file sending, auto-reply, calls, contacts and chat-record retrieval, Moments posting, and message monitoring. Its actively maintained pyweixin module targets WeChat 4.1+ and can be packaged as a Skill so AI agents can drive WeChat.", "when_to_avoid": ["You run macOS or Linux, or need headless/server-side operation - it requires a visible Windows desktop UI session", "You need a sanctioned, ToS-compliant official API - this is unofficial UI automation and the readme warns against uses that violate WeChat's terms", "You target WeChat versions outside the supported 3.9.12.x / 4.1.6+ ranges or non-Chinese/English/Traditional-Chinese UI languages"], "when_to_choose": ["You need to automate the PC WeChat client on Windows 7/10/11 using only visible-UI automation, without hooking or reversing the app", "You want Python 3.10+ typed APIs for messaging, files, auto-reply, contacts, Moments, and calls against WeChat 3.9 or 4.1+", "You want to expose WeChat operations as a Skill for agent platforms", "You plan to build custom automation on top of its pywinauto utility functions"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/pywechat", "repo": "Hello-Mr-Crab/pywechat", "role": "main", "score": 65}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:46.512575+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:15:11.144022+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a5328a22261234d7b614289674eb1780f08f8877faeb186a10a81612a5f9bf1", "fetched_at": "2026-08-28T04:05:46.512575+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hello-Mr-Crab/pywechat"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 47, "rhythm": 34}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["prerelease_only", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 664, "days_push": 13, "days_rel": 231, "gap_med": null, "n_releases_24m": 1}, "score": 65, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}