{"id":"23795226-3d2e-4ff1-9299-1ba3c5197fab","entityType":"agent","slug":"clawhub-baidunetdiskaibot-baidu-drive-scan","name":"百度网盘文档扫描官方Skill","canonicalUrl":"https://www.xpersona.co/agent/clawhub-baidunetdiskaibot-baidu-drive-scan","canonicalPath":"/agent/clawhub-baidunetdiskaibot-baidu-drive-scan","generatedAt":"2026-10-11T16:02:00.092Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-11T13:20:58.929Z","emptyReason":null},"description":"百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强 Skill: 百度网盘文档扫描官方Skill Owner: baidunetdiskaibot Summary: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强 Tags: latest:1.0.3 Version history: v1.0.3 | 2026-05-18T11:02:33.548Z | auto baidu-drive-scan 1.0.3 Changelog - Added detailed step-by-step usage guidelines and safety constraints in SKILL.md. - Clarified supported image intents with explicit matching order and unique method codes. - En","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.1K downloads reported by the source. Last updated 10/11/2026.","installCommand":"clawhub skill install s17cbmja7dqz47704zjnmzcbg983m28d:baidu-drive-scan","sourceUrl":"https://clawhub.ai/baidunetdiskaibot/baidu-drive-scan","homepage":"https://clawhub.ai/baidunetdiskaibot/skills/baidu-drive-scan","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/baidunetdiskaibot/baidu-drive-scan","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/baidunetdiskaibot/skills/baidu-drive-scan","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":60,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强 Skill: 百度网盘文档扫描官方Skill Owner: baidunetdiskaibot Summary: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-11T13:20:58.929Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T13:20:58.929Z","emptyReason":null},"stars":null,"forks":null,"downloads":1058,"packageName":null,"latestVersion":"1.0.3","tractionLabel":"1.1K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T13:20:58.858Z","emptyReason":null},"lastUpdatedAt":"2026-10-11T13:20:58.929Z","lastCrawledAt":"2026-10-11T13:20:58.858Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-12T13:20:58.858Z","lastVerifiedAt":null,"highlights":[{"version":"1.0.3","createdAt":"2026-05-18T11:02:33.548Z","changelog":"baidu-drive-scan 1.0.3 Changelog - Added detailed step-by-step usage guidelines and safety constraints in SKILL.md. - Clarified supported image intents with explicit matching order and unique method codes. - Enhanced API key, input, and error handling instructions. - Updated processing instructions to emphasize secure parameter passing and strict result forwarding. - Specified exact scenarios where the skill should and should not be used. - Documented internal script structure and expected client behaviors.","fileCount":7,"zipByteSize":10184},{"version":"1.0.2","createdAt":"2026-05-15T11:27:39.586Z","changelog":"- 新增技能说明文档（SKILL.md），详细规范操作流程、意图识别、执行步骤及安全要求 - 明确列出支持的图片智能处理类型（如去手写、水印、阴影、屏纹、清晰化、证件增强、黑白处理等）及 method 标识，按优先级匹配 - 对每步处理（环境变量检查、输入校验、意图匹配、安全执行、结果回传）给出严格格式和处理规范 - 细化输入输出错误的结构化反馈，提升失败场景提示的准确性 - 增加安全措施：仅允许授权 method 参数、限制图片格式和大小、严格环境变量鉴权，不允许命令伪造或行为越界","fileCount":6,"zipByteSize":8771},{"version":"1.0.1","createdAt":"2026-05-15T09:57:10.244Z","changelog":"Initial release of baidu-drive-scan. - Provides intelligent image processing features for Baidu Netdisk, including: remove handwriting, watermark, shadow, screen textures, enhance clarity, document/ID enhancement, black & white processing, perspective correction, and general scan enhancement. - Strict input/output and security guidelines, including environment variable checks and safe subprocess execution. - Only one intent handled per request, with fixed method identifiers and robust error handling. - Supports single image input (file path or BASE64), with local results saved to /tmp. - Applicable for images ≤5MB, formats: jpg/png/gif/bmp/webp. Batch, video, and unsupported formats are not handled. - Detailed documentation and command usage instructions included in SKILL.md.","fileCount":6,"zipByteSize":8771},{"version":"1.0.0","createdAt":"2026-05-15T09:06:37.287Z","changelog":"Initial release of baidu-drive-scan. - Provides intelligent image processing for Baidu Drive: handwriting removal, watermark removal, shadow removal, moiré removal, image enhancement, document correction, black-and-white conversion, and receipt/document optimization. - Strict parameter validation and safe environment variable usage. - Enforces single-intent-per-request workflow. - Results are saved to a local temporary directory for user access. - Clear error messages for missing API keys or images.","fileCount":6,"zipByteSize":8771}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s17cbmja7dqz47704zjnmzcbg983m28d:baidu-drive-scan","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-11T16:02:00.092Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-baidunetdiskaibot-baidu-drive-scan/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-11T13:20:58.929Z","emptyReason":null},"readme":"Skill: 百度网盘文档扫描官方Skill\n\nOwner: baidunetdiskaibot\n\nSummary: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强\n\nTags: latest:1.0.3\n\nVersion history:\n\nv1.0.3 | 2026-05-18T11:02:33.548Z | auto\n\nbaidu-drive-scan 1.0.3 Changelog\n\n- Added detailed step-by-step usage guidelines and safety constraints in SKILL.md.\n- Clarified supported image intents with explicit matching order and unique method codes.\n- Enhanced API key, input, and error handling instructions.\n- Updated processing instructions to emphasize secure parameter passing and strict result forwarding.\n- Specified exact scenarios where the skill should and should not be used.\n- Documented internal script structure and expected client behaviors.\n\nv1.0.2 | 2026-05-15T11:27:39.586Z | auto\n\n- 新增技能说明文档（SKILL.md），详细规范操作流程、意图识别、执行步骤及安全要求\n- 明确列出支持的图片智能处理类型（如去手写、水印、阴影、屏纹、清晰化、证件增强、黑白处理等）及 method 标识，按优先级匹配\n- 对每步处理（环境变量检查、输入校验、意图匹配、安全执行、结果回传）给出严格格式和处理规范\n- 细化输入输出错误的结构化反馈，提升失败场景提示的准确性\n- 增加安全措施：仅允许授权 method 参数、限制图片格式和大小、严格环境变量鉴权，不允许命令伪造或行为越界\n\nv1.0.1 | 2026-05-15T09:57:10.244Z | user\n\nInitial release of baidu-drive-scan.\n\n- Provides intelligent image processing features for Baidu Netdisk, including: remove handwriting, watermark, shadow, screen textures, enhance clarity, document/ID enhancement, black & white processing, perspective correction, and general scan enhancement.\n- Strict input/output and security guidelines, including environment variable checks and safe subprocess execution.\n- Only one intent handled per request, with fixed method identifiers and robust error handling.\n- Supports single image input (file path or BASE64), with local results saved to /tmp.\n- Applicable for images ≤5MB, formats: jpg/png/gif/bmp/webp. Batch, video, and unsupported formats are not handled.\n- Detailed documentation and command usage instructions included in SKILL.md.\n\nv1.0.0 | 2026-05-15T09:06:37.287Z | user\n\nInitial release of baidu-drive-scan.\n\n- Provides intelligent image processing for Baidu Drive: handwriting removal, watermark removal, shadow removal, moiré removal, image enhancement, document correction, black-and-white conversion, and receipt/document optimization.\n- Strict parameter validation and safe environment variable usage.\n- Enforces single-intent-per-request workflow.\n- Results are saved to a local temporary directory for user access.\n- Clear error messages for missing API keys or images.\n\nArchive index:\n\nArchive v1.0.3: 7 files, 10184 bytes\n\nFiles: scripts/config.py (331b), scripts/do_scan.py (1010b), scripts/file_saver.py (809b), scripts/scan_filter.py (4697b), skill-card.md (2600b), SKILL.md (9620b), _meta.json (135b)\n\nFile v1.0.3:SKILL.md\n\n---\nname: baidu-drive-scan\nversion: 1.0\ndescription: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强\nmetadata: {\"openclaw\": {\"emoji\": \"🔍\", \"requires\": {\"bins\": [\"python3\", \"curl\"], \"env\": [\"BDPAN_API_KEY\"]}, \"primaryEnv\": \"BDPAN_API_KEY\"}}\n---\n\n# 使用前必读（30 秒）\n\n> [!WARNING] **⚠️ 隐私与数据流向重要提示**\n> - **内部服务交互**：本技能会将您提供的**图片发送至百度网盘内部扫描服务**进行处理\n> - **服务端处理**：服务将获取并处理该图片内容，服务端不会永久保存\n> - **本地文件存储**：处理后返回的图片会保存至系统临时目录（`/tmp`），这些文件将持续存在直到您手动清理\n> - **API 密钥安全**：`BDPAN_API_KEY` 应妥善保管，若泄露请及时联系管理员撤销\n\n**配置环境变量（本次会话立即可用）：**\n\n```bash\nexport BDPAN_API_KEY=\"your_api_key_here\"\n```\n\n**如何获取密钥？**\n> 访问 [https://aiconvert.baidu.com/simple/embed/scanSkill](https://aiconvert.baidu.com/simple/embed/scanSkill) 获取 `BDPAN_API_KEY`。\n\n---\n\n# Constraints\n\n- **单一意图原则：每次请求只执行一个意图类型，命中即执行**\n- **严禁自行构造任何命令参数，严禁伪造、拼接内部配置**\n- **严禁幻觉，禁止伪造请求和响应，不得沿用上一次的场景、参数进行假设**\n- **必须严格按照本指南指定的固定格式执行，不允许自行修改命令**\n\n---\n\n# 技能执行指南（强制执行）\n\n## 第一步：环境变量检查\n\n检查 `BDPAN_API_KEY` 是否已配置。若未配置，立即返回：\n\n```json\n{\n  \"code\": \"BP0100\",\n  \"message\": \"BDPAN_API_KEY未配置，请联系管理员获取后执行：export BDPAN_API_KEY=\\\"your_key\\\" \",\n  \"data\": null\n}\n```\n\n## 第二步：输入处理\n\n识别用户传入的图片，只能是以下两种之一：\n\n- **本地文件路径**：本地磁盘上的文件路径（如 `/tmp/photo.jpg`）\n- **图片 BASE64**：base64 编码的图片数据\n\n未提供任何有效图片时，直接返回：\n\n```json\n{\n  \"code\": \"BP0201\",\n  \"message\": \"缺少图片输入，请提供文件路径或 BASE64 数据。\",\n  \"data\": null\n}\n```\n\n## 第三步：意图匹配\n\n对用户描述按下方意图列表**从上到下顺序匹配，命中第一个即停止**。命中后，**只确定当前意图对应的 `method` 标识**，作为脚本参数。\n\n## 第四步：执行 Python 脚本（安全参数传递）\n\n脚本通过 **stdin 读取二进制图片**，使用 `subprocess` 列表方式调用，**避免 shell 注入风险**：\n\n```python\nimport subprocess\n\n# 本地文件路径类型\nsubprocess.run([\n    \"sh\", \"-c\",\n    \"cat 'IMAGE_FILE_PATH' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\n\n# BASE64 类型（先解码为二进制再管道传入）\nimport base64, tempfile, os\nimg_bytes = base64.b64decode(\"IMAGE_BASE64_DATA\")\nwith tempfile.NamedTemporaryFile(delete=False, suffix=\".bin\") as f:\n    f.write(img_bytes)\n    tmp_path = f.name\nsubprocess.run([\n    \"sh\", \"-c\",\n    f\"cat '{tmp_path}' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\nos.unlink(tmp_path)\n```\n\n**安全说明**：\n- `scan_filter.py` 内部对图片格式（魔数检测）和大小（≤5MB）进行校验\n- 子进程调用 `do_scan.py` 使用列表传参，无 shell 注入风险\n- 所有鉴权信息通过环境变量读取，不出现在命令行参数中\n- `METHOD_VALUE` 只能是下方列表中给出的整数，不允许其他取值\n\n## 第五步：结果透出\n\n执行完成后，**原样返回执行结果**，不修改，不翻译，不美化，不总结。成功失败均直接透出，不重试。\n\n---\n\n## 意图与处理方式列表（按匹配优先级排序）\n\n1. **图像去手写**\n   - 触发意图：当用户希望将已填写的手写笔迹、批注、答案、涂鸦等从文档图像中清除，完整保留原始印刷内容，还原成干净空白文档以便重新使用或打印时使用。\n   - method 标识：`3`\n   - 参考示例指令：\n     - \"把这张试卷上的手写答案去掉，还原成空白卷\"\n     - \"清除文档上的手写批注，只保留打印的文字\"\n     - \"帮我去掉书上的笔记痕迹\"\n\n2. **图像去水印**\n   - 触发意图：当用户希望在不损伤背景和整体构图的前提下，精准擦除图片中的水印、Logo、时间戳、角标、日期等附加标记，获得干净无水印的图像时使用。\n   - method 标识：`8`\n   - 参考示例指令：\n     - \"帮我把图片右下角的水印去掉\"\n     - \"把照片上的时间戳擦除干净\"\n\n3. **图像去阴影**\n   - 触发意图：当用户反馈文档或图像因拍摄角度、手部遮挡、光线不均产生阴影、暗角、明暗斑块，希望去除阴影、统一亮度时使用。\n   - method 标识：`5`\n   - 参考示例指令：\n     - \"这张纸拍出来有大片阴影，请帮我去除\"\n     - \"去掉文档左侧因手遮挡产生的黑色阴影\"\n     - \"消除拍摄时的光照不均，让整张图亮度均匀\"\n\n4. **图像去屏纹**\n   - 触发意图：当用户反馈图片是翻拍屏幕/显示器/投影得到的，存在摩尔纹、屏幕波纹、彩色条纹、反光等干扰，希望消除这些纹路、让文字清晰可读时使用。\n   - method 标识：`9`\n   - 参考示例指令：\n     - \"这张对着电脑屏幕拍的照片有很多波纹，帮我消除\"\n     - \"去掉翻拍屏幕产生的摩尔纹和反光\"\n     - \"修复这张手机拍屏图中的彩色条纹干扰\"\n\n5. **清晰化**\n   - 触发意图：当用户**明确反馈**图片本身存在\"模糊 / 低清 / 昏暗 / 细节丢失 / 看不清\"等**画质缺陷**，希望做去模糊、超分、亮度对比度增强时使用。仅表达\"扫描一下 / 处理一下 / 优化一下 / 扫成电子版\"等通用意图时**不命中本项**，走兜底。\n   - method 标识：`4`\n   - 参考示例指令：\n     - \"这张图太模糊了，帮我把画质变清晰\"\n     - \"修复这张低清晰度的图片，让细节更清楚\"\n\n6. **证件票据增强**\n   - 触发意图：当用户**明确提到**是证件（身份证、护照、驾驶证、行驶证、银行卡等）或票据（发票、收据、合同、名片等）的照片，并希望做画质优化、让文字与关键信息更清晰时使用。\n   - method 标识：`6`\n   - 参考示例指令：\n     - \"这张身份证照片有点模糊，请优化一下\"\n     - \"帮我把这张发票上的金额和日期部分增强清楚\"\n     - \"护照照片反光严重，处理一下让我能看清信息\"\n\n7. **黑白处理（去底色）**\n   - 触发意图：当用户希望将带有彩色背景、红头、灰底或复杂底色的文档截图/照片转换为纯白背景 + 黑色文字的清晰可读版本时使用。\n   - method 标识：`7`\n   - 参考示例指令：\n     - \"把这张红头文件的红色背景去掉，变成白底黑字\"\n     - \"这张截图背景是灰色的，请一键去底色变成纯白背景\"\n\n8. **检测矫正**\n   - 触发意图：当用户反馈照片拍歪、倾斜、透视变形，或希望把文档扶正、自动裁剪掉多余背景边缘，得到规整矩形文档时使用。**不做画质增强**。\n   - method 标识：`1`\n   - 参考示例指令：\n     - \"这张照片拍歪了，帮我把文档扶正并裁掉多余背景\"\n     - \"自动矫正透视变形，把这张倾斜的合同变成标准矩形\"\n     - \"裁剪掉图片四周的杂乱边缘，只保留中间文档内容\"\n\n9. **扫描增强（默认兜底）**\n   - 触发意图：当用户未命中上述任何具体场景，只表达\"扫描 / 扫描件 / 电子化 / 整体优化文档 / 处理一下这张图\"等通用文档处理意图时使用。凡包含\"扫描\"字样的通用请求**优先走本项**，不走清晰化。\n   - method 标识：`2`\n   - 参考示例指令：\n     - \"帮我扫描处理一下这张图\"\n     - \"优化一下这张文档图片，让它看起来更专业\"\n     - \"把这张文档扫成电子版\"\n---\n\n**客户端结果增强**：当脚本调用成功（`errno == 0`）时，`scan_filter.py` 会**自动将返回的 base64 图片解码并保存为本地文件**，最终输出 JSON 中 `data` 字段替换为 `{\"path\": \"/tmp/scan_xxxxxxxx.png\"}`，直接提供可使用的本地路径。\n\n---\n\n## 不适用场景（When Not to Use）\n\n| 不支持的场景 | 原因 | 建议替代方案 |\n|------------|------|------------|\n| **视频处理** | 仅支持单张静态图片 | 先提取视频帧，再逐帧处理 |\n| **批量处理** | 每次调用仅限单张图片 | 如需批量，请循环调用 |\n| **超大图片（>5MB）** | 接口限制 | 先压缩或裁剪后再处理 |\n| **非图片格式** | 仅支持 jpg/png/gif/bmp/webp | 先转换为支持的图片格式 |\n\n---\n\n## 重要注意事项\n\n1. **禁止修改固定格式**，只能替换 method 值和图片占位符\n2. **图片大小限制**：不超过 5MB，支持 jpg/png/gif/bmp/webp 格式\n3. **METHOD_VALUE 只能是意图列表中列出的整数**，不得自行构造其他值\n\n---\n\n## 文件结构\n\n- `SKILL.md` — 本文档（意图分析 + 通用规范）\n- `scripts/scan_filter.py` — 主入口：环境检查 → 图片校验 → 接收 method → 子进程调用 → 结果增强\n- `scripts/do_scan.py` — 下游执行：组装请求体，调用百度网盘扫描接口\n- `scripts/config.py` — 配置：从环境变量读取鉴权和默认参数\n- `scripts/file_saver.py` — 工具：base64 图片保存到本地 /tmp\n\nFile v1.0.3:_meta.json\n\n{\n  \"ownerId\": \"kn78xh5w9zrwk9veex91j2m9n582vcpw\",\n  \"slug\": \"baidu-drive-scan\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1779102153548\n}\n\nFile v1.0.3:skill-card.md\n\n## Description:\n\nProcesses document and image scans through Baidu Netdisk's scan service to remove handwriting, watermarks, shadows, screen artifacts, enhance clarity, improve ID or receipt images, convert backgrounds, correct perspective, or apply general scan enhancement.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[baidunetdiskaibot](https://clawhub.ai/user/baidunetdiskaibot)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and agent operators use this skill to route a single supported image to Baidu Netdisk scan processing and return the resulting JSON response or saved processed image path.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Documented local-file execution can run shell commands from crafted file paths.\n\nMitigation: Do not process attacker-supplied local file paths until the documented sh -c path is replaced with direct stdin or file handling.\n\nRisk: Images are uploaded to the Baidu scan endpoint for processing.\n\nMitigation: Use only when the operator trusts the endpoint and is comfortable sending the specific image content to that service.\n\nRisk: Processed images may be written to /tmp and remain there after the skill returns.\n\nMitigation: Manually remove /tmp/scan_*.png outputs after use, especially for IDs, invoices, bank cards, contracts, or other sensitive images.\n\nRisk: BDPAN_API_KEY is required for service access.\n\nMitigation: Restrict access to the key, avoid exposing it in command history or logs, and rotate it if leakage is suspected.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/baidunetdiskaibot/skills/baidu-drive-scan)\n- [Baidu Netdisk scan skill API key page](https://aiconvert.baidu.com/simple/embed/scanSkill)\n- [Baidu Netdisk scan filter endpoint](https://pan.baidu.com/apaas/scan/filter)\n\n## Skill Output:\n\n**Output Type(s):** [text, json, shell commands, configuration, guidance, files]\n\n**Output Format:** [Markdown guidance with shell command snippets and JSON command results; successful image processing may return a local /tmp/scan_*.png file path.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires BDPAN_API_KEY and a single jpg, png, gif, bmp, or webp image of 5 MB or less.]\n\n## Skill Version(s):\n\n1.0.3 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v1.0.2: 6 files, 8771 bytes\n\nFiles: scripts/config.py (331b), scripts/do_scan.py (1010b), scripts/file_saver.py (809b), scripts/scan_filter.py (4697b), SKILL.md (9620b), _meta.json (135b)\n\nFile v1.0.2:SKILL.md\n\n---\nname: baidu-drive-scan\nversion: 1.0\ndescription: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强\nmetadata: {\"openclaw\": {\"emoji\": \"🔍\", \"requires\": {\"bins\": [\"python3\", \"curl\"], \"env\": [\"BDPAN_API_KEY\"]}, \"primaryEnv\": \"BDPAN_API_KEY\"}}\n---\n\n# 使用前必读（30 秒）\n\n> [!WARNING] **⚠️ 隐私与数据流向重要提示**\n> - **内部服务交互**：本技能会将您提供的**图片发送至百度网盘内部扫描服务**进行处理\n> - **服务端处理**：服务将获取并处理该图片内容，服务端不会永久保存\n> - **本地文件存储**：处理后返回的图片会保存至系统临时目录（`/tmp`），这些文件将持续存在直到您手动清理\n> - **API 密钥安全**：`BDPAN_API_KEY` 应妥善保管，若泄露请及时联系管理员撤销\n\n**配置环境变量（本次会话立即可用）：**\n\n```bash\nexport BDPAN_API_KEY=\"your_api_key_here\"\n```\n\n**如何获取密钥？**\n> 访问 [https://aiconvert.baidu.com/simple/embed/scanSkill](https://aiconvert.baidu.com/simple/embed/scanSkill) 获取 `BDPAN_API_KEY`。\n\n---\n\n# Constraints\n\n- **单一意图原则：每次请求只执行一个意图类型，命中即执行**\n- **严禁自行构造任何命令参数，严禁伪造、拼接内部配置**\n- **严禁幻觉，禁止伪造请求和响应，不得沿用上一次的场景、参数进行假设**\n- **必须严格按照本指南指定的固定格式执行，不允许自行修改命令**\n\n---\n\n# 技能执行指南（强制执行）\n\n## 第一步：环境变量检查\n\n检查 `BDPAN_API_KEY` 是否已配置。若未配置，立即返回：\n\n```json\n{\n  \"code\": \"BP0100\",\n  \"message\": \"BDPAN_API_KEY未配置，请联系管理员获取后执行：export BDPAN_API_KEY=\\\"your_key\\\" \",\n  \"data\": null\n}\n```\n\n## 第二步：输入处理\n\n识别用户传入的图片，只能是以下两种之一：\n\n- **本地文件路径**：本地磁盘上的文件路径（如 `/tmp/photo.jpg`）\n- **图片 BASE64**：base64 编码的图片数据\n\n未提供任何有效图片时，直接返回：\n\n```json\n{\n  \"code\": \"BP0201\",\n  \"message\": \"缺少图片输入，请提供文件路径或 BASE64 数据。\",\n  \"data\": null\n}\n```\n\n## 第三步：意图匹配\n\n对用户描述按下方意图列表**从上到下顺序匹配，命中第一个即停止**。命中后，**只确定当前意图对应的 `method` 标识**，作为脚本参数。\n\n## 第四步：执行 Python 脚本（安全参数传递）\n\n脚本通过 **stdin 读取二进制图片**，使用 `subprocess` 列表方式调用，**避免 shell 注入风险**：\n\n```python\nimport subprocess\n\n# 本地文件路径类型\nsubprocess.run([\n    \"sh\", \"-c\",\n    \"cat 'IMAGE_FILE_PATH' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\n\n# BASE64 类型（先解码为二进制再管道传入）\nimport base64, tempfile, os\nimg_bytes = base64.b64decode(\"IMAGE_BASE64_DATA\")\nwith tempfile.NamedTemporaryFile(delete=False, suffix=\".bin\") as f:\n    f.write(img_bytes)\n    tmp_path = f.name\nsubprocess.run([\n    \"sh\", \"-c\",\n    f\"cat '{tmp_path}' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\nos.unlink(tmp_path)\n```\n\n**安全说明**：\n- `scan_filter.py` 内部对图片格式（魔数检测）和大小（≤5MB）进行校验\n- 子进程调用 `do_scan.py` 使用列表传参，无 shell 注入风险\n- 所有鉴权信息通过环境变量读取，不出现在命令行参数中\n- `METHOD_VALUE` 只能是下方列表中给出的整数，不允许其他取值\n\n## 第五步：结果透出\n\n执行完成后，**原样返回执行结果**，不修改，不翻译，不美化，不总结。成功失败均直接透出，不重试。\n\n---\n\n## 意图与处理方式列表（按匹配优先级排序）\n\n1. **图像去手写**\n   - 触发意图：当用户希望将已填写的手写笔迹、批注、答案、涂鸦等从文档图像中清除，完整保留原始印刷内容，还原成干净空白文档以便重新使用或打印时使用。\n   - method 标识：`3`\n   - 参考示例指令：\n     - \"把这张试卷上的手写答案去掉，还原成空白卷\"\n     - \"清除文档上的手写批注，只保留打印的文字\"\n     - \"帮我去掉书上的笔记痕迹\"\n\n2. **图像去水印**\n   - 触发意图：当用户希望在不损伤背景和整体构图的前提下，精准擦除图片中的水印、Logo、时间戳、角标、日期等附加标记，获得干净无水印的图像时使用。\n   - method 标识：`8`\n   - 参考示例指令：\n     - \"帮我把图片右下角的水印去掉\"\n     - \"把照片上的时间戳擦除干净\"\n\n3. **图像去阴影**\n   - 触发意图：当用户反馈文档或图像因拍摄角度、手部遮挡、光线不均产生阴影、暗角、明暗斑块，希望去除阴影、统一亮度时使用。\n   - method 标识：`5`\n   - 参考示例指令：\n     - \"这张纸拍出来有大片阴影，请帮我去除\"\n     - \"去掉文档左侧因手遮挡产生的黑色阴影\"\n     - \"消除拍摄时的光照不均，让整张图亮度均匀\"\n\n4. **图像去屏纹**\n   - 触发意图：当用户反馈图片是翻拍屏幕/显示器/投影得到的，存在摩尔纹、屏幕波纹、彩色条纹、反光等干扰，希望消除这些纹路、让文字清晰可读时使用。\n   - method 标识：`9`\n   - 参考示例指令：\n     - \"这张对着电脑屏幕拍的照片有很多波纹，帮我消除\"\n     - \"去掉翻拍屏幕产生的摩尔纹和反光\"\n     - \"修复这张手机拍屏图中的彩色条纹干扰\"\n\n5. **清晰化**\n   - 触发意图：当用户**明确反馈**图片本身存在\"模糊 / 低清 / 昏暗 / 细节丢失 / 看不清\"等**画质缺陷**，希望做去模糊、超分、亮度对比度增强时使用。仅表达\"扫描一下 / 处理一下 / 优化一下 / 扫成电子版\"等通用意图时**不命中本项**，走兜底。\n   - method 标识：`4`\n   - 参考示例指令：\n     - \"这张图太模糊了，帮我把画质变清晰\"\n     - \"修复这张低清晰度的图片，让细节更清楚\"\n\n6. **证件票据增强**\n   - 触发意图：当用户**明确提到**是证件（身份证、护照、驾驶证、行驶证、银行卡等）或票据（发票、收据、合同、名片等）的照片，并希望做画质优化、让文字与关键信息更清晰时使用。\n   - method 标识：`6`\n   - 参考示例指令：\n     - \"这张身份证照片有点模糊，请优化一下\"\n     - \"帮我把这张发票上的金额和日期部分增强清楚\"\n     - \"护照照片反光严重，处理一下让我能看清信息\"\n\n7. **黑白处理（去底色）**\n   - 触发意图：当用户希望将带有彩色背景、红头、灰底或复杂底色的文档截图/照片转换为纯白背景 + 黑色文字的清晰可读版本时使用。\n   - method 标识：`7`\n   - 参考示例指令：\n     - \"把这张红头文件的红色背景去掉，变成白底黑字\"\n     - \"这张截图背景是灰色的，请一键去底色变成纯白背景\"\n\n8. **检测矫正**\n   - 触发意图：当用户反馈照片拍歪、倾斜、透视变形，或希望把文档扶正、自动裁剪掉多余背景边缘，得到规整矩形文档时使用。**不做画质增强**。\n   - method 标识：`1`\n   - 参考示例指令：\n     - \"这张照片拍歪了，帮我把文档扶正并裁掉多余背景\"\n     - \"自动矫正透视变形，把这张倾斜的合同变成标准矩形\"\n     - \"裁剪掉图片四周的杂乱边缘，只保留中间文档内容\"\n\n9. **扫描增强（默认兜底）**\n   - 触发意图：当用户未命中上述任何具体场景，只表达\"扫描 / 扫描件 / 电子化 / 整体优化文档 / 处理一下这张图\"等通用文档处理意图时使用。凡包含\"扫描\"字样的通用请求**优先走本项**，不走清晰化。\n   - method 标识：`2`\n   - 参考示例指令：\n     - \"帮我扫描处理一下这张图\"\n     - \"优化一下这张文档图片，让它看起来更专业\"\n     - \"把这张文档扫成电子版\"\n---\n\n**客户端结果增强**：当脚本调用成功（`errno == 0`）时，`scan_filter.py` 会**自动将返回的 base64 图片解码并保存为本地文件**，最终输出 JSON 中 `data` 字段替换为 `{\"path\": \"/tmp/scan_xxxxxxxx.png\"}`，直接提供可使用的本地路径。\n\n---\n\n## 不适用场景（When Not to Use）\n\n| 不支持的场景 | 原因 | 建议替代方案 |\n|------------|------|------------|\n| **视频处理** | 仅支持单张静态图片 | 先提取视频帧，再逐帧处理 |\n| **批量处理** | 每次调用仅限单张图片 | 如需批量，请循环调用 |\n| **超大图片（>5MB）** | 接口限制 | 先压缩或裁剪后再处理 |\n| **非图片格式** | 仅支持 jpg/png/gif/bmp/webp | 先转换为支持的图片格式 |\n\n---\n\n## 重要注意事项\n\n1. **禁止修改固定格式**，只能替换 method 值和图片占位符\n2. **图片大小限制**：不超过 5MB，支持 jpg/png/gif/bmp/webp 格式\n3. **METHOD_VALUE 只能是意图列表中列出的整数**，不得自行构造其他值\n\n---\n\n## 文件结构\n\n- `SKILL.md` — 本文档（意图分析 + 通用规范）\n- `scripts/scan_filter.py` — 主入口：环境检查 → 图片校验 → 接收 method → 子进程调用 → 结果增强\n- `scripts/do_scan.py` — 下游执行：组装请求体，调用百度网盘扫描接口\n- `scripts/config.py` — 配置：从环境变量读取鉴权和默认参数\n- `scripts/file_saver.py` — 工具：base64 图片保存到本地 /tmp\n\nFile v1.0.2:_meta.json\n\n{\n  \"ownerId\": \"kn78xh5w9zrwk9veex91j2m9n582vcpw\",\n  \"slug\": \"baidu-drive-scan\",\n  \"version\": \"1.0.2\",\n  \"publishedAt\": 1778844459586\n}\n\nArchive v1.0.1: 6 files, 8771 bytes\n\nFiles: scripts/config.py (331b), scripts/do_scan.py (1010b), scripts/file_saver.py (809b), scripts/scan_filter.py (4697b), SKILL.md (9620b), _meta.json (135b)\n\nFile v1.0.1:SKILL.md\n\n---\nname: baidu-drive-scan\nversion: 1.0\ndescription: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强\nmetadata: {\"openclaw\": {\"emoji\": \"🔍\", \"requires\": {\"bins\": [\"python3\", \"curl\"], \"env\": [\"BDPAN_API_KEY\"]}, \"primaryEnv\": \"BDPAN_API_KEY\"}}\n---\n\n# 使用前必读（30 秒）\n\n> [!WARNING] **⚠️ 隐私与数据流向重要提示**\n> - **内部服务交互**：本技能会将您提供的**图片发送至百度网盘内部扫描服务**进行处理\n> - **服务端处理**：服务将获取并处理该图片内容，服务端不会永久保存\n> - **本地文件存储**：处理后返回的图片会保存至系统临时目录（`/tmp`），这些文件将持续存在直到您手动清理\n> - **API 密钥安全**：`BDPAN_API_KEY` 应妥善保管，若泄露请及时联系管理员撤销\n\n**配置环境变量（本次会话立即可用）：**\n\n```bash\nexport BDPAN_API_KEY=\"your_api_key_here\"\n```\n\n**如何获取密钥？**\n> 访问 [https://aiconvert.baidu.com/simple/embed/scanSkill](https://aiconvert.baidu.com/simple/embed/scanSkill) 获取 `BDPAN_API_KEY`。\n\n---\n\n# Constraints\n\n- **单一意图原则：每次请求只执行一个意图类型，命中即执行**\n- **严禁自行构造任何命令参数，严禁伪造、拼接内部配置**\n- **严禁幻觉，禁止伪造请求和响应，不得沿用上一次的场景、参数进行假设**\n- **必须严格按照本指南指定的固定格式执行，不允许自行修改命令**\n\n---\n\n# 技能执行指南（强制执行）\n\n## 第一步：环境变量检查\n\n检查 `BDPAN_API_KEY` 是否已配置。若未配置，立即返回：\n\n```json\n{\n  \"code\": \"BP0100\",\n  \"message\": \"BDPAN_API_KEY未配置，请联系管理员获取后执行：export BDPAN_API_KEY=\\\"your_key\\\" \",\n  \"data\": null\n}\n```\n\n## 第二步：输入处理\n\n识别用户传入的图片，只能是以下两种之一：\n\n- **本地文件路径**：本地磁盘上的文件路径（如 `/tmp/photo.jpg`）\n- **图片 BASE64**：base64 编码的图片数据\n\n未提供任何有效图片时，直接返回：\n\n```json\n{\n  \"code\": \"BP0201\",\n  \"message\": \"缺少图片输入，请提供文件路径或 BASE64 数据。\",\n  \"data\": null\n}\n```\n\n## 第三步：意图匹配\n\n对用户描述按下方意图列表**从上到下顺序匹配，命中第一个即停止**。命中后，**只确定当前意图对应的 `method` 标识**，作为脚本参数。\n\n## 第四步：执行 Python 脚本（安全参数传递）\n\n脚本通过 **stdin 读取二进制图片**，使用 `subprocess` 列表方式调用，**避免 shell 注入风险**：\n\n```python\nimport subprocess\n\n# 本地文件路径类型\nsubprocess.run([\n    \"sh\", \"-c\",\n    \"cat 'IMAGE_FILE_PATH' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\n\n# BASE64 类型（先解码为二进制再管道传入）\nimport base64, tempfile, os\nimg_bytes = base64.b64decode(\"IMAGE_BASE64_DATA\")\nwith tempfile.NamedTemporaryFile(delete=False, suffix=\".bin\") as f:\n    f.write(img_bytes)\n    tmp_path = f.name\nsubprocess.run([\n    \"sh\", \"-c\",\n    f\"cat '{tmp_path}' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\nos.unlink(tmp_path)\n```\n\n**安全说明**：\n- `scan_filter.py` 内部对图片格式（魔数检测）和大小（≤5MB）进行校验\n- 子进程调用 `do_scan.py` 使用列表传参，无 shell 注入风险\n- 所有鉴权信息通过环境变量读取，不出现在命令行参数中\n- `METHOD_VALUE` 只能是下方列表中给出的整数，不允许其他取值\n\n## 第五步：结果透出\n\n执行完成后，**原样返回执行结果**，不修改，不翻译，不美化，不总结。成功失败均直接透出，不重试。\n\n---\n\n## 意图与处理方式列表（按匹配优先级排序）\n\n1. **图像去手写**\n   - 触发意图：当用户希望将已填写的手写笔迹、批注、答案、涂鸦等从文档图像中清除，完整保留原始印刷内容，还原成干净空白文档以便重新使用或打印时使用。\n   - method 标识：`3`\n   - 参考示例指令：\n     - \"把这张试卷上的手写答案去掉，还原成空白卷\"\n     - \"清除文档上的手写批注，只保留打印的文字\"\n     - \"帮我去掉书上的笔记痕迹\"\n\n2. **图像去水印**\n   - 触发意图：当用户希望在不损伤背景和整体构图的前提下，精准擦除图片中的水印、Logo、时间戳、角标、日期等附加标记，获得干净无水印的图像时使用。\n   - method 标识：`8`\n   - 参考示例指令：\n     - \"帮我把图片右下角的水印去掉\"\n     - \"把照片上的时间戳擦除干净\"\n\n3. **图像去阴影**\n   - 触发意图：当用户反馈文档或图像因拍摄角度、手部遮挡、光线不均产生阴影、暗角、明暗斑块，希望去除阴影、统一亮度时使用。\n   - method 标识：`5`\n   - 参考示例指令：\n     - \"这张纸拍出来有大片阴影，请帮我去除\"\n     - \"去掉文档左侧因手遮挡产生的黑色阴影\"\n     - \"消除拍摄时的光照不均，让整张图亮度均匀\"\n\n4. **图像去屏纹**\n   - 触发意图：当用户反馈图片是翻拍屏幕/显示器/投影得到的，存在摩尔纹、屏幕波纹、彩色条纹、反光等干扰，希望消除这些纹路、让文字清晰可读时使用。\n   - method 标识：`9`\n   - 参考示例指令：\n     - \"这张对着电脑屏幕拍的照片有很多波纹，帮我消除\"\n     - \"去掉翻拍屏幕产生的摩尔纹和反光\"\n     - \"修复这张手机拍屏图中的彩色条纹干扰\"\n\n5. **清晰化**\n   - 触发意图：当用户**明确反馈**图片本身存在\"模糊 / 低清 / 昏暗 / 细节丢失 / 看不清\"等**画质缺陷**，希望做去模糊、超分、亮度对比度增强时使用。仅表达\"扫描一下 / 处理一下 / 优化一下 / 扫成电子版\"等通用意图时**不命中本项**，走兜底。\n   - method 标识：`4`\n   - 参考示例指令：\n     - \"这张图太模糊了，帮我把画质变清晰\"\n     - \"修复这张低清晰度的图片，让细节更清楚\"\n\n6. **证件票据增强**\n   - 触发意图：当用户**明确提到**是证件（身份证、护照、驾驶证、行驶证、银行卡等）或票据（发票、收据、合同、名片等）的照片，并希望做画质优化、让文字与关键信息更清晰时使用。\n   - method 标识：`6`\n   - 参考示例指令：\n     - \"这张身份证照片有点模糊，请优化一下\"\n     - \"帮我把这张发票上的金额和日期部分增强清楚\"\n     - \"护照照片反光严重，处理一下让我能看清信息\"\n\n7. **黑白处理（去底色）**\n   - 触发意图：当用户希望将带有彩色背景、红头、灰底或复杂底色的文档截图/照片转换为纯白背景 + 黑色文字的清晰可读版本时使用。\n   - method 标识：`7`\n   - 参考示例指令：\n     - \"把这张红头文件的红色背景去掉，变成白底黑字\"\n     - \"这张截图背景是灰色的，请一键去底色变成纯白背景\"\n\n8. **检测矫正**\n   - 触发意图：当用户反馈照片拍歪、倾斜、透视变形，或希望把文档扶正、自动裁剪掉多余背景边缘，得到规整矩形文档时使用。**不做画质增强**。\n   - method 标识：`1`\n   - 参考示例指令：\n     - \"这张照片拍歪了，帮我把文档扶正并裁掉多余背景\"\n     - \"自动矫正透视变形，把这张倾斜的合同变成标准矩形\"\n     - \"裁剪掉图片四周的杂乱边缘，只保留中间文档内容\"\n\n9. **扫描增强（默认兜底）**\n   - 触发意图：当用户未命中上述任何具体场景，只表达\"扫描 / 扫描件 / 电子化 / 整体优化文档 / 处理一下这张图\"等通用文档处理意图时使用。凡包含\"扫描\"字样的通用请求**优先走本项**，不走清晰化。\n   - method 标识：`2`\n   - 参考示例指令：\n     - \"帮我扫描处理一下这张图\"\n     - \"优化一下这张文档图片，让它看起来更专业\"\n     - \"把这张文档扫成电子版\"\n---\n\n**客户端结果增强**：当脚本调用成功（`errno == 0`）时，`scan_filter.py` 会**自动将返回的 base64 图片解码并保存为本地文件**，最终输出 JSON 中 `data` 字段替换为 `{\"path\": \"/tmp/scan_xxxxxxxx.png\"}`，直接提供可使用的本地路径。\n\n---\n\n## 不适用场景（When Not to Use）\n\n| 不支持的场景 | 原因 | 建议替代方案 |\n|------------|------|------------|\n| **视频处理** | 仅支持单张静态图片 | 先提取视频帧，再逐帧处理 |\n| **批量处理** | 每次调用仅限单张图片 | 如需批量，请循环调用 |\n| **超大图片（>5MB）** | 接口限制 | 先压缩或裁剪后再处理 |\n| **非图片格式** | 仅支持 jpg/png/gif/bmp/webp | 先转换为支持的图片格式 |\n\n---\n\n## 重要注意事项\n\n1. **禁止修改固定格式**，只能替换 method 值和图片占位符\n2. **图片大小限制**：不超过 5MB，支持 jpg/png/gif/bmp/webp 格式\n3. **METHOD_VALUE 只能是意图列表中列出的整数**，不得自行构造其他值\n\n---\n\n## 文件结构\n\n- `SKILL.md` — 本文档（意图分析 + 通用规范）\n- `scripts/scan_filter.py` — 主入口：环境检查 → 图片校验 → 接收 method → 子进程调用 → 结果增强\n- `scripts/do_scan.py` — 下游执行：组装请求体，调用百度网盘扫描接口\n- `scripts/config.py` — 配置：从环境变量读取鉴权和默认参数\n- `scripts/file_saver.py` — 工具：base64 图片保存到本地 /tmp\n\nFile v1.0.1:_meta.json\n\n{\n  \"ownerId\": \"kn78xh5w9zrwk9veex91j2m9n582vcpw\",\n  \"slug\": \"baidu-drive-scan\",\n  \"version\": \"1.0.1\",\n  \"publishedAt\": 1778839030244\n}\n\nArchive v1.0.0: 6 files, 8771 bytes\n\nFiles: scripts/config.py (331b), scripts/do_scan.py (1010b), scripts/file_saver.py (809b), scripts/scan_filter.py (4697b), SKILL.md (9620b), _meta.json (135b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: baidu-drive-scan\nversion: 1.0\ndescription: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强\nmetadata: {\"openclaw\": {\"emoji\": \"🔍\", \"requires\": {\"bins\": [\"python3\", \"curl\"], \"env\": [\"BDPAN_API_KEY\"]}, \"primaryEnv\": \"BDPAN_API_KEY\"}}\n---\n\n# 使用前必读（30 秒）\n\n> [!WARNING] **⚠️ 隐私与数据流向重要提示**\n> - **内部服务交互**：本技能会将您提供的**图片发送至百度网盘内部扫描服务**进行处理\n> - **服务端处理**：服务将获取并处理该图片内容，服务端不会永久保存\n> - **本地文件存储**：处理后返回的图片会保存至系统临时目录（`/tmp`），这些文件将持续存在直到您手动清理\n> - **API 密钥安全**：`BDPAN_API_KEY` 应妥善保管，若泄露请及时联系管理员撤销\n\n**配置环境变量（本次会话立即可用）：**\n\n```bash\nexport BDPAN_API_KEY=\"your_api_key_here\"\n```\n\n**如何获取密钥？**\n> 访问 [https://aiconvert.baidu.com/simple/embed/scanSkill](https://aiconvert.baidu.com/simple/embed/scanSkill) 获取 `BDPAN_API_KEY`。\n\n---\n\n# Constraints\n\n- **单一意图原则：每次请求只执行一个意图类型，命中即执行**\n- **严禁自行构造任何命令参数，严禁伪造、拼接内部配置**\n- **严禁幻觉，禁止伪造请求和响应，不得沿用上一次的场景、参数进行假设**\n- **必须严格按照本指南指定的固定格式执行，不允许自行修改命令**\n\n---\n\n# 技能执行指南（强制执行）\n\n## 第一步：环境变量检查\n\n检查 `BDPAN_API_KEY` 是否已配置。若未配置，立即返回：\n\n```json\n{\n  \"code\": \"BP0100\",\n  \"message\": \"BDPAN_API_KEY未配置，请联系管理员获取后执行：export BDPAN_API_KEY=\\\"your_key\\\" \",\n  \"data\": null\n}\n```\n\n## 第二步：输入处理\n\n识别用户传入的图片，只能是以下两种之一：\n\n- **本地文件路径**：本地磁盘上的文件路径（如 `/tmp/photo.jpg`）\n- **图片 BASE64**：base64 编码的图片数据\n\n未提供任何有效图片时，直接返回：\n\n```json\n{\n  \"code\": \"BP0201\",\n  \"message\": \"缺少图片输入，请提供文件路径或 BASE64 数据。\",\n  \"data\": null\n}\n```\n\n## 第三步：意图匹配\n\n对用户描述按下方意图列表**从上到下顺序匹配，命中第一个即停止**。命中后，**只确定当前意图对应的 `method` 标识**，作为脚本参数。\n\n## 第四步：执行 Python 脚本（安全参数传递）\n\n脚本通过 **stdin 读取二进制图片**，使用 `subprocess` 列表方式调用，**避免 shell 注入风险**：\n\n```python\nimport subprocess\n\n# 本地文件路径类型\nsubprocess.run([\n    \"sh\", \"-c\",\n    \"cat 'IMAGE_FILE_PATH' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\n\n# BASE64 类型（先解码为二进制再管道传入）\nimport base64, tempfile, os\nimg_bytes = base64.b64decode(\"IMAGE_BASE64_DATA\")\nwith tempfile.NamedTemporaryFile(delete=False, suffix=\".bin\") as f:\n    f.write(img_bytes)\n    tmp_path = f.name\nsubprocess.run([\n    \"sh\", \"-c\",\n    f\"cat '{tmp_path}' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\nos.unlink(tmp_path)\n```\n\n**安全说明**：\n- `scan_filter.py` 内部对图片格式（魔数检测）和大小（≤5MB）进行校验\n- 子进程调用 `do_scan.py` 使用列表传参，无 shell 注入风险\n- 所有鉴权信息通过环境变量读取，不出现在命令行参数中\n- `METHOD_VALUE` 只能是下方列表中给出的整数，不允许其他取值\n\n## 第五步：结果透出\n\n执行完成后，**原样返回执行结果**，不修改，不翻译，不美化，不总结。成功失败均直接透出，不重试。\n\n---\n\n## 意图与处理方式列表（按匹配优先级排序）\n\n1. **图像去手写**\n   - 触发意图：当用户希望将已填写的手写笔迹、批注、答案、涂鸦等从文档图像中清除，完整保留原始印刷内容，还原成干净空白文档以便重新使用或打印时使用。\n   - method 标识：`3`\n   - 参考示例指令：\n     - \"把这张试卷上的手写答案去掉，还原成空白卷\"\n     - \"清除文档上的手写批注，只保留打印的文字\"\n     - \"帮我去掉书上的笔记痕迹\"\n\n2. **图像去水印**\n   - 触发意图：当用户希望在不损伤背景和整体构图的前提下，精准擦除图片中的水印、Logo、时间戳、角标、日期等附加标记，获得干净无水印的图像时使用。\n   - method 标识：`8`\n   - 参考示例指令：\n     - \"帮我把图片右下角的水印去掉\"\n     - \"把照片上的时间戳擦除干净\"\n\n3. **图像去阴影**\n   - 触发意图：当用户反馈文档或图像因拍摄角度、手部遮挡、光线不均产生阴影、暗角、明暗斑块，希望去除阴影、统一亮度时使用。\n   - method 标识：`5`\n   - 参考示例指令：\n     - \"这张纸拍出来有大片阴影，请帮我去除\"\n     - \"去掉文档左侧因手遮挡产生的黑色阴影\"\n     - \"消除拍摄时的光照不均，让整张图亮度均匀\"\n\n4. **图像去屏纹**\n   - 触发意图：当用户反馈图片是翻拍屏幕/显示器/投影得到的，存在摩尔纹、屏幕波纹、彩色条纹、反光等干扰，希望消除这些纹路、让文字清晰可读时使用。\n   - method 标识：`9`\n   - 参考示例指令：\n     - \"这张对着电脑屏幕拍的照片有很多波纹，帮我消除\"\n     - \"去掉翻拍屏幕产生的摩尔纹和反光\"\n     - \"修复这张手机拍屏图中的彩色条纹干扰\"\n\n5. **清晰化**\n   - 触发意图：当用户**明确反馈**图片本身存在\"模糊 / 低清 / 昏暗 / 细节丢失 / 看不清\"等**画质缺陷**，希望做去模糊、超分、亮度对比度增强时使用。仅表达\"扫描一下 / 处理一下 / 优化一下 / 扫成电子版\"等通用意图时**不命中本项**，走兜底。\n   - method 标识：`4`\n   - 参考示例指令：\n     - \"这张图太模糊了，帮我把画质变清晰\"\n     - \"修复这张低清晰度的图片，让细节更清楚\"\n\n6. **证件票据增强**\n   - 触发意图：当用户**明确提到**是证件（身份证、护照、驾驶证、行驶证、银行卡等）或票据（发票、收据、合同、名片等）的照片，并希望做画质优化、让文字与关键信息更清晰时使用。\n   - method 标识：`6`\n   - 参考示例指令：\n     - \"这张身份证照片有点模糊，请优化一下\"\n     - \"帮我把这张发票上的金额和日期部分增强清楚\"\n     - \"护照照片反光严重，处理一下让我能看清信息\"\n\n7. **黑白处理（去底色）**\n   - 触发意图：当用户希望将带有彩色背景、红头、灰底或复杂底色的文档截图/照片转换为纯白背景 + 黑色文字的清晰可读版本时使用。\n   - method 标识：`7`\n   - 参考示例指令：\n     - \"把这张红头文件的红色背景去掉，变成白底黑字\"\n     - \"这张截图背景是灰色的，请一键去底色变成纯白背景\"\n\n8. **检测矫正**\n   - 触发意图：当用户反馈照片拍歪、倾斜、透视变形，或希望把文档扶正、自动裁剪掉多余背景边缘，得到规整矩形文档时使用。**不做画质增强**。\n   - method 标识：`1`\n   - 参考示例指令：\n     - \"这张照片拍歪了，帮我把文档扶正并裁掉多余背景\"\n     - \"自动矫正透视变形，把这张倾斜的合同变成标准矩形\"\n     - \"裁剪掉图片四周的杂乱边缘，只保留中间文档内容\"\n\n9. **扫描增强（默认兜底）**\n   - 触发意图：当用户未命中上述任何具体场景，只表达\"扫描 / 扫描件 / 电子化 / 整体优化文档 / 处理一下这张图\"等通用文档处理意图时使用。凡包含\"扫描\"字样的通用请求**优先走本项**，不走清晰化。\n   - method 标识：`2`\n   - 参考示例指令：\n     - \"帮我扫描处理一下这张图\"\n     - \"优化一下这张文档图片，让它看起来更专业\"\n     - \"把这张文档扫成电子版\"\n---\n\n**客户端结果增强**：当脚本调用成功（`errno == 0`）时，`scan_filter.py` 会**自动将返回的 base64 图片解码并保存为本地文件**，最终输出 JSON 中 `data` 字段替换为 `{\"path\": \"/tmp/scan_xxxxxxxx.png\"}`，直接提供可使用的本地路径。\n\n---\n\n## 不适用场景（When Not to Use）\n\n| 不支持的场景 | 原因 | 建议替代方案 |\n|------------|------|------------|\n| **视频处理** | 仅支持单张静态图片 | 先提取视频帧，再逐帧处理 |\n| **批量处理** | 每次调用仅限单张图片 | 如需批量，请循环调用 |\n| **超大图片（>5MB）** | 接口限制 | 先压缩或裁剪后再处理 |\n| **非图片格式** | 仅支持 jpg/png/gif/bmp/webp | 先转换为支持的图片格式 |\n\n---\n\n## 重要注意事项\n\n1. **禁止修改固定格式**，只能替换 method 值和图片占位符\n2. **图片大小限制**：不超过 5MB，支持 jpg/png/gif/bmp/webp 格式\n3. **METHOD_VALUE 只能是意图列表中列出的整数**，不得自行构造其他值\n\n---\n\n## 文件结构\n\n- `SKILL.md` — 本文档（意图分析 + 通用规范）\n- `scripts/scan_filter.py` — 主入口：环境检查 → 图片校验 → 接收 method → 子进程调用 → 结果增强\n- `scripts/do_scan.py` — 下游执行：组装请求体，调用百度网盘扫描接口\n- `scripts/config.py` — 配置：从环境变量读取鉴权和默认参数\n- `scripts/file_saver.py` — 工具：base64 图片保存到本地 /tmp\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn78xh5w9zrwk9veex91j2m9n582vcpw\",\n  \"slug\": \"baidu-drive-scan\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1778835997287\n}","readmeExcerpt":"Skill: 百度网盘文档扫描官方Skill Owner: baidunetdiskaibot Summary: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强 Tags: latest:1.0.3 Version history: v1.0.3 | 2026-05-18T11:02:33.548Z | auto baidu-drive-scan 1.0.3 Changelog - Added detailed step-by-step usage guidelines and safety constraints in SKILL.md. - Clarified supported image intents with explicit matching order and unique method codes. - En","codeSnippets":[],"executableExamples":[{"language":"bash","snippet":"export BDPAN_API_KEY=\"your_api_key_here\""},{"language":"json","snippet":"{\n  \"code\": \"BP0100\",\n  \"message\": \"BDPAN_API_KEY未配置，请联系管理员获取后执行：export BDPAN_API_KEY=\\\"your_key\\\" \",\n  \"data\": null\n}"},{"language":"json","snippet":"{\n  \"code\": \"BP0201\",\n  \"message\": \"缺少图片输入，请提供文件路径或 BASE64 数据。\",\n  \"data\": null\n}"},{"language":"python","snippet":"import subprocess\n\n# 本地文件路径类型\nsubprocess.run([\n    \"sh\", \"-c\",\n    \"cat 'IMAGE_FILE_PATH' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\n\n# BASE64 类型（先解码为二进制再管道传入）\nimport base64, tempfile, os\nimg_bytes = base64.b64decode(\"IMAGE_BASE64_DATA\")\nwith tempfile.NamedTemporaryFile(delete=False, suffix=\".bin\") as f:\n    f.write(img_bytes)\n    tmp_path = f.name\nsubprocess.run([\n    \"sh\", \"-c\",\n    f\"cat '{tmp_path}' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\nos.unlink(tmp_path)"},{"language":"bash","snippet":"export BDPAN_API_KEY=\"your_api_key_here\""},{"language":"json","snippet":"{\n  \"code\": \"BP0100\",\n  \"message\": \"BDPAN_API_KEY未配置，请联系管理员获取后执行：export BDPAN_API_KEY=\\\"your_key\\\" \",\n  \"data\": null\n}"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: baidu-drive-scan\nversion: 1.0\ndescription: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强\nmetadata: {\"openclaw\": {\"emoji\": \"🔍\", \"requires\": {\"bins\": [\"python3\", \"curl\"], \"env\": [\"BDPAN_API_KEY\"]}, \"primaryEnv\": \"BDPAN_API_KEY\"}}\n---\n\n# 使用前必读（30 秒）\n\n> [!WARNING] **⚠️ 隐私与数据流向重要提示**\n> - **内部服务交互**：本技能会将您提供的**图片发送至百度网盘内部扫描服务**进行处理\n> - **服务端处理**：服务将获取并处理该图片内容，服务端不会永久保存\n> - **本地文件存储**：处理后返回的图片会保存至系统临时目录（`/tmp`），这些文件将持续存在直到您手动清理\n> - **API 密钥安全**：`BDPAN_API_KEY` 应妥善保管，若泄露请及时联系管理员撤销\n\n**配置环境变量（本次会话立即可用）：**\n\n```bash\nexport BDPAN_API_KEY=\"your_api_key_here\"\n```\n\n**如何获取密钥？**\n> 访问 [https://aiconvert.baidu.com/simple/embed/scanSkill](https://aiconvert.baidu.com/simple/embed/scanSkill) 获取 `BDPAN_API_KEY`。\n\n---\n\n# Constraints\n\n- **单一意图原则：每次请求只执行一个意图类型，命中即执行**\n- **严禁自行构造任何命令参数，严禁伪造、拼接内部配置**\n- **严禁幻觉，禁止伪造请求和响应，不得沿用上一次的场景、参数进行假设**\n- **必须严格按照本指南指定的固定格式执行，不允许自行修改命令**\n\n---\n\n# 技能执行指南（强制执行）\n\n## 第一步：环境变量检查\n\n检查 `BDPAN_API_KEY` 是否已配置。若未配置，立即返回：\n\n```json\n{\n  \"code\": \"BP0100\",\n  \"message\": \"BDPAN_API_KEY未配置，请联系管理员获取后执行：export BDPAN_API_KEY=\\\"your_key\\\" \",\n  \"data\": null\n}\n```\n\n## 第二步：输入处理\n\n识别用户传入的图片，只能是以下两种之一：\n\n- **本地文件路径**：本地磁盘上的文件路径（如 `/tmp/photo.jpg`）\n- **图片 BASE64**：base64 编码的图片数据\n\n未提供任何有效图片时，直接返回：\n\n```json\n{\n  \"code\": \"BP0201\",\n  \"message\": \"缺少图片输入，请提供文件路径或 BASE64 数据。\",\n  \"data\": null\n}\n```\n\n## 第三步：意图匹配\n\n对用户描述按下方意图列表**从上到下顺序匹配，命中第一个即停止**。命中后，**只确定当前意图对应的 `method` 标识**，作为脚本参数。\n\n## 第四步：执行 Python 脚本（安全参数传递）\n\n脚本通过 **stdin 读取二进制图片**，使用 `subprocess` 列表方式调用，**避免 shell 注入风险**：\n\n```python\nimport subprocess\n\n# 本地文件路径类型\nsubprocess.run([\n    \"sh\", \"-c\",\n    \"cat 'IMAGE_FILE_PATH' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\n\n# BASE64 类型（先解码为二进制再管道传入）\nimport base64, tempfile, os\nimg_bytes = base64.b64decode(\"IMAGE_BASE64_DATA\")\nwith tempfile.NamedTemporaryFile(delete=False, suffix=\".bin\") as f:\n    f.write(img_bytes)\n    tmp_path = f.name\nsubprocess.run([\n    \"sh\", \"-c\",\n    f\"cat '{tmp_path}' | python3 scripts/scan_filter.py --method METHOD_VALUE\"\n])\nos.unlink(tmp_path)\n```\n\n**安全说明**：\n- `scan_filter.py` 内部对图片格式（魔数检测）和大小（≤5MB）进行校验\n- 子进程调用 `do_scan.py` 使用列表传参，无 shell 注入风险\n- 所有鉴权信息通过环境变量读取，不出现在命令行参数中\n- `METHOD_VALUE` 只能是下方列表中给出的整数，不允许其他取值\n\n## 第五步：结果透出\n\n执行完成后，**原样返回执行结果**，不修改，不翻译，不美化，不总结。成功失败均直接透出，不重试。\n\n---\n\n## 意图与处理方式列表（按匹配优先级排序）\n\n1. **图像去手写**\n   - 触发意图：当用户希望将已填写的手写笔迹、批注、答案、涂鸦等从文档图像中清除，完整保留原始印刷内容，还原成干净空白文档以便重新使用或打印时使用。\n   - method 标识：`3`\n   - 参考示例指令：\n     - \"把这张试卷上的手写答案去掉，还原成空白卷\"\n     - \"清除文档上的手写批注，只保留打印的文字\"\n     - \"帮我去掉书上的笔记痕迹\"\n\n2. **图像去水印**\n   - 触发意图：当用户希望在不损伤背景和整体构图的前提下，精准擦除图片中的水印、Logo、时间戳、角标、日期等附加标记，获得干净无水印的图像时使用。\n   - method 标识：`8`\n   - 参考示例指令：\n     - \"帮我把图片右下角的水印去掉\"\n     - \"把照片上的时间戳擦除干净\"\n\n3. **图像去阴影**\n   - 触发意图：当用户反馈文档或图像因拍摄角度、手部遮挡、光线不均产生阴影、暗角、明暗斑块，希望去除阴影、统一亮度时使用。\n   - method 标识：`5`\n   - 参考示例指令：\n     - \"这张纸拍出来有大片阴影，请帮我去除\"\n     - \"去掉文档左侧因手遮挡产生的黑色阴影\"\n     - \"消除拍摄时的光照不均，让整张图亮度均匀\"\n\n4. **图像去屏纹**\n   - 触发意图：当用户反馈图片是翻拍屏幕/显示器/投影得到的，存在摩尔纹、屏幕波纹、彩色条纹、反光等干扰，希望消除这些纹路、让文字清晰可读时使用。\n   - method 标识：`9`\n   - 参考示例指令：\n     - \"这张对着电脑屏幕拍的照片有很多波纹，帮我消除"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn78xh5w9zrwk9veex91j2m9n582vcpw\",\n  \"slug\": \"baidu-drive-scan\",\n  \"version\": \"1.0.3\",\n  \"publishedAt\": 1779102153548\n}"},{"path":"skill-card.md","content":"## Description:\n\nProcesses document and image scans through Baidu Netdisk's scan service to remove handwriting, watermarks, shadows, screen artifacts, enhance clarity, improve ID or receipt images, convert backgrounds, correct perspective, or apply general scan enhancement.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[baidunetdiskaibot](https://clawhub.ai/user/baidunetdiskaibot)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nExternal users and agent operators use this skill to route a single supported image to Baidu Netdisk scan processing and return the resulting JSON response or saved processed image path.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Documented local-file execution can run shell commands from crafted file paths.\n\nMitigation: Do not process attacker-supplied local file paths until the documented sh -c path is replaced with direct stdin or file handling.\n\nRisk: Images are uploaded to the Baidu scan endpoint for processing.\n\nMitigation: Use only when the operator trusts the endpoint and is comfortable sending the specific image content to that service.\n\nRisk: Processed images may be written to /tmp and remain there after the skill returns.\n\nMitigation: Manually remove /tmp/scan_*.png outputs after use, especially for IDs, invoices, bank cards, contracts, or other sensitive images.\n\nRisk: BDPAN_API_KEY is required for service access.\n\nMitigation: Restrict access to the key, avoid exposing it in command history or logs, and rotate it if leakage is suspected.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/baidunetdiskaibot/skills/baidu-drive-scan)\n- [Baidu Netdisk scan skill API key page](https://aiconvert.baidu.com/simple/embed/scanSkill)\n- [Baidu Netdisk scan filter endpoint](https://pan.baidu.com/apaas/scan/filter)\n\n## Skill Output:\n\n**Output Type(s):** [text, json, shell commands, configuration, guidance, files]\n\n**Output Format:** [Markdown guidance with shell command snippets and JSON command results; successful image processing may return a local /tmp/scan_*.png file path.]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Requires BDPAN_API_KEY and a single jpg, png, gif, bmp, or webp image of 5 MB or less.]\n\n## Skill Version(s):\n\n1.0.3 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强 Skill: 百度网盘文档扫描官方Skill Owner: baidunetdiskaibot Summary: 百度网盘智能图像扫描处理工具。支持 去手写 | 去水印 | 去阴影 | 去屏纹 | 清晰化 | 证件票据增强 | 黑白处理 | 检测矫正 | 扫描增强 Tags: latest:1.0.3 Version history: v1.0.3 | 2026-05-18T11:02:33.548Z | auto baidu-drive-scan 1.0.3 Changelog - Added detailed step-by-step usage guidelines and safety constraints in SKILL.md. - Clarified supported image intents with explicit matching order and unique method codes. - En","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":996,"uniquenessScore":54,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-11T13:20:58.929Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-11T13:20:58.929Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-11T16:02:00.092Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}