I wrote a new board definition in a branch on my fork of the device builder. I setup a development environment but when I try to commit my files, I get the following error:
git commit -m "Add new board definition for Waveshare ESP32-S3-Nano with a default component for PSRAM and featured components"
[WARNING] Unstaged files detected.
[INFO] Stashing unstaged files to ~/.cache/pre-commit/patch1783674516-21063.
ruff (legacy alias)..................................(no files to check)Skipped
ruff format..........................................(no files to check)Skipped
validate board/component definitions.....................................Passed
regenerate boards.json from manifests....................................Failed
- hook id: sync-boards
- files were modified by this hook
WARNING sync_boards: nRF52 board 'adafruit_itsybitsy' shares a catalog id with an existing rp2040 board; not generating it (an id-keyed catalog can't serve both — needs platform-aware board resolution)
INFO sync_boards: Skipping all_recommended for connected_consumer_fuel_smart_oil_gauge: featured components share a board GPIO
INFO sync_boards: Wrote ~/esphome_dev/device-builder/esphome_device_builder/definitions/boards.index.json + 1036 body files under ~/esphome_dev/device-builder/esphome_device_builder/definitions/board_bodies + ~/esphome_dev/device-builder/esphome_device_builder/definitions/featured_components.index.json
check toml...........................................(no files to check)Skipped
check yaml...............................................................Passed
check json...............................................................Passed
check python ast.....................................(no files to check)Skipped
check for case conflicts.................................................Passed
check for merge conflicts................................................Passed
detect private key.......................................................Passed
trim trailing whitespace.................................................Passed
fix end of files.........................................................Passed
codespell............................................(no files to check)Skipped
[WARNING] Stashed changes conflicted with hook auto-fixes... Rolling back fixes...
[INFO] Restored changes from ~/.cache/pre-commit/patch1783674516-21063.
2026-07-10 09:19:22.489 DEBUG (MainThread) [esphome_device_builder.startup] startup phase early: 0.006s
2026-07-10 09:19:22.498 DEBUG (MainThread) [esphome_device_builder.startup] startup phase esphome: 0.009s
2026-07-10 09:19:23.015 DEBUG (MainThread) [esphome_device_builder.startup] startup phase config: 0.517s
2026-07-10 09:19:23.317 DEBUG (MainThread) [esphome_device_builder.startup] startup phase builder: 0.303s
2026-07-10 09:19:23.318 WARNING (MainThread) [esphome_device_builder]
======================================================================
WARNING: Dashboard is running WITHOUT AUTHENTICATION.
Anyone with network access to 0.0.0.0:6052 can manage your devices.
Set $ESPHOME_USERNAME / $ESPHOME_PASSWORD env vars to enable.
======================================================================
2026-07-10 09:19:23.318 DEBUG (MainThread) [esphome_device_builder.startup] startup phase settings: 0.001s
2026-07-10 09:19:23.319 DEBUG (MainThread) [esphome_device_builder.startup] startup phase init: 0.001s
2026-07-10 09:19:23.321 INFO (MainThread) [esphome_device_builder.device_builder] Serving frontend from /home/pde/esphome_dev/device-builder/.venv/lib/python3.14/site-packages/esphome_device_builder_frontend (dev_mode=False)
2026-07-10 09:19:23.321 DEBUG (MainThread) [esphome_device_builder.startup] startup phase app: 0.002s
2026-07-10 09:19:23.350 INFO (MainThread) [esphome_device_builder.controllers.boards] Board catalog loaded: 1036 boards (slim index)
2026-07-10 09:19:23.542 INFO (MainThread) [esphome_device_builder.controllers.components.controller] Component catalog loaded: 937 components (slim index), 6490 featured, 21 pin registries
2026-07-10 09:19:23.565 INFO (MainThread) [esphome_device_builder.controllers.devices.controller] Devices controller started — 0 devices loaded
2026-07-10 09:19:23.567 INFO (MainThread) [esphome_device_builder.controllers._device_state_monitor.mdns] mDNS browser started for _esphomelib._tcp.local., _http._tcp.local.
2026-07-10 09:19:23.570 INFO (MainThread) [esphome_device_builder.controllers.firmware.controller] ESPHome command: /home/pde/esphome_dev/device-builder/.venv/bin/esphome (interpreter: /home/pde/esphome_dev/device-builder/.venv/bin/python3)
2026-07-10 09:19:23.833 INFO (MainThread) [esphome_device_builder.controllers.firmware.controller] ESPHome CLI sanity check OK — Version: 2026.6.5
2026-07-10 09:19:23.837 INFO (dashboard_0) [esphome_device_builder.controllers.version_history.git_repo] Config dir configs is inside the Device Builder source checkout (/home/pde/esphome_dev/device-builder); creating a config-local history repo instead of committing into it
2026-07-10 09:19:23.874 DEBUG (MainThread) [esphome_device_builder.controllers._device_state_monitor.mdns] mDNS: ServiceStateChange.Added gas-water (raw: gas-water._esphomelib._tcp.local.)
2026-07-10 09:19:23.874 DEBUG (MainThread) [esphome.zeroconf] service_update: type=_esphomelib._tcp.local. name=gas-water._esphomelib._tcp.local. state_change=ServiceStateChange.Added
2026-07-10 09:19:23.874 DEBUG (MainThread) [esphome.zeroconf] -> resolved info: AsyncServiceInfo(type='_esphomelib._tcp.local.', name='gas-water._esphomelib._tcp.local.', addresses=[b'\n\r\x042'], port=6053, weight=0, priority=0, server='gas-water.local.', properties={b'project_version': b'1.0', b'project_name': b'DeepCoreSystems.Gas-Water-counter', b'api_encryption': b'Noise_NNpsk0_25519_ChaChaPoly_SHA256', b'network': b'wifi', b'board': b'd1_mini', b'platform': b'ESP8266', b'mac': b'44179314f4f4', b'version': b'2025.2.1', b'friendly_name': b'Gas/Water counter'}, interface_index=None)
2026-07-10 09:19:23.884 INFO (MainThread) [esphome_device_builder.controllers.version_history.controller] Version history active (git work tree: configs)
2026-07-10 09:19:23.887 INFO (dashboard_1) [esphome_device_builder.helpers.peer_link_identity] Loaded peer-link identity from configs/.device-builder-peer-link-key.bin (size=32 mtime=1783589324 pub=8f74dfdc4e9fe8bcc07228a2da163d80030556fc15b66d5df5948dc0000e1347 pin=1afc2779b76ec7fdaf1485de614167867c4e1b58b6244b6429fb1ebe8bf9608a)
2026-07-10 09:19:23.891 DEBUG (MainThread) [esphome_device_builder._remote_build_lifecycle] Skipping remote-build peer-link site: disabled in settings (set ``remote_build/set_settings`` enabled=true to bind)
2026-07-10 09:19:23.914 DEBUG (MainThread) [esphome_device_builder.controllers._device_state_monitor.mdns] mDNS: ServiceStateChange.Added esphome-web-b364b8-b364b8 (raw: esphome-web-b364b8-b364b8._esphomelib._tcp.local.)
2026-07-10 09:19:23.914 DEBUG (MainThread) [esphome.zeroconf] service_update: type=_esphomelib._tcp.local. name=esphome-web-b364b8-b364b8._esphomelib._tcp.local. state_change=ServiceStateChange.Added
2026-07-10 09:19:23.914 DEBUG (MainThread) [esphome.zeroconf] -> resolved info: AsyncServiceInfo(type='_esphomelib._tcp.local.', name='esphome-web-b364b8-b364b8._esphomelib._tcp.local.', addresses=[b'\n\r\x043'], port=6053, weight=0, priority=0, server='esphome-web-b364b8-b364b8.local.', properties={b'network': b'wifi', b'board': b'esp32-c3-devkitm-1', b'platform': b'ESP32', b'mac': b'aca704b364b8', b'config_hash': b'fbfe2285', b'version': b'2026.5.3', b'friendly_name': b'ESPHome Matrix Display 1 b364b8'}, interface_index=None)
2026-07-10 09:19:23.972 DEBUG (MainThread) [esphome_device_builder.controllers._device_state_monitor.mdns] mDNS: ServiceStateChange.Added esphome-web-b21468-b21468 (raw: esphome-web-b21468-b21468._esphomelib._tcp.local.)
2026-07-10 09:19:23.973 DEBUG (MainThread) [esphome.zeroconf] service_update: type=_esphomelib._tcp.local. name=esphome-web-b21468-b21468._esphomelib._tcp.local. state_change=ServiceStateChange.Added
2026-07-10 09:19:23.973 DEBUG (MainThread) [esphome.zeroconf] -> resolved info: AsyncServiceInfo(type='_esphomelib._tcp.local.', name='esphome-web-b21468-b21468._esphomelib._tcp.local.', addresses=[b'\n\r\x04\xa2'], port=6053, weight=0, priority=0, server='esphome-web-b21468-b21468.local.', properties={b'network': b'wifi', b'board': b'esp32-c3-devkitm-1', b'platform': b'ESP32', b'mac': b'aca704b21468', b'config_hash': b'1b230cd0', b'version': b'2026.6.1', b'friendly_name': b'ESPHome BTProxy Entrance b21468'}, interface_index=None)
2026-07-10 09:19:23.976 DEBUG (MainThread) [esphome_device_builder.controllers._device_state_monitor.mdns] mDNS: ServiceStateChange.Added esphome-web-b24e1c-b24e1c (raw: esphome-web-b24e1c-b24e1c._esphomelib._tcp.local.)
2026-07-10 09:19:23.976 DEBUG (MainThread) [esphome.zeroconf] service_update: type=_esphomelib._tcp.local. name=esphome-web-b24e1c-b24e1c._esphomelib._tcp.local. state_change=ServiceStateChange.Added
2026-07-10 09:19:23.976 DEBUG (MainThread) [esphome.zeroconf] -> resolved info: AsyncServiceInfo(type='_esphomelib._tcp.local.', name='esphome-web-b24e1c-b24e1c._esphomelib._tcp.local.', addresses=[b'\n\r\x04\xa3'], port=6053, weight=0, priority=0, server='esphome-web-b24e1c-b24e1c.local.', properties={b'network': b'wifi', b'board': b'esp32-c3-devkitm-1', b'platform': b'ESP32', b'mac': b'aca704b24e1c', b'config_hash': b'21602dbc', b'version': b'2026.5.3', b'friendly_name': b'ESPHome BTProxy Master Bedroom b24e1c'}, interface_index=None)
2026-07-10 09:19:23.978 DEBUG (MainThread) [esphome_device_builder.controllers._device_state_monitor.mdns] mDNS: ServiceStateChange.Added esphome-web-f283f0 (raw: esphome-web-f283f0._esphomelib._tcp.local.)
2026-07-10 09:19:23.978 DEBUG (MainThread) [esphome.zeroconf] service_update: type=_esphomelib._tcp.local. name=esphome-web-f283f0._esphomelib._tcp.local. state_change=ServiceStateChange.Added
2026-07-10 09:19:23.978 DEBUG (MainThread) [esphome.zeroconf] -> resolved info: AsyncServiceInfo(type='_esphomelib._tcp.local.', name='esphome-web-f283f0._esphomelib._tcp.local.', addresses=[b'\n\r\x04\xea'], port=6053, weight=0, priority=0, server='esphome-web-f283f0.local.', properties={b'network': b'wifi', b'board': b'esp32-s3', b'platform': b'ESP32', b'mac': b'9c139ef283f0', b'config_hash': b'6c19c04c', b'version': b'2026.6.2', b'friendly_name': b'ESPHome Audio 1'}, interface_index=None)
2026-07-10 09:19:24.001 DEBUG (MainThread) [esphome_device_builder.controllers._device_state_monitor.mdns] mDNS: ServiceStateChange.Added esphome-web-b10b94-b10b94 (raw: esphome-web-b10b94-b10b94._esphomelib._tcp.local.)
2026-07-10 09:19:24.001 DEBUG (MainThread) [esphome.zeroconf] service_update: type=_esphomelib._tcp.local. name=esphome-web-b10b94-b10b94._esphomelib._tcp.local. state_change=ServiceStateChange.Added
2026-07-10 09:19:24.001 DEBUG (MainThread) [esphome.zeroconf] -> resolved info: AsyncServiceInfo(type='_esphomelib._tcp.local.', name='esphome-web-b10b94-b10b94._esphomelib._tcp.local.', addresses=[b'\n\r\x04\xa9'], port=6053, weight=0, priority=0, server='esphome-web-b10b94-b10b94.local.', properties={b'network': b'wifi', b'board': b'esp32-c3-devkitm-1', b'platform': b'ESP32', b'mac': b'aca704b10b94', b'version': b'2026.3.2', b'friendly_name': b'ESPHome Proximity b10b94'}, interface_index=None)
2026-07-10 09:19:24.019 DEBUG (MainThread) [esphome_device_builder.controllers._device_state_monitor.mdns] mDNS: ServiceStateChange.Added esphome-web-b222cc (raw: esphome-web-b222cc._esphomelib._tcp.local.)
2026-07-10 09:19:24.019 DEBUG (MainThread) [esphome.zeroconf] service_update: type=_esphomelib._tcp.local. name=esphome-web-b222cc._esphomelib._tcp.local. state_change=ServiceStateChange.Added
2026-07-10 09:19:24.019 DEBUG (MainThread) [esphome.zeroconf] -> resolved info: AsyncServiceInfo(type='_esphomelib._tcp.local.', name='esphome-web-b222cc._esphomelib._tcp.local.', addresses=[b'\n\r\x04\xe9'], port=6053, weight=0, priority=0, server='esphome-web-b222cc.local.', properties={b'network': b'wifi', b'board': b'esp32-c3-devkitm-1', b'platform': b'ESP32', b'mac': b'aca704b222cc', b'config_hash': b'd05b7199', b'version': b'2026.6.2', b'friendly_name': b'ESPHome DisplayModule 2'}, interface_index=None)
2026-07-10 09:19:24.915 INFO (MainThread) [esphome_device_builder.helpers.dashboard_advertise] Advertising dashboard on _esphomebuilder._tcp.local. as 'esphome-builder-ku7pognl._esphomebuilder._tcp.local.' ('esp-builder', port 6052, esphome 2026.6.5)
2026-07-10 09:19:24.926 INFO (MainThread) [esphome_device_builder.device_builder] Device Builder ready — config dir: configs, 109 commands registered
2026-07-10 09:19:24.926 DEBUG (MainThread) [esphome_device_builder.startup] startup phase controllers: 1.604s
2026-07-10 09:19:24.926 INFO (MainThread) [esphome_device_builder.device_builder] Startup phases: total=2.4s (early=0.0s esphome=0.0s config=0.5s builder=0.3s settings=0.0s init=0.0s app=0.0s controllers=1.6s)
======== Running on http://0.0.0.0:6052 ========
(Press CTRL+C to quit)
2026-07-10 09:19:33.573 WARNING (MainThread) [esphome_device_builder.controllers._device_state_monitor.ping] ICMP ping sweep disabled: opening an ICMP socket was denied in both privileged and unprivileged modes (needs CAP_NET_RAW, or net.ipv4.ping_group_range covering this process's group); device state will only update via mDNS
2026-07-10 09:20:08.511 DEBUG (MainThread) [esphome_device_builder.api.ws] WebSocket client disconnected
2026-07-10 09:20:14.300 DEBUG (MainThread) [esphome_device_builder.api.ws] Closing 1 active WebSocket(s) on shutdown
2026-07-10 09:20:14.302 INFO (MainThread) [esphome_device_builder.device_builder] Shutting down ESPHome Device Builder
What happened?
I wrote a new board definition in a branch on my fork of the device builder. I setup a development environment but when I try to commit my files, I get the following error:
Dashboard version
esphome-device-builder 0.0.0 (esphome 2026.6.5)
How did you install it?
From source (script/setup)
Where is it running?
Local — Linux
Relevant logs / errors
Anything else?
No response