Add Google integrations and documentation
This commit is contained in:
@@ -9,3 +9,9 @@ This folder contains detailed docs for each skill in this repository.
|
||||
- [`portainer`](portainer.md) — Portainer stack management (list, lifecycle, updates, image pruning)
|
||||
- [`searxng`](searxng.md) — Privacy-respecting metasearch via a local or self-hosted SearXNG instance
|
||||
- [`web-automation`](web-automation.md) — Playwright + Camoufox browser automation and scraping
|
||||
|
||||
|
||||
## Integrations
|
||||
|
||||
- [`google-maps`](google-maps.md) — Traffic-aware ETA and leave-by calculations via Google Maps APIs
|
||||
- [`google-workspace`](google-workspace.md) — Gmail and Google Calendar helper CLI
|
||||
|
||||
33
docs/google-maps.md
Normal file
33
docs/google-maps.md
Normal file
@@ -0,0 +1,33 @@
|
||||
# google-maps integration
|
||||
|
||||
Google Maps traffic/ETA helper CLI using Geocoding API and Routes API.
|
||||
|
||||
## What this integration is for
|
||||
|
||||
- Drive ETA between two places
|
||||
- Leave-by time estimation for a target arrival
|
||||
- Quick traffic-aware route summaries
|
||||
|
||||
## Runtime
|
||||
|
||||
- `node`
|
||||
- no package dependencies beyond built-in runtime APIs on current Node
|
||||
|
||||
## Auth
|
||||
|
||||
Preferred:
|
||||
- `GOOGLE_MAPS_API_KEY` environment variable
|
||||
|
||||
Fallback key file:
|
||||
- `~/.openclaw/credentials/google-maps/apikey.txt`
|
||||
|
||||
Required Google APIs for the key:
|
||||
- Geocoding API
|
||||
- Routes API
|
||||
|
||||
## Commands
|
||||
|
||||
```bash
|
||||
node integrations/google-maps/traffic.js eta --from "DFW Airport" --to "Love Field" --departAt now
|
||||
node integrations/google-maps/traffic.js leave-by --from "Home" --to "DFW Airport" --arriveBy 2026-03-17T08:30:00-05:00
|
||||
```
|
||||
47
docs/google-workspace.md
Normal file
47
docs/google-workspace.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# google-workspace integration
|
||||
|
||||
Google Workspace helper CLI for Gmail and Google Calendar.
|
||||
|
||||
## What this integration is for
|
||||
|
||||
- Show mailbox identity/profile
|
||||
- Send email
|
||||
- Search mail
|
||||
- Search calendar events
|
||||
- Create calendar events
|
||||
|
||||
## Runtime
|
||||
|
||||
- `node`
|
||||
- dependency: `googleapis`
|
||||
|
||||
Install inside the integration folder if needed:
|
||||
|
||||
```bash
|
||||
cd integrations/google-workspace
|
||||
npm install
|
||||
```
|
||||
|
||||
## Auth and defaults
|
||||
|
||||
Default impersonation:
|
||||
- `stefano@fiorinis.com`
|
||||
|
||||
Key lookup order:
|
||||
1. `GW_KEY_PATH`
|
||||
2. `~/.openclaw/workspace/.clawdbot/credentials/google-workspace/service-account.json`
|
||||
3. `~/.clawdbot/credentials/google-workspace/service-account.json`
|
||||
|
||||
Optional env:
|
||||
- `GW_IMPERSONATE`
|
||||
- `GW_KEY_PATH`
|
||||
|
||||
## Commands
|
||||
|
||||
```bash
|
||||
node integrations/google-workspace/gw.js whoami
|
||||
node integrations/google-workspace/gw.js send --to "user@example.com" --subject "Hello" --body "Hi there"
|
||||
node integrations/google-workspace/gw.js search-mail --query "from:someone@example.com newer_than:7d" --max 10
|
||||
node integrations/google-workspace/gw.js search-calendar --timeMin 2026-03-17T00:00:00-05:00 --timeMax 2026-03-18T00:00:00-05:00 --max 20
|
||||
node integrations/google-workspace/gw.js create-event --summary "Meeting" --start 2026-03-20T09:00:00-05:00 --end 2026-03-20T10:00:00-05:00
|
||||
```
|
||||
Reference in New Issue
Block a user