发布时间:2026/9/3 15:34:09
第08篇-learn命令-从任意来源自动生成技能 【Skills 系统从入门到精通】第 8 篇/learn 命令——从任意来源自动生成技能本篇你将学到/learn 命令的定位和核心价值四种输入来源的完整操作流程和实战案例/learn 生成的技能质量评估标准手动优化自动生成技能的方法/learn 与手写技能的选择策略读完本篇你将掌握不写一行 YAML 就能创建高质量技能的快速路径。一、/learn 命令的定位1.1 为什么需要 /learn在前面几篇中我们了解了 Skills 的核心概念和使用方法。如果你想创建自己的技能传统路径是手写 SKILL.md 文件——需要熟悉 YAML Frontmatter 规范、正文结构标准、触发条件写法等。这条路径的门槛不低。虽然 SKILL.md 本质上是 Markdown 文件但要写出一个触发准确、流程清晰、陷阱覆盖的高质量技能需要不少经验。/learn命令提供了另一条路径告诉 Agent “学会这个”它自己帮你生成技能。1.2 /learn 是什么/learn是一个斜杠命令它接受任意可描述的知识来源作为输入Agent 会用已有工具read_file、web_extract、terminal等收集和阅读源材料理解材料中的操作流程和知识点按照 SKILL.md 标准格式自动编写技能使用skill_manage工具保存技能整个过程不需要你写一行 YAML——你只需要指路Agent 负责学习和编写。收集阅读源材料read_file web_extract terminal理解操作流程与知识点按 SKILL.md 标准格式编写skill_manage 保存技能验证斜杠命令调用检查1.3 四种输入来源/learn支持四种类型的输入来源覆盖了绝大多数知识获取场景来源类型输入格式适用场景本地目录/文件本地路径已有的 SDK 文档、内部 Wiki 导出、代码注释在线文档 URLhttps://...官方 API 文档、技术博客、教程页面对话历史描述刚才的操作刚走完一个复杂工作流想沉淀为技能纯文字描述直接描述流程口述操作步骤、经验总结learn 输入来源本地目录文件SDK 文档内部 Wiki 导出代码注释在线文档 URL官方 API 文档技术博客教程页面对话历史刚走完的复杂工作流沉淀为技能纯文字描述口述操作步骤经验总结1.4 /learn 的底层机制/learn不是一个特殊指令——它只是一个构建好的提示告诉 Agent “请按照标准格式把这些材料写成技能”。Agent 用和平时一样的工具来收集材料、理解内容、生成 SKILL.md然后用skill_manage工具保存。这意味着/learn的效果取决于 Agent 的模型能力——模型越强理解和编写质量越高。同时也意味着它在所有界面CLI、Gateway、Dashboard和所有终端后端本地、Docker、远程上都能一致工作因为没有独立的摄取引擎。二、实战一从本地 SDK 文档生成技能2.1 场景你的项目中有一个内部 SDK文档存在本地目录~/projects/acme-sdk/docs/中。你想让 Agent 学会这个 SDK 的使用方法特别是认证和分页部分。2.2 操作在交互式会话中输入/learn the REST client in ~/projects/acme-sdk/docs/, focus on auth pagination2.3 Agent 的执行过程步骤1Agent 读取指定目录 terminal(ls ~/projects/acme-sdk/docs/) → auth.md, pagination.md, endpoints.md, errors.md, examples/ 步骤2Agent 阅读关键文档 read_file(~/projects/acme-sdk/docs/auth.md) → 了解到认证使用 Bearer Token获取方式为 POST /oauth/token read_file(~/projects/acme-sdk/docs/pagination.md) → 了解到分页使用 cursor 方式参数为 page_cursor page_size 步骤3Agent 提炼操作流程 - 如何获取 Token - 如何在请求中携带 Token - 如何处理 Token 过期 - 如何使用 cursor 分页 - 常见错误码和处理方式 步骤4Agent 生成 SKILL.md skill_manage(actioncreate, nameacme-sdk-client, content --- name: acme-sdk-client description: Use when working with the Acme REST API. Covers authentication (Bearer Token) and cursor-based pagination. --- # Acme SDK Client ## When to Use ... ## Procedure 1. Authentication: POST /oauth/token with client_id client_secret 2. Token refresh: tokens expire in 3600s, refresh at 3000s 3. Pagination: use page_cursor parameter, not offset ... )2.4 验证/skill acme-sdk-client查看 Agent 自动生成的技能内容。重点关注description 是否准确描述了触发场景操作步骤是否完整覆盖了认证和分页是否有遗漏的关键信息skill_manage本地文档Agent用户skill_manage本地文档Agent用户learn 本地 SDK 文档ls 列出目录auth.md pagination.md 等read_file 阅读关键文档Bearer Token 与 cursor 分页细节提炼认证与分页流程create 保存 acme-sdk-client技能已创建汇报生成结果三、实战二从在线 API 文档 URL 生成技能3.1 场景你想让 Agent 学会某个第三方 API 的使用方法文档在线上。3.2 操作/learn https://docs.example.com/api/quickstart3.3 Agent 的执行过程步骤1Agent 提取网页内容 web_extract(https://docs.example.com/api/quickstart) → 获取 API 文档内容 步骤2Agent 可能进一步阅读相关页面 如果 quickstart 页面链接到详细的认证文档 web_extract(https://docs.example.com/api/authentication) 步骤3Agent 理解和提炼 → 识别 API 的基础 URL、认证方式、核心端点、请求格式、错误处理 步骤4Agent 生成技能并保存3.4 质量优化在线文档的质量参差不齐。有时 Agent 从一个页面获取的信息不完整。你可以引导它页面/learn https://docs.example.com/api/quickstart 也看一下 https://docs.example.com/api/errors 和 https://docs.example.com/api/rate-limitsAgent 会合并多个页面的信息生成更完整的技能。四、实战三从对话历史生成技能4.1 场景你刚才和 Agent 一起完成了一个复杂的部署流程——从环境准备、配置编写到服务启动和健康检查。整个过程中踩了几个坑最终找到了正确的路径。你想把这个经验保存下来。4.2 操作/learn how I just deployed the staging server4.3 Agent 的执行过程步骤1Agent 回顾当前对话历史 → 回忆刚才执行的步骤 - 安装依赖包 - 修改 nginx 配置第一次写错了 server_name第二次修正 - 配置 SSL 证书路径搞混了用了 10 分钟排查 - 启动服务systemctl start 失败因为端口被占用 - 排查端口冲突并解决 - 健康检查通过 步骤2Agent 提炼经验 → 正确的部署顺序和命令 → 踩过的坑端口冲突、SSL 路径、nginx server_name → 验证方法 步骤3Agent 生成技能 skill_manage(actioncreate, namestaging-deploy, content --- name: staging-deploy description: Use when deploying the staging server. Covers nginx config, SSL setup, port conflict resolution. --- # Staging Server Deployment ## Pitfalls - SSL 证书路径为 /etc/ssl/certs/staging/不是 /etc/ssl/private/ - 端口 8080 可能被旧进程占用启动前检查lsof -i :8080 ... )4.4 对话历史生成的独特价值从对话历史生成的技能有一个独特优势它包含了真实踩过的坑。手写技能时你往往只写正确的做法。但从对话历史生成的技能会自动包含实际执行中遇到的问题和解决方案——这些 Pitfalls 往往是最有价值的部分。五、实战四从纯文字描述生成技能5.1 场景你有一个操作流程装在脑子里从来没写过文档。你想快速把它变成技能。5.2 操作直接描述流程/learn filing an expense: open the portal, click New Expense Report, fill in the date and amount, attach the receipt photo, select the cost center, submit for manager approval. If the amount 5000, it also needs director approval.5.3 Agent 的执行过程Agent 将你的自然语言描述结构化为标准 SKILL.md步骤1解析描述中的操作步骤 1. 打开费用报销系统 2. 新建报销单New Expense Report 3. 填写日期和金额 4. 上传收据照片 5. 选择成本中心 6. 提交审批 7. 金额 5000 时需要总监额外审批 步骤2识别条件分支 → if amount 5000: additional director approval needed 步骤3生成技能 name: expense-filing description: Use when filing expense reports. Covers submission, receipts, approval workflow.六、质量评估与手动优化6.1 自动生成技能的质量评估维度/learn生成的技能质量取决于输入材料的丰富度和 Agent 的理解能力。评估时关注以下维度维度检查点好的表现差的表现触发描述description 是否准确“Use when…认证和分页”“API client skill”流程完整性关键步骤是否遗漏认证→请求→分页→错误处理只有认证缺分页陷阱覆盖是否包含常见坑“Token 过期需刷新”无陷阱说明验证步骤是否有验证方法“检查 response.status 200”无验证可执行性步骤是否具体可操作“POST /oauth/token with {…}”“发送认证请求”6.2 手动优化方法如果自动生成的技能质量不理想可以通过以下方式手动优化方式一用 /learn 补充更多信息# 第一次生成 /learn ~/projects/acme-sdk/docs/ # 补充错误处理部分 /learn 也把 ~/projects/acme-sdk/docs/errors.md 的错误处理流程加到 acme-sdk-client 技能里方式二让 Agent 直接修改技能请修改 acme-sdk-client 技能在 Pitfalls 部分增加分页 cursor 有 24 小时过期时间这个注意事项Agent 会使用skill_manage(actionpatch)对技能进行精确修改。方式三手动编辑 SKILL.md如果你想精细控制技能内容可以直接编辑文件# 找到技能文件ls~/.hermes/skills/*/acme-sdk-client/SKILL.md# 用你喜欢的编辑器修改vim~/.hermes/skills/*/acme-sdk-client/SKILL.md修改后在下一轮对话中生效当前会话的技能缓存不会更新。6.3 /learn vs 手写技能对比项/learn 生成手写 SKILL.md速度快几分钟慢需要思考编写格式规范自动符合标准需要手动遵循规范质量上限取决于输入材料可以精雕细琢陷阱覆盖依赖材料中是否提及可以主动总结灵活性受限于 Agent 理解完全可控适用场景快速原型、已有文档精确控制、团队规范推荐策略先用/learn快速生成初版再手动优化关键部分。两者结合既高效又高质量。七、/learn 的安全机制6.1 写入审批门控如果你的系统启用了skills.write_approval: true/learn生成的技能不会直接写入磁盘而是进入暂存区等待审批/learn ~/projects/acme-sdk/docs/ → Agent 生成技能内容 → 进入 ~/.hermes/pending/skills/ 暂存区 → 提示技能已暂存等待审批 /skills pending # 查看暂存列表 /skills diff acme-sdk-client # 查看 diff /skills approve acme-sdk-client # 审批通过否是approverejectlearn 生成技能write_approval 开启?直接写入磁盘进入暂存区 pendingskills pending 查看skills diff 审查写入磁盘生效丢弃暂存关于写入审批的详细配置将在第七模块第 33 篇讲解。本篇小结知识点核心内容/learn 定位从任意来源自动生成技能无需手写 YAML四种输入来源本地目录/文件、在线 URL、对话历史、纯文字描述本地目录实战指定路径 关注重点Agent 自动读取文档并提炼在线 URL 实战可指定多个 URLAgent 合并多页面信息对话历史实战自动包含真实踩坑经验Pitfalls 部分最有价值纯文字描述实战自然语言口述流程Agent 结构化为标准技能质量评估维度触发描述、流程完整性、陷阱覆盖、验证步骤、可执行性优化方法/learn 补充、Agent 直接修改、手动编辑 SKILL.md/learn vs 手写先 /learn 快速生成初版再手动优化关键部分安全机制受 write_approval 门控暂存→审批→写入下篇预告下一篇将介绍 Skill Bundle——一种把多个技能打包成一个命令的机制。如果你总是把同一组技能放在一起使用Bundle 可以让你的操作更高效。如果本篇内容对你有帮助欢迎点赞收藏有任何疑问欢迎在评论区交流。

