This project provides a WeChat robot framework for developers to build custom WeChat bots. It acts as a middleware, processing messages received from various WeChat hook frameworks, enabling features like ChatGPT integration, weather checks, and monitoring public accounts.
How It Works
The core of the project is a Go-based middleware that receives WeChat events via HTTP callbacks from external hook software. It supports multiple hook frameworks (Dean DLL, VLW) and allows for plugin-based extension of functionality. Developers can integrate new frameworks by implementing the IFramework
interface.
Quick Start & Requirements
- Local Run: Clone the repository, configure
config.yaml
, and run go run main.go
.
- Docker: Use
docker run -d -p 9528:9528 -v $(pwd)/config.yaml:/app/config.yaml -v $(pwd)/data:/app/data yqchilde/wxbot:latest
.
- Prerequisites: Requires a separate WeChat hook software (e.g., Dean DLL, VLW) to be set up and configured to send callbacks to this project.
- Documentation: docs/deandll.md
Highlighted Details
- Supports Dean DLL and VLW WeChat hook frameworks.
- Extensive plugin system with over 15 pre-built plugins (ChatGPT, weather, public account monitoring, etc.).
- Plugin development is facilitated by referencing existing plugins and implementing the
IFramework
interface.
- Offers both local execution and Docker deployment options.
Maintenance & Community
- Developed using GoLand, with thanks to JetBrains for open-source support.
- Some code is based on the ZeroBot-Plugin project.
- Development is ongoing but may be impacted by the author's work schedule.
Licensing & Compatibility
- License: AGPL-3.0.
- Restrictions: The AGPL-3.0 license is a strong copyleft license. If you modify and distribute the source code, or link to it in a distributed application, you must make your source code available under the same terms. This may restrict commercial use or integration into closed-source projects.
Limitations & Caveats
- The project does not provide any WeChat hook software; users must source and configure this separately.
- The project is for learning and exchange purposes only and explicitly states it is not for commercial use.
- Use of unofficial WeChat bots carries a risk of account suspension.
- The "nohook" branch is no longer maintained.