Adom Hydrogen
Public Made by Adomby adom
The whole Adom experience as one signed native app: your editor, your AI agent, and the full electronics design toolchain, running locally on your own machine.
webview open-or-refresh creates a new tab every call when --name has a non-ASCII character (e.g. '·')
What happened
adom-cli hydrogen webview open-or-refresh is meant to be idempotent: if a tab with --name exists, it navigates that tab, and otherwise it creates one. When the name contains a non-ASCII character such as · (U+00B7 middle dot), it never finds the existing tab and creates a new one on every call.
AI Flow's parts step walks through the parts with one named tab, Parts · <run>. During a single Altium run on 2026-10-20 that left five or more identical "Parts · run" tabs in the webview pane.
Repro (run inside the workspace)
for i in 1 2 3; do adom-cli hydrogen webview open-or-refresh --name "Parts · repro" --url "https://wiki.adom.inc/adom/hydrogen" --ai-thread t --reason repro; done
Each call answers "action": "created" with a new tabId (2cc1e39c…, 426fc2d0…, 1306dfcb…). Three tabs open.
The same loop with --name "Repro tab" answers the same tabId every time (028584a8…), with one tab, as expected.
Expected
A name with ·, or any other Unicode character, matches its existing tab the same way an ASCII name does. My guess is that the stored name and the requested name are compared differently, for example one is normalised or escaped and the other isn't.
Environment
- Hydrogen 1.0.644 (release, signed); update 1.0.660 insiders staged but not applied
- adom-cli 0.7.14
- Adom Bridge 2.1.184
- Machine: DESKTOP-BAR6S0F, Windows 11
Found by: AI Flow 0.2.10 (adom-aiflow parts --show)