All plugins

zblauser

GitHub profile1 plugin in the catalog

Plugins by zblauser

1 plugins by zblauser in the catalog, most-starred first.

zblausernumogramHermes debugs ESP32 firmware on real hardware. It watches the board's serial port, maps crash addresses to source lines from the ELF, fixes the code, builds with idf.py and flashes with esptool, then reads the log to confirm the fix. A crash wakes the session on its own. Also checks firmware GPIO use against a KiCad netlist (swapped signals, strapping, flash and USB pins) and audits chip security read-only. NUMOGRAM_PORT=virtual runs an emulated ESP32-C3 in Espressif's QEMU, so it works without a board. Disclosure — board_build and board_flash go through Hermes's approval prompt (a pre_tool_call hook, one approval rule per tool) and are blocked when nobody can answer; a build runs ESP-IDF's export.sh, idf.py and the project's own CMake and Python scripts and writes the build directory it is given. Runs esptool, espefuse summary (read-only; the plugin has no eFuse write) and, for the virtual board only, Espressif's qemu-system-riscv32 with networking off, always with fixed argument lists, and each child gets an environment allowlist (PATH, HOME, locale, ESP-IDF variables), never Hermes's keys or tokens. Background: a serial watcher thread while watching is on, and a QEMU process for the virtual board that stops when Hermes exits. Network: none beyond loopback (unauthenticated) to its own macOS USB bridge or virtual board, or the socket:// address set in NUMOGRAM_PORT. Reads the project, build, ELF and netlist paths it is given; writes its own state only under the active Hermes profile's home (get_hermes_home() / numogram). Serial output is passed to the model as untrusted data; wake-up messages are built from fixed text and validated hex. The bridge and virtual board drop eFuse write commands. No credentials, no telemetry.Communitytools