SuperAPI AI 工具集

google-drive-automation

办公与效率

查看项目

更新于 10-15 13:02

技能介绍

用途

该技能用于将 Google Drive 的文件级操作集成到本地自动化流程中。它面向需要直接对 Google Drive 进行读/写操作、且不希望引入 MCP 服务器依赖的场景。典型用途包括搜索、列出、上传、下载、移动和整理 Google Drive 中的文件与文件夹。

主要能力

该技能提供读命令与写命令两类操作。

读命令(通过 scripts/drive.py 执行,首次使用时如未登录会自动认证):

  • 全文搜索文件:python scripts/drive.py search "quarterly report"
  • 仅按标题搜索:python scripts/drive.py search "title:budget"
  • 使用 Google Drive URL 搜索(自动提取 ID):python scripts/drive.py search "https://drive.google.com/drive/folders/1ABC123..."
  • 搜索共享给当前用户的文件:python scripts/drive.py search --shared-with-me
  • 带分页的搜索:python scripts/drive.py search "report" --limit 5 --page-token "..."
  • 按精确名称查找文件夹:python scripts/drive.py find-folder "Project Documents"
  • 列出根目录文件:python scripts/drive.py list
  • 列出指定文件夹文件:python scripts/drive.py list 1ABC123xyz --limit 20
  • 下载文件:python scripts/drive.py download 1ABC123xyz ./downloads/report.pdf

写命令:

  • 上传文件到根目录:python scripts/drive.py upload ~/Documents/report.pdf
  • 上传到指定文件夹:python scripts/drive.py upload ~/Documents/report.pdf --folder 1ABC123xyz
  • 上传时自定义名称:python scripts/drive.py upload ~/Documents/report.pdf --name "Q4 Report.pdf"
  • 创建新文件夹:python scripts/drive.py create-folder "Project Documents"
  • 在另一文件夹内创建文件夹:python scripts/drive.py create-folder "Attachments" --parent 1ABC123xyz
  • 移动文件到其他文件夹:python scripts/drive.py move FILE_ID DESTINATION_FOLDER_ID
  • 复制文件:python scripts/drive.py copy FILE_ID;或指定名称与目标文件夹:python scripts/drive.py copy FILE_ID --name "Report Copy" --folder 1ABC123xyz
  • 重命名文件或文件夹:python scripts/drive.py rename FILE_ID "New Name.pdf"
  • 将文件移入回收站:python scripts/drive.py trash FILE_ID

使用方式

首次配置需完成认证:

  • 登录(会打开浏览器):python scripts/auth.py login
  • 查看认证状态:python scripts/auth.py status
  • 登出:python scripts/auth.py logout

搜索命令支持多种查询格式:全文(如 "quarterly report")、标题(如 "title:budget")、URL(自动提取文件/文件夹 ID)、文件夹 ID(25 个字符以上的 ID,列出文件夹内容)、原生查询(如 mimeType='application/pdf',直接传入 Drive 查询语法)。

文件 ID 为长字符串(如 1ABC123xyz_-abc123),可从搜索结果、find-folder 结果、list 结果或 Google Drive URL 中获取。

适用场景

  • 需要在 Google Workspace 账户下通过本地脚本搜索、列出、上传、下载、移动或整理 Drive 文件与文件夹。
  • 任务要求通过本地脚本直接对 Drive 进行读/写自动化。
  • 希望进行文件级 Drive 操作,而不引入 MCP 服务器依赖。

限制

  • 需要 Google Workspace 账户,不支持个人 Gmail 账户。
  • 支持材料可用性:本目录副本包含内联指引,但不包含以下支持路径,它们是外部前置条件,而非捆绑文件:<support-root>/scripts/auth.py 与 <support-root>/scripts/drive.py。使用依赖这些路径的步骤前,请先索取原始支持材料或已有安装;本目录未标识这些文件的已验证下载来源。应相对于该安装解析每个路径,检查其内容,并核实适用的许可证与执行前置条件。在所需文件存在之前,不要运行命令或声称已遵循某引用流程。不要伪造缺失的脚本,也不要把同名的无关文件视为等价物。本文档中完整记录的独立步骤可在用户授权范围内执行;任何有依赖的步骤应报告为不可用。
  • 下载限制:常规文件(PDF、图片等)可直接下载;Google Docs/Sheets/Slides 无法通过此工具下载,对于 Google Workspace 文件,请使用导出或专用工具。
  • 令牌管理:令牌通过系统密钥环安全存储(macOS:Keychain;Windows:Windows Credential Locker;Linux:Secret Service API,如 GNOME Keyring、KDE Wallet 等),服务名为 google-drive-skill-oauth,并使用 Google 的云函数自动刷新过期令牌。
  • 仅当任务明确匹配上述范围时使用该技能。
  • 不要将输出视为环境相关验证、测试或专家评审的替代。
  • 如果缺少所需输入、权限、安全边界或成功标准,应停止并请求澄清。