app
Fusion - the Fusion 360 Bridge
Public Made by Adomby adom
Drive Autodesk Fusion 360 from the cloud via Adom Bridge: component libraries, IPC package generation, board layout, exports (STEP/Gerbers/BOM/CPL), fast APS cloud search, and parametric modeling.
← Commit history
v1.8.4: fix #295 (no GUI-exe shell-out, use direct API), fix #289 (expectDocument document guard)
4 files changed
+24−7
BRIDGE_VERSION+1−1@@ -1 +1 @@-1.8.3+1.8.4
adom-bridge-fusion-manifest.json+5−5@@ -1,13 +1,13 @@ { "manifest_version": 1, "name": "fusion360",- "version": "1.8.3",- "url": "https://wiki.adom.inc/download/adom/adom-desktop-fusion-bridge/1.8.3/adom-bridge-fusion-v1.8.3.zip",- "sha256": "b944df02cf55fd4ed912a285d50fb2c023166404282f021794cab679c557401d",- "size": 292456,+ "version": "1.8.4",+ "url": "https://wiki.adom.inc/download/adom/adom-desktop-fusion-bridge/1.8.4/adom-bridge-fusion-v1.8.4.zip",+ "sha256": "5fbe3460a681d388aaf79ed88a5dc2a7a5fd7d2df060b4a3531e93242e6783ac",+ "size": 575519, "verbPrefixes": [ "fusion_" ], "healthEndpoint": "/status",- "released_at": "2026-07-24T10:50:00Z"+ "released_at": "2026-07-24T18:30:00Z" }
bridge.json+1−1@@ -2,7 +2,7 @@ "manifest_version": 1, "name": "fusion360", "displayName": "Autodesk Fusion 360",- "version": "1.8.3",+ "version": "1.8.4", "description": "Drive Autodesk Fusion 360 from the cloud: launch Fusion, electronics board layout, design rules, exports (STEP/IGES/STL/3MF/USDZ/OBJ/DXF/DWG/Gerbers/BOM/CPL), fast APS server-indexed cloud search plus browse/recent/file-info/versions, cloud file download/upload and folder creation, and in-app parametric modeling (fusion_run_modeling_script). Never-charge: APS calls are capped to the free tier.", "homepage": "https://wiki.adom.inc/adom/adom-desktop-fusion-bridge", "author": "Adom Inc.",
skills/fusion-driving/SKILL.md+17@@ -61,6 +61,23 @@ background; only **synthetic input** (`send_key`/`click`), **whole-screen captur **initial launch** foreground Fusion. Reach for the API path first; fall back to input injection only when there is no API for it, and expect that to surface the window. +## Guard the active document with `expectDocument` (a tab-switch retargets your writes)++Every mutating verb acts on Fusion's **active document**, and a user switching tabs in Fusion+silently retargets it. A `fusion_run_modeling_script` meant for one design can land in another and+delete bodies out of it (a real near-miss, issue #289). So across a multi-step mutation, pass+**`expectDocument`** with the name you expect to be active:++```bash+adom-desktop fusion_run_modeling_script '{"script":"...","expectDocument":"Monitor arms v1"}'+```++If the active document is not that, the bridge refuses **before executing** and returns+`errorCode: "wrong_document"` with `expected`/`actual`, instead of mutating the wrong file. It is a+**name** check, so if the doc was renamed mid-session, pass the new name. Honoured on every mutating+verb: `run_modeling_script`, `execute_text_command`, `electron_run`, `close_document`,+`close_all_documents`, `import_step`, `set_parameter`, `save_to_cloud`, `delete_cloud_file`.+ ## Rule 1 - after EVERY mutating op, READ the popup array. Then analyze. Then proceed. A mutating op = anything that changes Fusion's state: `fusion_run_modeling_script`,