Yazarın sağladığı Kiki kedi görselinden türetilmiş şeffaf yüz
Salona dön

Kiki

İş sinyalleri ve ajan yürütmesi

Bir öneri, atanan kişinin yürütmesine dönüşsün diye.

Bir ekibin AI ajanlarını işletmesine yardım eden bir Paperclip eklentisi ve bir Slack toplayıcısı.

2026.04 — 2026.05

pinxlab AI Ar-Ge serbest çalışma · iş akışı planlama ve geliştirme, takılan yürütmeyi inceleme ve kurtarma yolunu tasarlama

  • EklentiUygulandı · Paperclip
  • MCP sunucusuUygulandı · Slack toplayıcısı

Kiki vocabulary

Lens
Agent Execution
Dispatch
Recovery
Work Signals
Signal Ingestion
Proposal
  1. assignment
  2. wake
  3. guardrail
  1. stage reaper
  2. zombie sweeper
  3. circuit breaker
  4. escalation
  1. observe
  2. signals
  3. profile
  4. directive
  1. proposal
  2. approval

Assignment: assigneeAgentId · PATCH /api/issues/:id · queueIssueAssignmentWakeup · issue.updated · CTO TRIAGE · AUTO-PROMOTE TO TODO · AUTO-REBALANCE · in_progress · REASSIGN WITHOUT WAKE · repatchAssignment · kiki-retry-issue · status: todoWake: queueIssueAssignmentWakeup · REASSIGN WITHOUT WAKE · ctx.agents.invoke · POST /api/agents/:id/wakeup · invokeOnce · INVOKE DEDUP · windowMs · HANDOFF-ACK · AT-LEAST-ONCE · HANDOFF_ACK_MAX_RETRIES · ORPHAN WAKE · lastRunAt · maxConsecutiveWakes · WAKE-STORM GUARD · heartbeat_runsGuardrail: issue.updated · in_progress · ORPHAN WAKE · SPEC COMPLETE · PO SPEC GATE · PO DELEGATION GATE · REVIEW SCORECARD · 30/30 · REWORK · PO ACCEPTANCE SCORECARD · findScorecardInComments · ANTI-DECEPTION RATCHET · WORKFLOW GUARDRAILStage Reaper: PATCH /api/issues/:id · lastRunAt · stage-reaper · repatchAssignment · heartbeatSeconds · maxConsecutiveWakes · COOLDOWN · lastSignalTime · stageEntryTime · LEVEL-TRIGGERED · WAKE-STORM GUARD · pipeline-reaper · stage-without-PATCH · kiki-retry-issue · LEAD REROUTEZombie Sweeper: zombie-sweeper · ZOMBIE_RUNNING_MAX_MIN · ZOMBIE_QUEUED_MAX_MIN · execution_run_id · RUN OWNERSHIP CONFLICT · heartbeat_runs · claude_local · execution_locked_at · SELF-HEALCircuit Breaker: CLOSED · HALF_OPEN · auth_fail · rate_limit · RETRY STORM · CB_FAILURE_THRESHOLD · KEY ROTATOR · HTTP 429 · process_lost · agent.run.failedEscalation: process_lost · agent.run.failed · ESCALATION COMMENT · LEAD REROUTE · QA FALLBACK · agent.status_changed · failed-run-escalator · PIPELINE NOTIFIER · pipeline-health-snapshot · SILENT STALLObserve: observe_channel · slack_read_channels · slack_read_thread · slack_read_reactions · slack_user_activity · .last_observed.json · DELTA TRACKING · oldest · SOCKET MODE · kiki-observe · NO RAW TEXTSignals: NO RAW TEXT · UserSignal · message_count · avg_response_time_minutes · active_hours · thread_participation_rate · topic_keywords · evidence_count · LLMExtractedSignal · FeedbackSignalProfile: FeedbackSignal · UserProfile · CommunicationStyle · DecisionPattern · WorkRhythm · focusBlocks · confidence · ContextMode · DELEGATION CHAINS · refresh-profilesDirective: AgentDirective · profileToDirectives · reportFormat · taskConstraints · directiveToSkillMarkdown · agent.created · PATCH /api/skills/{skillId} · grounding_policy · systemPrompt · NO USER PIIMaintenance Proposal: MaintenanceProposal · [MAINT] · daily-maintenance · run-maintenance · kiki-maintain · MAX 10 PROPOSALS · [SCHEMA APPROVAL REQUIRED] · P1/P2/P3 · DO NOT FABRICATE · BOUND TARGETHuman Approval: SOCKET MODE · [SCHEMA APPROVAL REQUIRED] · maint_approve · maint_deny · BLOCK KIT · reaction_added · white_check_mark · ProposalMapping · block_actions · approved · cancelled · status: todo

