Tracy 2.12: podpora pro AI agenty (Claude Code, Chrome MCP a spol.)

- David Grudl
- Nette Core | 8310
Dokončuju Tracy 2.12 a než to vypustím jako stable, potřebuju, abyste to vyzkoušeli. Hlavní téma téhle verze je jedno: Tracy se naučila mluvit s AI agenty.
Dva scénáře, kde to dává smysl
1. 🛠️ Vývoj s agentem + Chrome MCP. Agent si otevře
vaši aplikaci v Chromu ovládaném přes MCP a má k dispozici markdown
BlueScreen se stack tracem, dumpy a vším, co Tracy normálně ukazuje v UI.
Tracy pozná, že na druhé straně sedí agent, podle
navigator.webdriver === true. Týká se to klientů, kteří
řídí skutečný prohlížeč: Chrome MCP, Playwright, Puppeteer a spol.
V takovém případě k běžnému výstupu přidává strukturovaný markdown
do JS konzole, takže agent si ho jednoduše z ní přečte a nemusí parsovat
BlueScreen nebo Tracy Bar, ani hádat, co se v aplikaci děje.
2. 📂 Dávková oprava produkčních chyb. Tracy
v produkci loguje výjimky do log/exception-*.html a nově i jako
.md sourozence. Vezmete složku s těmi markdowny, předáte ji
agentovi s pokynem „projdi tyhle reporty a oprav, co najdeš“ a on
postupně jede jeden po druhém: přečte výjimku, porovná ji s aktuálním
stavem kódu, seskupí související chyby, navrhne plán oprav, vy ho
odkývnete a on je provede. Místo stovek obřích HTML souborů k ručnímu
louskání se ze složky chybových hlášení stává vstup pro jednu
dávkovou akci.
Co konkrétně se změnilo
- BlueScreen při výjimce přibalí k HTML i markdown
verzi (výjimku, stack trace, dumpy proměnných) a vypíše je přes
console.error(). Funguje to pro synchronní render i pro AJAX. - Logované výjimky v produkci mají vedle
log/exception-*.htmli.mdsourozence. - Tracy Bar se do konzole vypíše přes
console.log(), s vlastními markdown šablonami pro panely Warnings a Dumps. - Debugger::dump() si svůj výpis do
console.log()posílá taky, takže dumpy neskončí pohřbené v HTML. - Produkční chybová stránka (obecné 500) dá přes
console.error()agentovi vědět, že nastala chyba 500 a že detaily jsou zalogované na serveru, místo aby agent viděl jen prázdnou obecnou hlášku.
Skill pro Claude Code – aby věděl, co s tím
Tracy sice pošle do konzole markdown, ale Claude Code sám od sebe neví,
že ho tam má hledat, ani jak mu rozumět. Od toho je skill
tracy-debugging – návod psaný přímo pro něj. Říká mu: po
Chrome MCP requestu sáhni po list_console_messages(), tam najdeš
Tracy Bar a BlueScreen v markdownu, takhle vypadá SQL panel, takhle stack
trace, takhle se čtou dumpy. Bez skillu by Claude Tracy výstup přehlédl nebo
ho nedokázal správně interpretovat.
Skill je součástí oficiálního Nette pluginu pro Claude Code:
/plugin marketplace add nette/claude-code
/plugin install nette@nette
Instalace Tracy
Nainstalujte si dev verzi větve v2.12:
composer require "tracy/tracy:v2.12.x-dev"
Otestujte to prosím, hlavně ti, kdo jedete Claude Code s Chrome MCP nebo Playwright/Puppeteer s AI agenty. Zajímá mě, jestli výstupy dávají smysl a jestli agent z toho, co mu Tracy pošle, najde, co potřebuje. Je to nová cesta a rád bych ji dotáhl do stavu, kdy bude opravdu užitečná. 🚀
Díky!

- SamuelThorn
- Člen | 43
Jedu sice v Codexu, ale to asi ničemu nevadí.
Bohužel tohle…
composer require "tracy/tracy:dev-v2.12@dev"
…mi tvrdilo, že balíček neexistuje. Použil jsem tedy…
composer require tracy/tracy:"v2.12.x-dev"
… a to se nainstalovalo. Je to to samé?
Při chybě se vytvořil HTML i MD soubor. Ten MD soubor jsem předhodil Codexu, on se v tom zorientoval a chybu opravil. Na konzoli v debug modu byla jen hláška o 500 Error, nic víc. Ale nebylo to puštěné na localhostu, tak nevím, jestli to nemohlo být tím.
Editoval SamuelThorn (24. 4. 16:43)

- SamuelThorn
- Člen | 43
@DavidGrudl ano. Nasimuloval jsem chybu „Deprecated – Creation of
dynamic property…“. Na obrazovce koukám na Tracy Bluescreen, dole vidím
Tracy a v konzoli Chrome vidím:
GET http://localhost:8000/admin/ 500 (Internal Server Error). Jsem
na Windows.

- SamuelThorn
- Člen | 43
Ne, měl jsem to spuštěné mimo. Nedošlo mi to.
Teď jsem to zkusil spustit na Claude. Nasimuloval jsem mu stejnou chybu a požádal ho, ať otevře Chrome a řekne mi, co vidí v konzoli. Otevřel si Chrome a viděl už kompletní výpis z Tracy, identifikoval problém a nabídl řešení. Takže mohu potvrdit, že to funguje.