My skills
Skill yyy805/my-skills
通用 AI 提示词与技能资产管理器。扫描本地任意目录下的 prompt/skill 文件, 生成交互式 HTML 技能地图,支持 Claude Code、ChatGPT、Cursor、Gemini 等任意平台。 当用户说 "/my-skills"、"列出我的 skill"、"我装了哪些技能"、"帮我整理 prompt 清单"、 "查看我的提示词库"、"show my skills"、"what prompts do I have"、"技能总览"、 "我有哪些 prompt"、"整理我的 AI 工具箱" 时触发。 **不要 undertrigger**——只要用户想盘点自己的 AI 提示词/skill 资产就必须调用本 skill。From its SKILL.md
npx -y skills add yyy805/my-skillsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
8.7 KB, ~2.8k tokens by cl100k_base, as published. Nobody here has run it
My Skills — 通用 AI 提示词资产全景图
扫描本地多个来源的 prompt/skill 文件,提取元数据,渲染为统一的交互式 HTML 技能地图。 适用于任何 AI 平台用户:Claude Code、ChatGPT、Cursor、Gemini、本地 prompt 库等。
核心设计原则
平台无关性:不假设用户只使用 Claude Code。任何 .md、.txt、.yaml、.json 文件
都可能是一个 prompt 资产,只要它包含有意义的文本内容。
渐进增强:优先从结构化 frontmatter 提取元数据;若无 frontmatter,则从文件名和正文推断; 若推断失败,仍保留文件并标注"未分类"。
Step 1: 确定扫描目录
优先检测用户传入的参数,格式为:
/my-skills— 使用默认目录列表/my-skills --dirs "D:/prompts, C:/Users/me/cursor-rules"— 仅扫描指定目录/my-skills --add "D:/my-chatgpt-prompts"— 在默认目录基础上额外添加
默认扫描目录(按平台分组,跳过不存在的路径):
| 平台 | 路径 |
|---|---|
| Claude Code 插件 | ~/.claude/plugins/cache/**/SKILL.md |
| Claude Code 自定义 | ~/.claude/skills/**/*.md |
| Cursor Rules | ~/.cursor/rules/**/*.md,.cursor/rules/ (当前项目) |
| 通用 prompt 库 | ~/prompts/**/*.{md,txt},~/Documents/prompts/**/*.{md,txt} |
| 当前项目 | ./.claude/**/*.md,./prompts/**/*.{md,txt} |
若上述所有路径均不存在,提示用户通过 --dirs 指定自己的 prompt 目录,然后退出。
Step 2: 扫描与去重
使用 Glob 工具递归搜索所有目标路径,收集文件列表后:
- 按路径长度升序排列(更短 = 更规范的位置)
- 以
name字段为主键去重:若两个文件解析出相同 name,保留路径更短的一个 - 跳过纯 reference/asset 文件:路径中含
/references/、/assets/、/agents/的非 SKILL.md 文件予以排除
Step 3: 提取元数据
对每个文件,按优先级依次尝试:
3a. YAML frontmatter(SKILL.md、带 frontmatter 的 .md)
---
name: my-tool # → 资产名称
description: "做X的工具" # → 描述
platform: claude # → 来源平台(可选)
tags: [写作, 效率] # → 自定义标签(可选)
---
3b. 文件头部注释(.txt、无 frontmatter 的 .md)
检测以下模式(任意一个命中即可):
# 提示词名称 → name
> 描述:做X的工具 → description
<!-- platform: chatgpt --> → platform
3c. 兜底推断
name:取文件名去掉扩展名,kebab-case 转空格description:取正文去掉 Markdown 标记后的前 100 个字符platform:根据文件路径推断(含.claude→ Claude,含cursor→ Cursor,其余 → 通用)trigger:若 name 以字母开头则构造/{name},否则留空
Step 4: 分类
根据 name、description、tags、platform 关键词归类:
| 类别 | 匹配关键词 |
|---|---|
| 📝 写作 | write, writing, eos, style, doc, pdf, ppt, docx, markdown, essay, blog, email |
| 🔬 研究 | research, fact, citation, bibliography, survey, analysis, report, academic |
| 💡 创意 | scamper, sixhats, design, creative, brainstorm, idea, innovation |
| 📚 学习 | learn, feynman, socratic, study, explain, teach, tutor |
| 🚀 项目 | repo, setup, code, dev, qa, test, product, deploy, benchmark, cursor, engineer |
| 🛠️ 工具 | skill, tool, utility, optimizer, converter, generator, builder, helper |
| 🧠 思维框架 | cynefin, ooda, swot, redteam, premortem, postmortem, retro, wardley, whys, matrix, eisenhower, rice, wrap, decision |
| 🤖 平台配置 | system prompt, custom instruction, gpt, gemini, claude, cursor rule, gem |
未匹配任何类别的归入「其他」。
Step 4.5: 重叠度分析(在渲染前完成,结果嵌入 widget)
对已分类的 skill 列表做两轮比较,找出功能重叠的候选对:
第一轮:同类聚合 同一类别(如都是 🧠 思维框架)且描述中有共同核心动词/名词的,标记为"候选重叠对"。
第二轮:跨类关键词匹配 提取每个 skill 描述中的功能关键词(去掉介词/助词),若两个 skill 共享 ≥3 个关键词,即使类别不同也标记为候选。
重叠等级划分:
| 等级 | 判定标准 | 标记颜色 |
|---|---|---|
| 🔴 高度重叠 | 同类 + 共享 ≥4 关键词,或描述语义几乎一致 | 红色 |
| 🟡 部分重叠 | 同类 + 共享 2-3 关键词,或功能有明显交集 | 黄色 |
| 🟢 低度重叠 | 仅同类但功能侧重不同 | 绿色(不展示,忽略) |
对每个重叠对,生成一条记录:
{
skill_a: "名称A",
skill_b: "名称B",
level: "高度重叠" | "部分重叠",
reason: "两者都提供XX功能,区别在于YY",
suggestion: "建议保留A(因为ZZ),考虑删除B"
}
Step 5: 渲染交互式 HTML
收集完所有数据后,直接在对话中输出完整 HTML(使用 show_widget 工具渲染,若不可用则输出 Markdown 降级版本)。
Tab 切换栏(新增重叠检测 Tab): 全部 | 📝写作 | 🔬研究 | 💡创意 | 📚学习 | 🚀项目 | 🛠️工具 | 🧠思维框架 | 🤖平台配置 | 其他 | 🔄 重叠检测
主技能地图 Tab(原有功能不变):
- 顶部统计栏:总资产数 + 来源平台数量
- 搜索框:实时过滤(名称、描述、平台关键词)
- 平台筛选徽章:Claude / Cursor / ChatGPT / Gemini / 通用(多选)
- 卡片网格:每个资产一张卡片(名称、触发命令、一句话描述、平台来源、类别标签)
- 卡片交互:点击复制触发命令;被标记删除的卡片显示半透明红色遮罩
🔄 重叠检测 Tab(新功能):
布局:重叠对列表,每对一张"冲突卡片",内容:
┌─────────────────────────────────────────┐
│ 🔴 高度重叠 │
│ │
│ [skill A 名称] ⟷ [skill B 名称] │
│ /触发A /触发B │
│ │
│ 重叠原因:两者都用于XX场景,功能高度相似 │
│ 建议:保留 A(描述更精准),删除 B │
│ │
│ [ 标记删除 A ] [ 标记删除 B ] [ 忽略 ] │
└─────────────────────────────────────────┘
"标记删除"交互逻辑:
- 点击"标记删除 X"→ 该 skill 在全部 Tab 的卡片上出现红色 🗑️ 遮罩,同时底部出现"待删除清单"悬浮条
- "待删除清单"悬浮条:显示"已标记 N 个待删除:[名称列表]"+ "复制删除命令" 按钮
- 点击"复制删除命令"→ 复制对应的删除指令到剪贴板,格式:
rm -rf ~/.claude/skills/[name](或对应平台的删除命令) - 点击"忽略"→ 该重叠对从列表移除,不影响其他对
- 若无重叠对被检测到,显示"✅ 未发现明显功能重叠,技能库结构清晰"
底部悬浮删除清单(跨 Tab 可见):
🗑️ 待删除:red-pen · deep-research-v1 [取消全部] [复制删除命令]
Step 6: 辅助 Markdown 表格
HTML 渲染后,额外输出 Markdown 表格便于复制留存:
| 平台 | 类别 | 名称 | 触发/路径 | 描述 |
|------|------|------|----------|------|
| Claude | 🔬 研究 | deep-research | /deep-research | 生成格式化研究报告... |
| Cursor | 🚀 项目 | react-component | .cursor/rules/react.md | 生成 React 组件规范... |
注意事项
- 同名资产只保留一个(路径最短优先)
- 无法读取的文件静默跳过
- 若某平台目录为空,在统计栏注明"未检测到 [平台] 资产",不报错
- 全流程无需用户提供额外参数,
--dirs和--add为可选增强 - Claude Code 以外的平台文件只展示,不能直接"触发"——卡片显示文件路径而非
/命令
What ships with it: 2 files
6.3 KB alongside SKILL.md
- README.md3.3 KB
- README.zh-CN.md3.1 KB