Subscribe Now
Trending News
Tools

Agent Code Intel učí AI agenty číst kód po vrstvách

Agent Code Intel učí AI agenty číst kód po vrstvách

Agent Code Intel od Eduarda Tomáška není další vyhledávač zdrojového kódu. Je to lokální správce celé sestavy: zapojí sémantické hledání GrepAI, graf GitNexusu, přesné příkazové nástroje a instrukce, podle nichž si Claude Code nebo Codex vybírá správnou vrstvu. Aktuální stabilní vydání 6.2.0 vyšlo 14. září 2026 a projekt nově používá licenci MIT.

Tohle rozlišení je důležité. Nástroj sám neodpovídá na otázku „kde se ověřuje heslo“ ani nekreslí graf volání. Připraví služby, konfiguraci MCP, projektové skilly a kontrolu jejich stavu tak, aby agent nemusel začínat každou práci slepým prohledáváním adresáře. README projektu proto popisuje spíš správu code-intelligence stacku než jeden nový algoritmus.

Jedna otázka, několik různých nástrojů

Základní myšlenka je praktická: dotaz podle významu, vztah mezi symboly a úplný seznam textových výskytů jsou tři různé úlohy. Univerzální hledání je obvykle řeší všechny trochu špatně. Agent Code Intel místo něj skládá specializované vrstvy.

Vrstva Kdy ji agent použije Co z ní dostane
GrepAI Zná chování, ale ne název souboru či symbolu Sémantické výsledky podle významu dotazu
GitNexus Potřebuje architekturu, volající funkce, tok programu nebo dopad změny Graf symbolů a vztahů, kontext a analýzu dopadu
rg Zná přesný identifikátor, klíč konfigurace nebo text chyby Úplný seznam textových shod a závěrečné ověření
Universal Ctags / ast-grep Potřebuje přečíst jednu definici bez zbytku dlouhého souboru Odvozený rozsah symbolu nebo syntaktickou shodu
fd, rga, tokei, scc Třídí soubory, hledá v archivech nebo se orientuje v cizím repozitáři Výběr podle vlastností, extrahovaný obsah, jazyky a složitost

GrepAI průběžně sleduje soubory a hledá podle významu. V sestavě připravené Agent Code Intel ukládá vektory do Qdrantu a vytváří je lokálně přes Ollamu. GrepAI dnes podporuje i jiné poskytovatele embeddingů a PostgreSQL s pgvector; zde je podstatná konkrétní sestava, kterou správce vytvoří pro každý projekt. Její výhodou je lokální index a jednotné pracovní prostředí, nevýhodou další běžící služba a vektorová databáze.

GitNexus řeší jiný řez. Při analýze staví znalostní graf a přes MCP nebo CLI zpřístupňuje například kontext symbolu, dopad změny či cestu mezi dvěma symboly. Routing skill přitom graf nepovažuje za úplný registr referencí. Pro otázku „kde všude se volá tahle funkce“ předepisuje rg nebo ast-grep; graf patří k architektuře a vztahům.

Právě tady je Agent Code Intel konkrétnější než obvyklá rada „použij sémantické hledání“. Spravovaný skill agent-code-intel-routing volí GrepAI pro hledání záměru, GitNexus pro vazby a rg pro přesný text. Druhý skill, code-context, hlídá následující krok: agent má nejdřív zjistit velikost souboru a u delších souborů odvodit hranice definice. Nemá otevřít náhodné okno dvaceti řádků kolem shody a doufat, že v něm funkce končí.

Od nalezení chování k ověřené změně

Typický průchod může vypadat takto. Agent dostane úkol upravit přihlašování, ale nezná názvy funkcí. GrepAI najde kandidátní implementaci podle popisu. GitNexus ukáže volající symboly a části toku, které změna zasáhne. code-context odvodí přesný rozsah definice přes ctags nebo ast-grep; agent teprve potom čte kód. Po úpravě spustí testy a pomocí rg zkontroluje, že v repozitáři nezůstala stará volání.

Vyhledávací výsledek ani graf nejsou důkazem o chování programu. Oba spravované skilly výslovně požadují přečíst nalezenou implementaci. Tohle pravidlo působí banálně, jenže právě zkrácený kontext bývá zdrojem sebejistých omylů: agent vidí jméno nebo docstring a nedočte se k podmínce o čtyřicet řádků níž.

Nástroj navíc nepředstírá, že všechny jazyky vracejí stejně přesné rozsahy. Jeho měření uvádí přesné konce z Universal Ctags u Pythonu, zatímco u TypeScriptu, PHP, JavaScriptu a shellu doporučuje syntaktická pravidla ast-grep. U neověřeného jazyka má agent výsledek nejprve zkontrolovat, ne přenést zkušenost z Pythonu. Provozní drobnost, ale cenná.

--apply mění projekt, preview ukáže plán

Instalace míří na macOS. Dokumentace verze 6.2.0 vyžaduje Python 3.11 nebo novější, Node.js alespoň 24.11.0, kontejnerový runtime, Ollamu, GrepAI a GitNexus. Doporučený postup používá OrbStack; implementace rozpoznává také Docker, Podman a nerdctl. Autor odhaduje asi 20 minut a 5 GB místa; jde o údaj z dokumentace, ne naše měření.

git clone https://github.com/eduardtomasek/agent-code-intel.git ~/src/agent-code-intel
cd ~/src/agent-code-intel
python3 ./agent-code-intel --install
agent-code-intel --install-deps

cd /cesta/k/projektu
agent-code-intel --agent both --apply

