-
Notifications
You must be signed in to change notification settings - Fork 0
Tutorial 4 Prompting and Reviewing tr
Amaç: meta beceri. Artık bir ajanla bir özellik geliştirebiliyorsunuz — bu bölüm bunu akıcı ve tekrarlanabilir şekilde yapmakla ilgilidir: ilk seferde tutturan istemler yazmak, diff'leri verimli incelemek, işler ters gittiğinde yinelemek ve oturumlar arasında momentumu korumak.
← Önceki: Eğitim 3 İlk Ajan Göreviniz · Sonraki: Eğitim 5 Yerelleştirme
Ajan, hızlı, harfi harfine ve istekli bir junior mühendistir. Onu iyi bir taneyi yönlendireceğiniz gibi yönlendirin:
-
Amacı ve kısıtlamaları belirtin. "
endorseekle" zayıftır. "connectkalıbını izleyerek, yalnızca tohumlu RNG ile, testlerle, kapı yeşil kalarakendorseekle" güçlüdür. Kısıtlamalar, uyan kodu elde etme yolunuzdur. -
Örnekleri gösterin. "
renderConnect'in kullandığı kalıbı izle" bir paragraf açıklamayı yener. Mevcut kod en iyi spesifikasyondur. - Önemsiz olmayan her şeyde düzenlemelerden önce bir plan isteyin. Bir planı yeniden yönlendirmek ucuzdur; on düzenlenmiş dosyayı geri almak pahalıdır.
- İstem başına bir görev. "endorse ekle, ayrıca RNG'yi yeniden düzenle, ayrıca README'yi güncelle" birleştirmesi, incelenmesi zor karmaşık bir diff üretir.
-
Ona test kapısını verin. "
npm testçalıştır ve yeşil olana kadar bitti sayma" ajanı kendi işini kontrol eden bir şeye dönüştürür.
Hız, bir ajanın tüm amacıdır — ama okunmamış hız, hataların gönderilme yoludur. Hızlı, tutarlı bir inceleme refleksi oluşturun:
- Kapsam: yalnızca gerekeni mi değiştirdi? İlgisiz kaymış satırlar kötü bir koku.
-
Kalıplar: çevredeki kodla eşleşiyor mu, yeni bağımlılık ve
src/içinde I/O yok mu? -
Projenin kuralları: bu depo için bu, yalnızca tohumlu RNG (diff'te
Math.randomarayın), kullanıcıya görünen metin dil paketlerinde (sabit kodlanmamış) ve kart satırları düzenin doldurduğu genişliği asla aşmaz. -
Erişilebilirlik: yeni çıktı
--accessible'dan sağ çıkar mı?lockedin --accessible <your command>çalıştırın ve temiz düz metin olarak okunduğunu kontrol edin —a11yFilter'dan sızan yeni dekoratif glif yok. - Testler: yeni bir test var mı ve özellik bozulsa gerçekten başarısız olur mu? Sorun: "Bu yeni testi başarısız kılmak için hangi satırı değiştirirdim?"
-
Çalıştırın:
npm test, sonra komutu çalıştırın ve çıktıya bakın.
Her karakteri anlamanıza gerek yok — ama her kararı anlamalısınız. Bir değişikliği açıklayamıyorsanız, kabul etmeden önce ajandan onu açıklamasını isteyin.
Kırmızı bir kapı, bir başarısızlık değil, normal bir adımdır. Düzeltme, hassas geri bildirimdir:
"
npm testşununla başarısız oluyor: [paste the exact error].renderEndorsegenişlik testi her kart satırının ≤ 60 görünür sütun olmasını bekliyor. Testi zayıflatmadan düzelt."
Gerçek hata metnini yapıştırın. "Bozuk" ajana tahmin ettirir; yığın izi ona düzelttirir. Ve yeniden başlamak yerine aynı konuşmayı sürdürmeyi tercih edin — ajanın az önce yazdığı şeyin bağlamı zaten var. İki veya üç yineleme yakınsamazsa, geri çekilip yeniden kapsam belirleyin: görev bir istem için çok büyük olabilir.
Gerçek iş, birden fazla oturumu kapsar. İki alışkanlık, bir ajanı zamanla etkili tutar:
-
Bellek / kurallar. Ajanınız kalıcı bellek veya bir proje talimat dosyasını
destekliyorsa, her zaman izlemesi gereken kuralları oraya kaydedin (örn. "tüm
rastgelelik
pick/shufflekullanmalı", "bitti demeden öncenpm testçalıştır"). Bir kuralı her istemde değil, bir kez belirtirsiniz. -
Bir devir notu. Bu depo,
docs/HANDOFF.md'de kısa, temizlenmiş bir durum belgesi tutar: projenin ne olduğu, nasıl inşa edildiği, nasıl test edildiği ve sırada ne olduğu. Döndüğünüzde (veya bir takım arkadaşına — ya da başka bir ajana — devrettiğinizde), o not bağlamı saniyeler içinde yeniden inşa eder. Ajandan onu bir değişikliğin parçası olarak güncel tutmasını isteyin.
- Kapı pazarlığa açık değildir. Herhangi bir şey gönderilmeden önce yeşil testler. Hızlı hareket etmenizi ve çıktıya güvenmenizi sağlayan şey budur.
- Kayıtlı incelemeci sizsiniz. Ajan yazar; siz karar verirsiniz. Bir diff'i kabul etmek, ona kefil olmanız demektir.
- Küçük, doğrulanabilir adımlar dev bir sıçramayı yener. Kabul edilen her değişiklik, uygulamayı çalışır bırakmalıdır.
- Bir
mentorkomutu için ("istenmeyen tavsiyeler dağıtır") kısıtlamalar dahil bir paragraflık spesifikasyon yazın ve ajana onu önce-test geliştirtin — plan, testler, kod, kapı — her adımda inceleyerek. - Ajandan yeni komuttan bahsetmek için
docs/HANDOFF.md'yi güncellemesini isteyin. - Kasıtlı olarak bir şeyi bozun (örn. bir havuz girdisini silin),
npm testçalıştırın ve ajana düzeltmesi için tam başarısızlığı besleme alıştırması yapın.
-
src/lockedin.js'teki gerçek kodu tarayın — artık şeklini biliyorsunuz. - Projenin kendi durumu ve mimari notları için
docs/HANDOFF.md'yi okuyun. - Komut Referansı'ndaki şakaların tadını çıkarın.
Eğitim bu kadar. Artık bir AI ajanını, hayal edilebilecek en aşırı kendinden emin örneği kullanarak, bir test kapısının arkasında gerçek yazılım geliştirmesi ve değiştirmesi için yönlendirebilirsiniz. Agree? 👇
Tutorial
- 1 · Orientation
- 2 · How the Code Works
- 3 · Your First Agent Task
- 4 · Prompting & Reviewing
- 5 · Localization
Reference
Satire · Sátira · 風刺. Not affiliated with LinkedIn. GPL-3.0-or-later.