Skip to main content
OpenHands makes it easy to extend your agent’s capabilities by adding pre-built skills from the community or custom repositories. Skills can be added globally (available in all conversations) or to specific projects.

Using the Add-Skill Action

The quickest way to add a skill is using the /add-skill command in your conversation with OpenHands. This command fetches skills from GitHub repositories and installs them in your workspace.

Basic Usage

Provide a GitHub URL pointing to a skill:
OpenHands will:
  1. Parse the URL to identify the repository and skill path
  2. Fetch the skill files from GitHub
  3. Install the skill in .agents/skills/ directory
  4. Verify the installation
  5. Make the skill immediately available

Supported URL Formats

The /add-skill command accepts various GitHub URL formats:
  • Full GitHub tree URL: https://github.com/OpenHands/extensions/tree/main/skills/codereview
  • Repository path: https://github.com/OpenHands/extensions/skills/codereview
  • Short form: github.com/OpenHands/extensions/skills/codereview
  • Shorthand: OpenHands/extensions/skills/codereview

Examples

Add the code review skill:
Add the Kubernetes skill:
Add a skill from a custom repository:

Skill Storage Locations

Skills are stored in different locations depending on the platform and scope:
The CLI supports two skill locations:User-level skills (global, available in all conversations):
Project-level skills (specific to current directory):
Skills added via /add-skill are installed in .agents/skills/ of your current workspace, making them available for that project.To add skills globally, manually place skill directories in ~/.openhands/skills/.

Manual Installation

You can also manually install skills by copying skill directories into the appropriate location.

For Project-Level Skills

  1. Create the skills directory if it doesn’t exist:
  2. Copy or clone the skill directory:
  3. Verify the skill structure:

For User-Level Skills (CLI Only)

  1. Create the global skills directory:
  2. Add skills to this directory:
Skills in ~/.openhands/skills/ are available in all your conversations when using the CLI.

Verifying Installation

After adding a skill, verify it’s available:
  1. Check the file exists: The skill directory should contain at least a SKILL.md file
  2. Test the trigger: For keyword-triggered skills, use one of the trigger words in your prompt:
  3. Check skill loading: OpenHands will indicate when a skill is loaded in response to your prompt

Skill Updates

To update a skill to the latest version:
  1. Remove the old version:
  2. Add the updated version:
Or manually pull updates if you cloned the skill repository.

Authentication for Private Skills

The /add-skill command automatically uses the GITHUB_TOKEN environment variable to access private repositories via the GitHub API. For manual git clone operations (such as when cloning directly into .agents/skills/), you’ll need to handle authentication differently—typically using SSH keys or embedding a personal access token in the clone URL. Using /add-skill with private repositories:
  1. Set the GITHUB_TOKEN environment variable:
  1. Use /add-skill as normal with private repository URLs
The command will automatically use the token for authentication.

Skill Conflicts

If a skill with the same name already exists, OpenHands will warn you before overwriting. To resolve conflicts:
  1. Rename the existing skill: Move or rename the existing skill directory
  2. Choose a different installation location: Install at user-level vs project-level
  3. Overwrite: Confirm the overwrite when prompted

Next Steps