Skip to main content
Source: upload-skills/ Skills are Markdown files with YAML frontmatter that tell the agent how to do something. Normally you commit them to a repo’s .openhands/ directory. This example shows a programmatic alternative: start a sandbox, upload your skills directory into it, then attach a conversation that inherits them.

How It Works

The agent server’s /api/files/upload_file endpoint accepts a multipart POST with the file content and a destination path. Skills are uploaded to ~/.openhands/skills/ by default (the location OpenHands checks at conversation start).

Quickstart

Configuration Options

Skill Format

Each skill is a directory containing a SKILL.md with YAML frontmatter:
The triggers list activates the skill automatically when matching keywords appear in a user message.

Reusing the Sandbox

Once skills are uploaded, you can reuse that sandbox for subsequent conversations so they all inherit the skills automatically. Control this with the Sandbox Grouping Strategy in Settings → Application:
  • No Grouping (default): each new conversation gets a fresh sandbox — skills won’t be present
  • Any grouping strategy (e.g., Group by Newest): new conversations join the existing, skills-loaded sandbox
A sandbox must still be running for new conversations to join it. If the seeded sandbox has gone inactive, start a new one with --sandbox-id to wake it up.

See Also

  • Clone and Attach — Another way to prepare a sandbox before attaching a conversation
  • Skills — Full documentation on creating and using skills