SuperAPI AI 工具集

google-connect

办公与效率

查看项目

更新于 10-15 08:14

技能介绍

用途

Google Connect 是 Nexus 的 Google Workspace 集成设置向导。它的目标是引导用户完成一次 OAuth 设置,从而让 Nexus 能够访问全部 7 项 Google 服务:Gmail、Docs、Sheets、Calendar、Drive、Tasks 和 Slides。

主要能力

  • 检查 Google 配置状态,并根据退出码判断下一步操作。
  • 引导用户创建 Google Cloud 项目、启用所需 API、配置 OAuth 同意屏幕并创建 OAuth 凭据。
  • 将用户提供的 Client ID、Client Secret 和 Project ID 保存到 Nexus 根目录的 .env 文件。
  • 安装 Google API 相关 Python 依赖。
  • 执行 OAuth 登录流程,获取访问令牌。
  • 验证连接是否成功,并展示可用的服务与示例命令。
  • 支持重新认证(刷新令牌)和断开连接(移除令牌)。
  • 提供错误处理指引,覆盖凭据缺失、无效客户端、访问被拒、令牌过期、API 未启用等常见问题。

使用方式

该技能通过工作流组织操作,所有交互都必须先进行配置检查:

python 00-system/skills/google/google-master/scripts/check_google_config.py --json

退出码含义:

  • 退出码 0:已完全配置并认证,可直接使用,进入工作流 4(已连接)。
  • 退出码 1:凭据存在但需要登录,进入工作流 3(认证)。
  • 退出码 2:缺少凭据,需要完整设置,进入工作流 1(完整设置)。

工作流 1:完整设置(首次用户)。触发词包括“connect google”“setup google”,或配置检查返回退出码 2。流程包括:介绍、创建 Google Cloud 项目、启用 7 个 API(Gmail API、Google Docs API、Google Sheets API、Google Calendar API、Google Drive API、Google Tasks API、Google Slides API)、配置 OAuth 同意屏幕、创建 OAuth 凭据(桌面应用类型)、保存凭据到 .env。

工作流 2:安装依赖。在需要时于认证前运行:

pip install google-auth google-auth-oauthlib google-api-python-client

工作流 3:认证。触发条件为配置检查返回退出码 1,或工作流 1 完成后。运行:

python 00-system/skills/google/google-master/scripts/google_auth.py --login

工作流 4:已连接。触发条件为配置检查返回退出码 0,展示已配置状态和可用命令。

工作流 5:重新连接 / 重新认证。触发词包括“reconnect google”“reauth google”“refresh google token”。运行:

python 00-system/skills/google/google-master/scripts/google_auth.py --login

工作流 6:断开连接。触发词包括“disconnect google”“remove google”“logout google”。运行:

python 00-system/skills/google/google-master/scripts/google_auth.py --logout

适用场景

  • 首次将 Nexus 连接到 Google 账号。
  • 需要访问 Gmail、Docs、Sheets、Calendar、Drive、Tasks 或 Slides 中的一项或多项服务。
  • 需要检查当前 Google 集成状态。
  • 需要刷新 OAuth 令牌或重新认证。
  • 需要移除已存储的访问令牌。

限制

  • 需要用户拥有 Google 账号和浏览器访问权限。
  • 首次完整设置预计约 10 分钟。
  • 依赖 google-master 共享库中的脚本和参考文档。
  • 凭据保存在 .env 文件,访问令牌保存在 01-memory/integrations/google-token.json,两者均被 .gitignore 忽略,不会提交到版本控制。
  • 断开连接仅移除令牌,.env 中的凭据仍需手动删除。
  • 关于收费、价格、平台兼容性等更多信息,资料中暂未提供。