← all repositories
lich0821/WeChatFerry

Reverse-engineering WeChat to build a robot army

A C++ DLL injection framework that turns the desktop WeChat client into a programmable bot, with clients in nine languages.

6.8k stars C++ AgentsChat Assistants
WeChatFerry
Not currently ranked — collecting fresh signals.
star history

What it does

WeChatFerry is a Windows DLL that hooks into the desktop WeChat client via injection, exposing internal functions over RPC. It lets you send and receive messages, manage contacts, query databases, download media, and handle friend requests — all programmatically. The core ships as a C++ project built in VS2019, with a sprawling ecosystem of third-party clients (Python, Go, Rust, Java, Node.js, C#, HTTP) that wrap the DLL for easier use.

The interesting bit

The project version numbers encode WeChat compatibility: 39.5.2 means WeChat 3.9.x, patch level 5, WeChatFerry revision 2. This is maintenance as archaeology — every WeChat update risks breaking the hook offsets, so the version scheme tracks how deep the spelunking goes. The “spy” module in the source tree is doing the actual memory patching.

Key highlights

  • Supports 20+ operations including encrypted image decryption, voice message handling, and XML/卡片 message sending
  • Multi-language client ecosystem: Python (official), Go, Rust, Java, Node.js, C#, HTTP, plus Docker images
  • Version-locked to specific WeChat releases (currently 3.9.12.51); breaks when WeChat updates
  • Ships with Silk-to-MP3 audio conversion (smc module)
  • Includes a disclaimer warning users to read it — always a good sign with reverse-engineering tools

Caveats

  • Windows-only, requires VS2019 and vcpkg to build from source
  • Tight coupling to WeChat versions means constant chasing; the changelog is mostly “适配 [version]” and bug fixes
  • No official macOS or Linux support; Docker solutions appear to be Windows containers or remote bridges

Verdict

Worth a look if you need to automate WeChat and can tolerate the fragility of client-side hooks. Skip it if you want official APIs, cross-platform support, or a solution that won’t break next Tuesday when WeChat auto-updates.

Frequently asked

What is lich0821/WeChatFerry?
A C++ DLL injection framework that turns the desktop WeChat client into a programmable bot, with clients in nine languages.
Is WeChatFerry open source?
Yes — lich0821/WeChatFerry is open source, released under the MIT license.
What language is WeChatFerry written in?
lich0821/WeChatFerry is primarily written in C++.
How popular is WeChatFerry?
lich0821/WeChatFerry has 6.8k stars on GitHub.
Where can I find WeChatFerry?
lich0821/WeChatFerry is on GitHub at https://github.com/lich0821/WeChatFerry.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.