Coze Studio開發本地微信消息發送插件全流程實戰

前言
字節跳動全面開源其AI應用開發平臺Coze的核心組件Coze Studio。Coze Studio提供可視化設計與編排工具,開發者可以通過零代碼或低代碼的方式,快速打造和調試智能體、應用和工作流,實現強大的 AI 應用開發和更多定制化業務邏輯。
Coze Studio在v0.2.1版本移除插件URL https限制,大大方便本地插件的開發和部署。
本文介紹如下內容:
- Docker部署Coze Studio
- 如何開發本地插件:以開發微信消息發送插件為例
- 如何使用官方內置插件:以高德地圖插件為例
- 開發智能體實現查詢公共交通路線并通過微信發送給好友
- 基于Coze Chat SDK接入Coze Studio智能體
Docker部署Coze Studio
前提:已安裝好Docker。部署步驟:
1. 克隆代碼
git clone https://github.com/coze-dev/coze-studio.git
cd coze-studio
git checkout v0.2.1- 配置模型
復制模板配置文件到backend/conf/model/ark_doubao-seed-1.6.yaml
# 復制模型配置模版
cp backend/conf/model/template/model_template_ark_doubao-seed-1.6.yaml backend/conf/model/ark_doubao-seed-1.6.yaml修改backend/conf/model/ark_doubao-seed-1.6.yaml
- meta.conn_config.api_key:填入doubao-seed-1.6模型服務的API Key。獲取API Key的步驟:
https://www.volcengine.com/docs/82379/1541594 - meta.conn_config.model:填入doubao-seed-1.6模型服務的Endpoint ID。獲取Endpoint ID的步驟:
https://www.volcengine.com/docs/82379/1099522
- 啟動服務
要注意的是,雖然v0.2.1的release文檔說對應的鏡像版本是opencoze/opencoze:0.3.7,但經實測,此版本仍然有插件URL https限制的問題。切換到opencoze/opencoze:0.3.8才解決。如果之前已經下載過opencoze/opencoze:latest,需要重新pull鏡像。
執行命令啟動服務:
cd docker
cp .env.example .env
docker compose up -d如果你無法下載docker鏡像,參考徹底解決Docker鏡像無法下載
需要下載的鏡像列表:
bitnami/elasticsearch:8.18.0
bitnami/etcd:3.5
bitnami/redis:8.0
milvusdb/milvus:v2.5.10
minio/minio:RELEASE.2025-06-13T11-33-47Z-cpuv1
mysql:8.4.5
nsqio/nsq:v1.2.1
opencoze/opencoze:latest- 訪問服務
啟動服務后,通過瀏覽器打開http://localhost:8888,即可訪問Coze Studio。
開發微信消息發送插件
插件是一個工具集,一個插件內可以包含一個或多個工具(API)。Coze Studio支持http協議插件,你需要實現一個http服務,完成插件的相關接口功能,然后在Coze Studio配置插件的http接口參數。
下面介紹如何開發微信消息發送插件,開發環境為windows。
1. 設置開發環境
安裝uv。uv是一個用Rust編寫的極其快速的Python包和項目管理器。
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"創建python虛擬環境(假設項目目錄為coze-plugin-wechat)。
# Create a new directory for our project
uv init coze-plugin-wechat
cd coze-plugin-wechat
# Create virtual environment and activate it
uv venv
.venv\Scripts\activate
# Install dependencies
uv add wxauto fastapi uvicorn如果在執行.venv\Scripts\activate時報錯“無法加載.venv\Scripts\activate.ps1,因為在此系統上禁止運行腳本”,需要以管理員權限在終端執行
Set-ExecutionPolicy RemoteSigned更改執行策略后再重新執行。
2. 實現http接口
通過uvicorn + FastAPI實現http服務,通過wxauto實現微信操作。
wxauto是一個基于UIAutomation的開源Python微信自動化庫。你需要在本機安裝微信PC版本并完成掃碼登錄(注意wxauto只兼容3.9.x的微信PC版本)。
main.py的代碼如下:
from fastapi import FastAPI
from pydantic import BaseModel
from wxauto import WeChat
import uvicorn
app = FastAPI()
wx = WeChat()
class SendWechatMsgRequest(BaseModel):
who: str
msg: str
@app.post("/send_wechat_msg")
async def send_wechat_msg(req: SendWechatMsgRequest):
wx.ChatWith(req.who)
resp = wx.SendMsg(req.msg, req.who)
return resp
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=8000)通過uv run main.py啟動http服務。
3. 在Coze Studio配置插件
點擊工作空間資源庫頁面右上角的添加資源按鈕,選擇添加插件。

