How to Use Sparse-Checkout to Install Claude-Red Categories: A Step-by-Step Guide
Use git clone --filter=blob:none --sparse followed by git sparse-checkout set Skills/<category> to download only the Claude-Red skill categories you need, saving bandwidth and storage while maintaining a focused local repository.
Claude-Red organizes offensive-security expertise into modular SKILL.md files grouped by functional categories within the Skills/ directory. When you only need specific capabilities—such as web exploitation or active directory attacks—downloading all 78 skills across 23 categories wastes bandwidth and local storage. Git's sparse-checkout feature, combined with partial clone filters, allows you to clone the repository structure without downloading every file, then selectively check out only the directories you intend to use.
Understanding the Claude-Red Repository Structure
The repository follows a strict modular design that makes sparse-checkout possible. Each category lives in its own top-level folder under Skills/, containing one or more SKILL.md files that Claude consumes as system prompts. According to the source analysis, the repository contains approximately 78 skills across 23 distinct categories, including web, wireless, active-directory, and others.
This organization means you can isolate exactly the attack vectors relevant to your current engagement without bloating your local filesystem with irrelevant techniques.
Sparse-Checkout Installation Steps
Step 1: Clone Without Downloading File Contents
Begin by cloning the repository with the --filter=blob:none flag, which tells Git to omit file contents during the initial clone, and --sparse to enable sparse-checkout mode immediately.
git clone --filter=blob:none --sparse https://github.com/SnailSploit/Claude-Red.git
cd Claude-Red
This creates a local repository containing only the commit history and tree structure. The .git/info/sparse-checkout file is initialized but empty, meaning no working directory files are checked out yet.
Step 2: Select Specific Categories
Use the git sparse-checkout set command to specify which category directories you want. This triggers Git to fetch only the SKILL.md files within those paths.
# Checkout only web exploitation and active directory skills
git sparse-checkout set Skills/web Skills/active-directory
As documented in the README.md (lines 44-46), this command modifies the .git/info/sparse-checkout file and checks out only the specified paths, leaving the rest of the repository content unpopulated on disk.
Step 3: Add or Remove Categories Later
You can modify your selection without re-cloning. Use add to include new categories or remove to exclude them.
# Add wireless exploitation skills to existing checkout
git sparse-checkout add Skills/wireless
# Remove a category you no longer need
git sparse-checkout remove Skills/web
Changes take effect immediately, fetching or removing files from your working directory while preserving the repository structure.
Automated Installation with install.sh
For an interactive setup experience, Claude-Red provides an install.sh script in the repository root that wraps the sparse-checkout workflow. The script handles target directory selection and category prompting.
# Interactive mode - prompts for directory and categories
./install.sh
# Non-interactive mode - specify target and category directly
./install.sh --target ~/.claude/skills --category web
The installer automates the git sparse-checkout commands and ensures proper directory permissions for Claude to access the skill files.
Loading Skills into Claude
Once you've checked out your desired categories, load the skills into Claude by piping the SKILL.md files into the CLI. Claude consumes these files as system context for domain-specific offensive security tasks.
# Load a specific skill
cat Skills/web/offensive-sqli/SKILL.md | claude --system-file -
# Load all skills from a category
cat Skills/active-directory/**/SKILL.md | claude --system-file -
For programmatic consumption, the repository includes convert_skills.py, which transforms SKILL.md files into JSON format suitable for automated Claude Skills system integration.
Summary
- Sparse-checkout prevents downloading unnecessary categories, saving bandwidth when the repository contains 78+ skills across 23 categories.
- Use
--filter=blob:noneduring clone to skip downloading file contents initially, then selectively populate categories withgit sparse-checkout set. - Categories align with directory names under
Skills/, such asSkills/weborSkills/active-directory. - The
install.shscript provides an interactive alternative to manual Git commands. - Individual
SKILL.mdfiles can be piped directly into the Claude CLI using standard Unix redirection.
Frequently Asked Questions
What Git version is required for sparse-checkout?
You need Git 2.25 or newer for basic sparse-checkout functionality, and Git 2.27 or newer to use the --filter=blob:none partial clone option. Earlier versions lack support for cone-mode parsing and blob filtering that make this workflow efficient.
Can I install multiple categories at once?
Yes. Pass multiple paths to the set or add subcommands separated by spaces: git sparse-checkout set Skills/web Skills/wireless Skills/cloud. This fetches all specified directories in a single operation.
How do I view available categories before checking them out?
Since the initial clone downloads the repository tree but not file contents, you can list available directories using ls or tree on the Skills/ folder, or browse the Skills directory on GitHub to see the 23 available categories before deciding which to check out.
What's the difference between --filter=blob:none and --sparse?
--filter=blob:none tells Git to perform a partial clone, downloading only commit metadata and tree objects while omitting file contents (blobs). --sparse enables sparse-checkout mode, which controls which paths appear in your working directory. Together, they create a minimal local footprint while allowing selective fetching of specific files when needed.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →