Prozirna izvedenica lica iz slike mačke Kiki koju je dostavio autor
Natrag u dvoranu

Kiki

Radni signali i izvođenje agenata

Kako bi prijedlog postao izvođenje kod odgovorne osobe.

Paperclip dodatak i Slack sakupljač koji timu pomažu voditi njegove AI agente.

2026.04 — 2026.05

pinxlab, slobodnjak u AI R&D-u · planiranje i razvoj tijeka rada, istraživanje zastoja izvođenja i projektiranje puta oporavka

  • DodatakImplementirano · Paperclip
  • MCP poslužiteljImplementirano · Slack sakupljač

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

Između dodjele i stvarnog izvođenja, put za promatranje i oporavak.

Radni signali postaju profili i direktive agentima, a odobrenje prijedloga održavanja drži se odvojeno od dodjele njegova izvođenja. Kad aktivnost dodijeljenog zadatka stane, dodjela se ponovno traži sa zadatkom i odgovornom osobom, a ponovljeni izostanak odgovora vodi do ograničenja, cooldowna i ljudske prosudbe.

Radne signale pretvaraju u direktive agentima i povezuju prijedloge održavanja, ljudsko odobrenje, dodjelu i oporavak zaustavljenih izvođenja kao zasebne korake. Ovaj sam tijek planirao i razvio.

Prvi zapis u repozitoriju April 3, 2026 · suradnja s pinxlabom do May 26, 2026

Radi kao dodatak unutar timskog Paperclipa; prikupljanje iz Slacka obavlja MCP poslužitelj.

Karta tijeka izvođenja · prema privatnim zapisima implementacije
Kiki: signali · odobrenje · oporavak izvođenjaRadni obrasci izdvajaju se iz dostupne povijesti Slack kanala u profile tvrtki i direktive po agentu. Agent za analizu održavanja pregledava ciljni projekt i ostavlja prijedloge kao nedodijeljene zadatke u backlogu; svaki se prijedlog objavljuje u Slacku, gdje ga čovjek reakcijom odobrava ili odbija. Kad se odobreni zadatak dodijeli agentu, posao obavlja vanjski sustav izvođenja, a stage reaper prati nedavnu aktivnost. Ako aktivnost stane, dodjela se ponovno traži sa zadatkom i odgovornom osobom; kad uzastopni izostanci odgovora dosegnu ograničenje, ponovni pozivi prestaju, a slučaj ide voditelju ili operateru.Slack signaliDostupna povijest kanalaDodijeljeni agentVanjsko izvođenjeCiljni projektSadržaj nije prikazanČovjek · odobrava, odbijaReakcija u SlackuVoditelj · operaterPonovna dodjela · obavijestPrikupljanje signalaIzdvajanje obrazaca · bez botovaStanje tvrtkeSpajanje profila tvrtkeStanje agentaDirektive po agentuPromatranje izvođenjaNedavna izvođenja · aktivnostAnaliza održavanjaPO poziv · ograničen promptSustav za praćenje zadatakaPrijedlog · backlogZadatak za izvođenje · todoObjava prijedlogaMapiranje poruka ↔ zadatakStage reaperProvjera zastoja · heartbeatPoziv za oporavakZadatak + odgovorna osobaStanje izostanaka odgovoraIzostanci odgovora · po zadatkuOgraničenjeZaustavljanje ponovnih poziva · cooldownSignali → direktiveVanjsko izvođenjePrijedlog → ljudsko odobrenjeOporavak · eskalacija1 povijest kanala · Slack signali → Izdvajanje obrazaca · bez botova12 spajanje profila · Izdvajanje obrazaca · bez botova → Spajanje profila tvrtke23 ponovno generiranje · Spajanje profila tvrtke → Direktive po agentu34 unos direktiva · Direktive po agentu → Dodijeljeni agent41opseg cilja2 zadatak-prijedlog · PO poziv · ograničen prompt → Prijedlog · backlog23objava prijedloga4Slack poruka5reakcija6odobri → todo7odbij → cancelled8dodjela1zapisi izvođenja2posljednja aktivnost3bez odgovora +14nova aktivnost → poništavanje5 ponovni poziv · Provjera zastoja · heartbeat → Zadatak + odgovorna osoba56zadatak + odgovorna osoba7nakon 38ponovna dodjela · obavijest9samo upozorenje

Signali → direktive

