原始内容
name: douyin-send-message description: 在抖音网页版发送私信消息。当用户想发送抖音私信、提醒续火花、或者提到"抖音发消息"、"发抖音私信"、"douyin send message"时触发。支持独立使用或配合人物关系管理技能使用。
抖音私信发送
两种使用模式
模式一:独立使用(手动提供抖音昵称)
为用户直接提供抖音昵称时,直接使用:
- "给 xxx 发消息" → xxx 作为搜索关键词
- "给 用户A 发消息" → 直接搜索 "用户A"
模式二:配合人物关系管理使用
推荐流程:
- 先调用
person-relation-manager查询真实抖音昵称 - 拿到昵称后再执行发送
自动流程:
用户:"给昵称B发抖音私信"
↓
我查询记忆(person-relation-manager):昵称B → 抖音昵称C
↓
调用本技能发送,关键词:抖音昵称C
注意: 如果 person-relation-manager 技能不存在,提示用户安装:
人物关系管理技能未安装,是否从 ClawHub 安装?请说 "是的" 安装,或直接告诉我对方的抖音昵称。
如用户同意安装,执行:
clawhub install person-relation-manager --workdir ~/.openclaw/workspace
参数
调用时传入两个参数:
联系人:昵称、抖音显示名、或通过人物管理查询到的昵称消息内容:要发送的具体内容(字符串,支持 emoji)
执行步骤
Step 1: 搜索并进入用户主页
- 打开新标签页,导航到搜索页:
browser(action="open", url="https://www.douyin.com/aisearch?from_nav=1&search_source=normal_search&query=<联系人>&type=user", label="douyin_dm") - 等待页面加载:
browser(action="act", kind="wait", timeMs=2000, targetId="<返回的targetId>") - 截取快照,找到"用户" tab 并点击:
browser(action="snapshot", targetId="<targetId>", refs="aria") // 找到 tab "用户" [ref=e??] 点击 browser(action="act", kind="click", ref="<用户tab的ref>", targetId="<targetId>") - 等待搜索结果加载,再次快照,找到目标用户的链接并点击进入主页
Step 2: 在主页点击"私信"按钮
进入用户主页后,快照找到"私信"按钮并点击:
browser(action="snapshot", targetId="<targetId>", refs="aria")
// 找到 button "私信" [ref=e??] 点击
browser(action="act", kind="click", ref="<私信按钮的ref>", targetId="<targetId>")
Step 3: 在聊天窗口输入并发送
私信窗口弹出后(URL 不变但 DOM 变化),直接用 JavaScript 输入:
browser(action="act", kind="evaluate", fn="() => { var msg = '<消息内容>'; var inputs = document.querySelectorAll('[contenteditable=\"true\"]'); for(var input of inputs) { var rect = input.getBoundingClientRect(); if(rect.width > 0 && rect.height > 0) { input.focus(); for(var i=0; i<msg.length; i++) { document.execCommand('insertText', false, msg[i]); } return 'OK'; } } return 'No input'; }", targetId="<targetId>")
browser(action="act", kind="press", key="Enter", targetId="<targetId>")
Step 4: 验证发送成功
browser(action="act", kind="evaluate", fn="() => { var msg = '<消息内容>'; return document.body.innerText.includes(msg) ? 'OK' : 'FAIL'; }", targetId="<targetId>")
Step 5: 关闭页面(释放资源)
browser(action="close", targetId="<targetId>")
关键 DOM(2026-06-26 实测)
- 搜索用户:
https://www.douyin.com/aisearch?query=<联系人>&type=user - 用户主页按钮:button "私信" [ref]
- 聊天输入框:
[contenteditable="true"](需要宽度>0、高度>0才可输入) - 必须用
document.execCommand('insertText')逐字输入 - Enter 发送:
browser(action="press", key="Enter")
性能
- 目标总耗时:5-10 秒
配合使用示例
推荐:先查人物关系,再发送
我收到:"给昵称B发抖音"
1. 调用 person-relation-manager 查找:昵称B → 抖音昵称C
- 如果技能不存在,提示用户安装
2. 调用本技能,关键词:抖音昵称C
独立使用:直接发送
我收到:"给 抖音昵称C 发消息"
直接调用本技能,关键词:抖音昵称C
注意事项
- 发送完毕后必须关闭页面(
browser(action="close"))释放资源 - 私信列表内搜索适合已有聊天记录的好友;新好友建议从主页"私信"按钮进入
- 建议先通过
person-relation-manager获取准确的抖音昵称 - 如果
person-relation-manager不存在,引导用户从 ClawHub 安装 - 每次发送使用独立的浏览器标签页,操作完成后立即关闭