用途
gws-chat 是 gws-claude-plugin 提供的一个命令行技能,用于通过 Google Chat API(v1)管理 Google Chat 的聊天空间(spaces)和消息(messages)。它以 gws chat <resource> <method> [flags] 的形式调用,适合在命令行或自动化流程中对 Google Chat 资源进行读写操作。
前置条件
使用前需先阅读 ../gws-shared/SKILL.md,其中包含认证方式、全局参数与安全规则。如果该文件缺失,需运行 gws generate-skills 生成。
主要能力
辅助命令
+send:向某个空间发送消息。
API 资源
customEmojis(自定义表情)
create:创建自定义表情。自定义表情仅对 Google Workspace 账号可用,且管理员需为组织开启该功能。delete:删除自定义表情。默认情况下用户只能删除自己创建的表情;管理员指定的表情管理员可删除组织内任意自定义表情。get:返回自定义表情的详细信息。list:列出当前认证用户可见的自定义表情。
media(媒体)
download:下载媒体,支持 URI/v1/media/{+name}?alt=media。upload:上传附件。
spaces(空间)
completeImport:完成指定空间的导入流程,使其对用户可见。create:创建空间,可用于创建命名空间,或在 Import 模式下创建群聊。delete:删除命名空间,始终执行级联删除,空间下的子资源(如消息、成员关系)也会被删除。findDirectMessage:返回与指定用户的现有私信空间;若未找到则返回 404 NOT_FOUND。使用应用认证时,返回指定用户与调用 Chat 应用之间的私信空间。get:返回空间详细信息。list:列出调用者所属的空间。群聊和私信在发送第一条消息前不会被列出。patch:更新空间。若更新 displayName 字段时收到 ALREADY_EXISTS 错误,需尝试其他显示名称,因为 Google Workspace 组织内可能已有空间使用该名称。search:根据管理员搜索返回 Google Workspace 组织内的空间列表,请求中需将use_admin_access设为 true。setup:创建空间并添加指定用户。调用用户会自动加入空间,不应在请求中作为成员指定。可通过 membership.member.name 指定要添加的人类成员,格式为users/{user},其中 {user} 可为用户邮箱地址。members:对 members 资源的操作。messages:对 messages 资源的操作。spaceEvents:对 spaceEvents 资源的操作。
users
spaces:对 spaces 资源的操作。
使用方式
调用任何 API 方法前,建议先查看其定义:
# 浏览资源与方法
gws chat --help
# 查看某方法的必填参数、类型与默认值
gws schema chat.<resource>.<method>
使用 gws schema 的输出构建 --params 与 --json 参数。
适用场景
- 在命令行或脚本中创建、查询、更新、删除 Google Chat 空间。
- 向空间发送消息、上传或下载媒体附件。
- 管理空间成员、消息与空间事件。
- 管理 Google Workspace 组织内的自定义表情。
- 以管理员身份搜索组织内的空间。
限制
- 自定义表情仅对 Google Workspace 账号可用,且需管理员为组织开启该功能。
- 删除空间为级联删除,会一并删除其消息与成员关系。
- 群聊和私信在发送第一条消息前不会出现在空间列表中。
- 更新 displayName 时若名称已被占用会返回 ALREADY_EXISTS 错误。
- 使用前必须完成 gws-shared 中的认证与安全配置。