Profili i direktive agentima grade se iz povijesti Slacka. Direktive su kontekst agenta i nisu prikazane kao uzrok ikojeg prijedloga.

  1. Slack signaliPodaci: povijest kanalaIzdvajanje obrazaca · bez botovaPrikupljanje signala

    Prikuplja se dostupna povijest kanala, a poruke botova te poruke o pridruživanju i odlasku filtriraju se. Izvorne poruke nisu prikazane na ovoj stranici.

  2. Izdvajanje obrazaca · bez botovaPrikupljanje signalaPodaci: spajanje profilaSpajanje profila tvrtkeStanje tvrtke

    Izdvojeni obrasci postaju zakrpa profila spojena u profil tvrtke. To su heuristički obrasci, a ne ocjene učinka zaposlenika.

  3. Spajanje profila tvrtkeStanje tvrtkePodaci: ponovno generiranjeDirektive po agentuStanje agenta

    Direktive po agentu ponovno se generiraju iz spojenog profila i spremaju.

  4. Direktive po agentuStanje agentaPokretanje · prosudba: unos direktivaDodijeljeni agent

    Direktive ulaze u kontekst agenta pri njegovu stvaranju. To ne znači da određeni prijedlog potječe od određenog Slack signala.

Prijedlog → odobrenje → dodjela

Prijedlog najprije postoji kao nedodijeljeni zadatak u backlogu, reakcija čovjeka traži promjenu statusa, a dodjela i izvođenje pripadaju vanjskom sustavu.

  1. Ciljni projektPodaci: opseg ciljaPO poziv · ograničen promptAnaliza održavanja

    Posao održavanja poziva PO agenta s promptom ograničenim na ciljni projekt. Sadržaj izvora nije prikazan.

  2. PO poziv · ograničen promptAnaliza održavanjaPodaci: zadatak-prijedlogPrijedlog · backlogSustav za praćenje zadataka

    Prompt traži prijedloge samo s provjerenim putanjama, kao nedodijeljene zadatke u backlogu, i zabranjuje pokretanje migracija baze podataka. To je uputa agentu proizvoda, a ne deterministički mehanizam provođenja.

  3. Prijedlog · backlogSustav za praćenje zadatakaPodaci: objava prijedlogaMapiranje poruka ↔ zadatakObjava prijedloga

    Svaki se prijedlog objavljuje u Slacku, a mapiranje poruke na zadatak sprema se. Već objavljeni prijedlozi ne objavljuju se ponovno, a spremljeno mapiranje čuva posljednjih 50.

  4. Mapiranje poruka ↔ zadatakObjava prijedlogaPodaci: Slack porukaČovjek · odobrava, odbija

    Čovjek vidi objavljeni prijedlog u Slacku.

  5. Čovjek · odobrava, odbijaPokretanje · prosudba: reakcijaMapiranje poruka ↔ zadatakObjava prijedloga

    Reakcija na poruku pronalazi zadatak preko mapiranja. Automatskog odobrenja nema.

  6. Mapiranje poruka ↔ zadatakObjava prijedlogaPokretanje · prosudba: odobri → todoZadatak za izvođenje · todoSustav za praćenje zadataka

    Pri odobrenju šalje se zahtjev da se prijedlog na čekanju prebaci u todo, a mapiranje i obavijest u niti ažuriraju se. Ovaj rukovatelj označava mapiranje kao odobreno bez provjere koda odgovora, pa to nije transakcija koja se zatvara pri neuspjehu.

  7. Mapiranje poruka ↔ zadatakObjava prijedlogaPokretanje · prosudba: odbij → cancelledPrijedlog · backlogSustav za praćenje zadataka

    Pri odbijanju šalje se zahtjev da se isti zadatak prebaci u cancelled. Zadatak je postojao prije odobrenja; odobrenje ga ne stvara.

  8. Zadatak za izvođenje · todoSustav za praćenje zadatakaPokretanje · prosudba: dodjelaDodijeljeni agent

    Dodjela i izvođenje zadatka u todo pripadaju vanjskom sustavu izvođenja. Prebacivanje zadatka u todo ne jamči da je posao počeo.

Zastoj → oporavak → čovjek

