How to Install Only Specific Categories of Claude-Red Skills

Yes, you can install specific categories using the ./install.sh --category <name> flag or Git's sparse-checkout feature to download only the Skills/<category> directories you need.

Claude-Red organizes its offensive security expertise into discrete categories under the Skills/ directory, allowing operators to deploy only relevant capabilities. Rather than cloning the entire repository, you can selectively install specific skill categories to minimize storage and reduce Claude's context window overhead. Both the interactive installer and native Git workflows support this surgical deployment approach.

Understanding Claude-Red's Skill Architecture

The repository structures offensive capabilities as category folders beneath the Skills/ directory at the repository root. Each folder—such as web, wireless, or cloud—contains one or more SKILL.md files that Claude consumes as contextual knowledge bases. This hierarchy enables granular control over what capabilities reside in your Claude environment. The claude-skills.json manifest file provides a programmatic index of all available categories for tooling integration.

Method 1: Selective Installation Using install.sh

The bundled install.sh script provides native support for category-specific installation. According to the SnailSploit/Claude-Red source code, lines 31-78 handle the --category flag logic: the script enumerates available directories via Skills/*/ validation, then copies only the requested category to your target path.

Installing a Single Category

Use the --target flag to specify your Claude skills directory and --category to identify the specific skill set:

./install.sh --target ~/.claude/skills --category web

This command copies only Skills/web/ and its contained SKILL.md files to ~/.claude/skills/claude-red/, ignoring all other offensive categories.

Listing Available Categories

Before installation, enumerate valid category names to prevent typos:

./install.sh --list

The script scans the Skills/ directory and prints each available category folder name that can be passed to the --category argument.

Dry-Run Mode

Preview filesystem changes without writing data using the --dry-run flag:

./install.sh --category wireless --dry-run

This executes the validation logic and reports which files would be copied to the target directory, allowing you to verify paths before modification.

Method 2: Git Sparse-Checkout for CI/CD Pipelines

For automated deployments or when avoiding the installer script entirely, Git's sparse-checkout feature clones the repository without downloading every skill file. This method is ideal for CI pipelines where you want only specific offensive capabilities available.

Initialize a sparse clone and select multiple categories:

git clone --filter=blob:none --sparse https://github.com/SnailSploit/Claude-Red.git
cd Claude-Red
git sparse-checkout set Skills/web Skills/wireless

After checkout, manually copy the selected folders to your Claude skills path:

cp -r Skills/* ~/.claude/skills/claude-red/

This approach downloads only the metadata for the specified Skills/<category> paths, significantly reducing bandwidth and storage requirements compared to a full clone.

Summary

  • Category-based structure: All capabilities reside in Skills/<category>/ directories containing consumable SKILL.md files.
  • Installer script: Use ./install.sh --category <name> to copy a specific folder; validation occurs in the script's argument parsing block (lines 31-78).
  • Discovery tools: Run ./install.sh --list to see valid categories or reference claude-skills.json for programmatic access.
  • Safe testing: The --dry-run flag allows validation of copy operations before filesystem modification.
  • Git alternative: Sparse-checkout enables selective downloads for automation scenarios, bypassing the need for the full repository history.

Frequently Asked Questions

Can I install multiple categories at once using install.sh?

The install.sh script processes a single --category argument per invocation. To install multiple categories, run the script repeatedly with different category names, or use the Git sparse-checkout method to select multiple Skills/<category> paths simultaneously before copying them to your target directory.

Where does install.sh validate category names against available options?

According to the Claude-Red source code in install.sh (lines 31-78), the script validates the requested category by checking it against the directory listing of Skills/*/. If the specified category does not match an existing folder name, the script exits with an error before performing any copy operations.

Can I preview what will be installed before copying files?

Yes. Pass the --dry-run flag to the installer: ./install.sh --category <name> --dry-run. This executes the category validation logic and reports the specific source and destination paths that would be affected, without creating or modifying any files in your Claude skills directory.

Does Claude-Red support installing individual skills rather than full categories?

No. The current architecture organizes capabilities at the category level, where each folder (e.g., web, cloud) may contain multiple related SKILL.md files. The installer and sparse-checkout workflows operate on these category directories as atomic units; you cannot selectively install individual skill files within a category using the provided tooling.

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:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →