Last updated: October 5, 2026
About Skills
Agent0 applies skills to do its work: querying span data, building a PromQL query, creating a dashboard. Dash0 ships those, and Agent0 loads them on its own. A custom skill is one your organization writes, so Agent0 also follows the procedures only your team knows. Write it in Dash0, or import it from a Git repository where your team already keeps it.
When to Use a Custom Skill
- Runbooks: The steps your team takes when a specific service degrades.
- Conventions: How your environments, datasets, and services are named.
- Triage order: What to check first, second, and third for a recurring problem.
Create a Custom Skill
Creating, editing, and deleting custom skills requires the Admin role. Members can open the list and invoke the skills in it, but the create, edit, and delete controls are disabled with a tooltip explaining why.
- Go to Settings → Agent0 → Skills.
- Open the menu next to Create with Agent0 and select Manually.
- Enter a name. Use lowercase letters, numbers, and single hyphens, up to 64 characters. Leave out
the leading slash: the name
checkout-triageis invoked as/checkout-triage. - Enter a description of when Agent0 should use the skill, up to 1024 characters. The description is required, and Agent0 reads it to decide whether the skill applies, so describe the trigger rather than the mechanism.
- Write the instructions. They are required, and there is room for roughly 65,000 characters — about 10,000 words, or 20 printed pages. A runbook does not come close.
- Select Save. The skill is enabled from that moment, and Agent0 can invoke it.
To have Agent0 draft the skill instead, select Create with Agent0. Agent0 asks what the skill should cover, then drafts the name, description, and instructions for you to review before anything is saved.
To remove a skill, open it from the Skills tab and select Delete.
Verify the Skill Works
Open a Chat thread and type /. The skill appears in the list with
its description.
If it does not appear, check the following:
- The skill is enabled on the Skills tab. Only enabled skills appear.
- The name is the one you expect. Agent0 lists skills by name.
Import Custom Skills from a Git Repository
If your team already keeps skills in a Git repository, import them instead of retyping each one. See Import Skills from a Git Repository.
Invoke a Custom Skill
- Explicitly: Type
/in the Chat composer and select the skill. The reference is highlighted in your draft and in the sent message, and hovering it shows the description. - Automatically: Agent0 selects a skill on its own when the description matches the request. For now, auto-invocation is on for every skill.
Auto-invocation is a decision Agent0 makes from the description, not a guarantee. A skill that gets skipped when you expected it usually has a description that does not describe the trigger.
Which Surfaces Custom Skills Apply To
A custom skill belongs to the organization, not to a surface. Every Agent0 run for your organization loads the organization's enabled skills, so auto-invocation works the same in Chat, in Automations, in Slack, and over MCP.
The / picker is a Chat composer feature only. On the other surfaces there is nothing to type /
into, so a skill you want Agent0 to reach there needs a description that matches the request — or, in
an automation prompt, name the skill in the
prompt text.
Enable and Disable a Custom Skill
Each skill is enabled or disabled. No Agent0 run loads a disabled skill, and it does not appear when
you type / in Chat, but it stays on the Skills tab with its instructions intact. Disable a
skill to retire it without losing its content. A disabled skill still counts toward your
organization's limit.
Limits
| Limit | Value |
|---|---|
| Skills per organization | 25 |
| Name | 1 to 64 characters, lowercase letters and numbers in single-hyphen-separated groups |
| Description | 1 to 1024 characters |
| Instructions | 1 character to about 65,000 characters (64 KiB) |
| Files per imported skill | 128, SKILL.md included |
| Size per file in an imported skill | 256 KiB |
| Total size of an imported skill | 4 MiB |
SKILL.md files per repository scan | 100 |
A scan that finds more than 100 SKILL.md files fails. Point the URL at the folder that holds the
skills, or keep the skills in a repository of their own.
A custom skill cannot take the name of a skill Dash0 ships. Agent0 identifies a skill by name, so a
duplicate would shadow the built-in one. The reserved names include metrics, dashboards,
alerts, slack, use-github, use-kubectl, and root-cause-analysis. Saving a skill with a
reserved name fails with an error naming the conflict.
Contact support if your organization needs more than 25 custom skills. The cap is not self-service: Dash0 raises it, or removes it for your organization entirely.
Limitations
- Custom skills are organization-wide. Personal skills are not available for now.
- A skill written in Dash0 is a single file. Skills with supporting files come from a Git repository.
Further Reading
- About Agent0 — What Agent0 is and how it investigates
- Import Skills from a Git Repository — Bring in skills your team already keeps in GitHub or GitLab
- About Chat — Where you invoke a custom skill with
/ - About Automations — Unattended Agent0 runs, which load the same custom skills
- Ask Agent0 in a Slack Channel — The same skills, invoked by description rather than by
/