Skip to content
Skills

Creating and publishing a skill

How to write your own SKILL.md, add resources and variables, and publish the skill to the marketplace.

2 min readUpdated 2026-07-07

Write your own skill when you have a recurring procedure you want to lock into an agent: a report format, an analysis order, the specifics of working with your data source.

Skill structure

The minimal skill is a single SKILL.md file:

markdown
---
name: weekly-report
description: Builds a weekly report to a fixed structure
---

# Weekly report

1. Ask the user for the week's metrics.
2. Group by area: sales, product, team.
3. Call out 3 top wins and 1 risk.
4. Return the report in Markdown with level-2 headings.

Good practices

  • Step-by-step — describe actions in order, like onboarding a new hire.
  • Output format — state the result structure explicitly (table, list, sections).
  • Anti-patterns — list what not to do.
  • Brevity — one skill, one task.

Resources

If a skill needs a reference, add a resource file next to SKILL.md. For example, the cooking skill uses products.md — a product database with macros. Resources are pulled into the agent's context alongside the instructions.

Environment variables

Declare variables when publishing: name, description, whether required, whether secret, and a default value. The user installing the skill fills in the values — e.g. an external service's API key.

Publishing to the marketplace

  1. Create the skill and test it on your agent.
  2. Publish — set a category, a description (with a Russian translation), and a version.
  3. Manage visibility: draft, unlisted, published.

A published skill has ratings and comments, like agents. Good descriptions and stable versions help a skill earn installs.

A skill added to an agent lands in its bundle under skills/<name>/SKILL.md. More on bundles in Agents: how they work.

Creating and publishing a skill | AgentHere