> ## Documentation Index
> Fetch the complete documentation index at: https://docs.r5d.chat/llms.txt
> Use this file to discover all available pages before exploring further.

# Skills

> Give the agent reusable instructions, scripts and resources, per user or for everyone.

A skill is a folder of instructions and supporting files that the agent loads
when a task calls for it. Every skill has a `SKILL.md` that starts with YAML
frontmatter, followed by Markdown instructions. Skills follow the
[Agent Skills](https://agentskills.io/specification) format, so skills written
for other agents work here too.

```text theme={null}
release-notes/
├── SKILL.md          # Required: frontmatter + instructions
├── scripts/          # Optional: code the agent can run
├── references/       # Optional: documentation loaded on demand
└── assets/           # Optional: templates, images, data
```

```markdown SKILL.md theme={null}
---
name: release-notes
description: Drafts release notes from merged changes. Use when the user asks for release notes or a changelog.
---

# Release notes

1. Collect the merged changes with `scripts/collect.sh`.
2. Group them by area and follow [the style guide](references/style.md).
```

The `name` uses lowercase letters, digits and single hyphens, at most 64
characters, and matches the folder name. The `description` says what the skill
does and when to use it, in at most 1,024 characters.

## How the agent uses skills

Each chat message the agent receives lists the available skills with their
descriptions and `SKILL.md` paths. When a task matches a description, the agent
reads that `SKILL.md` and follows it, opening the skill's other files only when
needed. A long reference document therefore costs nothing until it is used.
Unattended automation runs do not receive the list, because it would use up
their small, approved token budget.

The easiest way to add a skill is to ask the agent: *"Create a skill for our
weekly status update"*, or *"Install the skill from
[https://github.com/example/skills/tree/main/pdf](https://github.com/example/skills/tree/main/pdf)"*. The agent writes personal
skills to `/home/r5d/.agents/skills/<name>/`, and they are listed from the next
message.

## Where skills live

| Location | Path in the workspace | Managed by | Applies to |
| - | - | - | - |
| Personal | `/home/r5d/.agents/skills` | The user and their agent | That user |
| Personal (older) | `/home/r5d/skills` | The user and their agent | That user |
| Shared | `/home/r5d/.r5dchat/shared-skills` | Administrators | Every user |
| Built-in | `/opt/r5dchat/skills` | The workspace image | Every user |

When two skills have the same name, the first location in this table wins, so a
user can adapt a shared or built-in skill by copying it into their personal
skills.

## Manage skills in the browser

**Settings → Skills** lists every skill the user's agent can use. Opening one
shows `SKILL.md` rendered as Markdown, with the frontmatter as labelled
metadata, beside the skill's files. Users can:

* create a skill from a template, and delete a skill;
* edit any text file in an editor with syntax highlighting, and save with
  <kbd>Ctrl</kbd>/<kbd>⌘</kbd>+<kbd>S</kbd>;
* add files and folders, upload files or a whole folder, and rename, move,
  download or delete files;
* mark scripts executable;
* copy a shared or built-in skill into their personal skills.

Problems in `SKILL.md`, such as a missing description or a name that does not
match the folder, are shown above the file without preventing a save.

Personal skills are files in the user's workspace, so the agent and the browser
always see the same skill. Browsing never starts a stopped workspace: the list
shows the personal skills last seen, and opening or changing one asks to start
the workspace. A save carries the version of the file it was based on; if the
agent changed the file in the meantime, the editor offers to reload it or
overwrite it, so neither change is lost silently.

Deleted personal skills are moved to `/home/r5d/.r5dchat/trash/skills` and
permanently removed after seven days. Ask the agent to restore one in time.

## Shared skills

Administrators manage shared skills under **Administration → Skills** and in
**Settings → Skills**. They are stored by the control plane, so they reach every
user, including users whose workspace has never started.

* A new shared skill is a **draft**: only administrators see it, and it is not
  copied to any workspace. **Publish** it when it is ready.
* The control plane copies the published shared skills into each workspace when
  the workspace is next used, and immediately into running workspaces after a
  change. The workspace copy is replaced as a whole on every update, so changes
  made there by an agent do not persist.
* An administrator can share one of their own skills, or a built-in skill, with
  everyone. The copy is published straight away unless they choose to keep it
  as a draft.

Shared skills are limited to 4 MiB per file, 16 MiB and 200 files per skill,
and 24 MiB for all published shared skills together. Files uploaded to personal
skills through the browser are limited to 10 MiB each.

<Note>
  Skill files are served to the browser as downloads, never as pages: only
  raster images display inline. Markdown is rendered with the same sanitizer as
  agent responses. Treat skills from unknown sources like any other code, and
  review their instructions and scripts before relying on them.
</Note>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.