Skip to main content
Skills are SKILL.md files containing step-by-step workflow instructions. They teach Ona Agent to follow specific workflows, such as creating PRs, deploying to staging, or writing tests in a particular style. When a task matches a skill’s description, the agent reads and follows those instructions. Skills come from three places, plus AGENTS.md for general codebase context: When two sources publish a skill with the same name, repository skills win over organization skills, which win over built-in skills. This lets a repo customize a team-wide workflow, or a team override a built-in one.

Skill structure

Here are some skills the Ona engineering team uses:
Requires Linear integration.

Create a skill

Skills live in your repository.
  1. Create a directory in .ona/skills/:
  1. Create a SKILL.md file:
  1. Commit to your repository:

Directory structure

SKILL.md format

Required fields:
  • name: Unique identifier. If omitted, defaults to the directory name
  • description: When to use this skill. Be specific and include trigger words
Naming conventions:
  • Lowercase letters, numbers, and hyphens
  • Maximum 64 characters
  • Avoid vague names: helper, utils, tools

How Ona Agent discovers skills

At session start, Ona Agent collects skills from three sources:
  1. Repository skills in .ona/skills/, .claude/skills/, or .agents/skills/ of the current repo
  2. Organization skills configured for your Ona organization
  3. Built-in skills that ship with Ona Agent
Each source contributes a list of skills (name + description). Full skill content is loaded on demand via read_skill when a task matches a skill’s description. When two sources publish a skill with the same name, repository skills win over organization skills, and organization skills win over built-in skills.

Best practices

Write specific descriptions

The description determines when Ona Agent uses the skill:
  • ✅ “Create pull requests following repository conventions. Use when asked to create a PR, open a PR, or land changes.”
  • ❌ “PR stuff”

Design for stability

  • Use concepts that remain valid despite refactoring
  • Let Ona Agent rediscover current code state rather than hardcoding paths
  • If tools can’t do something, drop it

Keep skills focused

One skill per workflow. Keep SKILL.md under 500 lines. Move reference material to separate files.

Include anti-patterns

Tell Ona Agent what NOT to do. This prevents common mistakes.

Reference, don’t duplicate

Next steps

Troubleshooting

Check the description: Be specific about when to use it and include trigger words.Check the path: Skills must be in .ona/skills/<name>/SKILL.md (or .claude/skills/ or .agents/skills/)
Check path: Ensure the file is at .ona/skills/<name>/SKILL.md (or .claude/skills/ or .agents/skills/)Check frontmatter: Ensure YAML is valid with required name and description fields