quark-qwen-vision — 夸克浏览器专用视觉 Skill
用夸克浏览器内置的千问(qwen-vl)模型看图,全程网页操作,零本地算力、零 API Key。 本机视觉方案:
deepseek-eyes的替代通道(无 Ollama 时走这个)。
前置条件(使用前必须确认)
- 夸克浏览器以调试模式运行(推荐一键启动,自动查找夸克路径):
该脚本自动:查找 quark.exe(常见目录 / PATH / 注册表)→ 若 9222 未监听则重启夸克 → 打开千问对话页。 手动方式(脚本找不到夸克时):powershell -ExecutionPolicy Bypass -File "<skill 目录>\scripts\start-quark.ps1"# 先关掉所有 quark 进程,再用本机夸克路径带调试端口启动: Get-Process quark -ErrorAction SilentlyContinue | Stop-Process -Force Start-Process '<本机夸克安装路径>\quark.exe' -ArgumentList '--remote-debugging-port=9222' # 已知机型:台式机 C:\Program Files\Quark\quark.exe(或 7.1.0.949 子目录)|笔记本 C:\Users\<用户名>\AppData\Local\Programs\Quark\quark.exe - 千问对话页已打开:访问
https://p.quark.cn/pcquark-chat/sidebar(或点夸克 AI 侧边栏)。- 验证:
http://127.0.0.1:9222/json/list返回 200 且列表中存在pcquark-chat页面。
- 验证:
调用方式
node "<skill 目录>\scripts\qwen-vision.js" <图片路径> ["问题"]
示例(<skill 目录> 按本机实际替换,不写死任何机型路径):
# 通用写法(skill 目录 = DSH 用户级 skills 根:<DSH_HOME>/skills 或 ~/.dsh/skills)
node "<skill 目录>\scripts\qwen-vision.js" "<图片路径>" "这张图是什么?反推提示词"
文生图(Qwen-Image 2.0)
千问对话原生支持文生图(Qwen-Image 2.0 模型),已封装 gen-image.js:
node "<skill 目录>\scripts\gen-image.js" "英文提示词" [输出目录]
- 流程:发送提示词 → 千问调用 Qwen-Image 2.0 生成 → 脚本自动轮询抓取图片 URL → 下载保存到输出目录(默认当前工作目录下
generated/) - 千问会附带给出多条迭代建议(背景/构图/风格调整),可直接回传继续优化
- 实测:赛博朋克机械背包、新中式国学海报均生成成功(多张高清 + 预览图)
视频输入(不支持)
千问对话页仅接受图片输入——模拟粘贴 mp4 会被忽略(上传栏无反应)。视频分析需走 ffmpeg 抽帧后逐帧/拼图再喂给千问。
实战闭环(推荐工作流)
看图(qwen-vision.js)→ 反推提示词 → 千问优化 → 文生图(gen-image.js)/ 云端视频(RH 工作流)
脚本清单
| 脚本 | 用途 |
|---|---|
qwen-vision.js |
看图分析 / 反推提示词(主工具) |
gen-image.js |
文生图(Qwen-Image 2.0) |
cdp.js |
CDP 客户端库(其它脚本共用) |
start-quark.ps1 |
跨机器一键启动:自动找夸克 → 调试模式重启 → 打开千问对话页 |
工作原理(网页操作四步)
1. CDP 连接夸克千问对话页(p.quark.cn/pcquark-chat/sidebar)
2. 读取本地图片 → base64 → File → 构造 ClipboardEvent paste 模拟粘贴
3. 输入问题 → 点击 .submit-button 发送
4. 轮询页面文本直至回复稳定 → 输出千问回答
关键经验(踩坑记录)
- launcher 页不是对话页:
chrome://ai-desktop-plugin/launcher/只是快速输入入口;真正的对话页是https://p.quark.cn/pcquark-chat/sidebar,回复渲染在这里 - 发送按钮:
.submit-button(输入文字后激活为.submit-button.active);模拟 Enter 键无效,必须点击按钮 - 图片上传:点 addButton 走 OS 原生文件对话框(CDP 无法操作);正确姿势是模拟 paste 事件(ClipboardEvent + DataTransfer + File)
- 读取回复:轮询
document.body.innerText,连续 3-4 轮无变化视为回复完成 - 回复可能很长:输出截断至 8000 字符,必要时分段读
故障排查
| 现象 | 处理 |
|---|---|
| 脚本报"未找到千问对话页" | 夸克未带调试端口启动,或侧边栏未打开 → 按前置条件处理 |
| 发送后无回复 | 等待更久(流式输出);检查千问页面是否有错误提示 |
| 图片没挂上 | 确认文件存在、格式为 png/jpg/webp;大图建议先压缩到 1080px 内 |
关联
- 工具脚本目录:
<skill 目录>\scripts\(cdp.js 客户端 / qwen-vision.js 看图 / gen-image.js 生图 / start-quark.ps1 启动器) - 跨机器通用性:脚本不依赖任何绝对路径——ws 自动解析(Node ≥ 22 内置 WebSocket 或 ws 包)、夸克路径自动探测、生图输出默认当前目录
generated/ - 本机视觉备选:
deepseek-eyesskill 的 openai 通道(需 DashScope Key,未配置)