技能管理器Skill skills-manager

技能管理器是一个上下文感知的智能路由器,用于管理技能和钩子。它帮助用户进行技能激活的故障排除、关键词的精细调优以及自动化文档系统的管理,适用于讨论技能激活、创建新技能、调试未激活或错误激活等情况。关键词包括技能激活、钩子、故障排除、关键词管理、技能规则、自动化、日志分析等,便于SEO搜索和系统优化。

DevOps 0 次安装 0 次浏览 更新于 3/15/2026

name: skills-manager description: 上下文感知的路由到技能和钩子管理。用于故障排除技能激活、精细调优关键词或管理自动化文档系统。

技能管理器(智能路由器)

目的

上下文感知的路由到技能和钩子管理。帮助您进行故障排除、精细调优和管理自动化文档系统。

自动激活时

  • 讨论技能激活或钩子
  • 创建新技能
  • 关键词:技能激活、钩子、故障排除、精细调优、关键词、skill-rules.json、创建技能、新技能、agentskills
  • 调试为什么技能未激活或激活不正确

🚨 关键规则

  1. 日志是您的朋友 - 始终首先检查 .claude/logs/skill-activations.log
  2. 更改后测试 - 始终验证对 skill-rules.json 的修改是否有效
  3. 验证 JSON - 使用 jq 在提交前验证 skill-rules.json
  4. 关键词应具体 - 过于宽泛的关键词会导致误报

📋 快速诊断工作流程

问题:技能未激活

  1. 检查日志

    tail -20 .claude/logs/skill-activations.log
    
  2. 检查当前关键词

    cat .claude/hooks/skill-rules.json | jq '.skills."SKILL-NAME".promptTriggers.keywords'
    
  3. 添加缺失关键词

    • 询问 Claude:“添加 ‘KEYWORD’ 到 SKILL-NAME”
    • 或直接编辑 .claude/hooks/skill-rules.json
  4. 测试

    echo '{"prompt":"测试提示"}' | .claude/hooks/skill-activation-prompt.sh
    

问题:技能本不应激活时激活

  1. 识别触发器 - 检查日志查看匹配了哪个关键词

  2. 删除或使其更具体

    • 删除:“从 localization-developer 中删除 ‘text’”
    • 使具体:将 “text” 替换为 “localized text”
  3. 验证

    tail .claude/logs/skill-activations.log
    

🎯 常见任务

添加关键词

快速:询问 Claude

"添加 'refactoring' 到 ios-dev-guidelines 关键词"

手动:编辑 .claude/hooks/skill-rules.json

"keywords": [
  "swift",
  "refactoring"  // ← 在此添加
]

删除关键词

快速:询问 Claude

"从 localization-developer 中删除 'text',它太宽泛了"

手动:编辑并从关键词数组中删除

检查激活了什么

tail -20 .claude/logs/skill-activations.log

查找:

✓ 匹配:skill-name     # ← 此技能已激活
未找到匹配项          # ← 未激活任何技能

手动测试激活

echo '{"prompt":"添加功能标志"}' | .claude/hooks/skill-activation-prompt.sh

如果找到匹配,应输出技能建议。

自动学习功能

功能:当一个实质性提示(100+ 字符或 3+ 行)未激活任何技能时,系统会向您显示可用技能,并根据您的反馈自动更新关键词。

工作流程

  1. 您提交一个实质性提示
  2. 未激活任何技能
  3. 系统显示:“应激活任何这些技能吗?”
  4. 您响应:“是,localization-developer 应激活”
  5. Claude 从您的提示中提取关键词
  6. Claude 运行:.claude/hooks/utils/add-keywords-to-skill.sh localization-developer <keywords>
  7. skill-rules.json 更新
  8. 未来类似提示自动激活

手动关键词提取

# 测试关键词提取
echo "更新会员层级的空间设置本地化" | .claude/hooks/utils/extract-keywords.sh
# 输出:membership、settings、localization、tiers、update

# 手动添加关键词
.claude/hooks/utils/add-keywords-to-skill.sh localization-developer "membership" "tiers"

日志

  • 未命中的激活:.claude/logs/skill-activations-missed.log
  • 学习更新:.claude/logs/skill-learning.log

🔧 系统组件

钩子(自动化)

位置.claude/hooks/

功能

  • skill-activation-prompt.sh - 根据您的提示建议技能
  • post-tool-use-tracker.sh - 跟踪文件编辑
  • swiftformat-post-edit.sh - 编辑后立即自动格式化 Swift 文件
  • notification-alert.sh - 当 Claude 需要输入时发送 macOS 通知

技能(路由器)

