Skip to content

Skills

Skills are reusable task definitions that agents can invoke. Each skill lives in its own folder with a SKILL.md file.

Skills must be organized in subdirectories with a SKILL.md file. The name and description fields are required in the frontmatter.

my-capability/
└── skills/
└── deploy/
├── SKILL.md
└── deploy-script.sh
---
name: deploy
description: Deploy application to production
---
# Deploy Skill
## Steps
1. Run pre-deployment checks
2. Build production bundle
3. Deploy to server

All files in the skill directory (besides SKILL.md) are included as references.

Note: Unlike commands and subagents, skills cannot be flat files. They must always be in a subdirectory with name and description in the frontmatter.

You can also export skills from index.ts:

import type { CapabilityExport } from "@omnidev-ai/capability";
export default {
skills: [
{
// name and description go in the YAML frontmatter
skillMd: `---
name: deploy
description: Deploy application to production
---
# Deploy
## Steps
1. Run pre-deployment checks
2. Build production bundle
3. Deploy to server
`,
references: [
{ name: "deploy.sh", content: "#!/bin/bash\necho Deploy" }
]
}
]
} satisfies CapabilityExport;
  • Keep skill names short and action-oriented (deploy, review-pr).
  • Use references for scripts/templates the agent should use.