hermes-agent/apps/desktop/scripts
Brooklyn Nicholson 070093a318 feat(desktop): on by default for dev-server runs
Gating this behind an opt-in was the wrong call. A dev server already
executes arbitrary local JS — vite's module graph, every postinstall in
node_modules — so a loopback debugging port does not meaningfully widen
what a `npm run dev` session can already do, and `perf:serve` has opened
one unconditionally all along.

Requiring the variable also defeated the point: the tooling exists to be
reached for mid-task, and a capability you must remember to enable before
launching is one you don't have when you need it.

So the port opens on 9222 — the same port scripts/eval.mjs and
scripts/perf/lib/cdp.mjs already default to — for any dev-server run.
HERMES_DESKTOP_CDP_PORT stops being an on-switch and becomes an
override: a different port, or `off` to disable.

The hard gate is unchanged and still checked first: a packaged build
never opens the port, and no env value talks it into it. Neither does an
unpackaged `electron .` against dist/, which is how the packaged app
gets smoke tested.

Refusals only log when they contradict something the developer asked for
(a typo'd port, an explicit `off`). Packaged and dist runs are closed by
design and stay quiet.
2026-07-27 23:52:33 -05:00
..
perf
.gitignore
after-pack.mjs
assert-dist-built.mjs
assert-dist-built.test.mjs
assert-root-install.mjs
before-build.mjs
before-pack.mjs
before-pack.test.mjs
bundle-electron-main.mjs
click-session.mjs
dev-mock.mjs
dev-no-hmr.mjs
diag-code-live.mjs
diag-drag-churn.mjs
diag-drag-trace.mjs
diag-jump.mjs
diag-key-latency.mjs
diag-live-state.mjs
diag-real-loop.mjs
diag-ro-storm.mjs
diag-scroll-reset.mjs
diag-sidebar-dom.mjs
diag-switch-autopsy.mjs
diag-switch-trace.mjs
eval.mjs
gen-share-codes.ts
live-drive.mjs
notarize-artifact.mjs
notarize.mjs
patch-electron-builder-mac-binary.mjs
probe-model-picker.mjs
probe-renderer.mjs
probe-thread.mjs
profile-model-picker.mjs
profile-typing-lag.md
rebuild-native.mjs
reload-renderer.mjs
reload.mjs
run-electron-builder.mjs
set-exe-identity.mjs
stage-native-deps.mjs
stage-native-deps.test.mjs
test-desktop.mjs
utils.mjs
write-build-stamp.mjs
write-build-stamp.test.mjs