skill-downloader
Use Cautionnpx machina-cli add skill nicepkg/ai-workflow/skill-downloader --openclawSkill Downloader
Download and install Claude Code skills from multiple sources.
Supported Sources
| Source Type | Examples |
|---|---|
| GitHub Repository | https://github.com/user/repo, github.com/user/repo |
| Compressed Archive | .zip, .tar.gz, .tgz, .skill (renamed zip) |
| Direct URL | URL pointing to archive or skill folder |
Usage
Download from GitHub
python scripts/download_from_github.py <repo-url> <skill-path> --output <target-dir>
Examples:
# Official Anthropic skills
python scripts/download_from_github.py https://github.com/anthropics/skills skills/docx --output ./.claude/skills/
# Community skills (root level)
python scripts/download_from_github.py https://github.com/gked2121/claude-skills social-repurposer --output ./.claude/skills/
# Nested skill path
python scripts/download_from_github.py https://github.com/MadAppGang/claude-code skills/content-brief --output ./.claude/skills/
Download from Archive
python scripts/download_from_archive.py <url-or-path> --output <target-dir>
Examples:
# From URL
python scripts/download_from_archive.py https://example.com/skills/my-skill.zip --output ./.claude/skills/
# From local file
python scripts/download_from_archive.py ./downloads/my-skill.tar.gz --output ./.claude/skills/
# .skill files (renamed zip)
python scripts/download_from_archive.py https://skillhub.club/download/awesome-skill.skill --output ./.claude/skills/
Unified Download Command
python scripts/download_skill.py <source> --output <target-dir>
Automatically detects source type:
- GitHub URL → Uses git sparse checkout
- Archive URL/path → Downloads and extracts
- Directory path → Copies directly
Examples:
# Auto-detect GitHub
python scripts/download_skill.py https://github.com/anthropics/skills/tree/main/skills/docx --output ./.claude/skills/
# Auto-detect archive
python scripts/download_skill.py https://example.com/my-skill.zip --output ./.claude/skills/
Validation
All download methods validate:
- Skill folder contains
SKILL.md SKILL.mdhas valid YAML frontmatter withnameanddescription- No malicious content patterns detected
Output Structure
Downloaded skills are placed in:
<output-dir>/
└── <skill-name>/
├── SKILL.md # Required
├── scripts/ # Optional
└── ...
Error Handling
| Error | Cause | Solution |
|---|---|---|
| Skill already exists | Target directory exists | Use --force to overwrite |
| SKILL.md not found | Invalid skill package | Verify source contains SKILL.md |
| Invalid archive | Corrupted or unsupported format | Check file integrity |
| Network error | Download failed | Retry or check URL |
Integration with Workflow Creator
When used with workflow-creator, download skills to workflow's .claude/skills/ directory:
# Create workflow first
python /path/to/workflow-creator/scripts/create_workflow.py my-workflow --path ./workflows
# Then download skills
python scripts/download_skill.py https://github.com/anthropics/skills/tree/main/skills/docx --output ./workflows/my-workflow/.claude/skills/
Skill Sources Reference
Popular skill repositories:
- Anthropic Official - docx, pdf, pptx
- gked2121/claude-skills - social-repurposer, canvas-design
- ComposioHQ/awesome-claude-skills - Collection
- MadAppGang/claude-code - SEO, content skills
- daymade/claude-code-skills - twitter-reader, fact-checker
- skillhub.club - 1000+ skills collection
Source
git clone https://github.com/nicepkg/ai-workflow/blob/main/.claude/skills/skill-downloader/SKILL.mdView on GitHub Overview
skill-downloader fetches Claude Code skills from GitHub repositories, compressed archives, or direct URLs and installs them into the Claude workspace. It validates that each skill folder contains SKILL.md with proper YAML frontmatter before finishing installation. This streamlines adding official and community skills to your Claude setup.
How This Skill Works
The tool uses Python scripts to detect the source type and perform the download: download_from_github.py for GitHub repos, download_from_archive.py for archives, and a unified download_skill.py that auto-detects the source (GitHub, archive, or directory) and places the skill under the target output directory.
When to Use It
- You want to add a skill from a GitHub repository and install it into your Claude workspace.
- You have a direct URL to a ZIP, TAR.GZ, or .skill file and need it downloaded and installed quickly.
- You are pulling official or community skills from multiple sources and want a unified workflow.
- You are setting up a workflow and need to populate the .claude/skills directory for a new workflow.
- You need to replace an existing skill with a fresh copy using the force option.
Quick Start
- Step 1: Run python scripts/download_skill.py <source> --output <target-dir> to start the download.
- Step 2: Let the script auto-detect the source type (GitHub, archive, or directory) and install accordingly.
- Step 3: Verify the new skill folder exists under <target-dir>/<skill-name> with SKILL.md present.
Best Practices
- Ensure the target directory is clear or use --force to overwrite an existing skill.
- Validate that the downloaded package contains SKILL.md.
- Verify that SKILL.md includes valid YAML frontmatter with name and description.
- Prefer GitHub sources with sparse checkout to minimize downloads for large repos.
- Check downloaded content for malicious patterns and maintain integrity.
Example Use Cases
- Download official Anthropic skills from GitHub and place them under .claude/skills using the GitHub path skills/docx.
- Fetch a community skill like social-repurposer from gked2121/claude-skills and install to .claude/skills.
- Retrieve a nested skill path such as skills/content-brief from MadAppGang/claude-code and install locally.
- Download a skill archive from a URL, for example https://example.com/skills/my-skill.zip, and install to .claude/skills.
- Install a local .skill file by downloading it via the archive handler and placing it in the .claude/skills directory.