本文约1900字,预计需要8分钟阅读
"WorkBuddy 能操作微信吗?"这个问题的简短回答是:不能直接操作,但可以"曲线"做到。WorkBuddy 本身是腾讯推出的 AI Agent 办公工具,不带微信客户端,但它的"自定义技能"体系允许把任意 HTTP API 包装成可调用的工具——只要你本地有微信 API 来源。下面讲清楚两件事:WorkBuddy 为什么不能直接读微信,以及怎么用 WorkBuddy 调知更Ai 的本地接口去查聊天记录和发消息。
一、先讲结论:WorkBuddy 自己没有微信 API
WorkBuddy 的能力是"调用工具",不是"控制 IM 客户端"。它能做的是:
- 分析业务数据、生成周报、月报
- 多 Agent 并行完成复杂任务
- 调用你注册进来的"技能"(Skill)执行具体动作
其中"技能"是它打通外部系统的方式:你可以把任意 REST API 描述成一个 Skill,WorkBuddy 理解你的自然语言指令后,自动决定调哪个 Skill、传什么参数。
但微信个人号不像企业微信那样有官方开放 API。WorkBuddy 没有内置微信收发能力,微信这一段必须由另一层组件来提供。
二、思路:把"微信 API"注册成 WorkBuddy 的一个技能
把上面的问题反过来想:WorkBuddy 只是 AI Agent 那一层,"微信 API"是谁提供的并不重要——只要这是一个本地可调用、能完成"查记录 / 发消息"的接口就行。
这里有个工具刚好可以做这件事:知更Ai。它是一个微信管理客户端,本地常驻时会把以下接口暴露在 http://127.0.0.1:5011:
| 端点 | 能做什么 |
|---|---|
POST /api/account/self_info | 查当前登录账号的 wxid / 昵称 |
POST /api/msg/text | 发文本消息给好友或群 |
POST /api/msg/image / video / file | 发图片、视频、文件 |
POST /api/msg/at / at_all | 群内 @ 指定成员 / @ 所有人 |
POST /api/db/chat_history | 查询本地聊天记录(按时间倒序) |
POST /api/friend/add | 通过 v3/v4 加好友 |
POST /api/group/create / kick / invite | 创建群、踢人、邀请进群 |
把这条 API 单独注册成 WorkBuddy 的一个 Skill,WorkBuddy 看到你的提问"查一下张三昨晚的聊天记录"或"给张三发一句明天下午三点开会"后,就会自动去调这个 Skill。
三、网络可达性:第一个关键约束
知更Ai 的 API 只监听 127.0.0.1:5011,不暴露到局域网或公网。这不是 bug,是设计选择——个人微信消息本身不适合远程传输。
要让 WorkBuddy 能调到知更Ai,下面两条路径选一条:
- WorkBuddy 和知更Ai 在同一台机器——最稳。WorkBuddy 调
http://127.0.0.1:5011/api/...就能直接用 - 不在同一台机器——需要走隧道、端口转发或在知更Ai 所在机器上起一个反代(这部分请按你的部署情况自行桥接,本文不展开)
如果你只是想验证整套方案能不能跑通,先在同机跑一遍最省事。
四、在 WorkBuddy 里注册知更Ai API 的标准做法
WorkBuddy 支持"自定义技能"(也叫 Skill)和 MCP(Model Context Protocol)两种方式把外部接口接进来。两种路径都说一下:
路径 A:用"自定义技能"注册单接口
以"查询聊天记录"为例,技能描述可以这样写:
-
技能名:查微信聊天记录
-
触发场景:用户问"聊天记录""之前的对话""说了什么"等
-
HTTP 调用:
-
方法:
POST -
URL:
http://127.0.0.1:5011/api/db/chat_history -
请求体(JSON):
{
"wxid": "<当前登录的机器人 wxid>",
"target_wxid": "<聊天对象 wxid>",
"start_time": "2026-09-01",
"end_time": "2026-09-04"
}
-
响应字段:成功时
data.data是消息数组,每条含StrContent、CreateTime、IsSender、StrTalker等字段
-
按同样模板再注册一组技能:发文本消息(POST /api/msg/text)、加好友、建群、修改群公告……WorkBuddy 自己会根据你的提问选择该调用哪一个。
路径 B:用 MCP 一次性暴露全部接口
如果嫌一个个注册麻烦,WorkBuddy 也支持 MCP——你只需要一个 JSON / YAML 文件描述所有 API 端点(路径、方法、参数),WorkBuddy 读到这个 manifest 后会自动列出所有可调用工具,自然语言提问时自己挑。
这种方式工作量小、维护友好,只要后续知更Ai 加了新接口,你改 manifest 一次就够了。
五、把"发消息"注册成技能
"发送文本消息"是个高频动作,建议单独注册:
-
技能名:发微信消息
-
触发场景:用户说"回一句""发个消息""跟张三说"等
-
HTTP 调用:
POST http://127.0.0.1:5011/api/msg/text
{
"bot_id": "<机器人 wxid>",
"receiver": "<对方 wxid 或 group_id>",
"content": "<要发的文本>"
}
-
响应:
code == 0即发送成功
WorkBuddy 调用这个技能后,知更Ai 的桌面端会立刻在微信里把消息发出去,对方看到的就是正常微信消息。
注意 bot_id 是知更Ai 里那个登录账号的 wxid,不是你接收方的 wxid。如果你的 WorkBuddy 会替多个机器人发消息,可以把这一段参数化,让 WorkBuddy 根据上下文选哪一个机器人。
六、典型场景:把对话 + 回复串成完整链路
注册完"查询聊天记录"和"发消息"两个技能后,WorkBuddy 就能做出真的"AI 客服助手"了:
- 用户问:"张三今天上午说了什么?"
- WorkBuddy 自动调"查询聊天记录"技能,时间区间 9:00-12:00,target 为张三的 wxid
- 拿到结果后用自然语言复述给用户
- 用户接着说:"回他一句明天下午两点开产品会"
- WorkBuddy 自动调"发消息"技能,content 填"明天下午两点开产品会",receiver 填张三的 wxid
中间的 wxid 转换、消息整理都是 AI 自动完成的,这就是 AI Agent 类工具 + 本地微信 API 组合的真正用处。
七、注意事项
- 只在 127.0.0.1 监听:本地微信 API 不要暴露到公网或局域网,跨机部署请用隧道或反代自行桥接
- 不要让 AI Agent 无差别自动回复:本地消息看似在响应你,但实际是"批量自动回复"。延迟、随机间隔、上下文判断这些细节是降低风险的关键,不是伪装
- 数据落在本机:聊天记录查询是同步从本地 MSG 数据库读,不会发送到第三方。涉及客户隐私请优先选本地化部署的方案
- 遵守平台规范:自动化功能前请了解并遵守相关平台政策与法律法规
常见问题
问:Workbuddy 能操作微信吗?
答:WorkBuddy 自己不能直接操作个人微信——它没有内置微信客户端。WorkBuddy 能做的是把外部 API 当作"技能"来调,要查询微信聊天记录或发送微信消息,需要另一个工具(如知更Ai)在本地常驻并提供 HTTP API,再把这个 API 注册成 WorkBuddy 的 Skill。
问:如何调用 WorkBuddy 查询聊天记录和发送消息?
答:本文以知更Ai 的本地 API 为例演示。具体步骤:(1)确保知更Ai 在本地运行并登录微信;(2)确认 http://127.0.0.1:5011 可达;(3)在 WorkBuddy 里注册两个技能——"查询聊天记录"调 POST /api/db/chat_history,"发送文本消息"调 POST /api/msg/text;(4)之后用自然语言提问,WorkBuddy 会自动选技能并传参。
问:WorkBuddy 和企业微信能联动吗?
答:可以。企业微信有官方 API,WorkBuddy 通过官方 API 直接调用即可(属于腾讯自家产品生态对接)。注意这是企业微信,不是个人微信——个人微信没有官方 API,只能走第三方本地 API 注册的方式。
问:WorkBuddy 注册技能需要写代码吗?
答:不一定。WorkBuddy 的"自定义技能"提供图形化表单入口:填技能名、HTTP URL、参数描述即可。如果一次性注册几十个 API,用 MCP manifest 文件更高效。两种路径都不要求会写代码。
问:调用本地 API 安全吗?
答:本文未做安全审计。建议始终只在 127.0.0.1 监听、必要时配合 token 鉴权,避免把 API 暴露到公网。涉及客户聊天记录时,优先选本地化部署、数据不外传的方案。
