Skip to main content

What are Skills?

Skills teach Firebender how to do something specific using markdown files. When you ask Firebender something that matches a Skill’s purpose, Firebender can invoke it to get specialized guidance. A Skill might teach Firebender to:
  • Review PRs using your team’s standards
  • Generate commit messages in your preferred format
  • Query your company’s database schema
  • Follow your team’s coding conventions

Why Skills?

Skills allow Firebender to progressively improve at a specific, well-defined task, that can be personal or specific for your team. At runtime, Firebender chooses which skills to load into context based on the task. This differs from Commands which are user triggered, and MCPs which are solely focused on connecting data sources with your agent.

Create a Skill

Ask Firebender:
Firebender will guide you through creating a skill. If you prefer to create one manually, read on. Skills are markdown files with YAML frontmatter stored in special directories.

1. Create the directory structure

User skills (available across all projects):
Team skills (shared with your team via git):

2. Write SKILL.md (Required)

Create a SKILL.md file in your skill directory:
The description is critical - Firebender uses it to decide when to invoke your Skill.

3. Use your Skill

Skills are loaded immediately. You can:
  • Invoke it directly: /skill:commit-helper
  • Ask Firebender: “What skills can you use?”
  • Let Firebender auto-invoke it based on your request

Skill metadata

Supporting files

Put detailed reference material in separate files that Firebender reads only when needed:
Link to them from SKILL.md:
Keep SKILL.md under 500 lines. Split detailed content into separate files.

Skill locations

Team skills override user skills with the same name.

Example: Multi-file Skill

A PDF processing Skill with supporting documentation:
SKILL.md:

Distribution

Via Git (Team Skills)

Commit .firebender/skills/ to version control. Anyone who clones gets the Skills.

Cross-compatible

Skills work with multiple AI coding tools. Store them in:
  • ~/.firebender/skills/ (Firebender)
  • ~/.goose/skills/ (Goose)
  • ~/.claude/skills/ (Claude Code)
  • ~/.codex/skills/ (Codex)
  • ~/.cursor/skills/ (Cursor)
  • ~/.agents/skills/ (Generic agents)
Firebender loads from all these directories for compatibility.

Best practices

Write clear descriptions

Bad:
Good:

Use progressive disclosure

Keep core instructions in SKILL.md. Put detailed documentation in linked files:

Use executable scripts, not code blocks

Avoid putting bash scripts in triple backticks in your markdown files. Instead, create executable scripts in your skill directory. This allows the agent to use them directly without rewriting the script. Bad:
Good:
Reference them in SKILL.md:

Include examples

Show concrete examples in your Skills:

Troubleshooting

Skill not triggering

Make your description more specific with keywords users would say:

Continuous Skill improvement

If you see the agent load in a skill and improperly use it or continue to stumble over bad bash commands/tool use, you should ask it to analyze and improve: