---
title: "Skills"
description: "Package repeated workflows into reusable skills."
lang: en
---

When the same workflow needs explaining again and again, package it as a skill.

## What a skill is

A skill is reusable instructions that tell the agent how to handle a particular kind of task. It turns “explain it every time” into “invoke it once”.

## Using a skill

Invoke it by name in the conversation. The agent follows the workflow defined in the skill, so you do not have to restate it.

Good fits:

- Recurring tasks, such as producing a kind of report or running a fixed code review
- A standard practice shared by a team
- A long instruction set where only part is relevant each time

## Subdirectories and skill packs

Skills can be grouped in subdirectories. The skill name is the relative `/`-separated path: `copy/brand.md` is the skill `copy/brand`.

When a directory contains `SKILL.md`, the whole directory counts as **one skill pack**. The skill name is the directory name; invoking it injects only `SKILL.md`, while sibling files stay available as companion files that the agent reads on demand. The picker shows a pack as one entry (with a directory icon); companions are not listed, but searching a companion name still finds the pack, and `[skill:pack/companion]` mounts a single file manually. This suits long workflows: keep the entry point small and load detail only when needed.

## Always-on skills

A skill invoked with `/` applies to **the current turn only**. To keep one across turns, pin it:

- **Session level**: the always-on skill bar above the input. Skills declaring `pin: true` appear there; clicking one enables it for this session and injects it every turn until you turn it off or switch sessions.
- **Project level**: the “Skills” tab in project settings. Pinning there applies to **every session** under that project and is shared by everyone using that project directory.

The three layers coexist: a one-off `[skill:xxx]` marker, session pins and project pins are merged and de-duplicated each turn. The context panel’s “skill content” section shows exactly what was injected and how many tokens it used.

To appear in the always-on bar, a skill declares `pin: true` in frontmatter (declaring it does not enable it; you still turn it on):

```yaml
---
name: soil-conservation
description: …
pin: true
---
```

Encrypted skills (`.skl`) under the skills directory are decrypted when read, so companion files work in encrypted deliveries too.

## Related

- [Plugins](/docs/using-bi/plugins)
- [Parallel subtasks](/docs/using-bi/subagents)
