Install
openclaw skills install baidu-drive-scan百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强
openclaw skills install baidu-drive-scan[!WARNING] ⚠️ 隐私与数据流向重要提示
- 内部服务交互:本技能会将您提供的图片发送至百度网盘内部扫描服务进行处理
- 服务端处理:服务将获取并处理该图片内容,服务端不会永久保存
- 本地文件存储:处理后返回的图片会保存至系统临时目录(
/tmp),这些文件将持续存在直到您手动清理- API 密钥安全:
BDPAN_API_KEY应妥善保管,若泄露请及时联系管理员撤销
配置环境变量(本次会话立即可用):
export BDPAN_API_KEY="your_api_key_here"
如何获取密钥?
访问 https://aiconvert.baidu.com/simple/embed/scanSkill 获取
BDPAN_API_KEY。
检查 BDPAN_API_KEY 是否已配置。若未配置,立即返回:
{
"code": "BP0100",
"message": "BDPAN_API_KEY未配置,请联系管理员获取后执行:export BDPAN_API_KEY=\"your_key\" ",
"data": null
}
识别用户传入的图片,只能是以下两种之一:
/tmp/photo.jpg)未提供任何有效图片时,直接返回:
{
"code": "BP0201",
"message": "缺少图片输入,请提供文件路径或 BASE64 数据。",
"data": null
}
对用户描述按下方意图列表从上到下顺序匹配,命中第一个即停止。命中后,只确定当前意图对应的 method 标识,作为脚本参数。
脚本通过 stdin 读取二进制图片,使用 subprocess 列表方式调用,避免 shell 注入风险:
import subprocess
# 本地文件路径类型
subprocess.run([
"sh", "-c",
"cat 'IMAGE_FILE_PATH' | python3 scripts/scan_filter.py --method METHOD_VALUE"
])
# BASE64 类型(先解码为二进制再管道传入)
import base64, tempfile, os
img_bytes = base64.b64decode("IMAGE_BASE64_DATA")
with tempfile.NamedTemporaryFile(delete=False, suffix=".bin") as f:
f.write(img_bytes)
tmp_path = f.name
subprocess.run([
"sh", "-c",
f"cat '{tmp_path}' | python3 scripts/scan_filter.py --method METHOD_VALUE"
])
os.unlink(tmp_path)
安全说明:
scan_filter.py 内部对图片格式(魔数检测)和大小(≤5MB)进行校验do_scan.py 使用列表传参,无 shell 注入风险METHOD_VALUE 只能是下方列表中给出的整数,不允许其他取值执行完成后,原样返回执行结果,不修改,不翻译,不美化,不总结。成功失败均直接透出,不重试。
图像去手写
3图像去水印
8图像去阴影
5图像去屏纹
9清晰化
4证件票据增强
6黑白处理(去底色)
7检测矫正
1扫描增强(默认兜底)
2客户端结果增强:当脚本调用成功(errno == 0)时,scan_filter.py 会自动将返回的 base64 图片解码并保存为本地文件,最终输出 JSON 中 data 字段替换为 {"path": "/tmp/scan_xxxxxxxx.png"},直接提供可使用的本地路径。
| 不支持的场景 | 原因 | 建议替代方案 |
|---|---|---|
| 视频处理 | 仅支持单张静态图片 | 先提取视频帧,再逐帧处理 |
| 批量处理 | 每次调用仅限单张图片 | 如需批量,请循环调用 |
| 超大图片(>5MB) | 接口限制 | 先压缩或裁剪后再处理 |
| 非图片格式 | 仅支持 jpg/png/gif/bmp/webp | 先转换为支持的图片格式 |
SKILL.md — 本文档(意图分析 + 通用规范)scripts/scan_filter.py — 主入口:环境检查 → 图片校验 → 接收 method → 子进程调用 → 结果增强scripts/do_scan.py — 下游执行:组装请求体,调用百度网盘扫描接口scripts/config.py — 配置:从环境变量读取鉴权和默认参数scripts/file_saver.py — 工具:base64 图片保存到本地 /tmp