skill-from-github

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Skill from GitHub

从GitHub创建Skill

When users want to accomplish something, search GitHub for quality projects that solve the problem, understand them deeply, then create a skill based on that knowledge.
当用户想要完成某项任务时,在GitHub上搜索能解决该问题的优质项目,深入理解它们,然后基于这些知识创建一个Skill。

When to Use

适用场景

When users describe a task and you want to find existing tools/projects to learn from:
  • "I want to be able to convert markdown to PDF"
  • "Help me analyze sentiment in customer reviews"
  • "I need to generate API documentation from code"
当用户描述了一项任务,而你想要寻找现有工具/项目来学习参考时:
  • "我希望能够将Markdown转换为PDF"
  • "帮我分析客户评论中的情感倾向"
  • "我需要从代码生成API文档"

Workflow

工作流程

Step 1: Understand User Intent

步骤1:理解用户意图

Clarify what the user wants to achieve:
  • What is the input?
  • What is the expected output?
  • Any constraints (language, framework, etc.)?
明确用户想要达成的目标:
  • 输入是什么?
  • 预期输出是什么?
  • 有没有任何约束条件(语言、框架等)?

Step 2: Search GitHub

步骤2:搜索GitHub

Search for projects that solve this problem:
{task keywords} language:{preferred} stars:>100 sort:stars
Search tips:
  • Start broad, then narrow down
  • Try different keyword combinations
  • Include "cli", "tool", "library" if relevant
Quality filters (must meet ALL):
  • Stars > 100 (community validated)
  • Updated within last 12 months (actively maintained)
  • Has README with clear documentation
  • Has actual code (not just awesome-list)
搜索能解决该问题的项目:
{task keywords} language:{preferred} stars:>100 sort:stars
搜索技巧:
  • 先宽泛搜索,再逐步缩小范围
  • 尝试不同的关键词组合
  • 如果相关,可加入“cli”、“tool”、“library”等词
质量筛选条件(必须全部满足):
  • 星标数 > 100(经过社区验证)
  • 过去12个月内有更新(处于活跃维护状态)
  • 包含内容清晰的README文档
  • 包含实际代码(不只是精选列表)

Step 3: Present Options to User

步骤3:向用户展示选项

Show top 3-5 candidates:
markdown
undefined
展示排名前3-5的候选项目:
markdown
undefined

Found X projects that can help

找到X个可用项目

Option 1: project-name

选项1: project-name

  • Stars: xxx | Last updated: xxx
  • What it does: one-line description
  • Why it's good: specific strength
  • 星标数: xxx | 最后更新时间: xxx
  • 功能简介: 一句话描述
  • 优势: 具体亮点

Option 2: ...

选项2: ...

Which one should I dive into? Or should I search differently?

**Wait for user confirmation before proceeding.**
我应该深入研究哪一个?或者需要调整搜索方式?

**继续下一步前请等待用户确认。**

Step 4: Deep Dive into Selected Project

步骤4:深入研究选中的项目

Once user selects a project, thoroughly understand it:
  1. Read README - Understand purpose, features, usage
  2. Read core source files - Understand how it works
  3. Check examples - See real usage patterns
  4. Note dependencies - What it relies on
  5. Identify key concepts - The mental model behind it
Extract:
  • Core algorithm/approach
  • Input/output formats
  • Error handling patterns
  • Best practices encoded in the code
一旦用户选定项目,彻底理解它:
  1. 阅读README - 了解项目的用途、功能、使用方法
  2. 阅读核心源码文件 - 理解其工作原理
  3. 查看示例 - 了解实际使用模式
  4. 记录依赖项 - 项目依赖哪些工具/库
  5. 识别核心概念 - 项目背后的思维模型
提取以下信息:
  • 核心算法/实现思路
  • 输入/输出格式
  • 错误处理模式
  • 代码中体现的最佳实践

Step 5: Summarize Understanding

步骤5:总结理解成果

Present what you learned to user:
markdown
undefined
向用户展示你所学到的内容:
markdown
undefined

Understanding [project-name]

对[project-name]的理解

Core Approach

核心实现思路

How it solves the problem...
它如何解决问题...

Key Techniques

关键技术点

  1. ...
  2. ...
  1. ...
  2. ...

Limitations

局限性

  • ...
  • ...

What I'll encode in the skill

我将在Skill中编码的内容

  • ...
Does this look right? Should I proceed to create the skill?

**Wait for user confirmation.**
  • ...
这样理解对吗?是否可以开始创建Skill了?

**等待用户确认。**

Step 6: Create Skill via skill-creator

