Ajanları @ ile anma
Bu kılavuz, bir alanda ajanları ve ekip arkadaşlarınızı nasıl @ ile anacağınızı gösterir.
Bir ajanı anma
Bölüm başlığı “Bir ajanı anma”Yazı alanına @ yazın ve otomatik tamamlamadan bir ajan seçin ya da adı kendiniz
yazın:
@alice fix the login bugAnılan ajan, alana henüz katılımcı değilse katılımcı olarak eklenir ve alanın bağlamı ile moduyla gönderilir. Anılmayan katılımcılar mesajı görür ama gönderilmez.
Ajan anması içermeyen bir mesaj gönderirseniz, yanıt verecek ajanı Control Center kendisi seçer: konuşmada en son konuşan ajan; bir sahibi varsa konuşmanın sahibi; o da yoksa alanın katılımcıları arasındaki ilk üst düzey ajan. Tek ajanlı bir alanda bu her zaman tek ajanın kendisidir.
Bir adın nasıl eşleştirildiğini bilin
Bölüm başlığı “Bir adın nasıl eşleştirildiğini bilin”Bir anma belirteci büyük/küçük harfe duyarsız olarak, tam ad ya da önek
ile eşleştirilir. Yani @arch, architect adlı bir ajana ulaşır ve @Alice,
alice’a ulaşır.
Planlamaya değer iki sonuç vardır:
- Kısa bir belirteç hata değildir. İki ajan aynı öneki paylaşıyorsa ilk bulunan kazanır ve hangisinin kazandığı herhangi bir eşitlik bozma kuralına değil, sıralamaya bağlıdır. Adlar çakıştığında her zaman tam adı kullanın.
- Bir belirtecin parçası olan karakterler yalnızca harfler, rakamlar ve alt
çizgilerdir. Ayrıştırıcı
@(\w+)ile eşleşir; bu yüzden@code-reviewer,codebelirteci olarak ve@my agent,myolarak okunur. Adında kısa çizgi, nokta veya boşluk bulunan bir ajan — adı düz metin olarak ekleyen otomatik tamamlama dâhil — güvenilir biçimde anılamaz. Ajanları tek sözcükle ya da alt çizgiyle adlandırın.
Anmalar, metin ajana ulaşmadan önce metinden çıkarılır. Bu yüzden yalnızca
anmalardan oluşan bir mesaj (@alice) hiçbir şey göndermez — ona yapacak bir iş
verin.
Aynı anda birkaç ajanı anma
Bölüm başlığı “Aynı anda birkaç ajanı anma”@alice refactor the auth module. @bob write tests for it.Her iki ajan da aynı konuşmaya paralel olarak gönderilir ve ikisi de mesajın tamamını alır.
Ayrıca o alanın çalışma ağaçlarını paylaşırlar. Depo çalışma ağaçları ajan
başına değil, alan başına hazırlanır; her ajan AGENTS.md dosyası, becerileri ve
yapılandırması için kendi overlay çalışma dizinini alır ve paylaşılan depolar
okuma-yazma olarak bağlanır. Bu yüzden birlikte anılan iki ajan birbirinin
düzenlemelerini görebilir — ve onlarla çakışabilir.
Bir ekip arkadaşını anma
Bölüm başlığı “Bir ekip arkadaşını anma”Bir ajanla eşleşmeyen her @token, aynı büyük/küçük harfe duyarsız tam ad ya da
önek kuralıyla, kullanıcı adına göre çalışma alanının insan üyelerine karşı
denenir.
Çözümlenen bir insan anması hiçbir şey göndermez. Yalnızca bildirim yönlendiricisinin o kişiye ulaşabilmesi için mesajın meta verisiyle birlikte taşınır.
Önce her zaman ajan adları denenir ve bir ajanın sahiplendiği belirteç üye
listesine hiçbir zaman sunulmaz — bir @word yalnızca tek bir Principal’a
çözümlenebilir.
Ajanın aldıkları
Bölüm başlığı “Ajanın aldıkları”Gönderilen bir ajan, isteminde kendisini kimin çağırdığını belirten ve alanın kadrosunu — diğer ajanlar (üst düzey ya da alt olarak işaretlenmiş) ve insan üyeler — listeleyen bir “Summons” bloğu alır; böylece kime devredebileceğini bilir. Blok ayrıca ona, yanıtında başka bir ajanı anmanın o ajanı uyandırdığını ve kendisini anmanın yok sayıldığını söyler.
Bir ajan başka bir ajanı andığında
Bölüm başlığı “Bir ajan başka bir ajanı andığında”Bir ajan kendi yanıtında devredebilir. Bir tur temiz biçimde tamamlandığında, metnindeki anmalar çözümlenir ve o ajanlar alana eklenip aynı konuşmaya gönderilir; anmayı yapan tur onların istemi olur. Başarısız olan ya da kesintiye uğrayan bir tur kimseyi uyandırmaz — düşüncenin ortasında durmuştur.
Kurallar, yazı alanındakilerden kasten daha katıdır; çünkü yanlış bir tahmini düzeltecek kimse yoktur:
- Yalnızca tam adlar. Önek eşleşmesi yok.
@arch, bir insan yazdığındaarchitect’e ulaşır; bir ajandan geldiğinde kimseye ulaşmaz. İki ajanla eşleşen bir ad da kimseye ulaşmaz. - Kod, düz metin değildir. Üçlü ters tırnaklı kod bloklarının veya
`backticks`içindeki anmalar yok sayılır; bu yüzden bir@Overrideek açıklamasını ya dapip install foo@1.2komutunu alıntılamak güvenlidir. Kapatılmamış bir blok, kendisinden sonraki her şeyi etkisiz bırakır. - Önceki belirtece yapışık bir
@anma sayılmaz —sam@host.com,pkg/@scopevenode@20kimseye çözümlenmez. - Kısa çizgiler korunur; bu yüzden
@code-reviewer,codebelirteci olarak değil, kendisi olarak çözümlenir. - Tur başına en fazla üç ajan. Bir özette altı ekip arkadaşını listeleyen bir ajan onları listeliyordur, çağırmıyordur.
Bir uyandırma zinciri, devretmeyle aynı şekilde sınırlanır: derinlik 3 ve
zincirde zaten bulunan bir ajan onun tarafından yeniden uyandırılamaz
(A → B → A yok). Sıralı bir çift ayrıca zincirler arasında hız sınırına
tabidir. Reddedilen bir uyandırma, hangi anmanın iletilemediğini ve nedenini
söyleyen bir sistem mesajını konuşmaya gönderir — çözümlenemeyen bir ad
göndermez; çünkü aksi hâlde bir cümledeki her @ kendini anlatırdı.
Düz metne bağlı olmaması gereken bir devir için — bir istek/yanıt ya da alan
dışındaki bir ajana ulaşmak — bunun yerine send_to_agent, ask_agent ve
delegate_task araçlarını kullanın.