跳转到正文
报告库
用途分类 / 其他用途

Gws Calendar Insert Skill 安全审计

作者说它能做什么(原文)

Google Calendar: Create a new event.

第三方安全检查结论

发现安全风险

已检查文件
1
发现的风险
2
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。发现 1 项风险
中风险

共享说明缺失时会要求运行额外的生成命令

原文依据:1 处
发现了什么

技能要求先读取相邻的共享技能;若文件不存在,则运行 `gws generate-skills`。这项额外执行并非创建日历事件本身所必需的参数步骤,而且所提供源码没有说明该命令会生成或改动什么。

为什么需要注意

在共享文件缺失的条件下,代理可能在创建事件之前运行一个未经此审计覆盖的本地生成器,并以用户权限产生未说明的环境或文件变更。

这段证据能说明什么

第16行确实是在共享说明缺失时主动要求运行 `gws generate-skills`,可能产生本地文件,因此它超出了单次创建日历事件的直接操作。但所给源码没有该命令的实现、生成范围或权限信息,无法判断它是否会覆盖文件、接触凭据或造成其他实质风险。用户可要求作者说明其准确输出路径和是否覆盖现有内容,并在执行前单独确认。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
SKILL.md:16来自说明文档打开原文件
> **PREREQUISITE:** Read `../gws-shared/SKILL.md` for auth, global flags, and security rules. If missing, run `gws generate-skills` to create it.
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。发现 1 项风险
中风险

确认信息不完整时可能把事件写入错误的主日历或包含非预期参与者

原文依据:3 处
发现了什么

`--calendar` 可省略且默认使用主日历,同时命令支持多个参与者邮箱、描述和地点。虽然技能要求确认,但没有规定确认时必须展示解析后的账户、日历和完整参与者列表。

为什么需要注意

若用户拥有多个账户或日历,含会议内容和邮箱地址的事件可能进入错误的主日历;加入错误参与者也可能向非预期人员暴露事件信息或触发日历相关通知。

这段证据能说明什么

源码明确说明省略 `--calendar` 会使用 primary,也允许重复添加参与者;若代理误解用户意图,确有写入错误日历或邀请错误人员的可能。不过,这些是创建事件的正常、已说明功能,而且技能明确要求执行前确认。候选所称“确认信息不完整”并未出现在源码中,也没有实际调用或确认内容可供核对,因此只能认定为取决于执行方式的风险。用户可要求确认时列出账户、日历、时间及全部参与者。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
SKILL.md:30来自说明文档打开原文件
|------|----------|---------|-------------|| `--calendar` | — | primary | Calendar ID (default: primary) || `--summary` | ✓ | — | Event summary/title || `--start` | ✓ | — | Start time (ISO 8601, e.g., 2024-01-01T10:00:00Z) || `--end` | ✓ | — | End time (ISO 8601) || `--location` | — | — | Event location || `--description` | — | — | Event description/body || `--attendee` | — | — | Attendee email (can be used multiple times) || `--meet` | — | — | Add a Google Meet video conference link |
查看另外 2 个位置
SKILL.md:52来自说明文档打开原文件
> [!CAUTION]> This is a **write** command — confirm with the user before executing.
SKILL.md:36来自说明文档打开原文件
| `--description` | — | — | Event description/body || `--attendee` | — | — | Attendee email (can be used multiple times) || `--meet` | — | — | Add a Google Meet video conference link |
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。未发现风险
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。未发现风险
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。未发现风险
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。未发现风险

Skill 逻辑拆解

5 个说明模块

该技能的实时用途是通过 `gws` 在 Google Calendar 中新建事件;标题、开始时间和结束时间为必填参数。

查看原文
SKILL.md:18来自说明文档打开原文件
create a new event## Usage```bashgws calendar +insert --summary <TEXT> --start <TIME> --end <TIME>```

未指定 `--calendar` 时,事件会写入主日历。技能还允许加入地点、描述、参与者邮箱和 Google Meet 链接。

查看原文
SKILL.md:30来自说明文档打开原文件
|------|----------|---------|-------------|| `--calendar` | — | primary | Calendar ID (default: primary) || `--summary` | ✓ | — | Event summary/title || `--start` | ✓ | — | Start time (ISO 8601, e.g., 2024-01-01T10:00:00Z) || `--end` | ✓ | — | End time (ISO 8601) || `--location` | — | — | Event location || `--description` | — | — | Event description/body || `--attendee` | — | — | Attendee email (can be used multiple times) || `--meet` | — | — | Add a Google Meet video conference link |

技能明确把该操作标为写入命令,并要求代理在执行前取得用户确认。

查看原文
SKILL.md:52来自说明文档打开原文件
> [!CAUTION]> This is a **write** command — confirm with the user before executing.
从这里开始 · 工作说明SKILL.md
gws-calendar-insert
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。
文件与检查记录1 个文件

检查范围与遗漏

逐文件查看涉及的内容

下方列出本次涉及的原文范围;纳入检查不代表已查清所有问题。

  • SKILL.md已纳入全文

这份报告只针对上方版本。我们看了拿到的代码和说明文件,没有实际运行 Skill,也没有检查它另外安装的软件包。因此,这不是“保证安全”的承诺;换了版本或使用环境,结果也可能不同。

  • SKILL.md工作说明

代码和说明中提到的操作

运行命令
SKILL.md:22来自说明文档打开原文件
```bashgws calendar +insert --summary <TEXT> --start <TIME> --end <TIME>
SKILL.md:41来自说明文档打开原文件
```bashgws calendar +insert --summary 'Standup' --start '2026-06-17T09:00:00-07:00' --end '2026-06-17T09:30:00-07:00'
读取了多少行
59
文件校验值(用于核对版本)
0b69bcd5f252789db5a201ec83337672c466d41bbf45734e1303e3a417a57afa