Atama ile fiilî yürütme arasında gözlem ve kurtarma için bir yol.

İş sinyalleri profillere ve ajan yönergelerine dönüşür; bir bakım önerisini onaylamak, yürütmesini atamaktan ayrı tutulur. Atanmış bir issue'nun etkinliği durduğunda issue ve atanan kişiyle yeniden istenir; tekrarlanan yanıtsızlık bir sınıra, bir cooldown'a ve bir kişinin yargısına gider.

İş sinyallerini ajan yönergelerine çevirir; bakım önerilerini, insan onayını, atamayı ve takılan çalıştırmaların kurtarılmasını ayrı adımlar olarak bağlar. Bu akışı planladım ve geliştirdim.

İlk depo kaydı April 3, 2026 · pinxlab katılımı May 26, 2026'ya kadar

Ekibin Paperclip'i içinde eklenti olarak çalışır; Slack toplamayı bir MCP sunucusu üstlenir.

Yürütme akışı haritası · gizli uygulama kayıtlarından
Kiki sinyalleri · onay · yürütme kurtarmaİş kalıpları, erişilebilen Slack kanal geçmişinden şirket profillerine ve ajan başına yönergelere çıkarılır. Bir bakım analizi ajanı hedef projeye bakar ve önerilerini atanmamış backlog issue'ları olarak bırakır; her öneri Slack'e gönderilir, orada bir kişi tepkiyle onaylar ya da reddeder. Onaylanan bir issue bir ajana atandığında işi harici bir yürütme sistemi yapar ve bir stage reaper son etkinliği izler. Etkinlik durursa atama issue ve atanan kişiyle yeniden istenir; art arda yanıtsızlık sınıra ulaştığında yeniden çağrılar durur ve vaka bir lead'e ya da operatöre gider.Slack sinyalleriErişilebilen kanal geçmişiAtanan ajanHarici yürütmeHedef projeİçerik gösterilmezKişi · onayla, reddetSlack tepkisiLead · operatörYeniden ata · bildirSinyal toplamaKalıp çıkarma · bot'lar hariçŞirket durumuŞirket profili birleştirmeAjan durumuAjan başına yönergelerÇalıştırma gözlemiSon çalıştırmalar · etkinlikBakım analiziPO çağrısı · kapsamlı istemIssue takipçisiÖneri · backlogÇalıştırma issue'su · todoÖneri gönderimiMesaj ↔ issue eşlemesiStage reaperTakılma kontrolü · heartbeatKurtarma çağrısıIssue + atanan kişiYanıtsızlık durumuYanıtsızlıklar · issue başınaSınırYeniden çağrıları durdur · cooldownSinyaller → yönergelerHarici yürütmeÖneri → insan onayıKurtarma · yükseltme1 kanal geçmişi · Slack sinyalleri → Kalıp çıkarma · bot'lar hariç12 profil birleştirme · Kalıp çıkarma · bot'lar hariç → Şirket profili birleştirme23 yeniden üret · Şirket profili birleştirme → Ajan başına yönergeler34 yönerge girişi · Ajan başına yönergeler → Atanan ajan41 hedef kapsamı · Hedef proje → PO çağrısı · kapsamlı istem12 öneri issue'su · PO çağrısı · kapsamlı istem → Öneri · backlog23öneriyi gönder4Slack mesajı5tepki6onay → todo7ret → cancelled8atama1çalıştırma kayıtları2son etkinlik3yanıt yok +14yeni etkinlik → sıfırla5 yeniden çağır · Takılma kontrolü · heartbeat → Issue + atanan kişi56issue + atanan kişi7 3'ten sonra · Yanıtsızlıklar · issue başına → Yeniden çağrıları durdur · cooldown78yeniden ata · bildir9yalnızca uyarı

Sinyaller → yönergeler