步骤6:通过skill-creator创建Skill

Hand off to skill-creator with:
  1. Clear purpose - What the skill does
  2. Methodology - The approach learned from the project
  3. Step-by-step process - Concrete instructions
  4. Quality criteria - What good output looks like
  5. Common pitfalls - What to avoid (learned from project issues/docs)
Important: The skill should encode the knowledge from the project, not just wrap the tool. The skill should work even without the original project installed.
将以下信息提交给skill-creator:
  1. 明确的用途 - 该Skill的功能
  2. 实现方法 - 从项目中学到的思路
  3. 分步流程 - 具体操作说明
  4. 质量标准 - 优质输出的判定标准
  5. 常见陷阱 - 需要避免的问题(从项目的issues/文档中总结)
重要提示: Skill应编码从项目中学到的知识,而不只是封装工具。即使未安装原始项目,该Skill也应能正常工作。

Example

示例

User: "I want to write better commit messages"
Step 2 - Search:
commit message convention stars:>100 sort:stars
Step 3 - Present:
undefined
用户: "我想写出更好的提交信息"
步骤2 - 搜索:
commit message convention stars:>100 sort:stars
步骤3 - 展示:
undefined

Found 4 projects

找到4个项目

Option 1: conventional-commits/conventionalcommits.org (4.2k ⭐)

选项1: conventional-commits/conventionalcommits.org (4.2k ⭐)

  • Specification for human and machine readable commit messages
  • Why: Industry standard, used by Angular, Vue, etc.
  • 供人类和机器读取的提交信息规范
  • 优势:行业标准,被Angular、Vue等项目使用

Option 2: commitizen/cz-cli (15k ⭐)

选项2: commitizen/cz-cli (15k ⭐)

  • CLI tool for creating conventional commits
  • Why: Battle-tested, lots of adapters
  • 用于创建符合规范的提交信息的CLI工具
  • 优势:经过实战检验,拥有大量适配器

Option 3: carloscuesta/gitmoji (14k ⭐)

选项3: carloscuesta/gitmoji (14k ⭐)

  • Emoji guide for commit messages
  • Why: Visual, fun approach
Which one interests you?

**User:** "Let's go with conventional commits"

**Step 4 - Deep dive:**
- Read the specification
- Understand types (feat, fix, docs, etc.)
- Learn about scopes, breaking changes
- Study real-world examples

**Step 5 - Summarize:**
  • 提交信息的表情符号指南
  • 优势:直观有趣
你对哪一个感兴趣?

**用户:** "我们选Conventional Commits"

**步骤4 - 深入研究:**
- 阅读规范文档
- 理解提交类型(feat、fix、docs等)
- 学习作用域、破坏性变更等概念
- 研究实际应用示例

**步骤5 - 总结:**

Understanding Conventional Commits

对Conventional Commits的理解

Core Approach

核心实现思路

Structured format: <type>(<scope>): <description>
结构化格式:<type>(<scope>): <description>

Key Types

关键类型

  • feat: new feature
  • fix: bug fix
  • docs: documentation
  • ...
  • feat: 新功能
  • fix: 修复Bug
  • docs: 文档更新
  • ...

Benefits Learned

学到的优势

  • Automated changelog generation
  • Semantic versioning
  • Clear history
Ready to create a commit message skill based on this?

**Step 6 - Create skill with these principles encoded**
  • 自动生成变更日志
  • 语义化版本控制
  • 清晰的提交历史
可以基于这些原则创建提交信息Skill了吗?

**步骤6 - 基于这些原则创建Skill**

Important Notes

重要注意事项

  1. Always get user confirmation - At step 3 (project selection) and step 5 (before creating)
  2. Prefer learning over wrapping - Encode the knowledge, not just "run this tool"
  3. Check license - Mention if project has restrictive license
  4. Credit the source - Include attribution in generated skill
  5. Quality over speed - Take time to truly understand the project
  1. 始终获取用户确认 - 在步骤3(项目选择)和步骤5(创建前)都需要确认
  2. 优先学习而非封装 - 编码知识,而不只是“运行这个工具”
  3. 检查许可证 - 如果项目使用限制性许可证,请提及
  4. 注明来源 - 在生成的Skill中包含归因信息
  5. 质量优先于速度 - 花时间真正理解项目

What This Skill is NOT

本Skill不具备的功能

  • NOT a package installer
  • NOT a tool wrapper
  • It's about learning from the best projects and encoding that knowledge into a reusable skill
  • 不是包安装器
  • 不是工具封装器
  • 它是关于向优秀项目学习并将知识编码为可复用Skill