Ügynökök párhuzamos futtatása
Ez az útmutató bemutatja, hogyan futtathat egyszerre több ügynököt anélkül, hogy felülírnák egymás munkáját.
Az elszigetelés egysége a tér, nem az ügynök
Szekció neve “Az elszigetelés egysége a tér, nem az ügynök”Amikor egy térben munka indul, a Control Center regisztrált repónként egy copy-on-write checkoutot hoz létre a tér saját gyökere alatt, a munkaterület ágsablonjából származtatott ágon. A tér minden ügynöke ezután saját overlay-munkakönyvtárat kap — az overlayek azonban megosztják a tér repos/ könyvtárát.
Tehát:
- Két ügynök különböző térben különböző checkoutokban, különböző ágakon dolgozik. Ez valódi elszigetelés.
- Két ügynök ugyanabban a térben ugyanabban a checkoutban, ugyanazon az ágon dolgozik. Az overlayek útvonalai eltérnek, így az indítási útvonalzár (amely csak akkor sorosítja a futtatásokat, amikor azonos munkakönyvtárat kérnek) sem sorosítja őket. Egyszerre írhatják ugyanazokat a fájlokat.
Ebből az a szabály következik: egy párhuzamos feladathoz egy tér.
Feladatok párhuzamos futtatása — külön terek
Szekció neve “Feladatok párhuzamos futtatása — külön terek”- Nyisson egy teret az A ügynökkel, és küldjön neki egy feladatot.
- Nyisson egy második teret a B ügynökkel, és küldjön neki egy másik feladatot.
- Mindkettő azonnal elindul, mindegyik a saját terének checkoutjában, a saját ágán.
Ezt a receptet használja, amikor az ügynökök fájlokat fognak szerkeszteni.
Közös munka egy térben — több említés
Szekció neve “Közös munka egy térben — több említés”Egyetlen térben említsen meg egynél több ügynököt @-jelöléssel:
@alice refactor the auth module. @bob review what alice lands.Mindkét ügynök párhuzamosan indul, és ugyanabba a térbe streamel, feladó szerint megjelölve. Mivel megosztják a tér checkoutját, ezt együttműködésre használja — az egyik ír, a másik olvas, vagy két ügynök ugyanarról a fáról gondolkodik —, nem két független szerkesztésre.
Szétágazás pipeline-ból
Szekció neve “Szétágazás pipeline-ból”A beépített pr_review sablon a szétágazás szállított példája: több átnéző csomópont fut egyidejűleg egyetlen triggerből, és egy Consolidate (join) csomópont egyetlen jelentésbe vonja össze a megállapításaikat. Futtassa a pipeline-ok képernyőjéről, és minden átnéző párhuzamosan indul el.
A pipeline-szerkesztő elrejti a terminális őrszemet, és úgy köti át, hogy minden élő nyelőre várjon, amikor hozzáad vagy összeköt egy lépést, így a saját maga által rajzolt ágak is lefutnak.
Nézze, ahogy futnak
Szekció neve “Nézze, ahogy futnak”A Megfigyelhetőség → Élő (oldalsáv lábléce → Megfigyelhetőség, majd az Élő lap) a munkaterület ügynöknévsorát mutatja, másodpercenként frissülve: állapot (fut / tétlen / parkolva / megszakítva), hogy éppen mit tesz az egyes ügynök, a legutóbbi futtatásához tartozó tokenek és költség, valamint egy leállításvezérlő egy futó folyamathoz. Egy sor kijelölése dokkolja az élő átiratfiókot.
A Beállítások → Munkaterület → Ügynökök ugyanezt a névsort mutatja egy másik, figyelemközpontú állapotszókészlettel, amely az egyes ügynökök futtatási előzményeiből származik — fut, blokkolva, sikertelen, tétlen, még nem futott —, úgy rendezve, hogy minden figyelmet igénylő elem a tetejére kerüljön. Minden ügynök Naplók lapja a saját futtatási előzményeit tartalmazza.
Mindkét felület az aktív munkaterületre korlátozódik.
Konfliktusok kezelése
Szekció neve “Konfliktusok kezelése”A tereken át nézve minden tér a saját ágán van, így az ütközés közönséges Git merge-konfliktusként jelenik meg, amikor egyesíti a második pull requestet. Ugyanúgy oldja fel, ahogy bármely más merge-konfliktust feloldaná.
Egy térben belül nincs ághatár és nincs zár: az ügynökök élőben ugyanazokat a fájlokat írják, és a vesztes egyszerűen felülíródik. Ha azon kapja magát, hogy két ügynök szerkesszen egy térben, ossza inkább két térre a munkát.
Az ütközések csökkentésére mindkét esetben:
- Adjon minden ügynöknek külön hatókört — más fájlokat, más modulokat.
- A kódgráf segítségével ellenőrizze, mit érint egy módosítás, mielőtt elindítja. Lásd: Kód keresése a kódgráffal.
- Nézze át és egyesítse haladéktalanul minden ügynök pull requestjét.
Erőforrás-megfontolások
Szekció neve “Erőforrás-megfontolások”Minden futó ügynök a következőkkel jár:
- Egy tér checkoutja — elhanyagolható lemezterületen, amíg a copy-on-write elérhető; Windowson egy
git worktree. Az a fájlrendszer, amely nem tud reflinket, a létrehozást hiúsítja meg a másolás helyett. - Egy folyamat a szerver hosztján
- Modelltokenek, amelyek ügynökönként halmozódnak
A költségek a Megfigyelhetőség → Betekintések alatt jelennek meg. Vegye figyelembe, hogy egy szokásos interaktív körnek nincs költési korlátja; arról a két parancsról, amelyeknek van, a Költségek kezelése oldalon olvashat.
Kapcsolódó útmutatók
Szekció neve “Kapcsolódó útmutatók”- Ügynök létrehozása és konfigurálása
- Ügynökcsapat felépítése
- Költségek kezelése
- Repók hozzáadása munkaterülethez