
Recipe Sync Contacts To Sheet
Export your Google Workspace directory contacts into a spreadsheet for outreach lists, audits, or CRM handoff without manual copy-paste.
Overview
recipe-sync-contacts-to-sheet is an agent skill for the Operate phase that exports Google directory contacts into a Google Sheets spreadsheet using the gws CLI recipe steps.
Install
npx skills add https://github.com/googleworkspace/cli --skill recipe-sync-contacts-to-sheetWhat is this skill?
- 3-step recipe: list directory people via gws people, create Contacts sheet headers, append rows with gws sheets +append
- Requires prerequisite skills gws-people and gws-sheets plus gws CLI on PATH
- readMask names, emailAddresses, phoneNumbers with DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE
- pageSize 100 pagination pattern for directory listing as JSON
- OpenClaw recipe metadata v0.22.5 under productivity domain
- 3-step recipe: list contacts, create sheet headers, append each contact row
- Prerequisite skills: gws-people and gws-sheets
Adoption & trust: 15.3k installs on skills.sh; 26.9k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
You need an up-to-date contact directory in a sheet but only have CLI access to People and Sheets APIs.
Who is it for?
Indie operators or founders who already use gws skills and want a scripted directory-to-sheet export.
Skip if: Teams without Google Workspace directory access, gws CLI, or the gws-people and gws-sheets prerequisite skills loaded.
When should I use this skill?
Export Google Contacts directory to a Google Sheets spreadsheet.
What do I get? / Deliverables
After the recipe runs, a spreadsheet has header columns and appended rows for each listed directory contact with names, emails, and phones.
- Google Sheet with Contacts range and populated name/email/phone rows
Recommended Skills
Journey fit
Canonical shelf is Operate because this is a repeatable admin/export ritual once systems and accounts exist, not greenfield product build. Iterate fits one-off and recurring operational exports you refine (columns, filters, domain scope) after initial setup.
How it compares
A fixed multi-step recipe over ad-hoc gws one-liners when you want repeatable Contacts sheet sync.
Common Questions / FAQ
Who is recipe-sync-contacts-to-sheet for?
Solo and indie builders who manage Google Workspace and want an agent-guided export from People API into Sheets via the gws toolchain.
When should I use recipe-sync-contacts-to-sheet?
Use in Operate when refreshing a team contact sheet, after onboarding bursts, or before outreach campaigns when you need directory names, emails, and phones in one spreadsheet.
Is recipe-sync-contacts-to-sheet safe to install?
It instructs read/list and sheet append operations against your Google tenant; review the Security Audits panel on this page and scope OAuth tokens before running on production directories.
Workflow Chain
Requires first: gws people, gws sheets
SKILL.md
READMESKILL.md - Recipe Sync Contacts To Sheet
# Export Google Contacts to Sheets > **PREREQUISITE:** Load the following skills to execute this recipe: `gws-people`, `gws-sheets` Export Google Contacts directory to a Google Sheets spreadsheet. ## Steps 1. List contacts: `gws people people listDirectoryPeople --params '{"readMask": "names,emailAddresses,phoneNumbers", "sources": ["DIRECTORY_SOURCE_TYPE_DOMAIN_PROFILE"], "pageSize": 100}' --format json` 2. Create a sheet: `gws sheets +append --spreadsheet SHEET_ID --range 'Contacts' --values '["Name", "Email", "Phone"]'` 3. Append each contact row: `gws sheets +append --spreadsheet SHEET_ID --range 'Contacts' --values '["Jane Doe", "jane@company.com", "+1-555-0100"]'`