
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ı.
Kiki vocabulary
- assignment
- wake
- guardrail
- stage reaper
- zombie sweeper
- circuit breaker
- escalation
- observe
- signals
- profile
- directive
- proposal
- 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.
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.
Slack sinyalleriVeri: kanal geçmişiKalıp çıkarma · bot'lar hariç
Sinyal toplamaErişilebilen kanal geçmişi toplanır; bot, katılma ve ayrılma mesajları ayıklanır. Özgün mesajlar bu sayfada gösterilmez.
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.
Şirket profili birleştirme
Şirket durumuVeri: yeniden üretAjan başına yönergelerAjan durumuAjan başına yönergeler birleştirilmiş profilden yeniden üretilir ve saklanır.
Ajan başına yönergeler
Ajan durumuÇalıştırma · yargı: yönerge girişiAtanan ajanYö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.
Hedef projeVeri: hedef kapsamıPO çağrısı · kapsamlı istem
Bakım analiziBakım işi PO ajanını hedef projeyle sınırlanmış bir istemle çağırır. Kaynak içeriği gösterilmez.
PO çağrısı · kapsamlı istem
Bakı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.
Öneri · backlog
Issue takipçisiVeri: öneriyi gönderMesaj ↔ issue eşlemesiÖneri gönderimiHer ö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.
Mesaj ↔ issue eşlemesi
Öneri gönderimiVeri: Slack mesajıKişi · onayla, reddetBir kişi gönderilen öneriyi Slack'te görür.
Kişi · onayla, reddetÇalıştırma · yargı: tepkiMesaj ↔ issue eşlemesi
Öneri gönderimiMesajdaki bir tepki, eşleme üzerinden issue'yu bulur. Otomatik onay yoktur.
Mesaj ↔ issue eşlemesi
Öneri gönderimiÇalıştırma · yargı: onay → todoÇalıştırma issue'su · todoIssue takipçisiOnaylandığı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.
Mesaj ↔ issue eşlemesi
Öneri gönderimiÇalıştırma · yargı: ret → cancelledÖneri · backlogIssue takipçisiReddedildiğinde aynı issue'yu cancelled'a taşımak için bir istek gönderilir. Issue onaydan önce vardı; onay onu oluşturmaz.
Çalıştırma issue'su · todo
Issue takipçisiÇalıştırma · yargı: atamaAtanan ajanTodo'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.
Atanan ajanGözlem · rapor: çalıştırma kayıtlarıSon çalıştırmalar · etkinlik
Çalıştırma gözlemiAtanan ajanın çalıştırmaları ve son sinyalleri gözlem olarak kaydedilir. Etkinlik tamamlanmanın kanıtı değildir.
Son çalıştırmalar · etkinlik
Çalıştırma gözlemiGözlem · rapor: son etkinlikTakılma kontrolü · heartbeatStage reaperReaper 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.
Takılma kontrolü · heartbeat
Stage reaperVeri: yanıt yok +1Yanıtsızlıklar · issue başınaYanıtsızlık durumuArt arda yanıtsızlıklar ajan ve issue başına sayılır ve durumda saklanır.
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 durumuYeni etkinlik sayacı sıfırlar.
Takılma kontrolü · heartbeat
Stage 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.
Issue + atanan kişi
Kurtarma çağrısıÇalıştırma · yargı: issue + atanan kişiÇalıştırma issue'su · todoIssue takipçisiAtama 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.
Yanıtsızlıklar · issue başına
Yanıtsızlık durumuHata · sınır: 3'ten sonraYeniden çağrıları durdur · cooldownSınırArt 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.
Yeniden çağrıları durdur · cooldown
SınırÇalıştırma · yargı: yeniden ata · bildirLead · operatörMü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.
Takılma kontrolü · heartbeat
Stage reaperGözlem · rapor: yalnızca uyarıLead · operatörBir 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.