Octopus 接入微信 ClawBot 实战:打造你的本地 AI 微信机器人

在这里插入图片描述

前言

近期在 GitHub 上发现了一款极具潜力的桌面 AI Agent 框架 —— Octopus。与其他云端 AI 助手不同,Octopus 采用本地部署架构,支持多 Agent 协作(Multi-tentacle),并可通过 MCP 协议扩展能力。本文将详细介绍如何将其接入微信生态(通过 ClawBot),打造一个私有化、可定制、具备长期记忆的微信 AI 助手。


一、项目简介

Octopus 是一个基于 Electron + React + Python 的桌面 AI Agent 框架,核心理念是"像八爪鱼一样同时处理多件事"。

核心特性:

  • 🚀 一键本地部署:无需 Docker/YAML,双击安装,数据完全本地存储
  • 🧠 多触手协作:支持创建多个 SubAgent,主脑自动分配任务
  • 📝 Markdown 即技能:通过编写 SKILL.md 零代码扩展功能
  • 🔌 MCP 协议支持:可接入任意 MCP Server(文件系统、数据库、API 等)
  • 💰 透明计费:实时 Token 消耗统计,支持预算告警

技术栈:

  • 前端:React 18 + Vite + Ant Design
  • 后端:Python 3.10+ + FastAPI + SQLite
  • 桌面:Electron 28
  • 通信:支持 stdio/WebSocket/SSE

二、架构解析:微信接入原理

Octopus 通过 channels 模块实现多平台接入,微信端采用 ClawBot(微信机器人框架)作为中间件:

微信客户端 ←→ ClawBot (WeChat API) ←→ Octopus Backend (FastAPI) 
                                          ↓
                                    Agent Core (LLM + Tools)

工作流程:

  1. ClawBot 监听微信消息,通过 HTTP/WebSocket 转发至 Octopus Backend
  2. Backend 根据 SOUL.md 配置路由到对应 Agent
  3. Agent 调用 Tools(文件操作、网络请求、定时任务等)生成回复
  4. 回复经 ClawBot 回传至微信

三、实战配置

3.1 环境准备
# 克隆仓库
git clone https://github.com/Rvelamen/Octopus.git
cd Octopus

# 安装依赖(需 Node.js >=18, Python >=3.10)
npm install
pip install -r backend/requirements.txt

# 启动开发环境
npm run dev
3.2 配置微信渠道(ClawBot)

backend/channels/ 目录下创建微信渠道配置:

# backend/channels/wechat_clawbot.py
from fastapi import APIRouter, Request
from core.events import EventBus

router = APIRouter()
event_bus = EventBus()

@router.post("/wechat/webhook")
async def wechat_webhook(request: Request):
    data = await request.json()
    msg_type = data.get("type")  # text/image/file
    content = data.get("content")
    from_user = data.get("from")
    
    # 构建上下文,触发 Agent 处理
    await event_bus.emit("message.received", {
        "channel": "wechat",
        "sender": from_user,
        "content": content,
        "msg_type": msg_type
    })
    
    return {"status": "processed"}

在 ClawBot 端配置 Webhook 地址指向 http://localhost:8000/wechat/webhook

3.3 配置 Agent 人格(SOUL.md)

创建微信专属 Agent:

# agents/wechat-assistant/SOUL.md

---
name: "微信小助手"
emoji: "🐙"
model: "deepseek-chat"
temperature: 0.7
---

## 身份设定
你是用户的微信私人助理,负责:
1. 自动回复工作群消息(礼貌专业)
2. 记录待办事项到本地文件
3. 过滤广告/骚扰信息

## 回复规则
- 工作群(包含"项目组"):24小时内首次@自动回复"收到,稍后处理"
- 家人群:保持亲切语气,多用表情
- 陌生人:首次聊天询问来意

## 可用工具
- send_message: 回复消息
- write_todo: 写入待办
- read_file: 读取本地知识库
3.4 启动与测试
# 1. 启动 Octopus(会自动启动前端和 Electron)
npm run dev

# 2. 启动 ClawBot(需单独部署,参考 ClawBot 文档)
python clawbot_launcher.py

# 3. 在 Octopus UI 中配置模型 API Key
# Settings -> Model Providers -> 添加 DeepSeek/OpenAI

四、进阶玩法

4.1 定时任务托管

利用内置的 cron 工具实现定时群发:

# SKILL.md 示例:每日晨报
---
name: "每日晨报"
trigger: "cron"
schedule: "0 9 * * 1-5"  # 工作日 9点
---

执行步骤:
1. 调用 web_fetch 获取今日天气和新闻
2. 使用 write 工具生成摘要保存到 summary.md
3. 调用 send_message 发送到工作群:"今日晨报已生成:[摘要内容]"
4.2 多工作区隔离

Octopus 支持工作区(Workspace)隔离,可为不同微信账号创建独立环境:

workspace/
├── work-wechat/          # 工作号
│   ├── extensions/       # 办公自动化插件
│   └── memory/           # 工作相关记忆
└── personal-wechat/      # 私人号
    └── extensions/       # 生活助手插件

切换工作区 = 切换全套配置和记忆,避免工作与生活数据混淆。

4.3 子 Agent 分工

创建 specialized SubAgent 处理特定场景:

# agents/code-reviewer/SOUL.md
role: 代码审查员
trigger: 当消息包含"review"或代码块时激活
tools: [read, shell, web_fetch]
workflow:
  1. 分析代码安全性(SQL注入/XSS)
  2. 检查性能瓶颈
  3. 输出审查报告

主 Agent 会自动识别消息类型并分发给对应 SubAgent。


五、注意事项

  1. 合规风险:微信官方禁止第三方机器人,建议使用小号测试,控制消息频率(建议 >5秒/条),避免被封号。

  2. 隐私安全:虽然 Octopus 是本地部署,但 ClawBot 可能涉及微信协议破解,敏感对话建议关闭云端同步。

  3. Token 消耗:自动回复群消息可能产生大量 API 调用,务必设置预算上限(Octopus 支持月度预算告警)。

  4. 稳定性:目前项目处于活跃开发期,生产环境建议配合 PM2 进程守护。


六、总结

Octopus + ClawBot 的组合为微信自动化提供了私有化、可扩展的解决方案。相较于市面上的 SaaS 微信机器人,其核心优势在于:

  • 数据主权完全掌控
  • Agent 能力可深度定制(Markdown 定义)
  • 多 Agent 协作处理复杂工作流

适合场景:社群运营自动化、个人知识管理、本地隐私敏感的业务处理。

GitHub 地址: https://github.com/Rvelamen/Octopus
欢迎 Star 和 PR,一起完善微信生态的 AI 接入方案!


标签: #AI Agent #微信机器人 #开源项目 #本地部署 #Python #Electron #ClawBot

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