İçeriğe geç
New Kodine v2 is now available

Agent becerileri

SKILL.md ile yeniden kullanılabilir davranışlar tanımlayın

Agent becerileri, kodine’un deponuzdan veya ev dizininizden yeniden kullanılabilir talimatları keşfetmesini sağlar. Beceriler, yerleşik skill aracı üzerinden ihtiyaç anında yüklenir; agent’lar mevcut becerileri görür ve gerektiğinde tam içeriğini yükler.


Dosyaları yerleştirin

Her beceri adı için bir klasör oluşturup içine bir SKILL.md dosyası koyun. kodine şu konumları tarar:

  • Proje yapılandırması: .kodine/skills/<name>/SKILL.md
  • Genel yapılandırma: ~/.config/kodine/skills/<name>/SKILL.md
  • Proje Claude uyumlu: .claude/skills/<name>/SKILL.md
  • Genel Claude uyumlu: ~/.claude/skills/<name>/SKILL.md
  • Proje agent uyumlu: .agents/skills/<name>/SKILL.md
  • Genel agent uyumlu: ~/.agents/skills/<name>/SKILL.md

Keşfi anlayın

kodine, proje yerel yollarında mevcut çalışma dizininizden başlayıp git worktree köküne kadar yukarı çıkar. Bu sırada eşleşen .kodine/ altındaki skills/*/SKILL.md dosyalarını ve .claude/skills/*/SKILL.md ya da .agents/skills/*/SKILL.md dosyalarını yükler.

Genel tanımlar da ~/.config/kodine/skills/*/SKILL.md, ~/.claude/skills/*/SKILL.md ve ~/.agents/skills/*/SKILL.md yollarından yüklenir.


Frontmatter yazın

Her SKILL.md dosyası YAML frontmatter ile başlamalıdır. Yalnızca şu alanlar tanınır:

  • name (zorunlu)
  • description (zorunlu)
  • license (isteğe bağlı)
  • compatibility (isteğe bağlı)
  • metadata (isteğe bağlı, string-to-string map)

Tanımlanmayan frontmatter alanları yok sayılır.


Adları doğrulayın

name alanı şu kuralları sağlamalıdır:

  • 1-64 karakter uzunluğunda olmalı
  • Küçük harf alfanumerik karakterler ve tekli tire ayırıcı kullanmalı
  • - ile başlamamalı veya bitmemeli
  • Ardışık -- içermemeli
  • SKILL.md dosyasını barındıran klasör adıyla aynı olmalı

Eşdeğer regex:

^[a-z0-9]+(-[a-z0-9]+)*$

Uzunluk kurallarına uyun

description alanı 1-1024 karakter arasında olmalıdır. Agent’ın doğru seçimi yapabilmesi için yeterince açıklayıcı yazın.


Örnek kullanın

.kodine/skills/git-release/SKILL.md dosyasını şu şekilde oluşturun:

---
name: git-release
description: Create consistent releases and changelogs
license: MIT
compatibility: kodine
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.

Araç açıklamasını tanıyın

kodine, skill aracının açıklamasında mevcut becerileri listeler. Her kayıtta beceri adı ve açıklaması yer alır:

<available_skills>
<skill>
<name>git-release</name>
<description>Create consistent releases and changelogs</description>
</skill>
</available_skills>

Agent, aracı çağırarak beceriyi yükler:

skill({ name: "git-release" })

İzinleri yapılandırın

kodine.json içinde desen tabanlı izinlerle agent’ların hangi becerilere erişebileceğini kontrol edin:

{
"permission": {
"skill": {
"*": "allow",
"pr-review": "allow",
"internal-*": "deny",
"experimental-*": "ask"
}
}
}
İzinDavranış
allowBeceri hemen yüklenir
denyBeceri agent’tan gizlenir, erişim reddedilir
askYüklemeden önce kullanıcıdan onay istenir

Desenler wildcard destekler: internal-*, internal-docs, internal-tools gibi adlarla eşleşir.


Agent bazında geçersiz kılın

Belirli agent’lara genel varsayılanlardan farklı izinler verebilirsiniz.

Özel agent’lar için (agent frontmatter içinde):

---
permission:
skill:
"documents-*": "allow"
---

Yerleşik agent’lar için (kodine.json içinde):

{
"agent": {
"plan": {
"permission": {
"skill": {
"internal-*": "allow"
}
}
}
}
}

Skill aracını kapatın

Beceri kullanmaması gereken agent’lar için skill aracını tamamen kapatabilirsiniz:

Özel agent’lar için:

---
tools:
skill: false
---

Yerleşik agent’lar için:

{
"agent": {
"plan": {
"tools": {
"skill": false
}
}
}
}

Devre dışı bırakıldığında <available_skills> bölümü tamamen kaldırılır.


Yükleme sorunlarını giderin

Bir beceri listede görünmüyorsa:

  1. SKILL.md adının tamamen büyük harfle yazıldığını doğrulayın
  2. Frontmatter içinde name ve description alanlarının bulunduğunu kontrol edin
  3. Tüm konumlarda beceri adlarının benzersiz olduğundan emin olun
  4. İzinleri kontrol edin — deny olan beceriler agent’lardan gizlenir