使用可视浏览器自动完成 QwenPaw 的钉钉频道接入。适用于用户提到钉钉、DingTalk、开发者后台、Client ID、Client Secret、机器人、Stream 模式、绑定或配置 channel 的场景;支持遇到登录页时暂停,等待用户登录后继续。
此 skill 用于通过可视浏览器自动化完成钉钉应用创建与 QwenPaw channel 绑定。
{"action": "start", "headed": true}遇到登录关卡必须暂停:
登录、扫码登录、手机号/密码登录),立即停止自动操作。任何应用配置变更都必须新建版本并发布后才生效:
在开始自动化点击前,先向用户发起一次“配置确认”,明确告知可自定义项、图片规范、默认值。建议使用如下结构化确认:
让用户可自定义以下字段:
明确告知图片规范(显著提示):
240*240px 以上,1:1,2MB 以内,无圆角。png/jpeg/jpg,不超过 2MB。明确告知默认值(用户不指定时自动采用):
QwenPawYour personal assistanthttps://img.alicdn.com/imgextra/i4/O1CN01M0iyHF1FVNzM9qjC0_!!6000000000492-2-tps-254-254.pnghttps://img.alicdn.com/imgextra/i4/O1CN01M0iyHF1FVNzM9qjC0_!!6000000000492-2-tps-254-254.png若用户未给任何自定义值,必须先明确回复:
file_upload 传入本地路径数组(paths_json)file_upload 的 paths_json 必须是“JSON 字符串数组”,注意转义:{
"action": "file_upload",
"paths_json": "[\"xxx.png\"]",
"frame_selector": "iframe[src*=\"/fe/app?isHideOuterFrame=true\"]"
}若页面在 iframe 内,建议优先带上 frame_selector,否则可能出现找不到上传控件或 chooser 未触发。
上传前必须先点击上传入口;若直接 file_upload 会报:
No chooser. Click upload then file_upload.机器人图标区域的常见结构特征可用于定位(示例):
text: "* 机器人图标"button: "使用应用图标"button: "avatar"(通常内部有 img "avatar")当 snapshot 中同时出现“使用应用图标”和“avatar”时,优先点击 avatar 按钮触发上传,再执行 file_upload。
headed: true)https://open-dev.dingtalk.com/snapshot 判断是否需要登录若需要登录,使用如下话术暂停:
检测到需要登录钉钉开发者后台。我已暂停自动操作,请先在弹出的浏览器中完成登录。完成后回复“继续”,我再从当前页面接着执行。
用户确认登录后继续:
QwenPawYour personal assistant若页面文案或结构与预期不一致,重新 snapshot,按可见文本语义重新定位元素。
https://img.alicdn.com/imgextra/i4/O1CN01M0iyHF1FVNzM9qjC0_!!6000000000492-2-tps-254-254.pnghttps://img.alicdn.com/imgextra/i4/O1CN01M0iyHF1FVNzM9qjC0_!!6000000000492-2-tps-254-254.pngStream 模式应用发布 -> 版本管理与发布基础信息 -> 凭证与基础信息Client ID(AppKey)和Client Secret(AppSecret)在该页面上。不主动进行修改,引导用户自行绑定拿到凭证后,引导用户选择以下任一方式:
控制台前端配置:
控制 -> 频道 -> DingTalkClient ID 与 Client Secret配置文件方式:
"dingtalk": {
"enabled": true,
"bot_prefix": "[BOT]",
"client_id": "你的 Client ID",
"client_secret": "你的 Client Secret"
}路径:~/.qwenpaw/config.json,位于 channels.dingtalk 下。
Client ID 与真实 Client Secret。console 配置、不主动改 ~/.qwenpaw/config.json。控制 -> 频道 -> DingTalk~/.qwenpaw/config.json 的 channels.dingtalk 字段默认按以下顺序执行:
start with headed: trueopensnapshotclick / type / select_option / press_key as neededsnapshot after page transitionsstop when donesnapshot 的 ref;仅在必要时使用 selector。wait_for)并立即重新 snapshot。734c8b9
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.