Samotný agent-code-intel bez režimového přepínače pouze vypíše plán a nic nezapíše. --install uloží launcher, Pythonový balík a dashboard do uživatelských adresářů. --install-deps prověří devět externích nástrojů a u dostupných balíčků na macOS nabídne Homebrew; GrepAI a GitNexus mají vlastní instalační příkazy. Teprve --apply zasáhne otevřený projekt. Zásah není malý. Vytvoří konfiguraci GrepAI, .mcp.json, identifikační soubor .code-intel, bloky v AGENTS.md či CLAUDE.md, oba spravované skilly a volitelně SessionStart hooky. Podle volby --agent claude, codex nebo both zapisuje jen artefakty potřebného klienta. Opakovaný běh je idempotentní: vlastní nezměněný obsah nechá být, změněnou spravovanou kopii opraví a cizí skill stejného jména bez --force-docs nepřevezme.

Kdo nechce projektový hook nebo zásah do dokumentace, může použít --no-hook či --no-docs. Instalátor lze spustit také s --no-perms, aby neměnil ~/.claude/settings.json. Preview dává těmto pojistkám smysl: před prvním ostrým během je vidět, do kterých souborů nástroj sáhne.

Projekt si pamatuje, kterému agentovi slouží

Od verze 6 zapisuje --apply do .code-intel schéma 2 a volbu klienta:

SCHEMA=2
WORKSPACE=muj-projekt
PROJECT=muj-projekt
AGENTS=both

Příkazy --status, --refresh a --remove pak nemusí pokaždé dostat --agent. Přečtou hodnotu z projektu. Výslovný přepínač má přednost a zároveň slouží ke změně uložené volby. Staré soubory se schématem 1 nástroj dál přijímá, ale opačná kompatibilita neplatí: verze před šestkou schéma 2 odmítne.

U Codexu zbývá jeden háček. Existence .codex/hooks.json nepotvrzuje, že hook běží. Projektová vrstva .codex/ musí být označená za důvěryhodnou, hooky nesmějí být vypnuté v uživatelské konfiguraci a uživatel musí definici schválit přes /hooks. --status umí ověřit soubor, nikoli stav tohoto schválení.

Vydání 6.2.0 opravilo i případ, kdy CLAUDE.md odkazuje symlinkem na AGENTS.md nebo obráceně. Sdílený soubor nyní dostane spravovaný blok jen jednou. Stejné vydání přidalo licenci MIT a převedlo dokumentaci do angličtiny; funkce ani příkazy se tím nezměnily. Podrobnosti shrnují poznámky k vydání 6.2.0.

Refresh, status a dashboard neřeší totéž

agent-code-intel --refresh spustí chybějící watcher GrepAI, dožene vektorový index a přepočítá GitNexus. --status nic neindexuje; porovná očekávanou konfiguraci se stavem projektu. Pro všechny zaregistrované projekty slouží --status --all.

Strojově čitelná varianta má jednu past: --status --json vrací kód 0 i při nalezené závadě. Automatizace musí číst pole ok a od verze 6.1 také seznam drift, nikoli spoléhat na návratový kód. Obyčejný --status používá kód 2 pro drift.

Dashboard code-intel-dash kontroluje provozní vrstvu, kterou statický status záměrně neřeší. Zkouší HTTP i gRPC port Qdrantu, pošle Ollamě zkušební text a ověří vrácený embedding, sleduje počet vektorů a porovnává spuštěný MCP server s instalovaným GitNexusem. Umí také otevřít výsledky sémantického hledání a ukázat, které soubory se do indexu dostaly.

Za nejpřesvědčivější část považuji právě oddělení konfigurace od provozu: zelený soubor není důkaz, že index vrací čerstvá data.

Verze 6.1 přidala pozastavení watcheru a „odložení“ projektu z registru bez smazání indexů. To je jiná operace než --remove, který projekt odpojí. Zároveň opravila lokální webové rozhraní dashboardu proti DNS rebindingu a omezila čtení i zápisy kontrolou hostitele a původu požadavku. Changelog popisuje i zamykání registru při souběžných změnách.

Lokální index neznamená automaticky soukromý celý tok

GrepAI s Ollamou, Qdrantem a lokálním GitNexusem mohou zpracovat repozitář bez odeslání indexu cizí službě. Hranice soukromí ale končí u těchto komponent. Pokud výsledný úsek kódu čte cloudový coding agent, řídí se další přenos podmínkami jeho poskytovatele. Tvrzení „lokální stack“ proto není totéž jako „žádný kód za všech okolností neopustí počítač“.

Další cena je provozní. Po restartu Macu se GrepAI watcher sám nevrátí, dokud ho nespustí --refresh; sémantické hledání přitom může dál odpovídat ze starého indexu. GitNexus se průběžně neaktualizuje a jeho graf vzniká znovu při refreshi. K tomu připočtěte Qdrant, Ollamu, Node.js a několik doporučených CLI nástrojů. Pro malý repozitář může být taková sestava zbytečně těžká.

Agent Code Intel dává největší smysl vývojáři, který používá Claude Code, Codex nebo oba klienty na větších repozitářích a chce mít jejich vyhledávací návyky verzované spolu s projektem. Bez vlastního srovnávacího testu nelze tvrdit, kolik tokenů či času ušetří. Z dokumentace a kódu je však dobře vidět jeho skutečný přínos: neprodává další index, ale drží několik rozdílných indexů, příkazů a bezpečnostních brzd v jednom opakovatelném provozním postupu.

Zdroje:

Related posts