Manage Google Workspace users, groups, devices, and organizational settings through CLI commands.
Works with
Covers 20+ resource types including users, groups, Chrome OS devices, mobile devices, organizational units, domains, roles, and schemas
Supports full CRUD operations on most resources: create, retrieve, list, update, patch, and delete
Includes specialized actions like device provisioning/deprovisioning, group membership management, 2-step verification control, and user sign-out
Requir
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versiongws-adminExecute the skills CLI command in your project's root directory to begin installation:
Fetches gws-admin from googleworkspace/cli and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
Restart Cursor to activate gws-admin. Access via /gws-admin in your agent's command palette.
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your environment. Always review source, verify the publisher, and test in isolation before production.
Submit your Claude Code skill and start earning
Create detailed user stories, acceptance criteria, and feature specs
Example
Generate user stories for 'password reset feature' with acceptance criteria, edge cases, and test scenarios
Reduce spec writing time by 50%, ensure comprehensive coverage
Research competitors, compare features, identify gaps
Example
Analyze 5 competitor products, create feature comparison matrix, suggest differentiation opportunities
Complete competitive research in 2 hours instead of 2 days
Evaluate features using frameworks (RICE, ICE, Kano) and create prioritized backlogs
Example
Score 20 feature ideas using RICE framework, generate prioritized roadmap with rationale
0
total installs
0
this week
23.9K
GitHub stars
0
upvotes
Run in your terminal
0
installs
0
this week
23.9K
stars
PREREQUISITE: Read
../gws-shared/SKILL.mdfor auth, global flags, and security rules. If missing, rungws generate-skillsto create it.
gws admin <resource> <method> [flags]
delete — Deletes an ASP issued by a user.get — Gets information about an ASP issued by a user.list — Lists the ASPs issued by a user.stop — Stops watching resources through this channel.action — Use BatchChangeChromeOsDeviceStatus instead. Takes an action that affects a Chrome OS Device. This includes deprovisioning, disabling, and re-enabling devices. Warning: * Deprovisioning a device will stop device policy syncing and remove device-level printers. After a device is deprovisioned, it must be wiped before it can be re-enrolled.get — Retrieves a Chrome OS device's properties.list — Retrieves a paginated list of Chrome OS devices within an account.moveDevicesToOu — Moves or inserts multiple Chrome OS devices to an organizational unit. You can move up to 50 devices at once.patch — Updates a device's updatable properties, such as annotatedUser, annotatedLocation, notes, orgUnitPath, or annotatedAssetId. This method supports patch semantics.update — Updates a device's updatable properties, such as annotatedUser, annotatedLocation, notes, orgUnitPath, or annotatedAssetId.devices — Operations on the 'devices' resourceget — Retrieves a customer.patch — Patches a customer.update — Updates a customer.chrome — Operations on the 'chrome' resourcedelete — Deletes a domain Alias of the customer.get — Retrieves a domain alias of the customer.insert — Inserts a domain alias of the customer.list — Lists the domain aliases of the customer.delete — Deletes a domain of the customer.get — Retrieves a domain of the customer.insert — Inserts a domain of the customer.list — Lists the domains of the customer.delete — Deletes a group.get — Retrieves a group's properties.insert — Creates a group.list — Retrieves all groups of a domain or of a user given a userKey (paginated).patch — Updates a group's properties. This method supports patch semantics.update — Updates a group's properties.aliases — Operations on the 'aliases' resourcedelete — Removes a member from a group.get — Retrieves a group member's properties.hasMember — Checks whether the given user is a member of the group. Membership can be direct or nested, but if nested, the memberKey and groupKey must be entities in the same domain or an Invalid input error is returned. To check for nested memberships that include entities outside of the group's domain, use the checkTransitiveMembership() method in the Cloud Identity Groups API.insert — Adds a user to the specified group.list — Retrieves a paginated list of all members in a group. This method times out after 60 minutes. For more information, see Troubleshoot error codes.patch — Updates the membership properties of a user in the specified group. This method supports patch semantics.update — Updates the membership of a user in the specified group.action — Takes an action that affects a mobile device. For example, remotely wiping a device.delete — Removes a mobile device.get — Retrieves a mobile device's properties.list — Retrieves a paginated list of all user-owned mobile devices for an account. To retrieve a list that includes company-owned devices, use the Cloud Identity Devices API instead. This method times out after 60 minutes. For more information, see Troubleshoot error codes.delete — Removes an organizational unit.get — Retrieves an organizational unit.insert — Adds an organizational unit.list — Retrieves a list of all organizational units for an account.patch — Updates an organizational unit. This method supports patch semanticsupdate — Updates an organizational unit.list — Retrieves a paginated list of all privileges for a customer.buildings — Operations on the 'buildings' resourcecalendars — Operations on the 'calendars' resourcefeatures — Operations on the 'features' resourcedelete — Deletes a role assignment.get — Retrieves a role assignment.insert — Creates a role assignment.list — Retrieves a paginated list of all roleAssignments.delete — Deletes a role.get — Retrieves a role.insert — Creates a role.list — Retrieves a paginated list of all the roles in a domain.patch — Patches a role.update — Updates a role.delete — Deletes a schema.get — Retrieves a schema.insert — Creates a schema.list — Retrieves all schemas for a customer.patch — Patches a schema.update — Updates a schema.delete — Deletes all access tokens issued by a user for an application.get — Gets information about an access token issued by a user.list — Returns the set of tokens specified user has issued to 3rd party applications.turnOff — Turns off 2-Step Verification for user.createGuest — Create a guest user with access to a subset of Workspace capabilities. This feature is currently in Alpha. Please reach out to support if you are interested in trying this feature.delete — Deletes a user.get — Retrieves a user.insert — Creates a user. Mutate calls immediately following user creation might sometimes fail as the user isn't fully created due to propagation delay in our backends. Check the error details for the "User creation is not complete" message to see if this is the case. Retrying the calls after some time can help in this case. If resolveConflictAccount is set to true, a 202 response code means that a conflicting unmanaged account exists and was invited to join the organization.list — Retrieves a paginated list of either deleted users or all users in a domain.makeAdmin — Makes a user a super administrator.patch — Updates a user using patch semantics. The update method should be used instead, because it also supports patch semantics and has better performance. If you're mapping an external identity to a Google identity, use the update method instead of the patch method. This method is unable to clear fields that contain repeated objects (addresses, phones, etc). Use the update method instead.signOut — Signs a user out of all web and device sessions and reset their sign-in cookies. User will have to sign in by authenticating again.undelete — Undeletes a deleted user.update — Updates a user. This method supports patch semantics, meaning that you only need to include the fields you wish to update. Fields that are not present in the request will be preserved, and fields set to null will be cleared. For repeating fields that contain arrays, individual items in the array can't be patched piecemeal; they must be supplied in the request body with the desired values for all items.watch — Watches for changes in users list.aliases — Operations on the 'aliases' resourcephotos — Operations on the 'photos' resourcegenerate — Generates new backup verification codes for the user.invalidate — Invalidates the current backup verification codes for the user.list — Returns the current set of valid backup verification codes for the specified user.Before calling any API method, inspect it:
# Browse resources and methods
gws admin --help
# Inspect a method's required params, types, and defaults
gws schema admin.<resource>.<method>
Use gws schema output to build your --params and --json flags.
Make data-driven prioritization decisions faster
Draft PRDs, status updates, and stakeholder presentations
Example
Create executive summary of Q3 roadmap, monthly progress report, feature launch announcement
Save 3-5 hours/week on communication overhead
Prerequisites
Time Estimate
30-60 minutes to see productivity improvements
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use for user story writing, competitive research, roadmap prioritization, stakeholder communication, and PRD drafting. Best for reducing repetitive documentation and research work.
✗ Avoid when
Avoid for strategic product vision (requires deep customer empathy), pricing decisions (needs market and financial expertise), or when face-to-face customer discovery is more valuable than speed.
mattpocock/skills
parcadei/continuous-claude-v3
cursor/plugins
ailabs-393/ai-labs-claude-skills
ailabs-393/ai-labs-claude-skills
pproenca/dot-skills
Keeps context tight: gws-admin is the kind of skill you can hand to a new teammate without a long onboarding doc.
We added gws-admin from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
gws-admin is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
Useful defaults in gws-admin — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
Registry listing for gws-admin matched our evaluation — installs cleanly and behaves as described in the markdown.
gws-admin is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
gws-admin fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
Registry listing for gws-admin matched our evaluation — installs cleanly and behaves as described in the markdown.
gws-admin fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
Useful defaults in gws-admin — fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
showing 1-10 of 34