google-apps-script
Build Google Apps Script automation for Sheets and Workspace. Custom menus, triggers (onEdit / time-driven / form submit), dialogs, sidebars, email batches, PDF export, external API. Use whenever the user wants to automate a Google Sheet, build a Sheets menu / sidebar / dialog, hit a Sheets row from email or a webhook, schedule a Sheets workflow, or asks 'how do I script this in Sheets'.
npx skills add jezweb/claude-skills --skill google-apps-script --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Build automation scripts for Google Sheets and Workspace apps. Scripts run server-side on Google's infrastructure with a generous free tier.
How it works
- Produces Apps Script code to be pasted into Extensions > Apps Script, creating custom menus, dialogs, sidebars, and automated triggers (on edit, time-driven, form submit).
- Generates scripts with a header comment, configuration constants, and an onOpen function to set up menus.
- Provides a structured Script Structure Template showing public function patterns, a menu setup, and example functions.
- Includes patterns for UI elements (toasts, alerts, prompts) and a sidebar example using google.script.run for server calls.
- Demonstrates triggers: simple onEdit, and installable triggers (via ScriptApp.newTrigger) for time-driven, onEdit with full permissions, and onFormSubmit.
- Shows examples for emailing from Sheets, exporting PDFs, and external API calls via UrlFetchApp.
- Emphasizes batch data operations (getRange().getValues() / setValues()) for performance.
- Describes data validation, Properties Service, and common workflows like auto-archiving, duplicate highlighting, batch emails, and a summary dashboard generation across multiple sheets.
When to use it
Use when you want to automate a Google Sheet workflow, build a Sheets menu / sidebar / dialog, trigger actions from sheet edits, schedule tasks, or respond to form submissions. Suitable for automations that involve email, PDFs, and API integrations within Google Workspace.
What it can touch
- Extensions > Apps Script (where code is pasted)
- SpreadsheetApp, Ui, HtmlService, MailApp, UrlFetchApp, UrlFetchApp, Cache/Properties services (as shown in examples)
- ScriptApp for creating triggers
- Html/Client-server communication via google.script.run in sidebars
Caveats
- Public functions (no trailing underscore) are required for dialog access and menu actions; underscore-suffixed functions are private and cannot be called from client HTML.
- Bulk read/write patterns are emphasized for performance; individual cell loops are discouraged.
- Some operations (like PDF export URL construction) rely on undocumented URL parameters and may vary.
- OAuth consent is required on first run for unverified scripts; users must approve via Advanced > Go to [Project Name] > Allow.
- Runtime and quota details follow Google Apps Script limitations (no explicit numeric values provided here beyond examples in the snippets).
# Google Apps Script Build automation scripts for Google Sheets and Workspace apps. Scripts run server-side on Google's infrastructure with a generous free tier. ## What You Produce - Apps Script code pasted into Extensions > Apps Script - Custom menus, dialogs, sidebars - Automated triggers (on edit, time-driven, form submit) - Email notifications, PDF exports, API integrations ## Workflow ### Step 1: Understand the Automation Ask what the user wants automated. Common scenarios: - Custom menu with actions (report generation, data processing) - Auto-triggered behaviour (on edit, on form submit, scheduled) - Sidebar app for data entry - Email notifications from sheet data - PDF export and distribution ### Step 2: Generate the Script Follow the structure template below. Every script needs a header comment, configuration constants at top, and `onOpen()` for menu setup. ### Step 3: Provide Installation Instructions All scripts install the same way: 1. Open the Google Sheet 2. **Extensions > Apps Script** 3. Delete any existing code in the editor 4. Paste the script 5. Click **Save** 6. Close the Apps Script tab 7. **Reload the spreadsheet** (onOpen runs on page load) ### Step 4: First-
- What You Produce
- Workflow
- Step 1: Understand the Automation
- Step 2: Generate the Script
- Step 3: Provide Installation Instructions
- Step 4: First-Time Authorisation
- Script Structure Template
- Critical Rules
- Public vs Private Functions
- Batch Operations (Critical for Performance)
- V8 Runtime
- Flush Before Returning
- Simple vs Installable Triggers
- Custom Spreadsheet Functions
What does the google-apps-script skill do?
Build Google Apps Script automation for Sheets and Workspace. Custom menus, triggers (onEdit / time-driven / form submit), dialogs, sidebars, email batches, PDF export, external API. Use whenever the user wants to automate a Google Sheet, build a Sheets menu / sidebar / dialog, hit a Sheets row from email or a webhook, schedule a Sheets workflow, or asks 'how do I script this in Sheets'.
How do I install it?
Run `npx skills add jezweb/claude-skills --skill google-apps-script --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From jezweb/claude-skills, a repository with 954 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
