Célok
A cél (goal) egy hosszú életű feladat, amelyen az asszisztens a beszélgetésed lezárása után is tovább dolgozik — például minden reggel ellenőriz egy irányítópultot, figyel egy adott típusú változást egy repóban, vagy heteken át vezet egy folyamatos naplót valamiről. Egyszer, egyszerű nyelven állítod be, onnantól a saját ütemezése szerint fut. Ez a Codumentor egyik haladóbb funkciója. A célokat kétféleképpen kezelheted: a webes felület Célok oldalán (Goals), vagy úgy, hogy egy szokásos beszélgetésben megkéred rá az asszisztenst. A legtöbbet mindkét esetben akkor hozod ki belőle, ha érted, mi zajlik a háttérben.
Ez a funkció nem biztos, hogy minden telepítésen elérhető. Ha nem történik semmi, amikor megkéred az asszisztenst egy cél beállítására, lehet, hogy a rendszergazda nem engedélyezte a célokat, vagy nincs beállítva tárolási hely hozzájuk.
Mi is valójában egy cél
Egy cél három dolgot fog össze:
- Egy tudásbázist (KB) — egyszerű markdown- és YAML-fájlok mappáját: a cél leírását (
protocol.md), a haladási jegyzeteit (state.yaml), egy dátumozott eseménynaplót, és egy almappát minden workerhez. - Egy vagy több workert — cron ütemezésű feladatot. Amikor egy worker elindul, a Codumentor egy vadonatúj beszélgetést nyit, amely a KB-ból beolvassa a cél leírását és a worker saját utasításait, elvégzi a munkát, majd visszaírja az eredményt a KB-ba.
- Eszközöket, amelyeket az asszisztens a nevedben hív bármelyik beszélgetésben — cél létrehozásához, megtekintéséhez, szüneteltetéséhez, szerkesztéséhez vagy törléséhez. Ugyanezek a műveletek gombként a Célok oldalon is elérhetők. Egy workerrel sosem csevegsz közvetlenül: a célt az asszisztensen vagy a Célok oldalon keresztül módosítod, és ott üzenetet is hagyhatsz a workereinek.
Mivel a KB csupán fájlokból áll, minden, amit egy cél megtanult vagy létrehozott, emberi szemmel olvasható — te (vagy az asszisztens, ha megkéred rá) közvetlenül megnyithatod és elolvashatod.
Cél létrehozása
Írd le egy normál üzenetben, mit szeretnél, például:
"Állíts be egy célt, amely minden hétköznap reggel ellenőrzi a CI irányítópultunkat, és jelenti a piros buildeket."
Az asszisztens megkérdezi, amire szüksége van — egy nevet, az egyes workerek ismétlődő ütemezését (egy cron kifejezést, amelyet alapértelmezetten UTC időzónában értelmez), és utasításokat minden workerhez —, majd létrehozza a célt. A telepítés beállításaitól függően előfordulhat, hogy előbb megmutat egy javasolt tervet (javasolt workerek és a cél leírásának vázlata), amelyet jóvá kell hagynod, mielőtt bármi ütemezésre kerülne; egyszerűbb beállításnál egy lépésben létrehozza és ütemezi a célt.
Minden workerhez opcionálisan megadható egy szerepkör-címke, egy futásonkénti időkorlát (alapértelmezetten egy óra, legfeljebb hat óráig), egy futásonkénti tokenkeret (lásd lent: Tokenkeretek), egy konkrét modell, amelyen fut, valamint azon subagentek listája, amelyeknek átadhatja a munkát. Ezt nem kell magadnak megadnod — az asszisztens ésszerű alapértékeket használ, és csak akkor kérdez, ha ez számít.
Mi történik egy "tick" (lefutás) alkalmával
Amikor egy worker ütemezése elindul, a Codumentor egy friss, üres beszélgetést nyit neki — ez egy "tick". Ez a beszélgetés:
- Beolvassa a KB-ból a cél megosztott leírását és a saját utasításait.
- Elvégzi, amit az utasítások leírnak — keresést futtat, ellenőriz valamit, jelentést ír.
- Visszaírja az eredményeit a KB-ba (egy outbox bejegyzést, egy frissített állapotfájlt, egy naplósort), hogy a következő tick, egy testvér-worker, vagy az asszisztens elolvashassa, mi történt.
A tickek között semmi sem marad meg azon kívül, amit a KB-ba írtak — egy worker mindig tiszta lappal indul, ez teszi lehetővé, hogy egy cél heteken át felügyelet nélkül fusson anélkül, hogy fölösleg halmozódna fel.
Hol látod
Minden tick egy szokásos, Ütemezett futás címkéjű beszélgetés, de a célfutások alapértelmezés szerint rejtve vannak az oldalsávban, hogy egy sűrűn futó cél ne árassza el a listádat — a Célok oldalán olvashatod őket (az Open transcript bármely beszélgetéshez hasonlóan megnyitja). Ha az oldalsávban is látni szeretnéd őket, válaszd a beszélgetéslista szűrőjében az Összes vagy az Ütemezett lehetőséget, majd a Célfutásokkal kapcsolót; a Célfutások nélkül (vagy egy célfutás menüjében a Célfutások elrejtése) újra elrejti őket.
Az összképhez használd a Célok oldalt (lásd a következő szakaszt), vagy kérdezd meg az asszisztenst, például:
"Listázd a céljaimat."
"Mit talált a CI-figyelő cél ezen a héten?"
Az asszisztens beolvassa a cél definícióját, a haladási jegyzeteit, és az egyes workerek élő állapotát, hogy válaszolhasson.
A Célok oldal
A Célok oldal egy helyen mutatja az összes célodat: mi vár rád, mikor futottak az egyes workerek és mit találtak, és mi van az egyes célok tudásbázisában. A legtöbb mindennapi művelet egy kattintásra van. Az oldal felirata angol nyelvű, ezért alább a gombokat az eredeti nevükön említjük.
Hol találod
- A csevegés fejlécében lévő ◎ Goals jelvény. Ha valami rád vár, figyelmeztető színűre vált, és például ezt mutatja: ◎ Goals · 2 needs you. Keskeny ablakban a fejléc ⋮ menüjébe kerül.
- A kezdőlapon a Goals doboz. Felsorolja az első néhány teendőt, mindegyiknél egy hivatkozással oda, ahol elintézheted. Csak akkor jelenik meg, ha már van legalább egy célod.
- Közvetlenül a
/plugins/goalscímen.
Ha sem a jelvényt, sem a dobozt nem látod, lehet, hogy a célok nincsenek engedélyezve, vagy a hozzáférési profilod nem ad teljes hozzáférést a repókhoz.
Az összes cél
A kezdőoldal két részből áll:
- A Needs you (rád vár) lista csak akkor jelenik meg, ha valóban vár rád valami, és az összes célodból összegyűjti:
- egy worker által jelzett riasztást (alert): az Open megmutatja a futást, az Acknowledge pedig láttamozza, vagyis megjelöli, hogy láttad;
- egy workert, amelynek az utolsó három kiírt tickje egyike sem sikerült (például „digest hasn't succeeded in 22 days”), mert hibával zárultak, kimaradtak, megszakították őket, vagy el sem indultak: az Open worker odavisz hozzá;
- egy állapotellenőrzés megállapítását, például hogy egy haladási fájl túlnőtt a mérethatárán, egy napló túl nagyra nőtt, vagy egy mappában már majdnem annyi bejegyzés van, amennyit egy worker ki tud listázni. Az Ask the goal to fix it megnyitja az üzenetmezőt egy javasolt üzenettel;
- egy worker javaslatát (lásd Javaslatok a workerektől): Review (áttekintés), majd Apply (alkalmazás) vagy Dismiss (elvetés).
- Minden célnak egy sora van. A sor mutatja az állapotot, a cél legutóbbi említésre méltó eredményét (vagy azt, hogy épp melyik worker fut), az elmúlt 14 nap sávját, a workerek számát, az elmúlt 7 nap tokenfelhasználását, és azt, hogy mikor lesz a következő futás. Ha a név mellett egy ◆ és egy szám látszik, az állapotellenőrzés talált valamit, akkor is, ha az állapot Healthy. Ha föléviszed az egeret, felsorolja a problémákat, ha rákattintasz, megnyitja a cél Health panelét. A ⏸ / ▶ gombbal szüneteltetheted vagy folytathatod a célt, a ⋯ menüben pedig ott a Run every worker once, a Fork…, az Export folder és a Delete goal…, anélkül hogy megnyitnád a célt.
A listákban a nevek hivatkozások: egy cél, worker vagy fájl nevére kattintva (a Needs you listában, az eseményfolyamban, a futás panelen vagy a Health panelen) odajutsz. Egy Needs you tételben a health check a cél Health panelét nyitja meg.
Az állapot ezek egyike, ebben a fontossági sorrendben: Paused (szüneteltetve), Failing (egy worker háromszor egymás után hibázott), Needs you (van egy riasztás, amelyet még nem láttamoztál), Stale (elakadt: egy futó workernek az utolsó három ütemezett tickje közül egy sem sikerült — óránkénti workernél ez három óra, hetinél három hét; az ennél újabb, az azóta folytatott, a szüneteltetett és az éppen futó worker nem számít) vagy Healthy (rendben).
A 14 napos sávban minden négyzet egy nap. Egy nap csak akkor piros, ha egy worker hibás állapotban zárta a napot, vagy az aznapi tickek legalább tizede hibával végződött. Különben a legérdekesebb eredményt mutatja: riasztás, azután „írt a tudásbázisba”, végül „semmi új”. Így egyetlen hiba, amelyből a következő tick már helyreállt, nem festi pirosra a napot. Minél erősebb a szín, annál több futás volt aznap, a sáv legforgalmasabb napjához mérve. A csak körvonalas négyzet azt jelenti, hogy aznap nem volt futás.
Egy cél
Egy cél megnyitásakor négy fület látsz:
- Activity (tevékenység). Egy ritmus-idővonal, workerenként egy sávval. A korábbi futások az eredményük szerint vannak színezve, a közelgők üres körök, egy vékony szürke vonal köti össze a futást az általa kiváltott, változásra induló futással, és az elmúlt 24 órát, 7 napot vagy 30 napot nézheted. Alatta az elmúlt három nap eseményfolyama látható. Az említésre méltó futások (riasztások, hibák, általad indított futások, napi vagy heti workerek eredményei) teljes egészükben megjelennek, a rutinfutások pedig egyetlen sorba vannak összecsukva, amelyet kinyithatsz. Itt jelennek meg a saját üzeneteid is, az állapotukkal együtt. A Health panel felsorolja a méret- és hibafigyelmeztetéseket, valamint a cél workereinek javaslatait.
- Workers. Minden worker szövegesen leírt ütemezéssel, a legutóbbi eredményeivel, az utolsó és a következő futásával, valamint a modelljével. Minden sorban van Run now gomb és egy szüneteltető gomb. A New worker új workert ad a célhoz.
- Knowledge (tudásbázis). A cél fájljai, csak olvasásra. Minden fájlnál látod, melyik worker írta utoljára és mikor, egy hivatkozással arra a futásra. A History a fájl összes változását felsorolja, a Blame pedig soronként mutatja, melyik worker (vagy te) írta és mikor — egy sorcsoportra kattintva megnyílik az a futás. Ezek a fájlok a workerekéi: ha azt szeretnéd, hogy a cél mást csináljon, szerkessz egy workert, vagy küldj üzenetet a célnak.
- Setup (beállítás). A cél feladata, a
protocol.md(a leírás, amelyet minden worker elolvas; itt szerkesztheted, és a módosítás a következő ticktől érvényes), a fájlok tárolási helye, a cél időzónája, valamint a cél törlése.
Egy cél oldalain minden időpont a cél időzónájában látszik, abban, amelyben az ütemezései futnak. Ha ez eltér a sajátodtól, az oldal jelzi (például: times in UTC).
Bármelyik futásra kattintva (egy jelre az idővonalon, egy sorra az eseményfolyamban vagy egy futásra egy listában) megnyílik a futás panel. Ez mutatja az eredményt és az összefoglalót, hogy mikor indult a futás, meddig tartott, hány tokent használt (a worker tokenkeretéhez viszonyítva, ha van neki — például 84k / 100k (84 %), mellette a gyorsítótárból kiszolgált tokenekkel; ha föléviszed az egeret, látod a bemeneti és kimeneti tokeneket és a költséget, amely ismert ár nélküli modellnél unknown), mi indította el (az ütemezése, te, vagy egy esemény — ha a worker egy másik worker fájljainak változására fut, akkor azt is, mely fájlok változtak és melyik futás változtatta meg őket, egy kattintásnyira), valamint azt, hogy mit változtatott ez a tick (What this tick changed): a tudásbázisban módosított fájlokat, diffként. Egy csendes tick, amely semmit sem változtatott, ezt ki is írja. A ← és → billentyűkkel lépkedhetsz a futások között. Az Open transcript megnyitja a futás teljes beszélgetését, a még futó tickeknél pedig a Watch live élőben mutatja.
Egy worker
Egy worker nevére kattintva megnyílik a saját oldala. Felül az elmúlt 30 napjának összesítése látható. A naponta többször futó workereknél ez egy napok × órák rács, így a napszakhoz kötött mintázatok is kirajzolódnak. A napi vagy heti workereknél egyetlen sor, naponként egy cellával. Alatta darabszámok, átlagok, és egy diagram arról, meddig tartottak az egyes futások, az időkorláttal szaggatott vonalként. Így még azelőtt látszik, hogy egy worker lassan az időkorlátja felé kúszik, hogy hibázni kezdene. Ha a workernek van tokenkerete, az átlagos tokenszám mellett látszik. Az a futás, amely elköltötte a keretét, Stopped at token budget jelölést kap. Ezután jön a futások listája. Szűrheted Alerts (riasztások), Errors (hibák), Wrote to the KB (írt a tudásbázisba) vagy Run by you (általad indított) szerint, a hosszú „semmi új” szakaszok pedig össze vannak vonva.
Riasztások láttamozása
Egy riasztás addig marad a Needs you listában, és addig tartja a cél állapotát Needs you-n, amíg nem láttamozod. Kattints az Acknowledge gombra a listában vagy a futás panelen. A láttamozás személyes: azt rögzíti, hogy te láttad a riasztást. A célon semmit nem változtat, és másoktól sem rejti el. Vissza is vonhatod (Undo).
Üzenet a célnak
Az Activity fülön a Message the goal mezővel közölhetsz valamit a workerekkel anélkül, hogy az utasításaikat módosítanád, például: „Figyeld a Scale termékoldalát is” vagy „Mostantól hagyd figyelmen kívül a staging buildet”. Címzettként egy workert vagy az összeset (every worker) választhatod. Az üzenet a worker tudásbázisbeli beérkező mappájába (inbox) kerül, és a worker a következő tickje elején elolvassa. Addig az eseményfolyamban a waiting for the next tick (vár a következő tickre) felirat látszik mellette, utána pedig a read by … (elolvasta: …).
Futtatás és szüneteltetés
- A Run now (a Workers fülön vagy egy worker oldalán) azonnal elindít egy ticket, az ütemezéstől függetlenül. Az oldal követi az új futást, és élőben is nézheted.
- A cél ⋯ menüjében a Run every worker once ugyanezt teszi a cél összes workerével.
- A cél fejlécében a Pause / Resume leállítja, illetve újraindítja az összes worker ütemezését. Egyetlen workert a Workers fülön is szüneteltethetsz.
Egy worker szerkesztése
Egy worker oldalán az oldalsó panelen van a definíciója: az ütemezés (egy cron kifejezés, amelyet gépelés közben ellenőriz, szövegesen is kiír, és megmutatja a következő futási időpontokat), a modellszerep, az időkorlát, a tokenkeret (Token budget: legfeljebb ennyi tokent használhat egy futás; legalább 1000; üresen hagyva az adminisztrátor alapértéke érvényes, ami gyakran korlátlan), az utasítások, a subagentek, amelyeket használhat, és az előre betöltendő eszközök. Amint bármelyik mezőt módosítod, a gomb Save changes (változások mentése) lesz. A változások a worker következő tickjétől érvényesek. Ugyanezen az oldalon el is távolíthatod a workert.
Javaslatok a workerektől
Egy worker maga nem módosíthatja a cél workereit, de javasolhat változtatást: például egy felügyelő (overseer) worker, amely észreveszi, hogy egy másik worker óránkénti tickjei sosem találnak újat, javasolhatja, hogy az csak kétóránként fusson. A workerek javasolhatják egy worker ütemezésének, utasításainak, modelljének, időkorlátjának vagy eszközeinek módosítását, egy worker hozzáadását vagy eltávolítását, illetve egy megjegyzés hozzáfűzését a cél leírásához. Minden javaslat egy fájl a cél proposals/ mappájában, és megjelenik a Needs you listában és a cél Health paneljén.
- A Review megmutatja a worker indoklását, és mezőnként azt, hogy mi van most és mi a javaslat.
- Az Apply végrehajtja a változtatást, pontosan úgy, mintha te magad tetted volna (a te neveden rögzül), a javaslatot pedig a
proposals/.applied/mappába teszi. - A Dismiss a
proposals/.dismissed/mappába teszi, anélkül hogy bármit módosítana.
Az a javaslat, amely nem alkalmazható, mert hibás vagy elavult (például az a worker, amelyről szól, már nincs meg), megmondja, miért, és csak a Dismiss lehetőséget kínálja.
Cél létrehozása a varázslóval
Kattints a Célok oldalon a New goal gombra:
- Írd le a kívánt eredményt, ne a lépéseket. Vagy indulj ki egy sablonból: Watch a website for changes (weboldal figyelése), Nightly repository health check (éjszakai repóellenőrzés), Weekly digest of a topic (heti összefoglaló egy témáról) vagy Documentation drift watcher (elavult dokumentáció keresése). A sablon kitölti a leírást (igazítsd a céljaidhoz, például add meg a figyelendő oldalakat vagy a témát), és kész workereket hoz magával. A Don't use a template gombbal visszavonhatod a választást.
- Kattints a Plan it gombra. Ha a rendszergazda bekapcsolta a beállító agentet (setup agent), az átnézi a kódbázist, hogy a tervet ahhoz igazítsa, és közben követheted a lépéseit; a választott sablon a kiindulópontja. Ezután javasol egy workerlistát. A workereket szerkesztheted, újakat adhatsz hozzá vagy törölhetsz közülük, egy előnézet pedig megmutatja, mikor fognak futni a következő napokban. Ha a beállító agent ki van kapcsolva, a sablon workereivel kezdesz (sablon nélkül üres tervvel), és magad igazítod őket.
- Ha szeretnéd, kattints egy worker ▷ Test fire gombjára, hogy az utasításait egyszer, azonnal kipróbáld, még mielőtt a cél létezne. A futás a terv egy eldobható másolatán történik: semmi nem kerül a célba, és semmi nincs ütemezve. A worker sora mutatja, hogy fut-e még és hogyan ért véget, a beszélgetésére mutató hivatkozással és azokkal a fájlokkal, amelyeket írt volna. Amit a worker a cél fájljain kívül tesz, az viszont valódi: ha az utasításai szerint e-mailt küld vagy weboldalt tölt le, a próbafuttatás is megteszi.
- Kattints a Create goal & schedule N workers gombra. A cél létrejön, és az ütemezései elindulnak.
Kérdés egy célról
A cél fejlécében az Ask about this goal új beszélgetést nyit. Az üzenetmező előre ki van töltve, de nincs elküldve: megmondja az asszisztensnek, hogy a cél mely fájljait olvassa el először (a leírását, a haladási jegyzeteit és minden worker legutóbbi outboxát), és hogy csak olvasson, ne módosítson semmit. Írd a kérdésedet a végére, és küldd el.
A módosításaid nyoma
Amit a Célok oldalon vagy az asszisztens megkérésével változtatsz egy célon, az a nevedben kerül a cél előzményei közé, a workerek saját módosításaitól elkülönítve. Így rögzül egy cél létrehozása, egy worker szerkesztése vagy eltávolítása, egy üzenet elküldése, a leírás szerkesztése, egy worker javaslatának alkalmazása vagy elvetése és egy cél törlése is.
Cél- és worker-állapotok
| Állapot | Jelentés |
|---|---|
| Aktív | A cél workerei a normál ütemezésük szerint futnak. |
| Szüneteltetve | A cél összes workere le van állítva — nem fut tick, nem jön létre beszélgetés, amíg fel nem oldod. |
| Törölve (KB megtartva) | A cél workerei véglegesen eltávolítva; a fájljai a lemezen maradnak nyomonkövetési célra, és egy leállító jelzéssel vannak megjelölve, hogy véletlenül se éledjenek újra. |
| Törölve (KB is eldobva) | A cél workerei és a teljes KB mappája is eltávolításra kerül. |
Egy worker saját feladata (task) egymástól függetlenül lehet aktív, szüneteltetett vagy törölt — ugyanazok az állapotok, amelyeket a Codumentor bárhol máshol is használ az ütemezett dolgokra.
Szüneteltetés, folytatás, törlés
Kérd meg az asszisztenst, hogy nevén szüneteltessen vagy folytasson egy célt — ez leállítja vagy újraindítja a workerei tickjeit anélkül, hogy hozzányúlna ahhoz, amit már megírt:
"Szüneteltesd a CI-figyelő célt."
"Folytasd."
A Célok oldalon ugyanezt a cél fejlécében lévő Pause / Resume gombbal teheted meg.
Egy cél törlése erősebb lépés, és alapértelmezetten az ütemezésre nézve végleges, még ha a KB meg is marad:
"Töröld a CI-figyelő célt."
Ez alapértelmezetten megtartja a cél KB-ját a lemezen (így még mindig elolvashatod, mit talált), de leállítottként jelöli meg, így többé nem indulhat el. Kérd meg, hogy a fájlokat is távolítsa el, ha nem akarsz semmit hátrahagyni. A Célok oldalon a Delete goal… a ⋯ menüben (és a Setup fülön) található; a megerősítő ablakban egy jelölőnégyzettel a cél mappáját is törölheted.
Workerek tesztelése és szerkesztése
Mielőtt egy új workerre bíznád az ütemezését, kipróbálhatod a varázslóban (lásd Cél létrehozása a varázslóval), vagy megkérheted az asszisztenst, hogy azonnal indítsa el egyszer, és mutassa meg, mi történt — ez hasznos az utasítások ellenőrzésére az első valódi tick előtt. Azt is kérheted, hogy adjon új workert egy meglévő célhoz, változtassa meg egy worker ütemezését, utasításait, modelljét, időkorlátját vagy tokenkeretét, vagy távolítson el egy workert teljesen, a többi érintése nélkül. Egy worker utasításainak szerkesztése a legközelebbi tickjétől érvényes — semmit nem kell újraütemezni, mert a worker valójában a KB-ból olvas (nem az ütemezésből).
Tokenkeretek. Egy worker tokenkeretébe beleszámít minden, amit a futásai a modellnek küldenek és tőle kapnak, a subagentjeiket és a külső kódoló ágenseket is beleértve, és a szolgáltató gyorsítótárából kiszolgált prompt-tokeneket is. A háttérben futó segédhívások (címadás, összefoglalók, memória-előhívás, biztonsági ellenőrzések, tömörítés) nem számítanak bele. A keretet a lépések között ellenőrzi a rendszer, ezért egy futás legfeljebb egy lépéssel lépheti túl; 80 %-nál a worker utasítást kap, hogy mentse a munkáját és zárja le. Az a futás, amely elköltötte a keretét, sikertelenként rögzül, és az időtúllépéshez hasonlóan beleszámít abba, hogy ismételt hibák után a worker automatikusan kikapcsol. A Run now és a Test fire ugyanazt a keretet használja, mint az ütemezés.
Egy cél tudásbázisának olvasása
Kérd meg az asszisztenst, hogy mutassa meg egy cél fájljait közvetlenül — a leírását, a haladási jegyzeteit, egy worker inboxát vagy outboxát —, és elolvassa neked. Ez a legmegbízhatóbb módja annak, hogy megértsd, mit is csinált valójában egy hosszan futó cél, mivel egy worker saját összefoglalói tömörek lehetnek.
Inkább kérd meg az asszisztenst, hogy olvassa el vagy foglalja össze a KB-t, ahelyett hogy általános célú fájlszerkesztő eszközökkel nyittatnál meg cél-fájlokat. A tudásbázis egy külön, tartósan megosztott helyen van, elkülönítve egy worker saját homokozójától, és a rossz "ajtón" keresztül végzett szerkesztések csendben elveszhetnek ahelyett, hogy eljutnának a célhoz.
Egy cél áthelyezése, visszaállítása vagy másolása
Egy cél KB mappája máshová vihető — biztonsági mentés céljából, vagy egy másik Codumentor-példányra való átköltöztetéshez —, majd ott újraregisztrálható:
- A cél ⋯ menüjének Export folder pontja zip-fájlként letölti a mappát (a git-előzmények és a leállító jelölő nélkül). A másik példányon kattints a Célok oldal Import gombjára, és válaszd az Upload an export (.zip) lehetőséget. Ott még nem létezhet azonos nevű mappa.
- Vagy másold a mappát magad a tudásbázis goals mappájába, majd használd az Import → A folder already copied in lehetőséget (add meg a mappa nevét), vagy kérd meg az asszisztenst, hogy importálja.
Az importált cél mindkét esetben a tiéd lesz, a workerei pedig újra ütemezésre kerülnek.
A ⋯ menü Fork… pontja ugyanazon a példányon készít másolatot: egy új, saját célt ugyanazokkal a workerekkel és protokollal, új azonosítóval (javaslat: a régi, -copy végződéssel). Ha bejelölöd az Also copy the knowledge lehetőséget, az állapot, valamint a workerek outboxai és mappái is átkerülnek; a futási előzmények és az üzenetek az eredetinél maradnak. A másolat szüneteltetve indul, hogy ne fusson az eredetivel párhuzamosan — igazítsd, amit kell, aztán folytasd. Ez egy haladó, alkalmi művelet; a legtöbb cél a helyén jön létre, fut, majd végül törlődik, anélkül hogy valaha is szükség lenne erre.
Megjegyzés a célközönségről
A célok azoknak szólnak, akik szívesen bíznak rá egy nyitott végű, ismétlődő munkát, és később néznek rá vissza, nem egy gyors, egyszeri kérdésre. Egy cél jó beállítása — világos leírás, ésszerű ütemezés, olyan workerek, amelyek tudják, mit jelent a "kész" egyetlen tickre nézve — ugyanolyan gondosságot igényel, mint amilyet egy ismétlődő feladatot átvevő embertársad eligazításába fektetnél.