
Kiki
Darbo signalai ir agentų vykdymas
Kad pasiūlymas taptų atsakingojo vykdymu.
Paperclip papildinys ir Slack rinktuvas, padedantys komandai valdyti savo DI agentus.
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
Tarp priskyrimo ir faktinio vykdymo – kelias stebėti ir atkurti.
Darbo signalai tampa profiliais ir agentų nurodymais, o priežiūros pasiūlymo patvirtinimas laikomas atskirai nuo jo vykdymo priskyrimo. Kai priskirtos užduoties veikla sustoja, jos vėl prašoma su užduotimi ir atsakinguoju, o pasikartojantis atsako nebuvimas veda į limitą, cooldown ir žmogaus sprendimą.
Jie paverčia darbo signalus agentų nurodymais ir sujungia priežiūros pasiūlymus, žmogaus patvirtinimą, priskyrimą ir užstrigusių paleidimų atkūrimą kaip atskirus žingsnius. Šią eigą suplanavau ir sukūriau.
Pirmas įrašas saugykloje April 3, 2026 · bendradarbiavimas su pinxlab iki May 26, 2026
Veikia kaip papildinys komandos Paperclip viduje; Slack rinkimą atlieka MCP serveris.
Signalai → nurodymai
Profiliai ir agentų nurodymai kuriami iš Slack istorijos. Nurodymai yra agento kontekstas ir nevaizduojami kaip kokio nors pasiūlymo priežastis.
Slack signalaiDuomenys: kanalų istorijaŠablonų išgavimas · be botų
Signalų rinkimasRenkama prieinama kanalų istorija, o botų, prisijungimo ir išėjimo žinutės atfiltruojamos. Originalios žinutės šiame puslapyje nerodomos.
Šablonų išgavimas · be botų
Signalų rinkimasDuomenys: profilio sujungimasĮmonės profilio sujungimasĮmonės būsenaIšgauti šablonai tampa profilio pataisa, sujungiama su įmonės profiliu. Tai euristiniai šablonai, o ne darbuotojų veiklos balai.
Įmonės profilio sujungimas
Įmonės būsenaDuomenys: generuoti iš naujoKiekvieno agento nurodymaiAgento būsenaKiekvieno agento nurodymai iš naujo sugeneruojami iš sujungto profilio ir išsaugomi.
Kiekvieno agento nurodymai
Agento būsenaPaleidimas · sprendimas: nurodymai į kontekstąPriskirtas agentasNurodymai patenka į agento kontekstą jį sukuriant. Tai nereiškia, kad konkretus pasiūlymas kilo iš konkretaus Slack signalo.
Pasiūlymas → patvirtinimas → priskyrimas
Pasiūlymas pirmiausia egzistuoja kaip nepriskirta backlog užduotis, žmogaus reakcija prašo pakeisti būseną, o priskyrimas ir vykdymas priklauso išorinei sistemai.
Tikslinis projektasDuomenys: taikinio apimtisPO kvietimas · apribotas raginimas
Priežiūros analizėPriežiūros užduotis kviečia PO agentą su raginimu, apribotu tiksliniu projektu. Šaltinių turinys nerodomas.
PO kvietimas · apribotas raginimas
Priežiūros analizėDuomenys: pasiūlymo užduotisPasiūlymas · backlogUžduočių sekimo sistemaRaginimas prašo pasiūlymų tik su patikrintais keliais, kaip nepriskirtų backlog užduočių, ir draudžia vykdyti DB migracijas. Tai nurodymas produkto agentui, o ne deterministinis užtikrinimo mechanizmas.
Pasiūlymas · backlog
Užduočių sekimo sistemaDuomenys: skelbti pasiūlymąŽinutės ↔ užduoties susiejimasPasiūlymų skelbimasKiekvienas pasiūlymas paskelbiamas Slack, o žinutės ir užduoties susiejimas išsaugomas. Jau paskelbti pasiūlymai iš naujo neskelbiami, o išsaugotas susiejimas laiko paskutinius 50.
Žinutės ↔ užduoties susiejimas
Pasiūlymų skelbimasDuomenys: Slack žinutėŽmogus · patvirtina, atmetaŽmogus mato paskelbtą pasiūlymą Slack.
Žmogus · patvirtina, atmetaPaleidimas · sprendimas: reakcijaŽinutės ↔ užduoties susiejimas
Pasiūlymų skelbimasReakcija į žinutę per susiejimą suranda užduotį. Automatinio patvirtinimo nėra.
Žinutės ↔ užduoties susiejimas
Pasiūlymų skelbimasPaleidimas · sprendimas: patvirtinti → todoVykdymo užduotis · todoUžduočių sekimo sistemaPatvirtinus siunčiama užklausa perkelti laukiančią pasiūlymo užduotį į todo, o susiejimas ir pranešimas gijoje atnaujinami. Ši doroklė pažymi susiejimą kaip patvirtintą netikrindama atsako kodo, todėl tai nėra transakcija, kuri užsidaro įvykus nesėkmei.
Žinutės ↔ užduoties susiejimas
Pasiūlymų skelbimasPaleidimas · sprendimas: atmesti → cancelledPasiūlymas · backlogUžduočių sekimo sistemaAtmetus siunčiama užklausa perkelti tą pačią užduotį į cancelled. Užduotis egzistavo prieš patvirtinimą; patvirtinimas jos nesukuria.
Vykdymo užduotis · todo
Užduočių sekimo sistemaPaleidimas · sprendimas: priskyrimasPriskirtas agentasTodo užduoties priskyrimas ir vykdymas priklauso išorinei vykdymo sistemai. Užduoties perkėlimas į todo negarantuoja, kad darbas prasidėjo.
Užstrigimas → atkūrimas → žmogus
Priskirtos užduoties, kurios veikla sustojo, vėl prašoma su užduotimi ir atsakinguoju; kai iš eilės neatsakytų kreipimųsi skaičius pasiekia limitą, ji perduodama žmogui.
Priskirtas agentasStebėjimas · ataskaita: paleidimų įrašaiNaujausi paleidimai · veikla
Paleidimų stebėjimasPriskirto agento paleidimai ir naujausi signalai įrašomi kaip stebėjimai. Veikla nėra užbaigimo įrodymas.
Naujausi paleidimai · veikla
Paleidimų stebėjimasStebėjimas · ataskaita: paskutinė veiklaUžstrigimo patikra · heartbeatStage reaperReaper žiūri tik į užduotis, kurios nėra done, cancelled ar blocked ir turi atsakingąjį, ir apskaičiuoja paskutinio signalo ir etapo amžių.
Užstrigimo patikra · heartbeat
Stage reaperDuomenys: nėra atsako +1Neatsakyti kreipimaisi · pagal užduotįNeatsakytų kreipimųsi būsenaIš eilės neatsakyti kreipimaisi skaičiuojami kiekvienai agento ir užduoties porai ir saugomi būsenoje.
Naujausi paleidimai · veikla
Paleidimų stebėjimasStebėjimas · ataskaita: nauja veikla → nustatyti iš naujoNeatsakyti kreipimaisi · pagal užduotįNeatsakytų kreipimųsi būsenaNauja veikla nustato skaitiklį iš naujo.
Užstrigimo patikra · heartbeat
Stage reaperPaleidimas · sprendimas: pakartotinis kvietimasUžduotis + atsakingasisAtkūrimo kvietimasJei heartbeat viršytas, o skaitiklis mažesnis už limitą, atliekamas atkūrimo kvietimas.
Užduotis + atsakingasis
Atkūrimo kvietimasPaleidimas · sprendimas: užduotis + atsakingasisVykdymo užduotis · todoUžduočių sekimo sistemaPriskyrimo vėl prašoma su užduotimi, priskirtu agentu ir paaiškinamuoju komentaru, o HTTP atsakas patikrinamas. Senasis kelias vietoj to atlieka vieną pažadinimo kvietimą.
Neatsakyti kreipimaisi · pagal užduotį
Neatsakytų kreipimųsi būsenaNesėkmė · limitas: po 3Sustabdyti pakartotinius kvietimus · cooldownLimitasKai iš eilės neatsakytų kreipimųsi skaičius pasiekia limitą (numatytasis – 3), pakartotiniai kvietimai sustabdomi. Limitas galioja tik tada, kai būsenos hook skaito ir rašo skaitiklį, o nepavykęs išsaugojimas gali jį susilpninti.
Sustabdyti pakartotinius kvietimus · cooldown
LimitasPaleidimas · sprendimas: perskyrimas · pranešimasVadovas · operatoriusJei įmanoma, perskiria vadovui, o in_progress grąžina į todo tik tada, kai ta funkcija įjungta. Kitaip palieka komentarą ir best-effort pranešimą, o pasiekus limitą įrašo cooldown.
Užstrigimo patikra · heartbeat
Stage reaperStebėjimas · ataskaita: tik įspėjimasVadovas · operatoriusKai etapas trunka per ilgai, operatoriams paliekamas tik įspėjamasis komentaras. Būsena automatiškai nekeičiama.
Visi ryšiai vienodo storio. Pasirinkite srautą, kad būtų paryškintas tik jo kelias su sunumeruotais žingsniais.
- Ištisinė · įvesties, rezultatų ir įrašų kryptis
- Brūkšninė · paleidimas, sprendimas, užklausa
- Ilga taškinė · stebėjimas ir ataskaitos, atskirai nuo sprendimo
- Trumpa brūkšninė · nesėkmė, sustabdymas, limitas
- Stora juoda linija · pasirinktas srautas; skaičiai rodo tvarką
- Rėmelis · kodo ar būsenos riba, pavadinta antraštėje
- Vidinė plokštelė · tos ribos komponentas
- Taškinis rėmelis · už tos ribos
- Oranžinis kontūras · kur sprendžia modelis
- Agento kvietimas · atkūrimo kvietimas
- Būsena · įrašai
- Užstrigimo patikra · limitas
- Rinkimas · skelbimas
Nubraižyta pagal privačius įgyvendinimo ir kūrimo įrašus. Komandos, užduočių ir Slack identifikatoriai bei originalios žinutės nerodomi; diegimas, konteineriai ir prisijungimo duomenys priklauso savininkui už šio papildinio ribų.
- Vienas stebėjimas
- April 28, 2026 ataskaita: rankinės diagnostikos metu prieš pakeitimą vienai užduočiai, kuri nebuvo vykdoma 67 valandas, priskyrimo vėl paprašyta su užduotimi ir atsakinguoju, ir naujas paleidimas pateko į eilę per 5 sekundes. Užbaigimas, vidutinis atkūrimo laikas ir poveikis po įdiegimo neišmatuoti.
- Patvirtinimo apdorojimo ribos
- Skirtingai nuo atkūrimo kvietimo, patvirtinimo apdorojimas pažymi susiejimą kaip patvirtintą netikrindamas atsako kodo. Jis neaprašomas kaip atomiška ar įvykus nesėkmei užsidaranti patvirtinimo transakcija.
- Kada limitas galioja
- 3 kvietimų limitas yra įgyvendinimas, galiojantis esant būsenos hook. Jis negarantuoja lygiai vieno eskalavimo bet kokios nesėkmės atveju.