A Sourcegraph ügynöke egyszerre több ezer kódtárban végezhet módosításokat

A Sourcegraph elérhetővé tette az Agentic Batch Changes eszközt, amely egyetlen leírás alapján tervez és hajt végre kódmódosításokat akár több ezer kódtárban. A rendszer a különböző tárolókhoz igazítja a változtatást, kezeli a CI hibáit, majd követi a pull requestek állapotát.
- A Sourcegraph elindította az Agentic Batch Changes szolgáltatást.
- A rendszer természetes nyelvű leírás alapján módosíthat több ezer kódtárat.
- A megoldás szkripteket és kódoló ügynököket is használ a feladattól függően.
- A béta alatt közel ezer változtatáskészletet egyesítettek az ügyfelek.
- Az árazás az egyesített változtatáskészletek számához kötődik.
Egy leírásból összehangolt módosítások
A Sourcegraph szeptember 14-én mutatta be az Agentic Batch Changes szolgáltatást. A vállalat szerint a megoldás olyan, nagy léptékű feladatokra készült, mint egy .NET-frissítés tízezer tárolóban, egy elavult programozási felület lecserélése vagy a CI-beállítások egységesítése.
Az ilyen változtatások egyetlen kódtárban általában kezelhetők, több száz vagy több ezer, egymástól eltérő tárolóban viszont a mindenhol működő javítás elkészítése jóval nehezebb. A Sourcegraph korábbi Batch Changes rendszere programozott változtatásokat futtatott le a teljes kódbázison, pull requesteket nyitott, majd követte azok egyesítését. Az ügyfelek ezen keresztül több százezer változtatáskészletet és több tízmillió kódsort kezeltek. A cég által látott legnagyobb egyetlen Batch Change több mint 2200 változtatáskészlet egyesítését eredményezte.
A rendszer eldönti, mikor kell ügynök
Az Agentic Batch Changes a Batch Changes és a komplex kódbázisok megértésére szolgáló Deep Search technológiájára épül. A felhasználó természetes nyelven írja le a kívánt módosítást, a rendszer pedig feltérképezi az indexelt kódbázist, tervet készít, egy tárolóban kipróbálja a változtatást, majd elindítja a szélesebb körű végrehajtást.
A különböző felépítésű tárolókhoz alkalmazkodik, és ha egy módosítás miatt meghiúsul a CI, reagál a hibára. A pull requestek addig készülnek, amíg emberi ellenőrzésre és egyesítésre alkalmasak nem lesznek. A felhasználó közben látja a létrejövő diffeket, bármikor közbeavatkozhat, és az egyesítési állapotokat egy helyről követheti.
A Sourcegraph közlése szerint a rendszer a tervezés egyes részeinél eldönti, hogy kódoló ügynökre vagy egyszerű szkriptre van szükség. Többnyire szkriptet ír, mivel a nagy migrációk jelentős része ugyanannak a változtatásnak az ismételt végrehajtása. Összetettebb esetekben kódoló ügynököt használ, konkrét utasításokkal és a kódbázis kontextusával.
Biztonsági javításokra és migrációkra is használták
A bétaidőszakban az ügyfelek közel ezer, az Agentic Batch Changes által létrehozott változtatáskészletet egyesítettek. A feladatok között biztonsági javítások és könyvtármigrációk is szerepeltek.
A japán Mercari piactér egy GitHub Actions környezeti változóinak befecskendezésével kapcsolatos sérülékenység javítására használta a szolgáltatást. Patrick Klitzke, a Mercari csapatvezetője szerint egyetlen prompttal javították a problémát a Help Center frontendjén és backendjén, majd a módosítást a vállalat összes tárolójára kiterjesztették. Mintegy 80 érintett tárolót azonosítottak.
A Canvánál könyvtármigrációhoz használták az eszközt. A vállalat több mint 50 pull requestet nyitott és egyesített, miközben azok állapotát egyetlen felületen követte. A Sourcegraph további felhasználási példaként említi a függőségfrissítéseket, az elavult API-k cseréjét, a keretrendszerek bevezetését, a CI-folyamatok korszerűsítését és az életciklusuk végére érő technológiák leváltását.
A díj az egyesített változtatásokhoz kötődik
Az Agentic Batch Changes indulásával a Sourcegraph eredményalapú árazást vezet be. Az ügyfelek az egyesített változtatáskészletek után fizetnek, nem tokenek, felhasználói helyek vagy próbálkozások alapján. Ha egy pull requestet a csapat nem egyesít, azért nem kell fizetni.
A szolgáltatás a Sourcegraph Cloud ügyfelei számára már elérhető, alapértelmezés szerint bekapcsolva. A vállalat szerint az eszköz azt célozza, hogy egy mérnök egyetlen helyről indítson és kövessen kódmódosításokat a szervezet teljes kódbázisában, miközben a végső ellenőrzés és egyesítés továbbra is emberi feladat marad.


