← 返回
未分类 Key 中文

Civic Google

Use gog (Google CLI) without manual OAuth setup — Civic handles token management automatically
使用 gog (Google CLI) 无需手动 OAuth 设置 — Civic 自动管理令牌
civictechuser
未分类 clawhub v0.1.1 1 版本 100000 Key: 需要
★ 0
Stars
📥 616
下载
💾 0
安装
1
版本
#latest

概述

This skill describes the @civic/openclaw-google plugin, which lets agents use gog (the Google Workspace CLI) without the user having to create a Google Cloud project, configure OAuth credentials, or manage tokens. Civic acts as an OAuth proxy — it provides the OAuth client, stores tokens encrypted server-side, refreshes them automatically, and the plugin requests only the scope each command actually needs.

Privacy and security

  • What is sent to Civic: The plugin sends the gog command prefix (e.g. gog gmail send) over HTTPS to app.civic.com for scope resolution. The proxy reads only the command prefix to determine which OAuth scope is needed — command arguments (email addresses, search queries, file names) are not logged, stored, or used by the proxy.
  • CIVIC_TOKEN: This is the user's own API key from their Civic account at app.civic.com. It authenticates the user to their own account and is never shared. It is sent as a Bearer token over HTTPS.
  • Token handling: OAuth access tokens are short-lived (~1 hour), stored encrypted (AES-256) on Civic's servers, and refreshed automatically. The agent never sees OAuth client secrets or refresh tokens.
  • Source code: The plugin is open source at https://github.com/civicteam/openclaw-google and published on npm as @civic/openclaw-google.

Setup

  1. Install the plugin:

```bash

openclaw plugins install @civic/openclaw-google

```

  1. Install gog (the Google CLI):

```bash

brew install gog

```

  1. Set your Civic API token in the gateway environment:

```bash

CIVIC_TOKEN=

```

Get your token from app.civic.com -> Settings -> API Keys.

  1. Restart the gateway.

How it works

  1. Agent calls gog gmail search newer_than:1d
  2. Plugin intercepts the exec tool call via a before_tool_call hook
  3. Plugin sends the command prefix to the Civic proxy for scope resolution
  4. Proxy matches gog gmail -> gmail.readonly scope
  5. If authorized: returns a short-lived access token, plugin sets GOG_ACCESS_TOKEN env var, gog runs
  6. If not yet authorized: blocks the tool call and surfaces an auth URL for the user to consent
  7. After first consent per scope, all future calls work automatically

Supported services and scope mapping

The plugin maps each gog subcommand to the narrowest OAuth scope required. Write operations get specific scopes; unrecognized subcommands fall back to read-only.

Gmail

  • gog gmail send — gmail.send
  • gog gmail draft, gog gmail drafts — gmail.compose
  • gog gmail trash, archive, read, unread, batch — gmail.modify
  • gog gmail (catch-all) — gmail.readonly

Calendar

  • gog calendar create, update, delete, respond, subscribe — calendar.events
  • gog calendar (catch-all) — calendar.readonly

Drive

  • gog drive upload, create, update, delete, move, rename, share, copy, import — drive.file
  • gog drive transfer — drive (full access, required for ownership transfer)
  • gog drive (catch-all) — drive.readonly

Docs

  • gog docs create, edit, append — documents
  • gog docs copy, delete, import — documents + drive.file
  • gog docs export — documents.readonly + drive.file
  • gog docs (catch-all) — documents.readonly + drive.readonly

Sheets

  • gog sheets write, append, delete, insert, format, merge, freeze, resize — spreadsheets
  • gog sheets create — spreadsheets + drive.file
  • gog sheets (catch-all) — spreadsheets.readonly + drive.readonly

Slides

  • gog slides create, copy — presentations + drive.file
  • gog slides edit, update, duplicate, delete — presentations
  • gog slides (catch-all) — presentations.readonly + drive.readonly

Tasks

  • gog tasks add, done, delete, move, update — tasks
  • gog tasks (catch-all) — tasks.readonly

Contacts

  • gog contacts create, update, delete, merge, batch — contacts
  • gog contacts (catch-all) — contacts.readonly

Chat

  • gog chat send — chat.messages.create
  • gog chat create — chat.spaces
  • gog chat delete — chat.messages
  • gog chat (catch-all) — chat.spaces.readonly + chat.messages.readonly

Forms

  • gog forms create, update, delete — forms.body
  • gog forms (catch-all) — forms.body.readonly + forms.responses.readonly

Apps Script

  • gog appscript run — script.projects
  • gog appscript deploy — script.deployments
  • gog appscript (catch-all) — script.projects.readonly + drive.readonly

Troubleshooting

  • "No CIVIC_TOKEN configured" — Set CIVIC_TOKEN in your gateway environment. Get it from app.civic.com -> Settings -> API Keys.
  • Auth URL keeps appearing — The user needs to click the authorization link and complete the Google consent screen. Each scope requires separate consent.
  • Token errors after working previously — The user may have revoked access in their Google account settings. Re-authorize by triggering any gog command.

Custom proxy URL

For local development, set OPENCLAW_PROXY_URL in the gateway environment:

OPENCLAW_PROXY_URL=http://localhost:3013/openclaw

版本历史

共 1 个版本

  • v0.1.1 当前
    2026-05-02 05:16 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

security-compliance

Skill Vetter

spclaudehome
AI智能体技能安全预审工具。安装ClawdHub、GitHub等来源技能前,检查风险信号、权限范围及可疑模式。
★ 1,219 📥 266,846
developer-tools

Github

steipete
使用 `gh` CLI 与 GitHub 交互,通过 `gh issue`、`gh pr`、`gh run` 和 `gh api` 管理议题、PR、CI 运行及高级查询。
★ 672 📥 324,514
ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,363 📥 319,033