İçeriğe geç
Pathrule

dokümanlar

Hook'lar nasıl çalışır

Pathrule hook'larının yola bağlı hafıza kayıtlarını ve kuralları nasıl ilettiğini, ilgili becerileri adıyla nasıl sunduğunu ve ilk yapay zekâ araç çağrısından önce hızlı yerel önbelleği nasıl kullandığını öğrenin.

Bu sayfada

Hook yöneticisi, Pathrule'un yapay zekâ oturumlarında asistanın ekibinizin konvansiyonlarını zaten biliyormuş gibi davranmasını sağlayan parçasıdır. Yerel olarak çalışır, bir önbellekten okur, ilgili hafıza kayıtlarını ve kuralları iletir ve asistan ilk adımını atmadan önce becerileri adıyla sunar. Bir becerinin talimatları, onu çağırdığınızda gelir.

Bu sayfa, işleyişi kullanıcı gözünden anlatan bir modeldir. Çalışma zamanının iç yapısına derinlemesine bir bakış değildir.

Hook nedir

Hook, yapay zekâ istemcinizin bir tur içinde net olarak tanımlanmış anlarda çalıştırdığı küçük bir betiktir. Pathrule, her istemcinin gerçekten sunduğu iletim ve otomatik denetim olaylarını kullanır.

  • SessionStart, asistana içinde bulunduğu çalışma alanını, Pathrule protokolünü ve ekip bağlamınızı oturum başına bir kez verir.
  • UserPromptSubmit, prompt olayı bağlam kabul eden istemcilerde gelecek turun kapsamını belirler.
  • PreToolUse, istemci kabul ediyorsa bir eylemden önce bağlam ya da katı kural kararı sağlar.
  • PostToolUse, sonuçları kaydeder; araç öncesi olayı karar kabul edip bağlam kabul etmeyen istemcilerde eksikliği yola bağlı bağlamla telafi eder.
  • Stop ve session-end olayları turu kapatır. Claude Code ve Codex'te, bir kişinin onayladığı zorunlu bir kontrol, komutu başarıyla geçene kadar turu burada açık tutabilir.

pathrule setup ve pathrule sync ya da VS Code eklentisi bu hook'ları Claude Code, Codex, Cursor ve GitHub Copilot için kaydeder. Windsurf'te Pathrule hook'u yoktur; bu yüzden oturum başlangıcını Windsurf için üretilen kurallar dosyası sağlar, daha derin bağlamı ise ihtiyaç anında yerel MCP sunucusu sağlar.

İstemci iletim profilleri

