ai-skill-manager

Crates.ioai-skill-manager
lib.rsai-skill-manager
version1.0.2
created_at2026-01-25 02:15:48.867181+00
updated_at2026-01-25 02:15:48.867181+00
descriptionA CLI tool for managing skills (prompts and configurations) for AI coding assistants
homepage
repositoryhttps://github.com/binzhango/agent-skills-util
max_upload_size
id2067953
size171,139
Bin Zhang (binzhango)

documentation

README

AI Skill Manager (Rust)

A fast, reliable command-line tool for managing skills (prompts and configurations) for AI coding assistants. Written in Rust for cross-platform compatibility and performance.

Features

  • 🔍 Detect installed AI assistants automatically
  • ⬇️ Download skills from Git repositories using sparse checkout
  • 📦 Batch download multiple skills from a configuration file
  • 📋 List all installed skills across assistants
  • 📋 Copy skills between different AI assistants
  • 🗑️ Remove skills with confirmation prompts
  • 🌐 Cross-platform support for Windows, macOS, and Linux

Supported AI Assistants

  • GitHub Copilot
  • Claude
  • Cursor
  • Codeium
  • Windsurf

Installation

From crates.io

cargo install ai-skill-manager

From source

git clone https://github.com/yourusername/ai-skill-manager
cd ai-skill-manager/rust
cargo build --release
cargo install --path .

Prerequisites

  • Git must be installed and available in your PATH
  • At least one supported AI assistant installed

Usage

Detect Installed Assistants

Find which AI assistants are installed on your system:

ai-skill-manager detect

Example output:

Detected AI assistants:

  copilot - "/Users/username/Library/Application Support/github-copilot"
  cursor - "/Users/username/Library/Application Support/Cursor"

Download a Single Skill

Download a specific skill from a Git repository:

ai-skill-manager download \
  --repo https://github.com/example/skills \
  --path skills/code-review \
  --assistant copilot

Options:

  • --repo, -r: Git repository URL
  • --path, -p: Path to the skill within the repository
  • --assistant, -a: Target assistant name (copilot, claude, cursor, codeium, windsurf)

Batch Download Skills

Download multiple skills from a configuration file:

ai-skill-manager batch config.yaml

The configuration file can be in YAML or JSON format. See Configuration Files for examples.

List Installed Skills

View all skills installed across your AI assistants:

ai-skill-manager list

Example output:

copilot:
  - code-review
  - documentation-helper
  - test-generator

cursor:
  - code-review
  - refactoring-assistant

Total: 5 skill(s) across 2 assistant(s)

Copy Skills Between Assistants

Copy all skills from one assistant to another:

ai-skill-manager copy copilot cursor

This will copy all skills from Copilot to Cursor, skipping any that already exist.

Remove a Skill

Remove a skill from an assistant (with confirmation):

ai-skill-manager remove copilot code-review

You'll be prompted to confirm before the skill is deleted.

Configuration Files

YAML Format

Create a file named skills.yaml:

skills:
  - repo: https://github.com/example/ai-skills
    path: skills/code-review
    assistant: copilot
  
  - repo: https://github.com/example/ai-skills
    path: skills/documentation
    assistant: copilot
  
  - repo: https://github.com/another/skills-repo
    path: prompts/test-generator
    assistant: cursor

JSON Format

Create a file named skills.json:

{
  "skills": [
    {
      "repo": "https://github.com/example/ai-skills",
      "path": "skills/code-review",
      "assistant": "copilot"
    },
    {
      "repo": "https://github.com/example/ai-skills",
      "path": "skills/documentation",
      "assistant": "copilot"
    },
    {
      "repo": "https://github.com/another/skills-repo",
      "path": "prompts/test-generator",
      "assistant": "cursor"
    }
  ]
}

Platform-Specific Paths

The tool automatically detects assistants at standard locations:

macOS

  • Copilot: ~/Library/Application Support/github-copilot
  • Claude: ~/Library/Application Support/Claude
  • Cursor: ~/Library/Application Support/Cursor
  • Codeium: ~/Library/Application Support/Codeium
  • Windsurf: ~/Library/Application Support/Windsurf

Linux

  • Copilot: ~/.config/github-copilot
  • Claude: ~/.config/Claude
  • Cursor: ~/.config/Cursor
  • Codeium: ~/.config/Codeium
  • Windsurf: ~/.config/Windsurf

Windows

  • Copilot: %APPDATA%/github-copilot
  • Claude: %APPDATA%/Claude
  • Cursor: %APPDATA%/Cursor
  • Codeium: %APPDATA%/Codeium
  • Windsurf: %APPDATA%/Windsurf

Error Handling

The tool provides clear error messages for common issues:

  • Git not installed: "Git is required but not found in PATH"
  • Assistant not found: Lists available assistants
  • Skill already exists: Skips download with a message
  • Network errors: Includes details from Git
  • File operation errors: Includes the path that caused the issue

Examples

See the examples directory for:

  • Sample configuration files
  • Common usage patterns
  • Integration with CI/CD pipelines

Development

Building

cargo build

Running Tests

# Run all tests
cargo test

# Run with output
cargo test -- --nocapture

# Run property-based tests only
cargo test prop_

Linting and Formatting

# Check code style
cargo clippy

# Format code
cargo fmt

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • Built with Clap for CLI parsing
  • Uses Tokio for async operations
  • Property-based testing with Proptest
Commit count: 62

cargo fmt