用途:当用户要求 Hermes 学习新工具、API、框架、工作流或领域知识以便日后任务使用,或创建、安装、改进可复用技能,或“自我教学/升级自己”时使用。普通一次性问答不使用此技能,除非用户明确要求保存技能。
必要前置检查:任何 TinyFish 调用前先确定模式。运行 which tinyfish && tinyfish --version || echo "TINYFISH_CLI_NOT_FOUND";若存在则执行 tinyfish auth status,已认证则用 CLI 模式。未找到 CLI 时检查环境变量 TINYFISH_API_KEY,存在则用 API 模式。两者都没有则停止并告知用户安装 npm install -g @tiny-fish/cli 并 tinyfish auth login,或在 https://agent.tinyfish.ai/api-keys 获取密钥设置环境变量;确认模式前不得继续。
核心流程:确认学习请求并发送简短进度更新;从请求中提取干净主题并保留约束;用 TinyFish 进行多次定向搜索,优先官方文档与权威示例,不虚构 URL;分析标题、摘要、URL、站点与排序,判断是否覆盖安装配置、主流程、边界情况与验证,覆盖不足则补充搜索;用 Fetch 抓取已知 URL,默认 3 至 8 个强来源,优先 markdown,单个失败不中断;编写聚焦的 SKILL.md,过程化、可复用,含陷阱、默认值、验证与引用,不堆砌原始文档;用 Hermes 技能管理保存并用 skill_view 或技能列表验证,最后只告知技能名。
搜索与抓取:CLI 示例 tinyfish search query "{topic} official documentation" --pretty;API 模式通过 https://api.search.tinyfish.ai 传 X-API-Key。抓取 CLI 示例 tinyfish fetch content get --format markdown "https://example.com/docs",可加 --links 并支持多 URL;API 模式向 https://api.fetch.tinyfish.ai POST JSON,每次最多 10 个 URL,逐 URL 返回错误。
生成技能要求:以 YAML frontmatter 开头,含 name(kebab-case)与 description(第三人称说明用途与使用时机);建议结构为标题、When To Use、Core Workflow、Defaults、Key Patterns、Gotchas、Validation、References;只写会改变执行的精确命令,附来源 URL。避免原始搜索转储、大段文档复制、通用套话、未验证声明、无默认推荐。
来源选择优先级:官方文档、API 参考、快速开始;官方示例与模板;含具体失败模式的 GitHub 议题;特定错误的 Stack Overflow 回答;填补真实空白的高质量博客。拒绝无实现细节的营销页、重复页、过时来源与浅显内容。
限制与验证:需先具备 CLI 或 API 密钥,无则无法运行;默认抓取 3 至 8 个来源,失败来源可替换。最终确认前端检查通过、至少一个权威来源、抓取内容确实被使用、frontmatter 含 name 与 description、技能名 kebab-case、包含工作流/默认值/陷阱/验证/引用且可被 Hermes 查看。