相关新闻

2026/9/3 15:34:08

第12篇-Frontmatter必填字段详解-name-description-version

【Skills 系统从入门到精通】第 12 篇:Frontmatter 必填字段详解——name、description、version本篇你将学到 name 字段的命名规范、约束和最佳实践description 字段的写作公式和 57 字符截断规则version 字段的语义化版本号规范每个字段的常见错误和修复方法 读完…

2026/9/3 15:34:08

婚恋平台技术架构解析:从PHP+MySQL到二次开发与安全部署

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/3 15:49:11

基于TensorFlow.js的野生动物边缘AI识别系统:从模型优化到工程部署

简介:这是一套面向生态学研究者与野外保护工作者的轻量化野生动物识别系统,解决传统人工巡护效率低、覆盖窄、物种识别依赖经验等痛点,特别适用于森林、湿地等难以持续驻守的监测场景。资源包共110个文件,含38个核心JavaScript模型…

2026/9/3 15:49:11

Plasticity瓶体建模全流程:NURBS曲面、圆角与抽壳实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/3 15:49:11

ChatGPT进阶指南:从问答机到工作流引擎的三大核心场景

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/3 15:49:11

拇指相机充电检测,MH248 与 MH251 全极霍尔该怎么选

随着Vlog、户外运动、短视频直播的兴起,拇指相机因其超小体积、磁吸易用性和第一人称视角的独特优势,迅速成为影像市场的新宠。无论是Insta360 GO系列、大疆DJI Action 2,还是其他各类拇指相机,都离不开一个核心配件——充电仓。不…

