app
Altium - the Altium Bridge
Public Made by Adomby adom
Adom Bridge for Altium Designer: a resident DelphiScript agent gives the AI eval, the 1,100-command process launcher, all 8 EDA surfaces with screenshots, compile/ERC, DRC, OutJob outputs, native SchLib/PcbLib authoring with STEP 3D bodies, and dialog handling by PID.
← Commit history
v0.1.40: restore the dashboard header CSS, add the missing favicon
8 files changed
+25−7
CHANGELOG.md+5@@ -1,5 +1,10 @@ # Changelog +## 0.1.40 — 2026-09-01+- **The dashboard header is whole again, and the dock tab has a favicon.** John, from one glance at the dock: *"why don't i see a favicon ... your header looks wonky ... almost like you're missing a css."* Both right. `index.html` linked `favicon.svg` but the file did not exist (the route 404s honestly since the 2026-08-25 route-table sweep, so the tab showed the generic mark), and an earlier CSS deletion had taken the header's visual rules — `.iconbtn`, `.vsep`, the target-chip pill, the brand font — while the markup and a `.iconbtn:focus-visible` rule survived, so the buttons rendered as UA-default white boxes on the dark bar.+- Restored per dash-header's numbers: 28x28 ghost buttons with 18px glyphs (muted at rest, teal on hover), mono pill target chip with the LED inside, 1px vsep, name in Familjen Grotesk 600 15px `var(--text)` — NOT the accent, per the 2026-08-24 ruling, deliberately unlike fusion's current teal name.+- `favicon.svg` is the SAME line-drawing mark as the header SVG, as the icons skill requires — one mark, tab and header.+ ## 0.1.39 — 2026-09-01 - **0.1.38's idle-watcher never actually started.** The boot-site call used `taskbar` unimported (dispatch imports it lazily inside the handler), so boot logged `name 'taskbar' is not defined` — and logged it as a DIALOG REAPER failure, because the watcher call sat inside the reaper's try-block. Fixed the import, and each boot service now has its own try so a failure names the thing that failed. Verified by the boot log this time, not by assumption.
adom-bridge-altium-manifest.json+3−3@@ -1,8 +1,8 @@ { "name": "altium",- "version": "0.1.39",- "url": "https://wiki.adom.inc/download/adom/altium-bridge/0.1.39/adom-bridge-altium-v0.1.39.zip",- "sha256": "c7aa621a4a54c3f2e994a15f991f0a7643a88e44a7471a13db2253525f82bd4e",+ "version": "0.1.40",+ "url": "https://wiki.adom.inc/download/adom/altium-bridge/0.1.40/adom-bridge-altium-v0.1.40.zip",+ "sha256": "6053b3d8a436af3e589ba4541b1a8ada713da2820d1464da36059c0d09919267", "size": 135933, "verbPrefixes": [ "altium_"
adom-bridge-altium-v0.1.40.zipadded⋯ 1 unchanged line ⋯
bridge.json+1−1@@ -2,7 +2,7 @@ "manifest_version": 1, "name": "altium", "displayName": "Altium Designer",- "version": "0.1.39",+ "version": "0.1.40", "description": "Drive Altium Designer from Adom: a resident DelphiScript agent (eval + the 1,100-command process launcher), the X2 -R command line, UIA over the VCL shell, dialogs by PID, screenshots of every Altium window, and Altium 365.", "homepage": "https://wiki.adom.inc/adom/altium-bridge", "docs": "https://wiki.adom.inc/adom/altium-bridge",
dashboard/ui/favicon.svgadded+1@@ -0,0 +1 @@+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" fill="none" stroke="#e6edf3" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="4" width="20" height="16" rx="2"/><path d="M7.5 15.5H9.5L16.5 8.5"/><circle cx="7.5" cy="15.5" r="2.5"/><circle cx="16.5" cy="8.5" r="2.5"/></svg>
dashboard/ui/index.html+12−1@@ -41,9 +41,20 @@ header{height:44px;display:flex;align-items:center;gap:12px;padding:0 16px;margi scrollWidth to 410. Everything below the header already fitted. So the bar shrinks: brand ellipsises, the chip caps and ellipsises, the buttons never shrink (they are the controls), and the subtitle drops out first. */+/* dash-header: the visual rules (restored 2026-09-01 — an earlier CSS deletion took the whole+ block; the markup and the .iconbtn:focus-visible rule outlived it, so the buttons rendered as+ UA-default white boxes and the chip as bare text. John spotted it from the dock in one glance.) */+.brand{display:flex;align-items:center;gap:8px;font-family:'Familjen Grotesk',sans-serif;font-weight:600;font-size:15px;letter-spacing:-.01em;color:var(--text);white-space:nowrap;cursor:default;position:relative}+.brand svg{width:18px;height:18px;stroke:var(--text)}+.brand .sub{font-family:'Satoshi',sans-serif;font-size:13px;font-weight:400}+.vsep{width:1px;height:20px;background:var(--border);flex:none}+.target-chip{display:inline-flex;align-items:center;gap:6px;font:12px 'JetBrains Mono',ui-monospace,monospace;color:var(--text-body);background:var(--elevated);border:1px solid var(--border);border-radius:999px;padding:3px 10px;white-space:nowrap}+.actions{margin-left:auto;display:flex;gap:6px;flex:none}+.iconbtn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid transparent;border-radius:8px;color:var(--text-2);cursor:pointer;transition:background .15s ease,border-color .15s ease,transform .06s ease}+.iconbtn:hover{background:var(--elevated);border-color:var(--border);color:var(--accent)}+.iconbtn:active{transform:scale(.9);background:var(--overlay)} .brand{min-width:0;overflow:hidden;text-overflow:ellipsis} .brand svg{flex:none}-.actions{flex:none} .target-chip{min-width:0;max-width:38vw;overflow:hidden} .target-chip #chipName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap} /* Header responsiveness (the ONLY overflow source at narrow panes: the
package.json+2−1@@ -1,6 +1,6 @@ { "slug": "altium-bridge",- "version": "0.1.39",+ "version": "0.1.40", "type": "app", "description": "Skills for your container so your AI knows how to drive the Altium Designer bridge (altium_* verbs). The bridge runtime itself is the release zip; Adom Bridge loads that.", "tags": [@@ -26,6 +26,7 @@ "dashboard/altium_dashboard.py", "dashboard/ui/altium-logo.png", "dashboard/ui/dock-altium.svg",+ "dashboard/ui/favicon.svg", "dashboard/ui/index.html", "dashboard/ui/newbie-panel.js", "dockbar.json",
src/BRIDGE_VERSION+1−1@@ -1 +1 @@-0.1.39+0.1.40