Profiller ve ajan yönergeleri Slack geçmişinden oluşturulur. Yönergeler ajan bağlamıdır ve hiçbir önerinin nedeni olarak çizilmez.

  1. Slack sinyalleriVeri: kanal geçmişiKalıp çıkarma · bot'lar hariçSinyal toplama

    Erişilebilen kanal geçmişi toplanır; bot, katılma ve ayrılma mesajları ayıklanır. Özgün mesajlar bu sayfada gösterilmez.

  2. Kalıp çıkarma · bot'lar hariçSinyal toplamaVeri: profil birleştirmeŞirket profili birleştirmeŞirket durumu

    Çıkarılan kalıplar, şirket profiline birleştirilen bir profil patch'ine dönüşür. Bunlar sezgisel kalıplardır; çalışan performans puanları değildir.

  3. Şirket profili birleştirmeŞirket durumuVeri: yeniden üretAjan başına yönergelerAjan durumu

    Ajan başına yönergeler birleştirilmiş profilden yeniden üretilir ve saklanır.

  4. Ajan başına yönergelerAjan durumuÇalıştırma · yargı: yönerge girişiAtanan ajan

    Yönergeler bir ajan oluşturulduğunda onun bağlamına girer. Bu, belirli bir önerinin belirli bir Slack sinyalinden geldiği anlamına gelmez.

Öneri → onay → atama

Bir öneri önce atanmamış bir backlog issue'su olarak var olur, bir kişinin tepkisi durum değişikliği ister; atama ve yürütme harici sisteme aittir.

  1. Hedef projeVeri: hedef kapsamıPO çağrısı · kapsamlı istemBakım analizi

    Bakım işi PO ajanını hedef projeyle sınırlanmış bir istemle çağırır. Kaynak içeriği gösterilmez.

  2. PO çağrısı · kapsamlı istemBakım analiziVeri: öneri issue'suÖneri · backlogIssue takipçisi

    İstem yalnızca doğrulanmış yollar içeren önerileri atanmamış backlog issue'ları olarak ister ve DB migration çalıştırmayı yasaklar. Bu bir ürün ajanına verilen talimattır; deterministik bir zorlama mekanizması değildir.

  3. Öneri · backlogIssue takipçisiVeri: öneriyi gönderMesaj ↔ issue eşlemesiÖneri gönderimi

    Her öneri Slack'e gönderilir ve mesaj-issue eşlemesi saklanır. Daha önce gönderilmiş öneriler yeniden gönderilmez; saklanan eşleme son 50'yi tutar.

  4. Mesaj ↔ issue eşlemesiÖneri gönderimiVeri: Slack mesajıKişi · onayla, reddet

    Bir kişi gönderilen öneriyi Slack'te görür.

  5. Kişi · onayla, reddetÇalıştırma · yargı: tepkiMesaj ↔ issue eşlemesiÖneri gönderimi

    Mesajdaki bir tepki, eşleme üzerinden issue'yu bulur. Otomatik onay yoktur.

  6. Mesaj ↔ issue eşlemesiÖneri gönderimiÇalıştırma · yargı: onay → todoÇalıştırma issue'su · todoIssue takipçisi

    Onaylandığında bekleyen öneri issue'sunu todo'ya taşımak için bir istek gönderilir; eşleme ve konu bildirimi güncellenir. Bu handler yanıt kodunu kontrol etmeden eşlemeyi approved olarak işaretler; dolayısıyla fail-closed bir işlem değildir.

  7. Mesaj ↔ issue eşlemesiÖneri gönderimiÇalıştırma · yargı: ret → cancelledÖneri · backlogIssue takipçisi

    Reddedildiğinde aynı issue'yu cancelled'a taşımak için bir istek gönderilir. Issue onaydan önce vardı; onay onu oluşturmaz.

  8. Çalıştırma issue'su · todoIssue takipçisiÇalıştırma · yargı: atamaAtanan ajan

    Todo'daki bir issue'nun ataması ve yürütmesi harici yürütme sistemine aittir. Bir issue'yu todo'ya taşımak işin başladığını garanti etmez.

Takılma → kurtarma → kişi

