- name
- github-to-skill
- description
- Search GitHub repositories and generate Claude Skills from them. Use this skill when users want to create a new skill based on an existing GitHub repository, need to find high-quality libraries for skill development, or want to transform a GitHub project into a reusable Claude capability. Supports repository search, quality filtering, and skill template generation.
# GitHub to Skill Creator
Automatically discover GitHub repositories and convert them into Claude Skills.
## Overview
Transforms any GitHub repository into a reusable Claude Skill by:
1. **Searching** GitHub for high-quality, active repositories
2. **Analyzing** repository structure and documentation
3. **Generating** skill templates with proper structure
4. **Packaging** ready-to-use skills
## Workflow Decision Tree
```
User Request
↓
Does user have a specific repo in mind?
├─ YES → Generate skill template directly
│ (use generate_skill_template.py)
│
└─ NO → Search GitHub first
1. Ask clarifying questions
2. Run repository search
3. Present TOP 5-10 options
4. User selects repo
5. Generate skill template
```
## Phase 1: Repository Search & Recommendation
### Step 1: Understand Requirements
Ask the user:
- What functionality do you need?
- Any preferred programming language?
- Specific requirements (license, activity level)?
### Step 2: Search GitHub
Use the search script with appropriate filters:
```bash
# Basic search
python3 scripts/search_github_repos.py "PDF processing"
# With language filter
python3 scripts/search_github_repos.py "image manipulation" --language python
# High quality, recently updated
python3 scripts/search_github_repos.py "REST API" --min-stars 500 --sort updated
# Save results for analysis
python3 scripts/search_github_repos.py "data processing" --output results.json
```
### Step 3: Present Results
Display results in a clear table format:
| # | Repository | Stars | Updated | Language | Description | Recommendation |
|---|-----------|-------|---------|----------|-------------|----------------|
| 1 | [owner/repo](url) | 2500 | 2024-01 | Python | Brief desc | ⭐ High quality, active |
### Quality Criteria
When recommending repositories, ensure:
- ✅ **Active maintenance**: Updated within 6 months
- ✅ **Quality indicators**: 100+ stars, good documentation
- ✅ **Clear API**: Well-defined interfaces and examples
- ✅ **License**: Permissive license (MIT, Apache, BSD)
## Phase 2: Skill Template Generation
### Step 1: Analyze Repository
After user selects a repository:
```bash
# Generate skill template
python3 scripts/generate_skill_template.py owner/repository
# Custom output directory
python3 scripts/generate_skill_template.py owner/repository --output ./skills
```
### Step 2: Review Generated Structure
The generator creates:
```
skill-name/
├── SKILL.md # Ready to customize
├── scripts/
│ └── example.py # Starter code
└── references/ # For additional docs
```
### Step 3: Customize the Skill
**Update SKILL.md:**
- Edit frontmatter description (be specific about when to use)
- Replace [TODO] items with actual content
- Add clear usage examples
- Document configuration options
**Implement Core Logic:**
- Write wrapper scripts in `scripts/`
- Handle errors gracefully
- Add logging and user feedback
**Add References:**
- API documentation
- Configuration examples
- Troubleshooting guides
### Step 4: Test & Package
```bash
# Test the skill
# [Manual testing steps]
# Package the skill
cd ../skill-creator
python3 scripts/package_skill.py ../skill-name
```
## Usage Examples
### Example 1: User Knows What They Want
**User:** "Create a skill from pdfplumber repository"
**Action:**
```bash
python3 scripts/generate_skill_template.py jsvine/pdfplumber
```
### Example 2: User Needs Guidance
**User:** "I want to add PDF processing capabilities"
**Action:**
1. Ask: "What type of PDF processing? (extraction, manipulation, form filling)"
2. Search: `python3 scripts/search_github_repos.py "PDF extraction" --language python`
3. Present TOP 5 options with pros/cons
4. Guide selection and generate template
### Example 3: No Suitable Repository Found
**User:** "I need quantum computing simulation"
**Action:**
1. Search reveals limited/old repositories
2. Suggest alternatives:
- Combine multiple smaller libraries
- Create from scratch with skill-creator
- Use web APIs instead
## Best Practices
### Search Strategy
- **Start broad**: Use general terms ("PDF processing")
- **Narrow down**: Add filters (--language, --min-stars)
- **Try variations**: "PDF extract", "PDF parse", "document processing"
### Repository Evaluation
Check these before recommending:
1. **Last commit**: Within 6 months
2. **Issues ratio**: Low open/closed ratio indicates good maintenance
3. **Documentation**: README, examples, API docs
4. **License**: Prefer MIT/Apache for permissive use
### Skill Design Principles
- **Keep it focused**: One primary purpose per skill
- **Minimal dependencies**: Prefer widely-used libraries
- **Clear error messages**: Help users troubleshoot
- **Test thoroughly**: Verify before packaging
## Troubleshooting
**No repositories found**
- Broaden search terms
- Reduce minimum stars threshold
- Try different programming languages
**GitHub API rate limit**
- Create GitHub token: https://github.com/settings/tokens
- Set `GITHUB_TOKEN` environment variable
- Or use `--token` parameter
**Generated skill doesn't work**
- Verify repository has clear API/usage patterns
- Check dependencies are installable
- Review error messages in scripts
## Dependencies
```bash
pip install requests
```
Optional (for GitHub API rate limits):
- GitHub personal access token
## Related Skills
- **skill-creator**: Create skills from scratch
- **pdf-to-ppt**: Example of a generated skill
## Resources
- GitHub Search: https://github.com/search
- GitHub API Docs: https://docs.github.com/en/rest
- Skill Creation Guide: Available in skill-creator references/
GitHubで見る