Skip to content
Report library
Purpose / Other

Gws Forms Skill Security Audit

What the author says it does (original text)

Read and write Google Forms.

Independent security check

Security risks found

Files checked
1
Risks found
2
Could it run dangerous commands?Looks for programs run straight after downloading, remote control of your computer, and hidden commands.No risks found
Could it expose your files or keys?Looks for uploads of files containing passwords or keys, and keys written directly in the code.No risks found
Could it delete files or keep running?Looks for broad file deletion, disk overwrites, and programs set to start automatically.Risks found: 1
Medium risk

If a shared prerequisite is missing, the Skill directs generation of files in an adjacent location

Source references: 1
What we found

The live instruction requires reading `../gws-shared/SKILL.md` and, if absent, running `gws generate-skills`. A request merely to use Forms can therefore trigger file generation whose scope and contents are not shown. The supplied source contains neither the generator implementation nor its output, so which files it creates or overwrites cannot be verified.

Why this matters

When triggered, this may make persistent filesystem changes. The evidence does not establish whether existing related files could be overwritten.

What this evidence establishes

This is an active prerequisite: if the shared file is missing, it directs the agent to run a generator, which may write files. However, the source provides neither the generator implementation nor its destinations or overwrite behavior, so writing outside the workspace or overwriting files is not established. The user can ask the author for exact output paths and overwrite rules, and restrict execution to a controlled directory.

This assessment concerns the code and conditions shown, not proof that harm has occurred.
SKILL.md:16In the instructionsOpen original file
> **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it.
Could it bypass safety checks?Looks for skipped website security checks, excessive file access, or actions that skip your approval.Risks found: 1
Medium risk

Authentication and security controls are delegated to an unavailable, potentially generated Skill

Source references: 2
What we found

This file delegates authentication, global flags, and security rules to a neighboring `gws-shared` Skill that is not included in the supplied source and may be generated at runtime. Because this Skill exposes form-writing and publication-setting methods, the external rules may determine credential use, authorization scope, and when changes are allowed, but those controls cannot be reviewed here.

Why this matters

If the external file requests excessive authorization or contains unsafe instructions, an agent could use account permissions or alter form visibility under conditions the user cannot predict from this Skill. The available evidence does not establish that the external content is malicious.

What this evidence establishes

The Skill explicitly delegates authentication, global flags, and security rules to a shared file absent from the evidence, so those controls cannot be reviewed here. It also exposes form and publishing changes, making the missing rules relevant to credential use and authorization; however, there is no evidence that those rules are unsafe or bypass consent. The user can require the shared Skill for review before permitting writes and use a least-privileged account.

This assessment concerns the code and conditions shown, not proof that harm has occurred.
SKILL.md:16In the instructionsOpen original file
> **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it.
Show 1 other places
SKILL.md:26In the instructionsOpen original file
  - `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
Could it mislead the AI or hide text?Checks the skill instructions for requests to ignore you, influence the report, or hide text in invisible characters.No risks found
Could it change links or payment recipients without asking?Looks for forced referral or payment changes combined with instructions to hide the change.No risks found

Inside this skill

2 instruction sections

This Skill documents a command-line interface for Google Forms, declares read/write capability, and requires a local `gws` executable.

View source
SKILL.md:3In the instructionsOpen original file
name: gws-formsdescription: "Read and write Google Forms."metadata:
SKILL.md:8In the instructionsOpen original file
    category: "productivity"    requires:      bins:        - gws    cliHelp: "gws forms --help"---
SKILL.md:18In the instructionsOpen original file
```bashgws forms <resource> <method> [flags]```

The listed API can do more than read forms: it can batch-modify a form and change its publication settings. Whether this occurs depends on the method and parameters the agent invokes.

View source
SKILL.md:26In the instructionsOpen original file
  - `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

Before invoking an API, the Skill directs the agent to inspect command help and the method schema, then use that output to construct parameters and JSON request bodies.

View source
SKILL.md:35In the instructionsOpen original file
Before calling any API method, inspect it:```bash# Browse resources and methodsgws forms --help# Inspect a method's required params, types, and defaultsgws schema forms.<resource>.<method>```Use `gws schema` output to build your `--params` and `--json` flags.
Start here · InstructionsSKILL.md
gws-forms
Lines connect the instruction file to its sections, not an observed execution order. Select a section to read the source.
Files and check records1 files

Coverage and gaps

Content covered in each file

These are the source ranges included in this check, not a guarantee that every issue has been resolved.

  • SKILL.mdFull text included

This report is for the version above. We read the available code and instructions without running the skill or checking extra packages it installs. This is not a promise of safety: a different version or setup may behave differently.

  • SKILL.mdInstructions

Operations mentioned in code and instructions

Run commands
SKILL.md:18In the instructionsOpen original file
```bashgws forms <resource> <method> [flags]
SKILL.md:37In the instructionsOpen original file
```bash# Browse resources and methods
Lines read
47
File checksum (to compare versions)
81216b3ec83c91d2212e7d860030a267358d5de76c2036c2990f45cd94dd1d26