Za dodijeljeni zadatak čija je aktivnost stala dodjela se ponovno traži sa zadatkom i odgovornom osobom; kad uzastopni izostanci odgovora dosegnu ograničenje, slučaj prelazi čovjeku.

  1. Dodijeljeni agentOpažanje · izvješće: zapisi izvođenjaNedavna izvođenja · aktivnostPromatranje izvođenja

    Izvođenja dodijeljenog agenta i nedavni signali bilježe se kao opažanja. Aktivnost nije dokaz dovršetka.

  2. Nedavna izvođenja · aktivnostPromatranje izvođenjaOpažanje · izvješće: posljednja aktivnostProvjera zastoja · heartbeatStage reaper

    Reaper gleda samo zadatke koji nisu done, cancelled ni blocked i koji imaju odgovornu osobu te računa starost posljednjeg signala i faze.

  3. Provjera zastoja · heartbeatStage reaperPodaci: bez odgovora +1Izostanci odgovora · po zadatkuStanje izostanaka odgovora

    Uzastopni izostanci odgovora broje se za svaki par agent–zadatak i spremaju u stanje.

  4. Nedavna izvođenja · aktivnostPromatranje izvođenjaOpažanje · izvješće: nova aktivnost → poništavanjeIzostanci odgovora · po zadatkuStanje izostanaka odgovora

    Nova aktivnost poništava brojač.

  5. Provjera zastoja · heartbeatStage reaperPokretanje · prosudba: ponovni pozivZadatak + odgovorna osobaPoziv za oporavak

    Ako je heartbeat prekoračen, a brojač je ispod ograničenja, izvodi se poziv za oporavak.

  6. Zadatak + odgovorna osobaPoziv za oporavakPokretanje · prosudba: zadatak + odgovorna osobaZadatak za izvođenje · todoSustav za praćenje zadataka

    Dodjela se ponovno traži sa zadatkom, dodijeljenim agentom i objašnjavajućim komentarom, a HTTP odgovor se provjerava. Naslijeđeni put umjesto toga koristi jedan poziv za buđenje.

  7. Izostanci odgovora · po zadatkuStanje izostanaka odgovoraNeuspjeh · ograničenje: nakon 3Zaustavljanje ponovnih poziva · cooldownOgraničenje

    Kad uzastopni izostanci odgovora dosegnu ograničenje (zadano 3), ponovni pozivi prestaju. Ograničenje vrijedi samo kad hookovi stanja čitaju i zapisuju brojač, a neuspjelo spremanje može ga oslabiti.

  8. Zaustavljanje ponovnih poziva · cooldownOgraničenjePokretanje · prosudba: ponovna dodjela · obavijestVoditelj · operater

    Ako je moguće, ponovno dodjeljuje voditelju, a in_progress vraća u todo samo kad je ta značajka uključena. Inače ostavlja komentar i obavijest po načelu best-effort, a nakon ograničenja bilježi cooldown.

  9. Provjera zastoja · heartbeatStage reaperOpažanje · izvješće: samo upozorenjeVoditelj · operater

    Kad faza traje predugo, operaterima se ostavlja samo komentar s upozorenjem. Status se ne mijenja automatski.

Sve veze iste debljine. Odaberite tijek kako biste istaknuli samo njegov put s numeriranim koracima.

  • Puna crta · smjer ulaza, rezultata i zapisa
  • Isprekidana crta · pokretanje, prosudba, zahtjev
  • Duga točkasta crta · opažanje i izvješćivanje, odvojeno od prosudbe
  • Kratke crtice · neuspjeh, zaustavljanje, ograničenje
  • Debela crna crta · odabrani tijek; brojevi daju redoslijed
  • Okvir · granica koda ili stanja, imenovana u zaglavlju
  • Unutarnja pločica · komponenta te granice
  • Točkasti okvir · izvan te granice
  • Narančasti obrub · mjesto gdje model odlučuje
  • Poziv agenta · poziv za oporavak
  • Stanje · zapisi
  • Provjera zastoja · ograničenje
  • Prikupljanje · objava

Nacrtano prema privatnim zapisima implementacije i razvoja. Identifikatori tima, zadataka i Slacka te izvorne poruke nisu prikazani; postavljanje, kontejneri i vjerodajnice pripadaju vlasniku izvan ovog dodatka.

Jedno opažanje
Izvješće od April 28, 2026: u ručnoj dijagnozi prije promjene za jedan zadatak koji se nije izvodio 67 sati dodjela je ponovno zatražena sa zadatkom i odgovornom osobom, a novo je izvođenje stavljeno u red unutar 5 sekundi. Dovršetak, prosječno vrijeme oporavka i učinak nakon uvođenja nisu izmjereni.
Ograničenja obrade odobrenja
Za razliku od poziva za oporavak, obrada odobrenja označava mapiranje kao odobreno bez provjere koda odgovora. Ne opisuje se kao atomska transakcija odobrenja ni kao ona koja se zatvara pri neuspjehu.
Kad ograničenje vrijedi
Ograničenje od 3 poziva implementacija je koja vrijedi kad postoje hookovi stanja. Ne jamči točno jednu eskalaciju pri svakom neuspjehu.