85 lines
2.4 KiB
Markdown
85 lines
2.4 KiB
Markdown
# WechatHookBot 项目概述
|
||
|
||
## 项目信息
|
||
|
||
- **项目名称**: WechatHookBot
|
||
- **版本**: v1.0.0
|
||
- **创建时间**: 2025-11-12
|
||
- **项目类型**: 微信机器人框架
|
||
- **技术栈**: Python 3.11 (32位), asyncio, ctypes
|
||
|
||
## 项目简介
|
||
|
||
基于个微大客户版 Hook API 的微信机器人框架,通过 DLL 注入方式实现微信消息的接收和发送。
|
||
|
||
## 核心特性
|
||
|
||
1. **DLL Hook 技术**
|
||
- 使用 Loader.dll 和 Helper.dll 注入微信进程
|
||
- 通过 Socket 回调接收消息
|
||
- 支持微信版本: 2.84.18.17
|
||
|
||
2. **插件系统**
|
||
- 基于事件驱动的插件架构
|
||
- 支持热重载(无需重启)
|
||
- 装饰器风格的事件处理
|
||
- 插件启用/禁用管理
|
||
|
||
3. **消息处理**
|
||
- 支持文本、图片、视频、文件等多种消息类型
|
||
- 群聊和私聊消息处理
|
||
- 消息过滤(白名单/黑名单)
|
||
- @消息识别
|
||
|
||
4. **AI 集成**
|
||
- 支持自定义 AI API
|
||
- 可切换人设(通过 txt 文件)
|
||
- 多种触发模式(全部/提及/@/关键词)
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
WechatHookBot/
|
||
├── bot.py # 主入口
|
||
├── main_config.toml # 主配置文件
|
||
├── requirements.txt # 依赖列表
|
||
├── libs/ # DLL 文件
|
||
│ ├── Loader.dll
|
||
│ └── Helper.dll
|
||
├── WechatHook/ # Hook API 封装
|
||
│ ├── loader.py # DLL 加载器
|
||
│ ├── client.py # API 客户端
|
||
│ ├── callbacks.py # 回调处理
|
||
│ └── message_types.py # 消息类型定义
|
||
├── utils/ # 工具模块
|
||
│ ├── hookbot.py # 机器人核心
|
||
│ ├── plugin_manager.py # 插件管理器
|
||
│ ├── event_manager.py # 事件管理器
|
||
│ └── decorators.py # 装饰器
|
||
├── plugins/ # 插件目录
|
||
│ ├── AIChat/ # AI 聊天插件
|
||
│ ├── ManagePlugin/ # 插件管理插件
|
||
│ └── ExamplePlugin/ # 示例插件
|
||
└── docs/ # 文档目录
|
||
└── MemoryBank/ # 内存银行
|
||
```
|
||
|
||
## 当前状态
|
||
|
||
✅ **已完成**:
|
||
- DLL Hook 集成
|
||
- 消息接收和发送
|
||
- 插件系统框架
|
||
- AI 聊天插件
|
||
- 插件管理功能
|
||
- 热重载支持
|
||
|
||
🚧 **进行中**:
|
||
- 测试和调试
|
||
- 文档完善
|
||
|
||
📋 **待开发**:
|
||
- 更多插件功能
|
||
- Web 管理界面
|
||
- 数据统计功能
|