位置.claude/skills/*/SKILL.md

7 个技能

  1. ios-dev-guidelines - Swift/iOS 模式
  2. localization-developer - 本地化
  3. code-generation-developer - 功能标志、make generate
  4. design-system-developer - 图标、排版、颜色
  5. skills-manager - 此技能(元技能!)
  6. code-review-developer - 代码审查标准
  7. feature-toggle-developer - 功能切换移除、清理检测

配置

位置.claude/hooks/skill-rules.json

内容

  • 每个技能的关键词
  • 意图模式(正则表达式)
  • 文件路径模式
  • 优先级设置

📊 配置结构

{
  "skills": {
    "skill-name": {
      "type": "domain",
      "priority": "high",  // 或 "medium"、"low"
      "description": "智能路由器到...",
      "promptTriggers": {
        "keywords": ["keyword1", "keyword2"],
        "intentPatterns": ["(create|add).*?something"]
      },
      "fileTriggers": {
        "pathPatterns": ["**/*.swift"],
        "contentPatterns": ["SomePattern"]
      }
    }
  },
  "config": {
    "maxSkillsPerPrompt": 2,
    "logActivations": true
  }
}

📝 创建新技能(agentskills.io 规范)

技能必须遵循 agentskills.io 规范

必需 SKILL.md 格式

每个技能必须以 YAML 前情提要开始:

---
name: skill-name
description: 此技能的功能及何时使用(最大 1024 字符)。
---

# 技能标题

## 目的
...

名称字段规则

  • 1-64 字符
  • 仅小写a-z0-9-
  • 无起始/结束连字符skill-name ✅、-skill-
  • 无连续连字符my-skill ✅、my--skill
  • 必须匹配目录名称skills/my-skill/SKILL.mdname: my-skill

描述字段

  • 1-1024 字符
  • 必须描述:功能和何时使用
  • 包含关键词 以帮助代理识别相关任务

良好示例

description: 上下文感知路由到 iOS 本地化系统。使用于处理 .xcstrings 文件、Loc 常量或用户界面文本时。

可选前情提要字段

---
name: skill-name
description: 必需的描述。
license: MIT
compatibility: 为 Claude Code 设计
metadata:
  author: anytype
  version: "1.0"
---

目录结构

skill-name/
├── SKILL.md          # 必需 - 主技能文件
├── scripts/          # 可选 - 可执行脚本
├── references/       # 可选 - 附加文档
└── assets/           # 可选 - 模板、图像

新技能快速清单

  • [ ] 目录名称匹配 name 字段
  • [ ] YAML 前情提要包含 namedescription
  • [ ] 名称仅小写带连字符
  • [ ] 描述解释功能和何时
  • [ ] SKILL.md 不超过 500 行(使用 references/ 获取详细信息)
  • [ ] 添加到 skill-rules.json 并带关键词
  • [ ] 用示例提示测试激活

⚠️ 常见问题

钩子未执行

症状:无激活消息、空日志

修复

# 使钩子可执行
chmod +x .claude/hooks/*.sh

# 验证
ls -l .claude/hooks/*.sh  # 应显示 rwx

无效 JSON

症状:钩子静默失败

修复

# 验证
jq . .claude/hooks/skill-rules.json

# 如果有错误,请 Claude 修复它

过多误报

症状:技能激活过于频繁

修复:使关键词更具体

  • ❌ “text” → 为所有内容激活
  • ✅ “localized text” → 更具体

📚 完整文档

完整指南.claude/SKILLS_MANAGEMENT_GUIDE.md

涵盖:

  • 详细故障排除工作流程
  • 意图匹配的高级正则表达式模式
  • 从零创建新技能
  • 监控和维护
  • 日志轮换和清理
  • 完整 skill-rules.json 参考
  • 每个场景的示例

✅ 健康检查命令

# 检查钩子权限
ls -l .claude/hooks/*.sh

# 验证配置
jq . .claude/hooks/skill-rules.json

# 查看最近激活
tail -20 .claude/logs/skill-activations.log

# 按技能计数激活
grep "Matched:" .claude/logs/skill-activations.log | sort | uniq -c

# 测试特定提示
echo '{"prompt":"您的测试"}' | .claude/hooks/skill-activation-prompt.sh

💡 专业提示

  1. 请 Claude 检查日志 - “检查我最后提示的日志”
  2. 使用日志进行调优 - 定期查看以发现模式
  3. 从宽泛开始 - 添加宽泛关键词,如果误报过多则缩小范围
  4. 测试所有内容 - 修改 skill-rules.json 后始终测试
  5. 记录更改 - 在 skill-rules.json 中添加注释

🔗 相关文档

  • .claude/hooks/README.md - 完整钩子文档
  • .claude/skills/README.md - 技能系统概览
  • CLAUDE.md - 主文档

导航:这是一个智能路由器。如需深入故障排除和管理细节,请始终参考 SKILLS_MANAGEMENT_GUIDE.md

快速帮助:只需询问 “检查技能系统健康” 或 “为什么 X 技能未激活?”