Etkinliği durmuş atanmış bir issue, issue ve atanan kişiyle yeniden istenir; art arda yanıtsızlık sınıra ulaştığında bir kişiye gider.

  1. Atanan ajanGözlem · rapor: çalıştırma kayıtlarıSon çalıştırmalar · etkinlikÇalıştırma gözlemi

    Atanan ajanın çalıştırmaları ve son sinyalleri gözlem olarak kaydedilir. Etkinlik tamamlanmanın kanıtı değildir.

  2. Son çalıştırmalar · etkinlikÇalıştırma gözlemiGözlem · rapor: son etkinlikTakılma kontrolü · heartbeatStage reaper

    Reaper yalnızca done, cancelled ya da blocked olmayan ve bir atanan kişisi olan issue'lara bakar; son sinyalin ve aşamanın yaşını hesaplar.

  3. Takılma kontrolü · heartbeatStage reaperVeri: yanıt yok +1Yanıtsızlıklar · issue başınaYanıtsızlık durumu

    Art arda yanıtsızlıklar ajan ve issue başına sayılır ve durumda saklanır.

  4. Son çalıştırmalar · etkinlikÇalıştırma gözlemiGözlem · rapor: yeni etkinlik → sıfırlaYanıtsızlıklar · issue başınaYanıtsızlık durumu

    Yeni etkinlik sayacı sıfırlar.

  5. Takılma kontrolü · heartbeatStage reaperÇalıştırma · yargı: yeniden çağırIssue + atanan kişiKurtarma çağrısı

    Heartbeat aşılmışsa ve sayı sınırın altındaysa bir kurtarma çağrısı yapılır.

  6. Issue + atanan kişiKurtarma çağrısıÇalıştırma · yargı: issue + atanan kişiÇalıştırma issue'su · todoIssue takipçisi

    Atama issue, atanan ajan ve açıklayıcı bir yorumla yeniden istenir ve HTTP yanıtı kontrol edilir. Eski bir yol tek bir uyandırma çağrısına geri düşer.

  7. Yanıtsızlıklar · issue başınaYanıtsızlık durumuHata · sınır: 3'ten sonraYeniden çağrıları durdur · cooldownSınır

    Art arda yanıtsızlıklar sınıra (varsayılan 3) ulaştığında yeniden çağrılar durur. Sınır yalnızca durum hook'ları sayıyı okuyup yazdığında geçerlidir ve başarısız bir kayıt onu zayıflatabilir.

  8. Yeniden çağrıları durdur · cooldownSınırÇalıştırma · yargı: yeniden ata · bildirLead · operatör

    Mümkünse bir lead'e yeniden atar; in_progress'i todo'ya yalnızca o özellik etkinse geri taşır. Değilse bir yorum ve best-effort bir bildirim bırakır, sınırdan sonra bir cooldown kaydeder.

  9. Takılma kontrolü · heartbeatStage reaperGözlem · rapor: yalnızca uyarıLead · operatör

    Bir aşama çok uzun sürdüğünde operatörler için yalnızca bir uyarı yorumu bırakılır. Durum otomatik olarak değiştirilmez.

Her bağlantı aynı kalınlıkta. Yalnızca yolunu numaralı adımlarla vurgulamak için bir akış seçin.

  • Düz çizgi · girdi, sonuç ve kayıtların yönü
  • Kesikli · çalıştırma, yargı, istek
  • Uzun noktalar · gözlem ve raporlama, yargıdan ayrı
  • Kısa kesikler · hata, durma, sınır
  • Kalın siyah çizgi · seçilen akış; numaralar sırayı verir
  • Kutu · bir kod ya da durum sınırı, adı başlığında
  • İç çip · o sınırın bir bileşeni
  • Noktalı kutu · o sınırın dışı
  • Turuncu çerçeve · bir modelin karar verdiği yer
  • Ajan çağrısı · kurtarma çağrısı
  • Durum · kayıtlar
  • Takılma kontrolü · sınır
  • Toplama · gönderim

Gizli uygulama ve geliştirme kayıtlarından çizildi. Ekip, issue ve Slack tanımlayıcıları ile özgün mesajlar gösterilmez; dağıtım, konteynerler ve kimlik bilgileri bu eklentinin dışındaki bir sahibe aittir.

Tek bir gözlem
April 28, 2026 raporu: değişiklikten önceki elle yapılan bir teşhiste, 67 saattir çalışmayan bir issue için atama issue ve atanan kişiyle yeniden istendi ve 5 saniye içinde yeni bir çalıştırma kuyruğa alındı. Tamamlanma, ortalama kurtarma süresi ve yayılım sonrası etki ölçülmedi.
Onay işlemenin sınırları
Kurtarma çağrısının aksine onay işleme, yanıt kodunu kontrol etmeden eşlemeyi approved olarak işaretler. Atomik ya da fail-closed bir onay işlemi olarak tanımlanmaz.
Sınır ne zaman geçerli
3 çağrı sınırı, durum hook'ları mevcut olduğunda geçerli olan bir uygulamadır. Her hatada tam olarak bir yükseltmeyi garanti etmez.