Agent skill · nousresearch
inspecting-hermes-desktop-dom
Read the live Hermes desktop DOM/CSS over CDP.
What it needs
About 3k tokens when loaded.
What this skill does
Inspecting the live Hermes desktop DOM Overview When you are developing apps/desktop and the user is running that same app (hgui / pnpm run dev), you can read the live rendered DOM of the window they are looking at — computed styles, geometry, which CSS rule actually won, console output — instead of inferring it from .tsx and being wrong. Dev-server runs open a Chrome DevTools Protocol port on 127.0.0.1:9222 automatically. The renderer is a Chromium page, so everything DevTools can read, a script can read. This does not replace looking at it. CDP answers factual questions ("what is the computed padding", "did this element render", "which selector matches"). It cannot tell you whether the result looks good. Colour balance, spacing feel, and "is this ugly" still need the user's eyes or a screenshot. Answer facts with CDP; hand aesthetics to the user. When to Use Verifying a UI change actually took effect in the running app "Why is this element still X?" — find the winning rule before editing anything Locating a stable selector for a component you're about to change Checking a design token's computed value on a real node Reading renderer console errors the user mentions but can't copy out Don't use for: perf profiling or heap work (node-inspect-debugger, debugging-hermes-desktop), or anything where the real question is "does this look right". The port Open on 127.0.0.1:9222 for any dev-server run. Closed in exactly two cases (apps/desktop/electron/dev-cdp.ts): packaged builds — always, and no environment value overrides it; no HERMESDESKTOPDEVSERVER — an unpackaged electron . against dist/ is how the packaged app gets smoke tested, so it behaves like one. HERMESDESKTOPCDPPORT moves the port (=9333) or disables it (=off). Check before doing anything else: Empty → no port. Do not guess another port silently. Never relaunch the user's app to get a port. That destroys their session and their state. Launch your own isolated instance instead (below). …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills nousresearch/inspecting-hermes-desktop-dom--f1f7a1