← 返回 Skills 市场
lanqeur

onedrive-photo-batch

作者 Lanqeur · GitHub ↗ · v0.2.0 · MIT-0
cross-platform ⚠ suspicious
114
总下载
1
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install onedrive-photo-batch
功能描述
OneDrive 照片批处理与索引技能。用于对 OneDrive 照片做按名称/日期/大小/格式/相册筛选、批量 OCR/多模态识别、full 全量索引、哈希增量跳过、语义检索、移动/上传/删除/恢复与回收站治理。用户提到 OneDrive 批量识别、照片索引、相册级模型策略、限速并发、删除恢复、15天回收站清理...
安全使用建议
Key things to consider before installing and running this skill: - Data sent off-site: By default the skill will send images/text/embeddings to the external API at https://api.siliconflow.cn (OCR and embedding). If you are processing sensitive photos, confirm you trust that provider or replace the endpoint with a trusted/local service. - Credentials and token cache: The script requires an Azure client_id and uses MSAL device-flow to obtain a Graph access token which it will persist to disk. It also attempts to read a legacy token cache at /root/.openclaw/workspace/token_cache.json — check that file and path exist only for this skill and do not contain unrelated credentials you don't want accessed. - Writes & destructive ops: By default config.mode.read_only=true (safe). To enable delete/move/upload you must explicitly set mode.read_only=false and upgrade auth.scopes to Files.ReadWrite; only do this after backing up data and reviewing the code. Consider running in a test account or with Files.Read scoped access first. - Local file writes: The skill will create/modify token cache, index DB, logs and a recycle directory (tmp_photo). The skill also runs an automatic 15‑day cleanup that deletes local recycle files; if you need long‑term copies, back them up elsewhere. - Run in isolation: For privacy, run the skill in an isolated environment/user account or container, and use a dedicated Azure app/client_id and dedicated OCR API keys. Change config paths (token_cache, db, tmp_dir, recycle_dir) to locations you control. - Inspect and/or modify endpoints: If you prefer not to use the provided external OCR/embedding service, edit the config to point to a provider you trust or integrate a local OCR model. - If unsure: Because the code reads a global legacy token cache path, treat this as a potential data‑exposure risk. If you cannot audit or control the token cache file, do not run the skill on an environment that holds other sensitive tokens or credentials. If you want, I can point to the exact lines that read/write the legacy cache and the default OCR endpoint so you can review or modify them prior to running.
功能分析
Type: OpenClaw Skill Name: onedrive-photo-batch Version: 0.2.0 The skill bundle provides legitimate OneDrive photo management capabilities, including OCR indexing, semantic search, and batch operations. The Python script (scripts/onedrive_photo_batch.py) uses standard libraries like MSAL for OAuth2 authentication and the Microsoft Graph API for file interactions, with clear logic for handling metadata in a local SQLite database. While the skill performs sensitive actions such as file deletion and data transmission to a third-party OCR provider (api.siliconflow.cn), these behaviors are explicitly documented in SKILL.md and references/config.example.json, and include safety features like a default 'read_only' mode and a local 'soft-delete' recovery mechanism.
能力评估
Purpose & Capability
The script implements OneDrive browse/download/ocr/index/move/delete/restore functionality that matches the skill description. It uses msal + Microsoft Graph for access and a remote OCR/embedding provider for recognition/embeddings, which is reasonable for this purpose. Minor mismatch: authentication/config is provided via files (config.json & token cache) rather than declared environment variables, which is acceptable but should be noted. Default OCR/embedding endpoints point to https://api.siliconflow.cn (third‑party) — plausible but important to be aware of.
Instruction Scope
SKILL.md instructs the agent to copy/edit the provided config and run the script; those instructions only reference the skill's config paths. However, the runtime (scripts/onedrive_photo_batch.py) will also attempt to read a legacy token cache at /root/.openclaw/workspace/token_cache.json (legacy_cache_path). That file path is outside the skill's own workspace and could contain other tokens — the code will deserialize it for migration, which expands scope beyond the stated purpose. The script also writes token cache, DB, logs and a recycle directory under /root paths and will delete local recycle files automatically after 15 days.
Install Mechanism
No install spec (instruction-only + included script). This minimizes install-time risk — dependencies are standard Python packages (msal, requests) that the user must install into a virtualenv. Nothing in the package install mechanism fetches arbitrary remote code at install time.
Credentials
The skill requests no platform env vars but requires sensitive configuration values in its config file: Azure auth.client_id (and via device-flow will obtain and persist an access token), and OCR/embedding api_key(s). By default, OCR/embedding traffic is sent to a third‑party endpoint (https://api.siliconflow.cn). That means image bytes and extracted text/embeddings would be transmitted off‑site — proportionate for OCR/semantic indexing but a privacy/exfiltration risk that must be accepted explicitly. Additionally, the runtime's attempt to read a legacy token cache at /root/.openclaw/workspace/token_cache.json could allow it to access unrelated tokens/credentials, which is disproportionate to the OneDrive photo task.
Persistence & Privilege
The skill does not set always:true and can be invoked normally. At runtime it will persist a token cache, an SQLite index DB, logs, and local recycle files (tmp_photo). Writing its own token cache and index is expected, but reading/migrating a legacy cache at a global path is a privilege expansion: it may access tokens created by other tools. The skill can perform destructive cloud operations (delete/move/upload) if configuration is changed (mode.read_only=false and auth.scopes set to Files.ReadWrite); by default read_only=true but enabling writes requires deliberate config changes.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install onedrive-photo-batch
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /onedrive-photo-batch 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.2.0
- 增加 OneDrive 照片按名称、日期、大小、格式、相册的多条件筛选与批量处理能力。 - 支持批量 OCR、多模态识别、全量索引、哈希增量跳过及语义检索。 - 实现云端为主、临时落地、索引持久化原则,处理时仅临时下载照片,删除时进入本地回收站。 - 全新回收站治理:软删除本地保留副本、逻辑删除索引、自动清理超期回收文件。 - 加入灵活批处理命令,包括批量移动、上传、导出等操作并支持限速并发。 - 配置细节更完善,支持运行前依赖/配置检查与稳态性能参数。
元数据
Slug onedrive-photo-batch
版本 0.2.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

onedrive-photo-batch 是什么?

OneDrive 照片批处理与索引技能。用于对 OneDrive 照片做按名称/日期/大小/格式/相册筛选、批量 OCR/多模态识别、full 全量索引、哈希增量跳过、语义检索、移动/上传/删除/恢复与回收站治理。用户提到 OneDrive 批量识别、照片索引、相册级模型策略、限速并发、删除恢复、15天回收站清理... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 114 次。

如何安装 onedrive-photo-batch?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install onedrive-photo-batch」即可一键安装,无需额外配置。

onedrive-photo-batch 是免费的吗?

是的,onedrive-photo-batch 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

onedrive-photo-batch 支持哪些平台?

onedrive-photo-batch 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 onedrive-photo-batch?

由 Lanqeur(@lanqeur)开发并维护,当前版本 v0.2.0。

💬 留言讨论