بنقرة واحدة
skill-authoring-guide
Skill 创作标准化模板与最佳实践 - 从零创建高质量 Skill 的完整指南
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Skill 创作标准化模板与最佳实践 - 从零创建高质量 Skill 的完整指南
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
将编码任务委派给 Claude Code(Anthropic 的 CLI 代理)。用于构建功能、重构、PR 审查和迭代编码。需要安装 claude CLI。 Use when: claude code, 编码任务, coding task, 代码审查, code review, 重构, refactoring, PR审查, Claude CLI. Do NOT use for: - Hermes 配置问题(用 hermes-agent skill) - Codex/OpenCode 任务(用 codex/opencode skills) - 非编码任务(用相应 skills) - 批量文件操作(用 file/terminal 工具)
Configure, extend, or contribute to Hermes Agent.
Hermes Fork 仓库完整维护指南 - 保守式更新 + 文档本地化 + 更新日志自动化 + GitHub 推送配置。涵盖:本地修改保护、冲突解决、性能优化合并、README 翻译、更新日志自动记录、Fork 推送全流程。
灵魂注入器 - 已合并到统一时间感知模块。 【v3.0 更新】时间感知功能已合并到 unified_time_awareness.py,避免重复注入。 原功能保留: - 搜索上下文注入(search.md) - 对话状态感知 移除功能(已合并): - 时间感知 → unified_time_awareness.py
全局约束管理系统 - 时间感知、情境感知、对话状态感知的统一约束层。 在所有任务执行前自动注入约束条件,确保 AI 的行为符合人类期望。 Use when: 全局约束, constraints, 时间感知, time awareness, 情境感知, context awareness, 执行规范, Hook注入. Do NOT use for: - 具体任务执行(用其他执行类 skills) - 数据获取(用 stock-data-acquisition) - 股票分析(用 stock-analysis-framework) - 错误恢复(用 supervisor-mode) 触发场景: - 所有任务执行前的自动检查(通过 Shell Hook 注入) - 用户主动询问约束规则 - 发现执行偏离时的人工干预 核心约束类别: 1. 时间感知约束:深夜/周末/节假日行为规范 2. 情境感知约束:用户状态识别与响应策略 3. 对话状态约束:跨会话连贯性与话题衔接 4. 执行规范约束:Skill 执行合规性检查
分层分级记忆系统 - 六层记忆架构(L1-L6)+ 缓存优化。 L1 会话记忆 → L2 短期记忆 → L3 长期记忆 → L4 技能记忆 → L5 任务上下文 → L6 全息记忆。 Use when: 记忆系统, memory system, 六层记忆, L1-L6, 记忆分层, 上下文管理, 缓存优化. Do NOT use for: - 单次会话记录(用 L1 session) - Skill 创建(用 skill_manage) - 数据持久化(用 file_write) - 知识图谱(用 fact_store) v1.10.0 新增: - ✅ 缓存优化系统集成(DeepSeek Prefix Caching) - ✅ 平均缓存命中率 92%+,节省成本 80%+ - ✅ CLI 工具 hermes-cache(统计监控、优化建议) - ✅ 固定前缀策略(从 HERMES.md 读取核心约束) - 🎯 效果:Token 成本 -81%、延迟 -80%、缓存命中 92%+ v1.9.0 新增: - ✅ 六层记忆架构(L1-L6) - ✅ L2 精简方法论(2491→1021 chars,-59%) - ✅ 跨层协同优化(L2↔L5、L3↔L6、L4→L3) - ✅ l5_to_l2_injector.py(高频实体反向注入) - 🎯 效果:跨层一致性 +100%、重复录入 -80%
| name | skill-authoring-guide |
| description | Skill 创作标准化模板与最佳实践 - 从零创建高质量 Skill 的完整指南 |
| priority | P1 |
| triggers | ["用户说\"创建一个 Skill\"","用户说\"保存为 Skill\"","用户说\"把这个流程变成 Skill\""] |
| auto_load | false |
Skill = 可复用的流程 + 已知陷阱 + 验证步骤
一个好的 Skill 应该:
---
name: skill-name
description: 一句话描述这个 Skill 做什么(不超过80字符)
priority: P0|P1|P2|P3
triggers:
- 触发条件1
- 触发条件2
- 触发条件3
auto_load: true|false
---
# Skill 标题
## 核心目标
(1-2句话说明这个 Skill 解决什么问题)
## 标准流程
### 步骤 1: [标题]
- 具体操作
- 关键参数
- 预期输出
### 步骤 2: [标题]
...
## 关键参数
| 参数 | 说明 | 默认值 |
|------|------|--------|
| param1 | 用途 | default |
## 已知陷阱
### ⚠️ 陷阱1:[标题]
- **表现**:错误的样子
- **原因**:为什么会出现
- **解决**:正确的做法
## 验证清单
- [ ] 检查项1
- [ ] 检查项2
- [ ] 检查项3
## 相关技能
- `related-skill-1`
- `related-skill-2`
| 字段 | 必填 | 说明 |
|---|---|---|
name | ✅ | Skill 标识符,小写+连字符,如 market-data-fetch |
description | ✅ | 一句话描述,不超过80字符 |
priority | ✅ | P0(最高)到 P3(最低) |
triggers | ✅ | 触发条件列表,用于自动匹配 |
auto_load | ✅ | 是否在会话开始时自动加载 |
| 优先级 | 含义 | 示例 |
|---|---|---|
| P0 | 强制执行,不可绕过 | 时间锚定宪法 |
| P1 | 核心流程,建议加载 | 市场分析流程 |
| P2 | 辅助流程,按需加载 | 报告生成 |
| P3 | 可选增强 | 格式美化 |
## 已知陷阱
### ⚠️ 数据源返回空值
- **表现**:web_search 返回 "No results found"
- **原因**:搜索关键词缺少日期或时间节点
- **解决**:构建关键词时必须包含 "YYYY年MM月DD日" 格式
## 验证清单
- [ ] 数据时间戳匹配当前市场状态
- [ ] 至少3个独立数据源
- [ ] 所有数据已标注来源和可信度
## 流程
1. 获取数据
2. 分析数据
3. 输出结果
问题:
何时创建 Skill:
必须包含:
建议包含:
# 安装后测试
hermes skills install <skill-name>
hermes -s <skill-name> # 显式加载测试
# 检查 Skill 质量
skill_view(name="<skill-name>")
场景:每次获取股价都需要重复相同的验证流程
创建:
---
name: stock-price-fetch
description: 获取股票价格并进行时间戳验证
priority: P1
triggers:
- 用户问股价
- 用户问行情
- 用户问涨跌
auto_load: false
---
# 股票价格获取流程
## 核心目标
获取指定股票的实时价格,并验证数据时间戳的准确性。
## 标准流程
### 步骤 1: 确认股票代码
- 检查代码格式(A股:000001.SZ,美股:AAPL.US)
- 确认市场(A股/美股/港股)
### 步骤 2: 构建搜索关键词
- A股:"{股票名} 股价 YYYY年MM月DD日"
- 美股:"{股票代码} stock price {YYYY-MM-DD}"
### 步骤 3: 获取数据
- 优先使用 AkShare API(A股)
- 备选 web_search
### 步骤 4: 验证时间戳
- 检查数据日期是否匹配当前日期
- 不匹配则重新获取
## 已知陷阱
### ⚠️ 用昨天的收盘数据凑数
- **表现**:盘前获取到昨天的收盘价
- **原因**:今日数据尚未更新
- **解决**:明确告知用户"这是昨日收盘数据"
## 验证清单
- [ ] 股票代码格式正确
- [ ] 数据时间戳已验证
- [ ] 数据来源已标注
# 统计总数
find skills -name 'SKILL.md' -type f | wc -l
# 查找大文件(>400行,优先优化)
find skills -name 'SKILL.md' -type f -exec wc -l {} \; | awk '$1 > 400 {print $1, $2}' | sort -rn
# 查找缺少排除条款的 Skills
grep -L 'Do NOT use' skills/*/SKILL.md skills/*/*/SKILL.md
# 查找缺少 Known Gotchas 的 Skills
grep -L 'Known Gotchas' skills/*/SKILL.md skills/*/*/SKILL.md
# 按类别统计
find skills -name 'SKILL.md' -type f -exec dirname {} \; | sed 's|skills/||' | cut -d'/' -f1 | sort | uniq -c | sort -rn
优先级矩阵:
| 优先级 | 标准 | 示例 |
|---|---|---|
| P0 | 基础设施 + 大文件 + 高频依赖 | stock-data-acquisition, hermes-agent |
| P1 | 核心功能 + 中等文件 | supervisor-mode, global-constraints |
| P2 | 辅助功能 + 小文件 | huashu-design, grid-trading-system |
决策规则:
必须添加:
排除条款(Do NOT use for):
description: |
核心功能描述。
Use when: 触发词1, 触发词2, 触发词3.
Do NOT use for:
- 不适用场景1(原因)
- 不适用场景2(替代方案)
Known Gotchas(实际失败案例):
## ⚠️ Known Gotchas
### 类别名称
- **问题标题**: 简短描述
```python
# 错误示例
❌ 错误代码
# 正确示例
✅ 正确代码
触发词(keywords + triggers):
keywords:
- 关键词1
- 关键词2
triggers:
- 触发词1
- 触发词2
Gotchas 编写原则:
MAJOR.MINOR.PATCH
- MAJOR: 架构重构、功能大改
- MINOR: 新增排除条款、Gotchas、触发词
- PATCH: 小修复、文档更新
示例:
v2.0.0 → v2.1.0(新增 Gotchas)v2.1.0 → v2.1.1(修复拼写错误)# 统计优化成果
git add -A
git commit -m "feat: 完成 Top N 核心 Skills 优化
✅ 已完成 N/M:
1. skill-name-1 (v1.0.0 → 1.1.0)
- 排除条款:...
- Known Gotchas:X条
...
优化成果:
- ✅ N 个核心 Skills 全部添加排除条款
- ✅ N 个核心 Skills 全部添加 Known Gotchas
- ✅ 总计 X+ 条 Known Gotchas
预期收益:
- 触发准确率提升 30%+
- 失败预防提升 40%+
- Token 节省 ~10K/会话"
背景:
优化目标:Top 5 高频核心 Skills
优化结果:
| Skill | 版本升级 | 排除条款 | Known Gotchas |
|---|---|---|---|
github-repo-management | 1.1.0 → 1.2.0 | ✅ | 14 条 |
humanizer | 2.5.1 → 2.5.2 | ✅ | 15 条 |
grid-trading-monitor | 1.0.0 → 1.1.0 | ✅ | 16 条 |
stock-analysis-framework | 2.0.0 → 2.1.0 | ✅ | 20+ 条 |
hermes-agent | 2.1.0 → 2.2.0 | ✅ | 20+ 条 |
总计:85+ Known Gotchas,Git 已推送
经验教训:
# 查看现有 Skill
skill_view(name="skill-name")
# 更新 Skill
skill_manage(action="patch", name="skill-name", old_string="...", new_string="...")
# 完整重写(谨慎使用)
skill_manage(action="edit", name="skill-name", content="...")
# 添加参考文件
skill_manage(action="write_file", name="skill-name", file_path="references/topic.md", file_content="...")
当 Skill 涉及以下内容时,应该创建独立的 references 文件:
示例:
wechat-article-learning/references/wechat-extraction-techniques.md
hermes-agent - Hermes Agent 完整指南time-anchor-constitution - 时间锚定宪法(P0)hierarchical-memory-system - 分层记忆系统skill-authoring-quality - Skill 创作质量标准(Done When + 上下文发现)references/known-gotchas-best-practices.md - Known Gotchas 编写最佳实践(必读)references/batch-optimization-case-study-2026-05-05.md - 批量优化实战案例(本次会话完整记录)核心思想:从"我猜我做完了"变成"我能确认我做完了"
每个 Skill 应该包含 Done When 章节,定义明确的完成判据:
示例:
## ✅ Done When 完成判据
### 必检项(全部满足才算完成)
- [ ] **时间锚定已验证**
- 当前时间已获取
- 市场状态已判断
- **验证方法**:`datetime.now()` 返回正确值
- [ ] **数据来源已标注**
- 数据源已确定
- 时间戳已标注
- **验证方法**:输出包含「来源: 时间戳」
### 失败处理
| 失败场景 | 处理路径 | 用户提示 |
|---------|---------|---------|
| 数据源失败 | 切换备用源 | ⚠️ 主源失败,已切换 |
### 自检代码示例
```python
def verify_done_when():
# 具体验证逻辑
return True
**参考**:`skill-authoring-quality` Skill 包含完整的 Done When 设计方法论。
---
### 上下文发现机制
**核心思想**:自动发现相关上下文,减少显式引用
当 Skill 涉及多个数据源或复杂上下文时,可以配置**触发词**:
```yaml
# 在 ~/.hermes/context_triggers.yaml 中配置
triggers:
- pattern: '\d{6}\.(SH|SZ)'
type: regex
actions:
- mempalace_search
- skill_load: stock-data-acquisition
priority: high
效果:
参考:skill-authoring-quality/references/context-discovery-technical-details.md 包含完整技术实现。