← Commit history
README.md+1−1
@@ -11,7 +11,7 @@ verbs.  ```bash adom-wiki pkg install barrett-land/adom-desktop-altium-bridge   # the skill, in the container-adom-desktop bridge_install '{"manifestUrl":"https://wiki.adom.inc/download/barrett-land/adom-desktop-altium-bridge/0.0.46/altium-bridge-manifest.json"}'+adom-desktop bridge_install '{"manifestUrl":"https://wiki.adom.inc/download/barrett-land/adom-desktop-altium-bridge/0.0.47/altium-bridge-manifest.json"}' adom-desktop --ai-thread "<your thread>" altium_ping '{}' ``` 
SKILL.md+1−1
@@ -12,7 +12,7 @@ forwards work into the running GUI as DelphiScript via `X2.EXE`. ## Install  ```bash-adom-desktop bridge_install '{"manifestUrl":"https://wiki.adom.inc/download/barrett-land/adom-desktop-altium-bridge/0.0.46/altium-bridge-manifest.json"}'+adom-desktop bridge_install '{"manifestUrl":"https://wiki.adom.inc/download/barrett-land/adom-desktop-altium-bridge/0.0.47/altium-bridge-manifest.json"}' adom-desktop --ai-thread "<your thread>" altium_ping '{}'   # -> {"altiumInstalled": true, "version": "..."} ``` 
altium-bridge-manifest.json+3−3
@@ -1,3 +1,3 @@-{ "manifest_version": 1, "name": "altium", "version": "0.0.46",-  "url": "https://wiki.adom.inc/download/barrett-land/adom-desktop-altium-bridge/0.0.46/altium-bridge-v0.0.46.zip",-  "sha256": "940aa4c114bc11ee367cab7c6ff711a094e0dcdd7280a694daf68d48562139cf", "size": 41386, "released_at": "2026-08-12T17:18:29Z" }+{ "manifest_version": 1, "name": "altium", "version": "0.0.47",+  "url": "https://wiki.adom.inc/download/barrett-land/adom-desktop-altium-bridge/0.0.47/altium-bridge-v0.0.47.zip",+  "sha256": "0a1d213e2a45319507d2c68aa572abeb6d5b1045b93d21815eed57e7d2e37ae7", "size": 41686, "released_at": "2026-08-12T17:19:37Z" }
altium-bridge-v0.0.47.zipadded
⋯ 1 unchanged line ⋯
bridge-src/BRIDGE_VERSION+1−1
@@ -1 +1 @@-0.0.46+0.0.47
bridge-src/__pycache__/server.cpython-312.pyc
⋯ 1 unchanged line ⋯
bridge-src/addin/AdomAltium/AdomAltium.pas+13−1
@@ -1465,7 +1465,7 @@ end; procedure CmdSetTextStyle; var     SchPath, CompRef, SavedStr : String;-    FontId, Colr, nTxt, nCmp, nPin : Integer;+    FontId, Colr, PinColr, nTxt, nCmp, nPin : Integer;     Lib   : ISch_Lib;     Cmp   : ISch_Component;     It    : ISch_Iterator;@@ -1479,6 +1479,8 @@ begin     CompRef := Req.Values['component'];     FontId  := StrToIntDef(Req.Values['fontid'], 1);     Colr    := StrToIntDef(Req.Values['color'], 8388608);+    { Altium draws pins BLACK (0) by default, not the navy used for parameter text. }+    PinColr := StrToIntDef(Req.Values['pincolor'], 0);     if SchPath = '' then begin RespErr('missing schlib'); Exit; end;      GStage := 'open schlib';@@ -1556,6 +1558,15 @@ begin                         Pin.Designator_FontMode       := 0;                         Pin.Name_CustomFontID         := FontId;                         Pin.Designator_CustomFontID   := FontId;+                        { Pins are BLACK in Altium, not the navy used for parameter text.+                          Pin.Color drives the pin line and, in Default mode, its name and+                          number too; the two custom colours are set as well so the pin+                          stays black if the mode is later switched to Custom. KiCad's+                          pins import in KiCad's own colour, which is why this is a+                          default rather than an option. }+                        Pin.Color                     := PinColr;+                        Pin.Name_CustomColor          := PinColr;+                        Pin.Designator_CustomColor    := PinColr;                         Inc(nPin);                         Pin := It.NextSchObject;                     end;@@ -1576,6 +1587,7 @@ begin     RespOk(', "components": ' + IntToStr(nCmp) + ', "textObjects": ' + IntToStr(nTxt) +            ', "pins": ' + IntToStr(nPin) +            ', "fontId": ' + IntToStr(FontId) + ', "color": ' + IntToStr(Colr) ++           ', "pinColor": ' + IntToStr(PinColr) +            ', "saved": ' + SavedStr); end; 
bridge-src/bridge.json+1−1
@@ -2,7 +2,7 @@   "manifest_version": 1,   "name": "altium",   "displayName": "Altium Bridge",-  "version": "0.0.46",+  "version": "0.0.47",   "description": "Drives Altium Designer from a container: build, clone and edit file-based symbol/footprint/Integrated libraries with LCSC/JLCPCB part numbers attached, and generate batch outputs (STEP, PDF, Gerber, BOM, CPL) from an OutJob. Pairs with the container-side altium-jlc orchestrator (adom-jlcpcb + chip-fetcher).",   "homepage": "https://wiki.adom.inc/adom/adom-desktop-altium-bridge",   "author": "Adom Inc.",
bridge-src/server.py+4−2
@@ -183,8 +183,10 @@ def handle_set_text_style(args: dict) -> dict:     which is navy RGB(0,0,128) -- Altium stores colour as BGR. The KiCad importer     instead appends its own font (Yu Gothic UI Light 8) and keeps KiCad's field     colour, so imported parts look nothing like hand-made ones in the same library.-    component='' or '*' restyles every component in the library."""-    keys = ("schlib", "component", "fontid", "color")+    Pin name/number fonts follow the document default and pins are set BLACK+    (pincolor=0), which is Altium's own pin colour rather than the navy used for+    parameter text. component='' or '*' restyles every component in the library."""+    keys = ("schlib", "component", "fontid", "color", "pincolor")     return addin_call("set_text_style", {k: args.get(k) for k in keys},                       timeout=args.get("timeout", 180)) 
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-desktop-altium-bridge",-  "version": "0.0.46",+  "version": "0.0.47",   "type": "app",   "description": "Adom Desktop bridge for Altium Designer: file-based symbol/footprint/IntLib authoring with LCSC/JLCPCB part numbers, Gerber/BOM/CPL batch output, and an in-process .NET extension adding parameterized headless verbs - STEP export with hole and copper options, and KiCad import with no wizard.",   "tags": [
page.json+11−7
@@ -1,8 +1,8 @@ {   "slug": "adom-desktop-altium-bridge",-  "version": "0.0.46",+  "version": "0.0.47",   "type": "app",-  "description": "Adom Desktop bridge for Altium Designer \u2014 build and edit file-based symbol/footprint/Integrated libraries with LCSC/JLCPCB part numbers attached, and generate batch outputs (STEP, PDF, Gerber, BOM, CPL) from an OutJob, by driving Altium via DelphiScript.",+  "description": "Adom Desktop bridge for Altium Designer: file-based symbol/footprint/IntLib authoring with LCSC/JLCPCB part numbers, Gerber/BOM/CPL batch output, and an in-process .NET extension adding parameterized headless verbs - STEP export with hole and copper options, and KiCad import with no wizard.",   "tags": [     "app",     "adom-desktop",@@ -18,6 +18,7 @@   },   "needs_sudo": false,   "hero": {+    "type": "image",     "path": "docs/hero.png"   },   "author": {@@ -25,13 +26,16 @@     "email": "[email protected]"   },   "discovery_triggers": [-    "add a part to my altium library",     "drive altium from claude",     "altium bridge",-    "export step from altium",+    "export step from altium headless",+    "add a part to my altium library",+    "altium extension",+    "install altium extension",+    "altium step export",     "run an altium outjob",-    "build an altium footprint",-    "altium symbol library"+    "import kicad into altium",+    "altium kicad importer"   ],   "discovery_pitch": "Use when the user wants Claude to author or edit Altium libraries, or to generate STEP/PDF/Gerber/BOM/CPL from an Altium board on their Windows machine.",   "sample_prompts": [@@ -48,4 +52,4 @@       "prompt": "Is the Altium bridge connected and what version is it?"     }   ]-}+}\ No newline at end of file