app
Adom Google
Public Made by Adomby adom
Drive your whole Google Workspace from the terminal, run by your AI. Read Gmail, write Google Docs, build Google Sheets and Google Slides, search Google Drive, manage Google Calendar and Google Tasks, and post to Google Chat, plus any Google API and a zero-setup personal Gmail.
← Commit history
Org self-serve onboarding: onboard wizard + adom-google-onboarding skill + illustrated README (0.6.0)
2 files changed
+43−51
SKILL.md+11−1@@ -1,6 +1,6 @@ --- name: adom-google-description: Programmatic read+write access to a user's WHOLE Google Workspace — Gmail, Contacts, Drive, Sheets, Docs, Slides, Calendar, Tasks, Google Chat — plus a generic `api` passthrough to hit ANY Google API. CLI + OAuth only (no browser automation). Public/open-source; used daily by the Adom team. Auth is the account-specific part: Adom employees use it out of the box; other orgs either self-host their own OAuth gateway or email [email protected] for a managed OAuth container (~$5/mo). On FIRST-RUN SETUP you MUST ask the user to pick safe mode (no delete) vs full mode (incl. delete) before authorizing. Use when setting up/installing adom-google, authorizing Google, reading Gmail attachments/.ics, creating/listing/searching Contacts, editing Sheets/Docs/Slides, Drive files, Calendar events, posting to Google Chat, or any Google Workspace automation. Trigger words — adom-google, install adom-google, set up adom-google, configure adom-google, google workspace cli, edit google sheet/doc/slides, drive upload, calendar event, post to google chat, post to chat as me, message colby, send a chat, dm <person>, gmail attachment, google contacts, people api, safe mode vs full mode, google oauth gateway broker, google api passthrough, self-host oauth, managed oauth container.+description: Programmatic read+write access to a user's WHOLE Google Workspace — Gmail, Contacts, Drive, Sheets, Docs, Slides, Calendar, Tasks, Google Chat — plus a generic `api` passthrough to hit ANY Google API. CLI + OAuth only (no browser automation). Public/open-source; used daily by the Adom team. Auth is the account-specific part: Adom employees use it out of the box; other orgs either self-host their own OAuth gateway or email [email protected] for a managed OAuth container (~$5/mo). On FIRST-RUN SETUP you MUST ask the user to pick safe mode (no delete) vs full mode (incl. delete) before authorizing. Use when setting up/installing adom-google, authorizing Google, reading Gmail attachments/.ics, creating/listing/searching Contacts, editing Sheets/Docs/Slides, Drive files, Calendar events, posting to Google Chat, or any Google Workspace automation. For a brand-new ORG that needs its own Google OAuth client (non-Adom team getting started), use the companion `adom-google-onboarding` skill — it drives the user's real browser through Google Cloud Console and auto-configures everything. Trigger words — adom-google, install adom-google, set up adom-google, configure adom-google, google workspace cli, edit google sheet/doc/slides, drive upload, calendar event, post to google chat, post to chat as me, message colby, send a chat, dm <person>, gmail attachment, google contacts, people api, safe mode vs full mode, google oauth gateway broker, google api passthrough, self-host oauth, managed oauth container, onboard my org to google, set up google workspace for my company/team, configure google oauth for <org>, get my company on adom-google, create our google cloud oauth client. --- # adom-google@@ -38,6 +38,16 @@ Gemini CLI, and `gcloud`. Conclusion: **call the REST APIs directly.** The code is structured so a `gws` backend *could* be slotted behind the same subcommands later; today the win is zero new runtime dependencies and a clean migration from adom-gmail. +## Onboarding a brand-new org (give a team its OWN Google client)++If a **non-Adom** org wants to get going on their own, they need their own Google OAuth client.+Don't make them slog through Google Cloud Console by hand — use the **`adom-google-onboarding`**+skill, which drives the user's real logged-in browser (adom-desktop `nbrowser_*`) through the+console, auto-fills the fields (especially the redirect URI), captures the new client, and wires+it in RELAY mode (their secret stays `0600` on their box; Adom only lends a shared callback URL).+Kick it off with `adom-google onboard --org <slug>` (or `--json` for the exact values). Adom+employees skip all this — they install `adom-google-adom` and just run `auth`.+ ## Install `install.mjs` symlinks the CLI onto PATH automatically. Manual:
page.json+32−50@@ -1,22 +1,22 @@ {+ "schema_version": 1,+ "type": "app", "slug": "adom-google",+ "title": "adom-google",+ "brief": "Drive your whole Google Workspace from the terminal — Gmail, Drive, Sheets, Docs, Slides, Calendar, Tasks, Chat + any Google API.", "version": "0.6.0",- "type": "app",- "license": "MIT",- "description": "Drive your whole Google Workspace from the terminal — Gmail, Contacts, Drive, Sheets, Docs, Slides, Calendar, Tasks, Google Chat, plus a generic `api` passthrough to hit ANY Google API. Open source, ships with NO OAuth provider baked in: point it at your own token-broker gateway (`provider set`), buy a managed one, or — Adom staff — install the private adom-google-adom provider. One-click OAuth, no client secret on your machine. First run asks safe mode (no delete) vs full mode (incl. delete).",- "keywords": [- "adom-google",- "google-workspace",- "oauth",- "gmail",- "google-sheets",- "google-docs",- "google-slides",- "google-calendar",- "google-chat",- "cli",- "ai-agent"- ],+ "visibility": "public",+ "install": {+ "binary_name": "adom-google",+ "install_dir": "",+ "install_hint": "",+ "version_cmd": ""+ },+ "author": {+ "id": "6738b00a4dc87b8adbb0a5a3",+ "name": "John Lauer",+ "email": "[email protected]"+ }, "tags": [ "google-workspace", "oauth",@@ -26,39 +26,21 @@ "open-source", "mit" ],- "install": {- "binary_name": "adom-google"+ "license": "MIT",+ "hero": {+ "path": "docs/hero.png",+ "type": "image" },- "dependencies": {},- "scripts": {- "install": "./install.sh",- "uninstall": "./uninstall.sh"+ "sample_prompts": [],+ "discovery_triggers": [],+ "discovery_pitch": null,+ "metadata": {+ "hero_path": "docs/hero.png",+ "hero_type": "image" },- "files": [- "bin/adom-google",- "bin/adom-gmail",- "skills/adom-google/SKILL.md",- "skills/adom-google-onboarding/SKILL.md",- "README.md",- "LICENSE",- "MIGRATION.md",- "provider.example.json",- "docs/hero.png",- "docs/enable-apis.png",- "docs/chat-reads-email.png",- "docs/onboard-1-plan.png",- "docs/onboard-2-enable-apis.png",- "docs/onboard-3-redirect-uri.png",- "docs/onboard-4-authorized.png",- "screenshots/hero.png",- "install.sh",- "uninstall.sh",- "package.json"- ],- "visibility": "public",- "org": "adom",- "author": {- "name": "John Lauer",- "email": "[email protected]"- }-}+ "created_at": "2026-06-16T22:28:58.933Z",+ "updated_at": "2026-06-17T00:57:47.322Z",+ "skills": [],+ "hero_path": "docs/hero.png",+ "hero_type": "image"+}