2026/9/3 15:49:11

微信小程序实战开发教程

开发前的必修课 在写代码前,需要完成账号注册和工具安装,这是进入微信生态的第一步。 注册小程序账号:访问微信公众平台,使用未被注册过的邮箱注册“小程序”类型的账号。注册后会拿到唯一的 AppID,它就像小程序的身份…

2026/9/3 15:44:11

音游高难度谱面攻关:从谱面拆解到肌肉记忆的系统方法论

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/1 16:02:17

vSound小提琴数字处理器实操指南:从接线到演出的完整配置

电小提琴或者原声小提琴插电演出,第一个绕不开的坎就是声音难听。原声琴的共鸣和空气感一旦进了拾音器,出来的往往是一坨干瘪、发尖、带着奇怪塑料味的信号。我当初第一次把琴接上乐队调音台,直接被主唱吐槽"你这声音像在锯钢丝"。…

2026/9/3 14:29:47

传感器接口IC如何攻克生物化学传感的微弱信号难题?

1. 从电极到比特流:为什么生物化学传感必须依赖专用接口IC 做生物化学传感的人都有过类似的经历:明明传感器本身性能很好,信号输出却一塌糊涂——噪声大、漂移明显、重复性差,怎么调都达不到预期。很多时候问题并不在传感器&#…

