# Skills

> Teach Line repeatable procedures with SKILL.md folders. Install, create and use them with your approval.

A skill is a folder with a `SKILL.md`: YAML front matter with a `name` and `description`, then Markdown instructions. It can carry scripts and reference files. This is the common SKILL.md format, so skills from public skill repositories work as they are.

```markdown
---
name: release-checklist
description: Prepare a release (version bump, changelog, tests, tag) without publishing anything.
---
# Steps
1. …
```

## Where skills live

```text
~/.line/skills/<name>/          yours, every project
<project>/.line/skills/<name>/  shared with a repo (wins over yours with the same name)
plugins                         a plugin's skills, while it is enabled
```

## How the agent uses them

- Line's instructions list each skill's name and description only. When a task fits, the agent loads the full skill with `use_skill`.
- When a task needs a skill it doesn't have, the agent can propose one with `skill_install` (a GitHub path or URL, an https link to a SKILL.md, or a name from the default index). You see the source, every file (scripts are marked) and the start of SKILL.md. **Nothing is written until you approve**, and nothing in a skill runs on install.
- After working something out, the agent can save it with `skill_create` (you approve the text).
- Skill files are data: the agent follows a skill for the task you gave, never instructions that conflict with your request.

## Commands

```bash
line skill list
line skill search <words>                 # searches the skill sources on GitHub
line skill install <source> [--project] [-y]
line skill remove <name>
line skill new <name> [--project]         # an empty SKILL.md to fill in
```

In the TUI: `/skills`, `/skills search <words>`, `/skills install <source>`, `/skills remove <name>`, `/skills <name> <task>`.

Sources default to `anthropics/skills`. Add more with `skill_sources` in `~/.config/line/settings.json` or `LINE_SKILL_SOURCES=owner/repo,owner/repo/path`. Set `GITHUB_TOKEN` to raise GitHub's rate limit. Each skill is limited to 60 files and 2 MB.
