packages/web/src/content/docs/nb/skills.mdx
Agentferdigheter lar OpenCode oppdage gjenbrukbare instruksjoner fra repo- eller hjemmekatalogen din.
Ferdigheter lastes inn på forespørsel via det innebygde skill-verktøyet – agenter ser tilgjengelige ferdigheter og kan laste inn hele innholdet når det er nødvendig.
Opprett én mappe per ferdighetsnavn og legg inn en SKILL.md i den.
opencode søker etter disse stedene:
.opencode/skills/<name>/SKILL.md~/.config/opencode/skills/<name>/SKILL.md.claude/skills/<name>/SKILL.md~/.claude/skills/<name>/SKILL.md.agents/skills/<name>/SKILL.md~/.agents/skills/<name>/SKILL.mdFor prosjektlokale stier går opencode opp fra din nåværende arbeidskatalog til den når git-arbeidstreet.
Den laster alle matchende skills/*/SKILL.md i .opencode/ og alle matchende .claude/skills/*/SKILL.md eller .agents/skills/*/SKILL.md underveis.
Globale definisjoner lastes også inn fra ~/.config/opencode/skills/*/SKILL.md, ~/.claude/skills/*/SKILL.md og ~/.agents/skills/*/SKILL.md.
Hver SKILL.md må starte med YAML frontmatter.
Bare disse feltene gjenkjennes:
name (påkrevd)description (påkrevd)license (valgfritt)compatibility (valgfritt)metadata (valgfritt, streng-til-streng kart)Ukjente frontmatter-felt ignoreres.
name må:
---SKILL.mdEkvivalent regulært uttrykk:
^[a-z0-9]+(-[a-z0-9]+)*$
description må bestå av 1-1024 tegn.
Hold det spesifikt nok til at agenten kan velge riktig.
Lag .opencode/skills/git-release/SKILL.md slik:
---
name: git-release
description: Create consistent releases and changelogs
license: MIT
compatibility: opencode
metadata:
audience: maintainers
workflow: github
---
## What I do
- Draft release notes from merged PRs
- Propose a version bump
- Provide a copy-pasteable `gh release create` command
## When to use me
Use this when you are preparing a tagged release.
Ask clarifying questions if the target versioning scheme is unclear.
opencode viser tilgjengelige ferdigheter i skill-verktøybeskrivelsen.
Hver oppføring inneholder ferdighetsnavnet og beskrivelsen:
<available_skills>
<skill>
<name>git-release</name>
<description>Create consistent releases and changelogs</description>
</skill>
</available_skills>
Agenten laster inn en ferdighet ved å kalle verktøyet:
skill({ name: "git-release" })
Kontroller hvilke ferdigheter agenter har tilgang til ved å bruke mønsterbaserte tillatelser i opencode.json:
{
"permission": {
"skill": {
"*": "allow",
"pr-review": "allow",
"internal-*": "deny",
"experimental-*": "ask"
}
}
}
| Tillatelse | Atferd |
|---|---|
allow | Ferdigheter lastes umiddelbart |
deny | Ferdighet skjult for agent, tilgang avvist |
ask | Bruker blir bedt om godkjenning før lasting |
Mønstre støtter jokertegn: internal-* samsvarer med internal-docs, internal-tools osv.
Gi spesifikke agenter andre tillatelser enn de globale standardinnstillingene.
For egendefinerte agenter (i agent frontmatter):
---
permission:
skill:
"documents-*": "allow"
---
For innebygde agenter (i opencode.json):
{
"agent": {
"plan": {
"permission": {
"skill": {
"internal-*": "allow"
}
}
}
}
}
Deaktiver ferdigheter fullstendig for agenter som ikke bør bruke dem:
For egendefinerte agenter:
---
tools:
skill: false
---
For innebygde agenter:
{
"agent": {
"plan": {
"tools": {
"skill": false
}
}
}
}
Når den er deaktivert, blir <available_skills>-delen utelatt helt.
Hvis en ferdighet ikke vises:
SKILL.md er stavet med store bokstavername og descriptiondeny er skjult for agenter