2026/9/3 14:30:35

STM32F411CEU6多通道ADC采集:扫描模式+DMA实现详解

1. 多通道 ADC 的用武之地把“Multichannel ADC”和“STM32F411CEU6”这两个关键字放在一起,其实就是嵌入式开发里最常遇到的一类需求:用一块不算贵的 MCU,同时采集多路模拟信号。STM32F411CEU6 是 48 引脚的 Cortex-M4F 主控,主频…

2026/9/3 0:02:06

零基础装 OpenClaw 小龙虾 AI:Windows 一键部署教程与避坑要点

Windows 部署 OpenClaw 完整教程|本地 AI 智能体 5 分钟落地,环境配置一次搞定 版本说明:Windows 3.1.0 / Mac 2.7.9 写在前面 近两年开源 AI 领域有一款被称作「数字员工」的工具持续走热,它就是 OpenClaw,圈内人更习…

2026/9/3 0:02:06

Hermes Agent 本地部署新方案:Windows 整合包减少依赖报错

Windows 本地部署 Hermes 太麻烦?这版一键包 5 分钟快速跑通 很多人想体验 Hermes Agent,但真正开始部署时,往往会卡在环境配置这一步。 需要安装各类依赖、调试运行环境、处理路径问题,还容易遇到命令行报错、系统拦截、文件缺…

2026/9/3 0:02:06

实测 OpenClaw 一键包,5 分钟完成本地自动化环境搭建

OpenClaw 本地 AI 自动化工具部署指南|使用一键包规避环境配置难题 痛点:部署 AI 自动化工具常常要处理 Python、Node.js 各类依赖,版本冲突、环境配置耗费大量时间,OpenClaw 提供一键安装包,降低部署门槛。 适配系统&…

2026/9/2 1:15:22

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/2 1:15:22

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/2 1:15:20

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…