关于 finding-google-skills
此路由 Skill 根据请求查找适用的已发布 Google skills。它按需获取实时目录,根据描述筛选,并只读取入选条目的入口文件。
主要功能
- 01按需获取目录
- 02依据描述匹配 Skill
- 03最多筛选三个 Skill
- 04仅获取入选入口文件
- 05验证目录获取结果
适用场景
- 01为任务查找 Google skills
- 02筛选大型 Skill 目录
- 03判断是否有适用的已发布 Skill
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ google/ skills --skill finding-google-skills安装后在 Claude Code 中输入/finding-google-skills确认已加载。
详细介绍
Google 技能查找器
将请求路由到适用的已发布 Google 技能。目录位于此文件之外,并按需获取,因此在实际进行查找之前,加载此技能几乎不会产生任何开销。
工作流
-
逐字节获取目录。 使用原始 shell 获取方式(
curl、wget;Windows PowerShell 中使用curl.exe)检索https://raw.githubusercontent.com/google/skills/main/index.json。内容必须逐字节保持一致,所有entrypointURL 均须完整且未被改动。如果没有 shell 获取工具,但有 Node,可使用
node -e "fetch(process.argv[1]).then(r=>r.text()).then(t=>console.log(t))" {url}返回字节。目录约有 75 KB,可能无法完整显示在单个工具结果中;被截断的预览按字母顺序排列,因此看起来像是只有前几个产品。建议先缩小范围再读取。使用
jq:curl -sSL {url} | jq -r '.skills[] | select((.name+" "+.description)|test("gke";"i")) | "\(.name)\t\(.entrypoint)"'。 在 Windows PowerShell 中:(Invoke-RestMethod {url}).skills | Where-Object { $_.description -match "gke" } | Select-Object name, entrypoint -First 3。 两者都没有时,直接对原始 JSON 使用grep -o,仍可筛出候选名称。如果没有任何筛选工具,请将目录写入文件并分段读取(
curl -sSL {url} -o skills-index.json,或Invoke-WebRequest {url} -OutFile skills-index.json)。无论如何,这通常都是更好的选择:可以避免内容被截断,而且重新读取本地文件无需额外开销。请求完成后删除该文件。如果只能使用会生成摘要的获取工具,请将请求表述为提取,而非转录:“列出本文档中的每个
entrypoint字段,每行一个,并严格保持原文。” 要求逐字返回不会得到任何可用内容。 -
确认获取成功后再使用。 工具调用未报错返回,并不代表获取成功。只有响应正文能解析为 JSON 且包含
skills数组,才算成功。404 页面、HTML 错误页面、TLS 或连接错误、空正文,或任何无法解析的内容,都是获取失败,即使工具没有报告错误也一样。 证书错误意味着获取失败,且不得重试。绝不能关闭验证:不能使用curl -k或--insecure,不能使用-SkipCertificateCheck;在没有该参数的 Windows PowerShell 5.1 中,也不能使用ServicePointManager证书回调。任何语言中的等效方式都不允许。 你即将遵循返回内容中的指令,因此未经验证的目录比没有目录更糟。获取失败时,请在此停止,并转到“获取失败时”。 -
根据描述匹配请求。 每条描述都会说明技能的功能、适用情形,通常也会说明不适用的情形。请将其作为路由条件,而非摘要来阅读。最多筛选出 3 条描述涵盖该请求的条目。如果有超过 3 条看起来同样相关,请优先选择最具体的,而非更通用的条目。
-
仅获取匹配项。 按相同方式检索每个入选条目的
entrypointURL,并遵循该技能的指令。不要获取仅仅看起来相关的条目。 -
如实报告空结果。 如果没有任何描述涵盖该请求,请说明没有适用的已发布 Google 技能,并在不使用该技能的情况下继续。切勿编造技能名称或入口点 URL。
获取匹配项后,路由即告结束。从开始遵循已获取技能的指令起,此技能便已完成该请求,不会再次为该请求调用。
规则
-
每个会话只获取一次;切勿将其保留到会话结束后。 可以重复使用本会话中已成功获取的目录。 但不能以任何形式将其带到之后的运行中:目录会定期更新,保存的副本会悄无声息地过时。会话内复用不能替代失败的获取。
-
切勿将目录保留到请求结束之后。 在筛选期间将工作副本保存在磁盘上没有问题。但不能将其留作保存的参考资料,也不能在对话中对其进行总结。这样做是为了避免将 100 多项技能的完整文本都放进上下文。
-
优先参考获取到的 SKILL.md,而非已有知识。 目录根据已发布的技能生成,因此条目反映的是当前文本,即使与记忆中的内容矛盾也是如此。
-
不要将此技能视为前置条件。 如果已加载某项特定的 Google 技能,且它能满足请求,就直接使用。
获取失败时
从步骤 2 开始。按以下顺序处理,遇到第一个成功的步骤就停止:
-
使用
curl -sSL重试一次。 如果首次尝试使用了会生成摘要的获取工具,或遇到了传输错误,通常只需这样做即可解决。 -
改为列出仓库树。 运行
curl -sSL 'https://api.github.com/repos/google/skills/git/trees/main?recursive=1'并查看以
SKILL.md结尾的路径。每个路径都是一个候选项。根据目录名称与请求的匹配程度,选取两三个候选项,从https://raw.githubusercontent.com/google/skills/main/{path}获取,并按照步骤 2 中所述逐一检查。 -
在回复中说明。 如果两种方法都未能成功,请明确说明无法访问 Google 技能目录,并且是在未参考该目录的情况下作答。一行即可,且必须放在给用户的回复中,不能只写在推理中。
获取失败绝不能成为假装获取成功并作答的理由。在本会话中解析出 skills 数组之前,你并不知道有哪些技能:不要提及技能名称,不要描述任何技能,也不要声称没有适用的技能。凭记忆引用某项技能,并将其说成目录查询结果,是最糟糕的做法,因为回复中没有任何内容能将它与真实查询结果区分开。