A self-governed Python project that automatically searches GitHub for Claude/Anthropic agent skills, analyzes them using AI, categorizes them, and keeps the SkillFlow repository updated with the latest skills.
X-Skills is a npm-style plugin system that allows you to install and manage AI sub-agents as executable commands. Skills are packaged as plugins that can be searched, installed, and run directly from your CLI.
One-Line Install (Recommended):
curl -fsSL https://raw.githubusercontent.com/tools-only/X-Skills/main/xsk-install.sh | bashVia Claude Code CLI:
# Use the xskills command directly
xskills search "research"
xskills install research-agentFull Installation:
git clone https://github.com/tools-only/SkillFlow.git ~/.skillflow
cd ~/.skillflow
bash scripts/setup_xskills.sh
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc# Search plugins
xskills search "research" # Search by keyword
xskills search "代码审查" --tier expert # Filter by quality tier
# Install plugins
xskills install research-agent # Single plugin
xskills install @academic_research # Scenario bundle (multiple plugins)
# Manage plugins
xskills list-plugins # List installed
xskills capabilities research-agent # View plugin capabilities
xskills validate research-agent # Validate plugin
xskills info # System info
# Run plugins
xskills run research-agent "搜索最新的AI论文"
research-agent "搜索最新的AI论文" # Direct command after install
# Update/Uninstall
xskills update research-agent
xskills uninstall research-agent
# Scenario bundles
xskills scenarios # List all 22 scenarios
xskills scenarios --category education # Filter by categoryPlugins are rated across four dimensions (0-25 each):
- Depth: Technical depth and domain expertise
- Practicality: Real-world applicability
- Reliability: Consistency and robustness
- Collaboration: Integration and compatibility
Tiers:
- Expert (★): Top 5% - Highest quality skills
- Good: Reliable, production-ready
- Basic: Functional skills with room for improvement
| ID | Name | Category | Description |
|---|---|---|---|
| @academic_research | 学术研究 | Education | Literature search to paper writing |
| @software_engineering | 软件工程 | Development | Full software development lifecycle |
| @intelligent_cs | 智能客服 | Business | Customer service automation |
| @data_science | 数据科学 | Science | Data analysis and visualization |
| @devops_engineering | DevOps工程 | Development | CI/CD and infrastructure |
| @content_creation | 自媒体创作 | Media | Content generation and editing |
| @social_media_operation | 社交运营 | Marketing | Social media management |
| @investment_research | 投研分析 | Finance | Financial analysis |
| @legal_research | 法律研究 | Legal | Legal document analysis |
| @medical_research | 医学研究 | Medical | Medical research assistance |
| @security_analysis | 安全分析 | Security | Security auditing |
| @product_management | 产品管理 | Business | Product development |
| @project_management | 项目管理 | Business | Project coordination |
| @education_tutoring | 教育辅导 | Education | Teaching and tutoring |
| @e_commerce | 电商运营 | Commerce | E-commerce operations |
| @ux_design | UX设计 | Design | User experience design |
| @translation_localization | 翻译本地化 | Language | Translation services |
| @hr_management | 人力资源 | Business | HR management |
| @real_estate | 房产分析 | Real Estate | Real estate analysis |
| @creative_writing | 创意写作 | Writing | Creative content writing |
| @api_development | API开发 | Development | API design and development |
| @life_assistant | 生活助理 | Lifestyle | Daily life assistance |
- GitHub Search Integration: Automatically finds repositories containing skill files
- AI-Powered Analysis: Uses Claude API to analyze and categorize skills
- Smart Organization: Organizes skills into nested category/subcategory folders
- Duplicate Detection: Tracks processed skills to avoid duplicates
- Automated Updates: Cron job support for periodic updates
- Git Integration: Automatic commit and push of new skills
SkillFlow/
├── skills/ # Downloaded skill files (git tracked)
│ └── {category}/ # Nested categories (e.g., daily-assistant/writing/)
│ └── {subcategory}/ # Sub-categories for organization
│ └── {skill-name}.md
├── src/
│ ├── __init__.py
│ ├── main.py # Entry point for cron jobs
│ ├── config.py # Configuration loader
│ ├── github_searcher.py # GitHub Search API integration
│ ├── skill_analyzer.py # AI-based skill analysis
│ ├── skill_fetcher.py # Clone and extract skill files
│ ├── organizer.py # Category-based file organization
│ ├── tracker.py # Track processed skills (SQLite + JSON)
│ └── updater.py # Git operations for repo updates
├── config/
│ ├── config.yaml # Main configuration file
│ └── search_terms.yaml # Custom search terms configuration
├── data/
│ └── skills_tracker.db # SQLite database of processed skills
├── logs/
│ └── skillflow.log # Application logs
├── requirements.txt
├── .env.example # Environment variables template
├── .gitignore
├── README.md
└── scripts/
└── setup_cron.sh # Cron job setup script
- Python 3.11+
- GitHub Token (optional, for higher API rate limits)
- Anthropic API Key (required)
-
Clone the repository
git clone <your-repo-url> cd SkillFlow
-
Create a virtual environment
python3 -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
-
Install dependencies
pip install -r requirements.txt
-
Configure environment variables
cp .env.example .env # Edit .env and add your API keysRequired variables:
ANTHROPIC_API_KEY: Your Anthropic API key (get from https://console.anthropic.com/)GITHUB_TOKEN: Your GitHub token (optional, get from https://github.com/settings/tokens)
# Run a single update cycle
python -m src.main
# Show statistics only
python -m src.main --stats
# Dry run (no git commits)
python -m src.main --dry-runRun the setup script:
bash scripts/setup_cron.shThis will:
- Create a virtual environment
- Install dependencies
- Verify configuration
- Set up a cron job (default: every hour)
- Configure log rotation
To customize the schedule, edit the crontab:
crontab -eDefault schedule (every hour):
0 * * * * cd /path/to/SkillFlow && .venv/bin/python -m src.main >> logs/skillflow.log 2>&1
Main configuration file with GitHub token, API keys, and paths.
github:
token: "${GITHUB_TOKEN}"
max_results: 20
min_stars: 5
anthropic:
api_key: "${ANTHROPIC_API_KEY}"
model: "claude-3-5-sonnet-20241022"
max_tokens: 2000
paths:
skills_dir: "skills"
data_dir: "data"
log_dir: "logs"
search:
languages: ["python", "javascript", "typescript"]
sort_by: "updated"
order: "desc"Custom search terms for finding skill repositories.
terms:
- "claude skill"
- "anthropic agent"
- "claude function"
- "ai assistant skill"
excluded_repos:
- "tools-only/SkillFlow"
required_file_patterns:
- "**/*.md"Skills are automatically categorized into:
daily-assistant: Personal organization, scheduling, reminderscommercial: E-commerce, business tools, customer serviceinvestment: Financial analysis, trading, portfolio managementdevelopment: Coding assistance, DevOps, software toolsresearch: Academic research, data gatheringcontent-creation: Writing, media creation, editingdata-analysis: Statistics, visualizationautomation: Workflow automation, scriptingcommunication: Email, messaging, collaborationproductivity: Efficiency tools, optimizationother: Anything that doesn't fit above
Each skill file includes a YAML header with metadata:
---
name: Skill Name
description: What this skill does
source: https://github.com/user/repo
original_path: path/to/skill.md
source_repo: user/repo
updated_at: 2024-01-31T10:00:00Z
category: daily-assistant
subcategory: writing
tags: ['writing', 'content']
primary_purpose: Main function of this skill
file_hash: abc123...
---
# Original skill content...tail -f logs/skillflow.logpython -m src.main --statspython -c "from src.config import Config; c = Config(); print('GitHub token:', bool(c.github_token)); print('Anthropic key:', bool(c.anthropic_api_key))"rm data/skills_tracker.dbMIT License - See LICENSE file for details