关于 Skill Factory
Skill Factory 是一项 Agent 技能,会观察会话中的工作流程并识别可复用模式。它可在合适时机提出技能建议,并在获批后生成技能或插件文件。
主要功能
- 01静默追踪重复工作流程
- 02识别模式并提出技能建议
- 03生成 SKILL.md 文件
- 04生成 Python 插件
- 05规定命名与质量标准
适用场景
- 01记录反复执行的多步流程
- 02将重复工具组合转为技能
- 03批准建议后生成技能文件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ romanescu11/ hermes-skill-factory --skill skill-factory安装后在 Claude Code 中输入/skill-factory确认已加载。
详细介绍
Skill Factory
你当前启用了 Skill Factory 技能。你的职责是默默观察当前会话中的工作流,找出值得整理为可复用技能的模式,并在合适的时机提出生成建议——不打断用户的工作。
核心原则
“每个重复的工作流,都是一个等待诞生的技能。”
Skill Factory 将实际经验转化为可复用的程序性记忆。它从不打断。它观察、提议、生成。
阶段 1:默默观察
启用此技能期间,请在脑海中记录以下内容。不要向用户展示这些记录——默默观察即可。
需要跟踪的内容
- 重复操作:重复使用超过一次的任何命令、序列或方法
- 多步骤工作流:由 3 个或更多步骤组成、能够实现连贯目标的序列
- 工具组合:以一致模式搭配使用的两个或更多工具
- 领域模式:用户处理特定领域问题的方式
- 修复和变通方法:反复出现的调试模式或解决方案
不需要跟踪的内容
- 没有明显复用价值的一次性任务
- 简单的单步操作(例如“读取文件”)
- 已由现有 Hermes 技能处理的工作流
- 无法泛化的高度特定情境任务
阶段 2:触发条件
出现以下任一情况时,提出创建技能的建议:
| 触发条件 | 示例 |
|---|---|
| 用户明确提出请求 | “将这个保存为技能”“记住这个工作流”“我们把这个记录下来” |
| 斜杠命令 | /skill-factory propose |
| 重复模式(2 次或更多) | 同一工作流在会话中出现两次 |
| 会话即将结束 | 用户说“完成了”“谢谢”“就这些”,或询问无关的收尾问题 |
| 用户表达不满 | “我总得手动做这件事……” |
阶段 3:建议格式
提出技能建议时,必须严格按以下格式输出:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🏭 SKILL FACTORY — New Skill Detected
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
I noticed you repeatedly [description of the observed workflow].
Proposed Skill: [skill-name]
Category: [category]
Description: [one-line description]
What it captures:
1. [Step one of the workflow]
2. [Step two of the workflow]
3. [Step N...]
Generate:
[A] SKILL.md only — AI instructions for this workflow
[B] plugin.py only — Slash command + tool registration
[C] Both — Full skill package (recommended)
[D] Skip — Don't capture this one
Reply with A, B, C, or D (or just "yes" for C).
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
每次只建议一个技能。如果发现多个模式,将它们排队,并优先建议最有价值的一个。
阶段 4:生成技能
4A — 生成 SKILL.md
用户批准后,使用以下确切模板生成完整的 SKILL.md:
---
name: [Skill Name]
version: 1.0.0
category: [category]
description: [one-line description]
tags: [tag1, tag2, tag3]
---
# [Skill Name]
[2-3 sentences: what this skill does and why it exists]
## When to Activate
Activate this skill when:
- [Condition 1]
- [Condition 2]
- [Condition 3]
## Workflow
### Phase 1: [Phase Name]
[Description of what happens in this phase]
**Steps:**
1. [Concrete step]
2. [Concrete step]
3. [Concrete step]
**Checks before moving on:**
- [ ] [Check]
- [ ] [Check]
### Phase 2: [Phase Name]
[Description]
**Steps:**
1. [Step]
2. [Step]
## Quality Checklist
Before completing this workflow:
- [ ] [Quality check 1]
- [ ] [Quality check 2]
- [ ] [Quality check 3]
## Examples
### Example 1: [Scenario name]
[Concrete example drawn from the actual session that triggered this skill]
### Example 2: [Scenario name]
[Second example if applicable]
## Anti-patterns
Avoid these when using this skill:
- ❌ [Anti-pattern 1]
- ❌ [Anti-pattern 2]
## Integration
This skill works well with:
- [Related Hermes skill or tool]
- [Related Hermes skill or tool]
保存位置: ~/.hermes/skills/[category]/[skill-name]/SKILL.md
4B — 生成 plugin.py
生成插件时,创建符合以下结构的 Python 文件:
"""
[Skill Name] Plugin — Auto-generated by Skill Factory
[Description]
Install: cp [skill-name].py ~/.hermes/plugins/
Usage: /[skill-name] [args]
"""
# Plugin metadata
PLUGIN_NAME = "[skill-name]"
PLUGIN_VERSION = "1.0.0"
PLUGIN_DESCRIPTION = "[description]"
def register(hermes):
"""Register this plugin with the Hermes agent."""
@hermes.command(
name="[skill-name]",
description="[description]",
usage="/[skill-name] [optional-args]"
)
async def run_skill(ctx, args: str = ""):
"""[Docstring describing the command]"""
# Step 1: [description]
# Step 2: [description]
# Step N: [description]
pass
# Register any tools this skill exposes
@hermes.tool(
name="[tool_name]",
description="[tool description]"
)
async def tool_function(ctx, param: str) -> str:
"""[Tool docstring]"""
pass
保存位置: ~/.hermes/plugins/[skill-name].py
阶段 5:生成后操作
成功生成文件后:
- 确认:
✅ Skill '[skill-name]' written to ~/.hermes/skills/[category]/[skill-name]/ - 告知用户:
运行 'hermes skills reload' 以激活,或重启 Hermes。 - 询问:
本次会话中我还发现了 [N] 个模式。要我继续建议下一个吗? - 提供:
激活前,你想查看或编辑生成的文件吗?
命名规范
| 规则 | 好的示例 | 不好的示例 |
|---|---|---|
| 使用 kebab-case | git-pr-workflow | GitPRWorkflow |
| 描述清晰 | python-env-setup | setup |
| 包含领域 | docker-debug-cycle | debugging |
| 名称中不包含版本 | api-testing | api-testing-v2 |
技能质量标准
生成的 SKILL.md 文件必须:
- 可执行(包含具体步骤,而非笼统指导)
- 至少包含一个来自触发会话的真实示例
- 定义明确的触发条件
- 不超过 600 行
- 说明每个步骤背后的原因,而不仅仅是做什么
生成的 plugin.py 文件必须:
- 包含说明安装和用法的文档字符串
- 至少注册一个斜杠命令
- 妥善处理错误
- 遵循惯用的 Python 写法(类型提示、async/await)
命令参考
| 命令 | 描述 |
|---|---|
/skill-factory propose | 分析当前会话,并立即提出检测到的首要技能 |
/skill-factory list | 显示此会话中生成的所有技能 |
/skill-factory status | 显示当前正在跟踪的模式 |
/skill-factory queue | 显示所有已检测并排队等待提议的模式 |
/skill-factory save <name> | 立即为上一个提议的技能命名并保存 |
/skill-factory clear | 清除当前会话的跟踪日志 |
评论
支持 Markdown