Özel modlar
Bob'un davranışını uzmanlaşmış roller, araç kısıtlamaları ve ekip iş akışları içeren özel modlar oluşturarak uyarlayın. YAML formatını kullanarak global veya proje bazında yapılandırın.
Neden özel modlar kullanılır
- Uzmanlaşma: Dokümantasyon yazma, test mühendisliği veya güvenlik incelemeleri gibi belirli görevler için modları optimize edin
- Güvenlik: Hassas işlemler için komutları veya dosya erişimini kısıtlayın
- Ekip işbirliği: Ekibiniz genelinde standartlaştırılmış iş akışlarını paylaşın
- Deney: Diğer modları etkilemeden farklı konfigürasyonları test edin
Mod bileşenleri
| Bileşen | Açıklama |
|---|---|
| Slug | Dahili olarak ve moda özel talimat dosyaları için kullanılan benzersiz tanımlayıcı |
| Ad | Bob arayüzünde gösterilen görünen ad |
| Rol tanımı | Bob'un kişiliğini ve davranışını tanımlayan temel kimlik ve uzmanlık |
| Ne zaman kullanılır | (İsteğe bağlı) Bu modun ne zaman kullanılacağına dair rehberlik, görev koordinasyonu için Orchestrator tarafından kullanılır |
| Kullanılabilir araçlar | Modun kullanabileceği araç grupları ve dosya erişim izinleri |
| Özel talimatlar | (İsteğe bağlı) Ek davranışsal yönergeler veya kurallar |
| Açıklama | (İsteğe bağlı) Mod seçicide gösterilen kısa özet |
| İzin verilen alt ajanlar | (İsteğe bağlı) Modun kullanabileceği alt ajan ön ayarlarını kısıtlar |
Özel modlar nasıl oluşturulur
Ayarlar menüsünü kullanarak veya konfigürasyon dosyalarını manuel olarak düzenleyerek özel modlar oluşturabilirsiniz.
Ayarlar menüsünü kullanın
- Ayarları açmak için Bob panelindeki simgesine tıklayın.
- Modlar sekmesini seçin.
- Yeni bir mod oluşturmak için düğmesine tıklayın.
- Ad, Slug, Kayıt Konumu, Rol Tanımı, Ne Zaman Kullanılır (isteğe bağlı), Açıklama (isteğe bağlı), Kullanılabilir Araçlar ve Özel Talimatlar alanlarını doldurun.
- Kaydet'e tıklayın.
Bob yeni modu YAML formatında kaydeder. Manuel YAML konfigürasyonu aracılığıyla edit araç grubu için dosya türü kısıtlamaları ekleyebilirsiniz.
Konfigürasyon dosyalarını manuel olarak düzenleyin
Mod konfigürasyon dosyalarını YAML formatında manuel olarak düzenleyebilirsiniz:
- Global modlar: Ayarlar → Modlar → Global Modları Düzenle aracılığıyla
~/.bob/settings/custom_modes.yamldosyasını düzenleyin - Proje modları: Projenizdeki
.bob/custom_modes.yamldosyasını düzenleyin. Ayarlar → Modlar → Proje Modlarını Düzenle'ye tıklayın
Bu dosyalar YAML formatında bir özel modlar dizisi tanımlar.
Örnek (~/.bob/settings/custom_modes.yaml veya .bob/custom_modes.yaml):
customModes:
- slug: docs-writer
name: 📝 Documentation Writer
description: Markdown dokümantasyonu yazar ve revize eder.
roleDefinition: You are a technical writer specializing in clear documentation.
whenToUse: Use this mode for writing and editing documentation.
customInstructions: Focus on clarity and completeness in documentation.
groups:
- read
- - edit
- fileRegex: ".*\\.(md|mdx)$"
description: Markdown files only
- skillMod konfigürasyon özellikleri
Kullanılabilir araç grupları
read: Dosyaları ve dizinleri okuyunedit: Dosyaları değiştirin (fileRegexile kısıtlanabilir)execute: Terminal komutlarını çalıştırınmcp: MCP sunucularına erişinskill: Becerileri yükleyinworkflow: Önceden tanımlanmış iş akışları başlatmatodo: Görev TODO listelerini güncelleyinsubtask: Alt görevler oluşturunsubagent: Alt ajanlar oluşturunmode: Başka bir moda geçin
Düzenleme aracı için dosya kısıtlamaları
YAML formatında fileRegex kullanarak bir modun hangi dosyaları düzenleyebileceğini kısıtlayın:
groups:
- read
- - edit
- fileRegex: ".*\\.(js|ts)$"
description: Yalnızca JavaScript ve TypeScript dosyalarıYaygın regex desenleri
| Desen | Eşleşir | Örnek dosyalar |
|---|---|---|
.*\.md$ | Markdown dosyaları | readme.md, docs/guide.md |
^src/.* | src dizinindeki dosyalar | src/app.js, src/components/button.tsx |
| `.*.(css | scss)$` | CSS ve SCSS dosyaları |
| `^(?!.*(test | spec)).*.(js | ts)$` |
Regex desenlerini manuel olarak yazmak yerine Bob'dan sizin için oluşturmasını isteyin.
Önemli doğrulama kuralları
slugyalnızca harf, rakam ve tire kullanmalıdır.- Her
slug'ı benzersiz tutun. Yinelenen slug'lar modların doğru yüklenmesini engelleyebilir. - Yalnızca desteklenen grup adlarını kullanın. Bilinmeyen grup adları erişim vermez.
groups'u atlarsanız, mod gruplandırılmış araçlar almaz.allowedSubagentsayarlarsanız, bu modda yalnızca listelenen alt ajan ön ayarları kullanılabilir.- Geçersiz
fileRegexdeğerleri mod dosyasının yüklenmesini engelleyebilir.
Moda özel talimatlar ekleyin
Bir dizin yapısı (tercih edilen) veya tek bir dosya kullanarak moda özel talimatlar ekleyebilirsiniz.
Tercih edilen yöntem (dizin yapısı):
Alternatif yöntem (tek dosya):
.bobrules-{mode-slug}Her ikisi de mevcutsa dizin yöntemi önceliklidir. Dizindeki dosyalar alfabetik olarak yüklenir ve mod konfigürasyonunuzdaki customInstructions özelliği ile birleştirilir.
Moda özel talimatlar eklemek için:
- Proje kökünüzde bir
.bob/rules-{mode-slug}/dizini (veya bir.bobrules-{mode-slug}dosyası) oluşturun. - Dizine talimat dosyaları ekleyin (örneğin,
01-style-guide.mdve02-formatting.txt).
Bob, modu kullandığınızda bu talimatları otomatik olarak yükler.
Varsayılan modlar nasıl geçersiz kılınır
Proje konfigürasyonunuzda aynı slug ile özel bir mod oluşturarak varsayılan Bob modlarını (Agent, Ask veya Plan gibi) geçersiz kılabilirsiniz.
Varsayılan bir modu geçersiz kılmak için:
- Ayarları açmak için Bob panelindeki simgesine tıklayın.
- Modlar sekmesini seçin.
.bob/custom_modes.yamldosyasını düzenlemek için Proje Modlarını Düzenle'ye tıklayın.- Geçersiz kılmak istediğiniz varsayılan modun slug'ı ile mod konfigürasyonunuzu ekleyin:
customModes:
- slug: ask # Varsayılan Ask moduyla eşleşir
name: ❓ Ask
roleDefinition: Bu React ve TypeScript kod tabanı için bilgili bir asistansınız.
whenToUse: Kod tabanı hakkında sorular sormak için bu modu kullanın.
customInstructions: Yanıt verirken her zaman ilgili dosyalara başvurun. Kullanıcı değişiklik yapmaya çalışırsa Ask modunu önerin.
groups:
- read
- mcp
- skillProjeye özel geçersiz kılmalar, global geçersiz kılmalardan önceliklidir ve global geçersiz kılmalar varsayılanlardan önceliklidir.
YAML formatı
YAML, özel modlar için tercih edilen ve önerilen formattır:
YAML avantajları:
- Girinti tabanlı yapı ile daha okunabilir
- Yorumları destekler (
#) - Daha temiz çok satırlı dize sözdizimi
- Daha az noktalama işareti gerektirir
- Düzenlemesi ve bakımı daha kolay
Otomatik geçiş:
- Global modlar: Başlangıçta eski
custom_modes.jsondosyasındancustom_modes.yamldosyasına otomatik olarak geçirilir - Proje modları: UI üzerinden düzenlendiğinde YAML'ye dönüştürülür
Eski JSON format dosyaları geriye dönük uyumluluk için hala desteklense de, tüm yeni modlar YAML formatında oluşturulmalıdır.
Daha fazla bilgi
Uygulamalı olarak öğren ve özel bir product manager modu oluşturarak Bob'un yeteneklerini genişlet.
Dosyaları yok sayma
Projenizde bir `.bobignore` dosyası oluşturarak Bob'un hangi dosyalara erişebileceğini kontrol edin.
Agent personaları
Bir subagentin rolünü, odağını ve tool erişimini şekillendiren yeniden kullanılabilir persona dosyaları oluştur. Bir subagentin neyi arayacağını, çıktısını nasıl biçimlendireceğini ve ne yapmasına izin verilmediğini tanımla.