İstemciBaşlangıç ve bağlamYazmadan önce katı engelleme
Claude Code ve CodexOturum başlangıcı, prompt gönderme ve araç öncesi hook'larıEvet
Cursor ve GitHub CopilotOturum başlangıcı, araç sonrası bağlam ve araç öncesi kararlar (prompt gönderme hook'u yok)Evet
WindsurfOturum başlangıcında kurallar dosyası, ardından yerel MCP sunucusuPathrule hook'u yok
Remote MCPBarındırılan MCP'ye açık çağrılarYerel hook yok

Katı kural, bir kişinin onayladığı bir engelleme kalıbı taşıyan kuraldır. Neyin engellediğini ve neyin yalnızca bilgilendirdiğini görmek için Güvenlik bariyeri olarak kurallar sayfasına bakın.

Hook ne yapar

Hook yöneticisi sırasıyla dört şey yapar.

  1. Yolu çözümler. Çalışma dizinini bir çalışma alanı düğümüne eşler.
  2. Önbelleği okur. Yerel önbellek, o yol için hafıza kayıtlarının, kuralların ve becerilerin önceden hesaplanmış bir dizinini tutar.
  3. İlgili kısmı şekillendirir. Niyete uyan bir derinlik seçer. Arayüzdeki küçük bir düzenleme minimum bir içerik alır. Hata düzeltme ya da refactor odaklı bir içerik alır. Keşif prompt'ları daha derin bir içerik alır.
  4. İçeriği döndürür. Metin, gelecek eylem için sistem bağlamı olarak istemciye geri döner.

Yerel modda akışın tamamı sizin makinenizde çalışır. Bir Cloud çalışma alanında ise prompt hook'u, bilginin anlamına göre önceliklendirilebilmesi için prompt'unuzun başını (yaklaşık ilk 1.000 karakteri) Pathrule Cloud'a da gönderir. Bu çağrı yavaş kalırsa ya da başarısız olursa hook yerel dizinle eşleştirmeye geri döner; böylece bir ağ sorunu turu bağlamsız bırakmaz.

Ne görürsünüz

Asistanın bağlam yüzeyine (editörünüzün gösterdiği alana) bir Pathrule bölümü eklenir. Bu bölümde şunlar listelenir:

  • Hook'un çözümlediği yol ve buna ek olarak işin en büyük olasılıkla bulunduğu yollar; asistandan arama yapmadan önce açması istenen bir rota. Pathrule asistanın bunu yapıp yapmadığını kaydeder.
  • Eşleşen kurallar ve öncelikleri.
  • Prompt'unuzla en ilgili hafıza kayıtları; asistanın doğrudan üzerinde çalışabileceği tam içerikler olarak iletilir. Daha az kesin eşleşmeler yine de başlık ve id olarak gelir; isterseniz bunların tamamını okuyabilirsiniz.
  • Bu kapsama uyan beceriler; adlarıyla, ::skill-name ile çağrılmaya hazır olarak.

Hook'un geçerli yol için yeni ve ilgili bir şeyi yoksa hiçbir şey eklemez; yani sessiz bir tur bağlamdan hiçbir şey harcamaz.

İki iletim kanalı

Bilgi asistana, farklı görevleri olan iki hook kanalı üzerinden ulaşır.

  • Prompt başına kanal, prompt gönderme hook'u olan istemcilerde (Claude Code ve Codex) bir prompt gönderdiğinizde bir kez çalışır. Derinlik burada yer alır: prompt'a uyan kurallar, asistanın doğrudan üzerinde çalışabileceği tam içerikleriyle en güçlü eşleşen hafıza kayıtları ve ilgili görünen beceriler, adlarıyla. Beceri bir prosedürdür, bu yüzden hiçbir zaman talimat olarak itilmez; tam içeriği, onu ::skill-name ile çağırdığınızda gelir.
  • Araç çağrısı başına kanal, her dosya ya da kabuk eyleminden önce veya sonra, tur başına birçok kez çalışır. Bilinçli olarak hafif tutulur: dokunulan yola uygulanan kuralların ve hafıza kayıtlarının adları ile tek satırlık özetleri. Böylece asistan orada neler olduğunu bilir ve gerekirse tek bir çağrıyla içeriği okuyabilir.

Claude Code ve Codex'te hem prompt kanalı hem de araç öncesi kanal asistana ulaşır. Cursor ve GitHub Copilot prompt olaylarında bağlam kabul etmez; bu yüzden başlangıç içeriğini oturum başlangıcı hook'u, yola bağlı adları ise araç sonrası hook'u taşır.

Kanalların hiçbiri kendini tekrar etmez. Oturumda zaten iletilmiş bir içerik bir daha gönderilmez; düzenlenmiş bir içerik ise bir sonraki önemli olduğu anda yeniden gelir.

Diskte ne kalır

Pathrule hook'u kurulu olan bir istemci, protokolü ve ekip bağlamını talimat dosyasından değil, oturum başlangıcı hook'undan alır. Claude Code'da oturum başlangıcı bağlamı sistem prompt'una eklenir; bu sayede konuşma sıkıştırmasından etkilenmez. Talimat dosyasında (CLAUDE.md, AGENTS.md, Cursor kuralı ya da Copilot talimatları) yalnızca kısa bir Pathrule notu kalır ve Pathrule, önceki sürümlerde yazdığı protokol kopyalarını ve dizin bazlı bilgi dosyalarını kaldırır. Bu dosyalardaki kendi içeriğiniz yerinde kalır.

Derlenmiş dosyalar iki durumda korunur:

  • Windsurf gibi Pathrule hook'u olmayan bir istemci ya da hook'u kurulmamış bir istemci, tam protokolü ve yol bilgi dosyalarını korur, çünkü bunları iletecek başka bir şey yoktur.
  • Önceki bir Pathrule sürümü kendi talimat dosyanızı henüz geri yüklenmemiş bir yedeğe taşıdıysa Pathrule, o yedekle ilgilenilene kadar tam dosyayı korur. Böylece kendi talimatlarınız başka bir yerde dururken karşınızda yalnızca kısa bir not görmezsiniz.

Hook kurulu olsa bile derlenmiş dosyaları korumak için Pathrule çalışma zamanının ortamında PATHRULE_SIGNATURE_MODE=off değerini ayarlayın.

Hook yetmediğinde

Hook'lar yaygın durum için tasarlanmıştır. Asistan daha fazlasına ihtiyaç duyduğunda her zaman MCP araçlarına başvurabilir.

  • Keşif prompt'larında ("faturalandırma hakkında bildiğimiz her şeyi listele") asistan doğrudan pathrule_get_context aracını çağırır.
  • Hafıza kayıtlarının tam içerikleri için asistan, hook'ta gösterilen id ile pathrule_read_memory aracını çağırır.
  • Yazma işlemleri için (kullanıcı bir konvansiyonu ya da kuralı kaydetmek istediğinde) asistan ilgili yazma aracını kullanır.

Hook hızlı yoldur. MCP derin yoldur. İkisi de aynı doğruluk kaynağını paylaşır.

Yol kapsamı içeriği küçük tutar

Hook, çalışma dizinine göre şekillenen ilgili kısmı döndürür.

  • apps/web/dashboard içindeki bir değişiklik, veritabanı migration'larıyla ilgili kuralları getirmez.
  • services/billing/webhooks içindeki bir değişiklik, pazarlama sitesinin konvansiyonlarını değil, faturalandırma kurallarını ve webhook yeniden oynatma becerisini getirir.
  • Depo kökündeki bir keşif prompt'u her içeriği değil, çalışma alanına genel bir bakışı getirir.

İletilen bağlamı, her oturumun tamamını yüklediği tek bir genel talimat dosyasına kıyasla küçük tutan şey yol kapsamıdır.

Hiçbir şey görünmediğinde

Bir oturum açtığınızda Pathrule bölümü boşsa doctor komutunu çalıştırın.

pathrule doctor

Yalnızca okuma yapar ve şunları kontrol eder:

  • Girişiniz, organizasyonunuz ve çalışma alanınız.
  • Geçerli klasörün bir çalışma alanına bağlı olup olmadığı.
  • Pathrule MCP girdisinin her yapay zekâ istemcisi için kurulu olup olmadığı.
  • Klasörde Pathrule tarafından yönetilen hangi dosyaların bulunduğu ve bunları hangi Pathrule yüzeyinin, hangi sürümle yazdığı.

Çıktı, ilgilenilmesi gereken bir şey varsa çalıştırılacak bir sonraki komutla biter. Tam rapor için --json ekleyin; bu rapor Node sürümünü de kapsar ve artık var olmayan bir çalışma zamanını gösteren MCP girdilerini işaretler.

Yerel parçaları yeniden yerine oturtmak için şunu çalıştırın:

pathrule repair

Repair, eskimiş MCP girdilerini yeniden yazar, hook betiğini ve her istemcinin hook kaydını yeniden kurar, yardımcı dosyaları ve hook'un okuduğu yerel önbelleği yeniden senkronize eder ve doctor komutunu tekrar çalıştırır.

Tüm Pathrule hook'larını bir anda kapatmanız gerekirse ~/.pathrule/kill-hooks dosyasını oluşturun. Sonraki hook çağrıları hiçbir şey yapmadan geçer; hook'ları yeniden açmak için dosyayı silin.