在新建插件頁面,點擊【</>】。

可以看到創建插件界面。

左側的插件描述如下:
{
"schema_version": "v1",
"name_for_model": "微信",
"name_for_human": "微信",
"description_for_model": "微信",
"description_for_human": "微信",
"auth": {
"type": "none",
"sub_type": "",
"payload": ""
},
"logo_url": "default_icon/plugin_default_icon.png",
"api": {
"type": "openapi"
},
"common_params": {
"body": [],
"path": [],
"query": [],
"header": [
{
"name": "User-Agent",
"value": "Coze/1.0"
}
]
}
}右側的openapi包含如下信息:
- 接口URL
- 請求參數定義
- 響應定義
詳細內容如下:
openapi: 3.0.1
components:
examples:
send_wechat_msg:
value:
ReqExample:
body:
msg: 測試
who: 文件傳輸助手
header:
Content-Type: application/json
User-Agent: Coze/1.0
path: /send_wechat_msg
query: {}
RespExample:
message: success
status: 成功
info:
title: 微信
description: 微信
version: v1
paths:
/send_wechat_msg:
post:
summary: 發送微信消息
operationId: send_wechat_msg
requestBody:
content:
application/json:
schema:
type: object
required:
- who
- msg
properties:
msg:
type: string
description: 消息內容
default: ""
who:
type: string
description: 消息接收者
default: ""
responses:
"200":
description: description is required
content:
application/json:
schema:
type: object
properties:
message:
type: string
description: 提示信息
status:
type: string
description: 結果
servers:
- url: http://host.docker.internal:8000點擊【確定】保存后,看到已經配置的工具列表。但此時無法發布,需要先完成調試才能發布。點擊【調試】。

在工具頁面中,點擊右上角的【試運行】

填上相應參數,點【運行】,即可看到自動調起微信發送消息。測試通過后點擊【完成】。

工具調試狀態變成【通過】,此時再點右上角的【發布】完成插件的發布。

使用官方內置高德地圖插件
修改backend/conf/plugin/pluginproduct/plugin_meta.yaml,找到高德地圖部分的定義,修改service_token為高德地圖的API Key,然后執行docker compose restart coze-server重啟服務。

開發智能體實現查詢公共交通路線并通過微信發送給好友
1. 創建智能體
點擊左側欄的創建按鈕。

選擇【創建智能體】。

填上【智能體名稱】后,點擊【確認】。
2. 添加插件
在編排頁面,點擊【添加插件】。

把高德地圖的工具添加為插件。

把【資源庫工具】里的【微信】工具添加為插件。

3. 人設和回復邏輯
設置為如下內容:
# 角色
你是一個助手,可以通過使用工具解決用戶的問題 。
如果用戶提供的信息不足,提示用戶提供相關信息。4. 預覽與調試
輸入“把廣州南站到廣州塔的公共交通路線發送給張三”,驗證流程是否正常。
5. 發布智能體
調試通過后,在編排頁面,點擊右上角的【發布】,點擊API項的【配置】。

點擊【添加新令牌】。

選擇【過期時間】,點擊【確定】,保存生成的令牌。然后點擊【發布】完成智能體發布。

基于Coze Chat SDK接入Coze Studio智能體
目前Coze Studio發布應用后,不具備Dify直接生成可以訪問頁面地址的功能。需要自己通過Coze Chat SDK接入智能體。我已把前端的demo項目上傳到https://github.com/copilot-coder/coze-chat-app.git 。
注意:此倉庫僅用于展示如何用coze chat-sdk接入coze studio,里面很多信息是hard code的,并非一個完備的應用。
前提:已安裝nodejs環境。步驟如下:
1. checkout代碼
git clone https://github.com/copilot-coder/coze-chat-app.git2. 修改src/App.jsx
- appId: 改為你的BotId
- token: 改為你的個人訪問令牌

3. 安裝依賴
cd coze-chat-app
npm install4. 運行
npm run dev5. 訪問前端頁面
通過瀏覽器訪問http://localhost:3000即可看到前端交互頁面,效果如下圖:

總結
本文以開發微信消息發送插件為例,介紹了完整的Coze Studio插件開發流程和智能體開發流程。



























