Google spustil Code Wiki, službu která z veřejných repozitářů automaticky vytváří průběžně aktualizovanou dokumentaci. Místo ručně psaných wiki stránek nebo dlouhého procházení zdrojáků projekt analyzuje Gemini a generuje popisy architektury, modulů, tříd i vztahů mezi nimi. Výsledkem není jen souhrn README souboru, ale interaktivní dokumentace propojená přímo s konkrétními částmi kódu.
Za projektem stojí Google Cloud a Google Research. Na produktu pracovali mimo jiné Fergus Hurley, Pedro Rodriguez, Rafael Marques a Omar Shams. Google službu představil jako odpověď na problém, který řeší téměř každý větší tým: dokumentace zastarává rychleji než samotný kód a onboarding do cizího projektu často zabere dny.
Code Wiki funguje nad celým repozitářem. Systém průběžně prochází zdrojové soubory, skládá jejich vztahy do hierarchické struktury a generuje vysvětlení od vysoké úrovně až po jednotlivé funkce. Součástí jsou i automaticky vytvářené diagramy architektury, sekvenční diagramy nebo mapy závislostí. Dokumentace se po změnách v repozitáři znovu přegeneruje, takže není potřeba ruční údržba.
Google zároveň přidal integrovaný chat postavený nad vygenerovanou znalostní vrstvou. Vývojář se tak může ptát na konkrétní části projektu podobně jako u AI asistenta, ale model pracuje s aktuálním kontextem celého repozitáře. Odpovědi obsahují odkazy na konkrétní soubory, třídy nebo metody.
Služba aktuálně funguje hlavně nad veřejnými GitHub repozitáři. Google zároveň připravuje rozšíření pro Gemini CLI, které má umožnit provoz nad interními firemními repozitáři. Cíl je hlavně zrychlit orientaci v rozsáhlých legacy projektech, kde často chybí původní autoři i aktuální dokumentace.
Podobný problém řeší i akademický projekt CodeWiki publikovaný na arXivu. Autoři v něm popisují systém pro generování dokumentace nad celými repozitáři v několika programovacích jazycích. Zaměřují se hlavně na zachování architektonického kontextu a vztahů mezi moduly, což bývá slabina běžných AI nástrojů generujících dokumentaci jen po jednotlivých funkcích.
Google staví Code Wiki hlavně jako nástroj pro pochopení cizího kódu. Místo hledání v desítkách souborů nebo zastaralých Confluence stránek může nový vývojář během několika minut získat přehled o struktuře projektu, datových tocích i hlavních komponentách.
Zdroje: