skill-from-github
Create skills by learning from high-quality GitHub projects
What this skill does
# Skill from GitHub
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.
## 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"
## Workflow
### Step 1: Understand User Intent
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
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)
### Step 3: Present Options to User
Show top 3-5 candidates:
```markdown
## 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?
```
**Wait for user confirmation before proceeding.**
### Step 4: Deep Dive into Selected Project
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
### Step 5: Summarize Understanding
Present what you learned to user:
```markdown
## 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?
```
**Wait for user confirmation.**
### Step 6: Create Skill via skill-creator
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.
## Example
**User:** "I want to write better commit messages"
**Step 2 - Search:**
```
commit message convention stars:>100 sort:stars
```
**Step 3 - Present:**
```
## 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?
```
**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:**
```
## 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?
```
**Step 6 - Create skill with these principles encoded**
## 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
## What This Skill is NOT
- NOT a package installer
- NOT a tool wrapper
- It's about **learning from the best projects** and encoding that knowledge into a reusable skill
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.