
Gws Forms
Drive Google Forms create, update, publish settings, responses, and watches from an agent session using the gws CLI instead of hand-rolling OAuth and REST calls.
Overview
gws-forms is an agent skill for the Build phase that reads and writes Google Forms through the gws CLI and Forms v1 API methods.
Install
npx skills add https://github.com/googleworkspace/cli --skill gws-formsWhat is this skill?
- Documents two-step create: forms.create for title only, then batchUpdate to add items
- Covers batchUpdate, get, setPublishSettings, responses, and watches resources
- Discovery flow via gws forms --help and gws schema forms.<resource>.<method>
- Requires gws-shared SKILL.md for auth, global flags, and security rules
- Prerequisite gws binary on PATH with CLI help at gws forms --help
- Forms v1 skill metadata version 0.22.5
- Documented five top-level forms resource operations plus responses and watches
Adoption & trust: 20.1k installs on skills.sh; 26.9k GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You need Google Forms in an automated agent workflow but do not want to reimplement OAuth, request shapes, and method discovery for every repo.
Who is it for?
Solo builders already using the gws toolchain for Google Workspace who want Forms wired into scripts or agent tasks.
Skip if: Teams that need a hosted form builder UI, non-Google form stacks, or integrations when gws and gws-shared are not installed and configured.
When should I use this skill?
You need to read or write Google Forms via gws forms <resource> <method> after gws-shared auth is in place.
What do I get? / Deliverables
Your agent calls documented gws forms subcommands with schema-checked flags to create, update, publish, and inspect form responses in a repeatable CLI flow.
- Executed gws forms API calls (create, batchUpdate, get)
- Publish settings or response reads aligned to schema-inspected parameters
Recommended Skills
Journey fit
Form automation is product wiring—hooking a solo builder’s agent to Google Workspace APIs during implementation. The skill is a CLI façade over the Forms v1 API (batchUpdate, create, get, responses), which belongs on the integrations shelf rather than generic PM or docs.
How it compares
A Workspace CLI skill package for Forms, not a standalone MCP server or no-code form designer.
Common Questions / FAQ
Who is gws-forms for?
Indie developers and agent users who manage Google Workspace from the terminal via gws and want Forms API coverage in the same pattern as other gws resource skills.
When should I use gws-forms?
During Build when you automate surveys, intake forms, or response exports; after validating scope in Validate if forms replace a manual landing funnel; and in Grow when you poll responses for lightweight analytics pipelines.
Is gws-forms safe to install?
It assumes network access and Google API credentials through gws-shared rules—review the Security Audits panel on this page and restrict OAuth scopes before granting an agent shell access.
SKILL.md
READMESKILL.md - Gws Forms
# forms (v1) > **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it. ```bash gws forms <resource> <method> [flags] ``` ## API Resources ### forms - `batchUpdate` — Change the form with a batch of updates. - `create` — Create a new form using the title given in the provided form message in the request. *Important:* Only the form.info.title and form.info.document_title fields are copied to the new form. All other fields including the form description, items and settings are disallowed. To create a new form and add items, you must first call forms.create to create an empty form with a title and (optional) document title, and then call forms.update to add the items. - `get` — Get a form. - `setPublishSettings` — Updates the publish settings of a form. Legacy forms aren't supported because they don't have the `publish_settings` field. - `responses` — Operations on the 'responses' resource - `watches` — Operations on the 'watches' resource ## Discovering Commands Before calling any API method, inspect it: ```bash # Browse resources and methods gws forms --help # Inspect a method's required params, types, and defaults gws schema forms.<resource>.<method> ``` Use `gws schema` output to build your `--params` and `--json` flags.