关于 skill-from-github
skill-from-github 会搜索与用户任务相关的 GitHub 项目,深入研究选定项目,并将其方法整理为可复用技能。它适合希望从文档完善且持续维护的项目中提炼技能,而非仅封装工具的用户。
主要功能
- 01搜索与任务相关的 GitHub 项目
- 02按星标、更新、文档和代码筛选
- 03提供候选项目供用户选择
- 04从选定项目提炼方法
- 05移交技能创建所需的说明
适用场景
- 01创建 Markdown 转 PDF 技能
- 02开发评论情感分析技能
- 03构建 API 文档生成技能
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ gbsoss/ skill-from-masters --skill skill-from-github安装后在 Claude Code 中输入/skill-from-github确认已加载。
详细介绍
来自 GitHub 的技能
当用户想要完成某件事时,搜索 GitHub,寻找能解决问题的优质项目,深入了解这些项目,然后基于这些知识创建技能。
使用时机
当用户描述一项任务,而你想寻找现有工具或项目来借鉴时:
- “我想把 Markdown 转换成 PDF”
- “帮我分析客户评论中的情感”
- “我需要根据代码生成 API 文档”
工作流程
步骤 1:理解用户意图
明确用户想要实现什么:
- 输入是什么?
- 预期输出是什么?
- 有什么限制(语言、框架等)?
步骤 2:搜索 GitHub
搜索能解决该问题的项目:
{task keywords} language:{preferred} stars:>100 sort:stars
搜索提示:
- 先广泛搜索,再逐步缩小范围
- 尝试不同的关键词组合
- 如果相关,加入“cli”“tool”“library”
质量筛选条件(必须全部满足):
- Star 数 > 100(经过社区验证)
- 最近 12 个月内有更新(仍在积极维护)
- 有内容清晰的 README 文档
- 包含实际代码(而不只是 awesome-list)
步骤 3:向用户展示选项
展示排名靠前的 3-5 个候选项目:
## Found X projects that can help
### Option 1: [project-name](github-url)
- Stars: xxx | Last updated: xxx
- What it does: one-line description
- Why it's good: specific strength
### Option 2: ...
Which one should I dive into? Or should I search differently?
继续之前,等待用户确认。
步骤 4:深入了解选定的项目
用户选定项目后,全面了解该项目:
- 阅读 README——了解项目用途、功能和用法
- 阅读核心源文件——了解项目的工作方式
- 查看示例——了解实际用法
- 记录依赖项——了解项目依赖什么
- 确定关键概念——理解项目背后的思维模型
提取:
- 核心算法/方法
- 输入/输出格式
- 错误处理模式
- 代码中体现的最佳实践
步骤 5:总结理解
向用户介绍你学到的内容:
## Understanding [project-name]
### Core Approach
How it solves the problem...
### Key Techniques
1. ...
2. ...
### Limitations
- ...
### What I'll encode in the skill
- ...
Does this look right? Should I proceed to create the skill?
等待用户确认。
步骤 6:通过 skill-creator 创建技能
将以下内容交给 skill-creator:
- 明确用途——技能的功能
- 方法论——从项目中学到的方法
- 分步流程——具体指令
- 质量标准——优质输出应达到的标准
- 常见陷阱——应避免的问题(从项目的问题或文档中了解到)
重要: 技能应融入项目中的知识,而不只是包装工具。即使没有安装原项目,技能也应能正常使用。
示例
用户:“我想写出更好的提交说明”
步骤 2 - 搜索:
commit message convention stars:>100 sort:stars
步骤 3 - 展示:
## Found 4 projects
### Option 1: conventional-commits/conventionalcommits.org (4.2k ⭐)
- Specification for human and machine readable commit messages
- Why: Industry standard, used by Angular, Vue, etc.
### Option 2: commitizen/cz-cli (15k ⭐)
- CLI tool for creating conventional commits
- Why: Battle-tested, lots of adapters
### Option 3: carloscuesta/gitmoji (14k ⭐)
- Emoji guide for commit messages
- Why: Visual, fun approach
Which one interests you?
用户:“我们就用 conventional commits 吧”
步骤 4 - 深入了解:
- 阅读规范
- 了解类型(feat、fix、docs 等)
- 学习作用域和破坏性变更
- 研究实际示例
步骤 5 - 总结:
## Understanding Conventional Commits
### Core Approach
Structured format: <type>(<scope>): <description>
### Key Types
- feat: new feature
- fix: bug fix
- docs: documentation
- ...
### Benefits Learned
- Automated changelog generation
- Semantic versioning
- Clear history
Ready to create a commit message skill based on this?
步骤 6 - 创建融入这些原则的技能
重要说明
- 始终征求用户确认——在步骤 3(选择项目)和步骤 5(创建前)
- 优先学习,而非包装——融入知识,而不只是“运行这个工具”
- 检查许可证——如果项目使用限制性许可证,请予以说明
- 注明来源——在生成的技能中注明出处
- 质量优先于速度——花时间真正了解项目
此技能不是什么
- 不是软件包安装程序
- 不是工具包装器
- 它旨在从优秀项目中学习,并将这些知识融入可重复使用的技能
评论
支持 Markdown