# How to Select Specific Skills During Installation with the Google Skills CLI

> Easily select specific skills during installation with the Google Skills CLI. Use npx skills add with the --skill flag to target individual skills or glob patterns for precise control.

- Repository: [Google/skills](https://github.com/google/skills)
- Tags: how-to-guide
- Published: 2026-09-02

---

**You can select specific skills during installation using the `npx skills add` command with the `--skill` flag to target individual identifiers or glob patterns, allowing the CLI to resolve each skill's [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) manifest and execute only the required installer.**

The Google Skills repository provides a modular command-line interface for installing only the cloud capabilities you need. When you select specific skills during installation rather than pulling the entire catalog, the CLI uses a selector-based resolution system that reads individual skill manifests from paths like [`skills/cloud/google-cloud-storage-basics/SKILL.md`](https://github.com/google/skills/blob/main/skills/cloud/google-cloud-storage-basics/SKILL.md) and executes targeted installers based on the metadata found in files such as [`skills/cloud/google-cloud-storage-basics/references/data-management.md`](https://github.com/google/skills/blob/main/skills/cloud/google-cloud-storage-basics/references/data-management.md).

## Using the --skill Flag for Targeted Selection

The primary mechanism to select specific skills during installation is the `--skill` flag appended to the `npx skills add` command. This flag accepts exact skill identifiers or glob patterns, giving you precise control over which capabilities get installed from the repository.

### Installing a Single Skill

To install one specific skill, provide the repository path followed by the exact skill name:

```bash
npx skills add gemini-cli-extensions/google-cloud-storage --skill gcsfuse

```

This command instructs the CLI to locate the [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) file corresponding to the `gcsfuse` skill within the specified repository and execute only that skill's defined installer.

### Installing Multiple Skills with Glob Patterns

For batch installation of related skills without selecting the entire repository, use glob patterns with the `--skill` flag:

```bash
npx skills add google/skills --skill "cloud/*-cli"

```

The CLI parses this selector and resolves all matching skill directories, reading their respective [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) files to discover dependencies and install commands.

## How the CLI Resolves Selected Skills

According to the `google/skills` source code, the CLI follows a four-step resolution process when you select specific skills during installation:

1. **Parse the selector**: The CLI interprets the argument following `add` as either a full repository path (`google/skills`) or a glob pattern.
   
2. **Resolve the skill manifest**: For each matched skill, the CLI reads the [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) file (such as [`skills/cloud/google-cloud-storage-basics/SKILL.md`](https://github.com/google/skills/blob/main/skills/cloud/google-cloud-storage-basics/SKILL.md)) to discover metadata, runtime requirements, and post-install hooks.
   
3. **Run the installer**: Based on the manifest, the CLI executes the exact command defined in the skill's metadata, which may be `npm install -g <pkg>`, `pip install <pkg>`, or another language-specific installer. The command is taken verbatim from [`SKILLS.md`](https://github.com/google/skills/blob/main/SKILLS.md) to guarantee reproducibility.
   
4. **Emit confirmation**: After successful installation, the CLI prints the installed skill name and a link to its documentation.

The CLI first checks the local environment for required runtimes like `gcloud` or language-specific tools. If a required runtime is missing, the CLI aborts with a clear message and installation guidance rather than attempting partial installation.

## Skill Manifests and Installation Commands

Each skill's installation behavior is defined in its [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) file. These manifests declare the exact installer commands and dependencies, while supplementary files like [`skills/cloud/google-cloud-storage-basics/references/data-management.md`](https://github.com/google/skills/blob/main/skills/cloud/google-cloud-storage-basics/references/data-management.md) and [`skills/cloud/workload-manager-basics/references/client-library-usage.md`](https://github.com/google/skills/blob/main/skills/cloud/workload-manager-basics/references/client-library-usage.md) provide language-specific examples showing `pip install` or `npm install` commands.

The CLI never guesses an installer; it always uses the exact command specified in the skill's [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) manifest. This ensures that when you select specific skills during installation, you get reproducible results without unnecessary bloat.

## Practical Installation Examples

### Custom Repository Installation

You can select skills from private or organizational repositories by specifying the full path:

```bash
npx skills add my-org/custom-skill-repo --skill my-awesome-skill

```

### Avoiding Bloat in CI Environments

Selective installation is particularly valuable in constrained CI environments. Instead of installing the entire Google Skills catalog, install only necessary tooling:

```bash
npx skills add google/skills --skill "genkit-*"

```

This approach keeps your environment lean by resolving only matching skill manifests and executing their specific installers.

## Summary

- Use `npx skills add <repo> --skill <identifier>` to select specific skills during installation.
- The CLI resolves skills by reading [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) manifests from paths like [`skills/cloud/google-cloud-storage-basics/SKILL.md`](https://github.com/google/skills/blob/main/skills/cloud/google-cloud-storage-basics/SKILL.md).
- Glob patterns (e.g., `"cloud/*-cli"`) allow batch installation of related skills without pulling the entire repository.
- Installation commands are executed verbatim from skill manifests, ensuring reproducible results across environments.
- The CLI validates runtime requirements before installation and aborts with clear messaging if dependencies like `gcloud` or language runtimes are missing.

## Frequently Asked Questions

### How do I install multiple specific skills at once?

Use glob patterns with the `--skill` flag to match multiple skill identifiers. For example, `npx skills add google/skills --skill "cloud/*-cli"` installs all skills matching the pattern by resolving each corresponding [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) in the repository and executing the defined installers sequentially.

### What happens if a skill requires a runtime I don't have installed?

The CLI checks for required runtimes like `gcloud`, `npm`, or `pip` before executing any installer. If a required runtime is missing, the CLI aborts the installation and provides a link to the official installation guide for that dependency, ensuring you meet all prerequisites before the CLI attempts to run the commands defined in the skill's [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md).

### Where does the CLI find the installation instructions for each skill?

The CLI reads the [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) file located in each skill's directory (such as [`skills/cloud/google-cloud-storage-basics/SKILL.md`](https://github.com/google/skills/blob/main/skills/cloud/google-cloud-storage-basics/SKILL.md)) to discover the exact installation command, dependencies, and post-install hooks. Supporting references in files like [`skills/cloud/workload-manager-basics/references/client-library-usage.md`](https://github.com/google/skills/blob/main/skills/cloud/workload-manager-basics/references/client-library-usage.md) demonstrate the language-specific install commands that may be specified in the manifest.

### Can I install skills from private or custom repositories?

Yes, you can target any accessible repository by specifying its path in the `npx skills add` command. Use the syntax `npx skills add <owner>/<repo> --skill <skill-name>` to resolve skills from custom locations, provided the repository contains properly formatted [`SKILL.md`](https://github.com/google/skills/blob/main/SKILL.md) files in the expected directory structure.