← Commit history
README.md+134−51
@@ -1,88 +1,171 @@ # Adom Desktop - Fusion 360 Bridge -Drive **Autodesk Fusion 360** from the cloud through [Adom Desktop](https://wiki.adom.inc/adom/adom-desktop). A small local HTTP server that Adom Desktop spawns and proxies `fusion_*` verbs to — it launches Fusion, talks to the bundled **AdomBridge** add-in, and exposes Fusion Electronics + design automation: open an EAGLE board, lay out copper, render the populated 3D PCB, export Gerbers / BOM / STEP, walk the cloud tree, and **search your Fusion cloud files fast via APS**.+Drive Autodesk Fusion 360 from the cloud, just by talking to your AI. Find and open any+team design, render boards in 3D, lay out electronics, export production gerbers and CAD+models, set fab design rules, and even generate parametric parts. You ask in plain+language; the bridge drives Fusion for you. -Real boards driven through it: TI DRV8323SR + DRV8411A motor drivers and an ST VL53L8 time-of-flight sensor.+Every section below is a **real screenshot of the bridge in action**, with the kind of+prompt you would actually type to your AI. -![TI DRV8323SR gate-driver board, rendered in 3D](fz-3d.png)+--- -![DRV8411A copper layout in the Fusion Electronics editor](fz-2d.png)+## Find any design and open it, just by asking -![ST VL53L8 ToF sensor breakout, populated board](fz-sensor.png)+> **You:** "Find the BME690 molecule in our cloud and open it" -## Install (via Adom Desktop)+![AI finds and opens a cloud design](screenshots/readme-find-open.png)++The bridge's **APS cloud search** (`fusion_aps_search` + `fusion_aps_open`) finds the file+across your entire Autodesk team hub in seconds. The old way walked folder by folder and+took 30+ minutes; this hits Autodesk's server-side index instead. The design opens straight+into Fusion's package view, where the **schematic, the board, and the 3D model** are all+visible at once, along with every version in the tree. This is the everyday entry point:+stop hunting through folders, just name the board and it appears.++---++## Read the schematic++> **You:** "Open the schematic for the VL53 time-of-flight board"++![Schematic in Fusion](screenshots/readme-schematic.png)++Search resolves the right design and brings up its **schematic** (top left), wired to the+same project as the board and 3D views. Because search is hub-wide, you can pull up any+teammate's design by name without knowing which folder it lives in. The bridge proved this+on real Adom parts: VL53 time-of-flight molecules, BME690 gas sensors, WS2812 / SK6812 LED+boards, and more.++---++## See your board in 3D++> **You:** "Show me the 3D view of this board"++![3D board view](screenshots/readme-3d-board.png)++The AI opens the **3D PCB window** for you (`fusion_show_3d_board`), no workspace navigation+required. Here is a populated WS2812B LED strip: the green board, all eight addressable LEDs+placed, and the mounting standoffs, rendered exactly as it will be manufactured. Perfect for+a quick design review or a client-ready shot, opened with a single sentence.++---++## Lay out the 2D board++> **You:** "Open the board layout"++![2D board layout in the Electronics editor](screenshots/readme-2d-board.png)++This is Fusion's **Electronics editor** (`fusion_show_2d_board`): copper traces, the layer+stack (top and bottom copper, silkscreen, soldermask), the live footprints panel, and the+MANUFACTURING and RULES tabs. Everything you need to route a board and prep it for+fabrication, all reachable through the AI.++---++## Export production-ready gerbers++> **You:** "Export the gerbers for this board"++![The 2D board the gerbers are generated from](screenshots/readme-2d-board.png)++One sentence runs `fusion_export_gerbers` and produces the **full manufacturing set**, ready+to hand to a fab. On the WS2812 board above that was **11 files**:  ```-adom-desktop bridge_install '{"manifestUrl":"https://wiki.adom.inc/api/v1/pages/adom-desktop-fusion-bridge/files/adom-bridge-fusion-manifest.json"}'+GTL GBL  top / bottom copper          GTS GBS  top / bottom soldermask+GTO GBO  top / bottom silkscreen      GTP GBP  top / bottom paste+GKO      board outline                XLN      Excellon drill+gerber_job.gbrjob                     job file ``` -AD downloads the manifest + zip, sha256-verifies, and caches it; the cached version supersedes the copy bundled in the AD installer. Manage with `bridge_list` / `bridge_kill` / `bridge_log_read`.+No exporting by hand, no CAM dialog spelunking. Ask, and the set is ready.++--- -## What it does+## Export the 3D model (STEP / 3MF / OBJ / USDZ / IGES / STL) -- **Launch + drive Fusion** — `fusion_start`, dialog/recovery handling, window screenshots, key/click.-- **Electronics + exports** — open schematic/board, STEP / IGES / STL / 3MF / USDZ / OBJ / DXF / DWG / Gerbers, BOM / CPL, `.lbr` import/export, silkscreen capture, InstaPCB design rules.-- **Cloud files** — `fusion_walk_cloud_tree`, `fusion_search_cloud_files`, and **fast indexed search** via `fusion_aps_search` (Autodesk Platform Services Data Management index — seconds, not the multi-minute folder walk).-- **Self-reporting health** — serves `/status` (the manifest `healthEndpoint`) with a `{led, summary, tooltip}` GUI chip; every spawn logs to `~/.adom/bridge-logs/fusion360.log`.+> **You:** "Export this board as a STEP file" -`fusion_aps_*` (status / set_client_id / signin / search / get) run the bridge's own PKCE OAuth against APS — see the `fusion-aps-search` and `fusion-aps-signin` skills for the setup.+![3D board exported as a CAD model](screenshots/readme-3d-board.png) -## ⚡ Fast cloud search (APS) — find any team design in seconds+From the 3D view, `fusion_export_step` wrote a **9.1 MB STEP** of the populated board (full+component geometry). The bridge exports the whole family of CAD and mesh formats too: 3MF,+OBJ, USDZ, IGES, STL, plus DXF/DWG for 2D. Drop the result into a renderer, a mechanical+assembly, a web viewer, or a slicer. -Searching your Fusion 360 cloud files the normal way (the in-app data API) takes **30+ minutes** on a real team hub — it has to walk folders one at a time. This bridge instead queries **Autodesk Platform Services (APS)**, Autodesk's **server-side index**, so the same search returns in **seconds**. Live-proven: searching "Molecule" across a 16-project hub returned 37 real files in ~12 seconds.+--- -It also works with **Fusion closed** — it's pure HTTPS against the cloud.+## Set manufacturing design rules -### What you can do (verbs)+> **You:** "Apply JLCPCB 2-layer design rules to this board" -| Verb | Does |-|---|---|-| `fusion_aps_search {query}` | Fast name search across every project in the team hub. Newest-first, shows which project each file is in. Scope with `{projectId}` for an even faster single-project search. |-| `fusion_aps_browse {}` / `{projectId}` / `{folderId}` | Browse hubs → projects → folders → files, no Fusion needed (a cloud file explorer). |-| `fusion_aps_open {query}` | Search by name and **open the best match in Fusion** — works for any file, however deeply nested (opens by the file's exact cloud URN). Returns immediately; the open finishes in the background (poll `fusion_get_app_state`), or pass `{wait:true}`. |-| `fusion_aps_recent {limit?}` | Most-recently-modified designs across the team hub, newest-first (great for "what changed today?"). |-| `fusion_aps_file_info {query}` | Version history for a design — how many versions, who last touched it, when, and size. |-| `fusion_aps_status {}` | Is it configured? signed in? token live? Plus the never-charge usage meter. |-| `fusion_aps_signin {}` | One-time per user — opens the Autodesk consent, captures the token. |-| `fusion_aps_set_client_id {clientId}` | Set the org's APS Client ID. |+`fusion_set_design_rules` loads industry-tested, **fab-grade DRC** into the open board so+your layout matches what the manufacturer can actually build (trace/space, drill, annular+ring, board thickness 1.6 mm, 1 oz copper, and so on), then you re-run DRC clean. JLCPCB+2-layer and 4-layer profiles ship today. More fab profiles (PCBWay, OSHPark, custom board+houses) are on the roadmap; see Status below. -### 🔑 Authentication — set up ONCE per company, each teammate just signs in once+--- -This is the important part, and it's designed to be painless:+## Generate a part with the modeling API -- **An admin sets up APS once for the whole company** — register a free APS app (the AI drives the entire setup; see the `fusion-aps-signin` skill), which produces a **Client ID**. That Client ID is a **public PKCE identifier (no secret)**, so it's safe to share across the company / bake into that org's bridge config.-- **Every teammate then just runs `fusion_aps_signin` once** — they sign in with **their own** Autodesk account (one consent click), and immediately get fast search of the team's shared files. **No plan, no credit card, no app registration, no setup for them.**-- **Per-organization, not platform-wide.** Each company that uses Adom runs this setup once for *itself* (so each org's usage rides its *own* free plan and sees its *own* data). Adom employees share Adom's Client ID; other orgs (e.g. NTX, Teaazers) each create their own. Don't ship one global Client ID for everyone.+> **You:** "Model a parametric JST-XH 6-pin connector" -### 💸 You are NEVER charged+![Parametric connector built by the modeling API](screenshots/readme-modeling.png) -The APS Free tier requires a card **only to verify identity** — there is no charge. The bridge enforces this three ways: the PKCE app type **structurally cannot call paid APIs**; the bridge calls **only free Data Management endpoints**; and a **monthly hard cap fails closed** before any quota. `fusion_aps_status` reports the live usage meter.+`fusion_run_modeling_script` runs the live Fusion modeling API in your session, so the AI can+**build geometry from a prompt**: sketches, extrudes, components, parameters. Here it built a+parametric JST-XH connector (housing, shrouded cavity, lock window, and N pins) from a family+table plus pin count. This is the **free** path to programmatic CAD; Autodesk's cloud Fusion+Automation API bills per processing hour, this runs in your own session for nothing. -### Getting started+--- -1. `fusion_aps_status` — it tells you exactly what's next (configure / sign in / ready).-2. First time for a company: the AI drives the one-time APS app setup (`fusion-aps-signin` skill) → Client ID.-3. Each user: `fusion_aps_signin` once → `fusion_aps_search "<part name>"`.+## Fast cloud search (APS): one company setup, each teammate signs in once -Full reasoning + setup procedure live in the bundled skills: **`fusion-aps-search`** (why/architecture/auth model) and **`fusion-aps-signin`** (the AI-driven setup, step by step).+The cloud search above runs on **Autodesk Platform Services (APS)**. Setup is once per+company, then every teammate just signs in with their own Autodesk account: -## Source code+| Verb | What it does |+| --- | --- |+| `fusion_aps_search {query}` | Server-indexed search across the whole team hub |+| `fusion_aps_open {query}` | Find by name and open it (any folder depth) |+| `fusion_aps_browse` / `fusion_aps_recent` | Explore hubs/projects/folders; newest designs |+| `fusion_aps_file_info` / `fusion_aps_versions` | Version history: who changed what, when |+| `fusion_aps_download` / `fusion_aps_upload` | Pull a cloud file local, or upload a new one |+| `fusion_aps_create_folder` | Make a cloud folder | -The **canonical source is this wiki page** (`https://wiki.adom.inc/adom/adom-desktop-fusion-bridge`) — a git-backed page. A **GitHub backup mirror** is kept in lockstep at [`adom-inc/adom-desktop-fusion-bridge`](https://github.com/adom-inc/adom-desktop-fusion-bridge) (private).+**You are never charged.** The bridge calls only Autodesk's always-free Data Management+endpoints and hard-caps usage to the free tier, so a card on file (for Autodesk identity) is+never billed. Adom employees: install `adom/fusion-aps-adom` and your AI wires up the shared+app and your sign-in automatically.++---++## Install (via Adom Desktop)++```+adom-desktop bridge_install '{"manifestUrl":"https://wiki.adom.inc/api/v1/pages/adom-desktop-fusion-bridge/files/adom-bridge-fusion-manifest.json"}'+``` -The full source is also published right here on the wiki page — no GitHub account needed:+Then just talk to your AI with Fusion installed. To *open* a design, Fusion needs to be+running (`fusion_start` launches it); cloud *search* works even with Fusion closed. -| Download | What it is | How to use |-|---|---|---|-| [`adom-bridge-fusion-source.tar.gz`](https://wiki.adom.inc/api/v1/pages/adom-desktop-fusion-bridge/files/adom-bridge-fusion-source.tar.gz) | Clean source tree, no `.git`. | `tar xzf adom-bridge-fusion-source.tar.gz && cd adom-bridge-fusion/` |-| [`adom-bridge-fusion.bundle`](https://wiki.adom.inc/api/v1/pages/adom-desktop-fusion-bridge/files/adom-bridge-fusion.bundle) | Git bundle with full commit history. | `git clone adom-bridge-fusion.bundle adom-bridge-fusion && cd adom-bridge-fusion && git log` |+## Status -> The original home in `adom-inc/adom-desktop` → `plugins/fusion360/` is now a **frozen first-run fallback only** — stale, not canonical. See `STALE_SEED_README.md` there.+Proven live on real Adom designs (WS2812 / SK6812 LED boards, BME690, VL53 molecules):+cloud search + open, 2D/3D board views, gerber export, STEP/3D export, JLCPCB design rules,+and the modeling API. On the roadmap: more fab design-rule profiles (PCBWay, OSHPark, custom+board houses) and a one-step library import from `adom-lbr` / `chip-fetcher` into Fusion.  ## Platforms -Windows (full) and macOS (Fusion runs there; add-in paths handled). **Linux is unsupported** — Autodesk doesn't ship Fusion 360 for Linux, so there's no host app for the add-in to attach to.+Windows and macOS (Fusion 360 runs on both; the add-in install paths are handled+automatically). Python 3.11+. -## Contributing+## Source -Clone the bundle, make changes, and email a patch (`git format-patch origin/main..HEAD --stdout`) to **`[email protected]`**, or open a PR once the GitHub mirror is public. Useful targets: newer Fusion versions, more export formats, faster cloud search.+Canonical: this wiki page. Backup mirror: `github.com/adom-inc/adom-desktop-fusion-bridge`.
package.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-desktop-fusion-bridge",-  "version": "1.4.9",+  "version": "1.5.0",   "type": "app",   "description": "Drive Autodesk Fusion 360 from the cloud via Adom Desktop: 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 with browse/recent/versions, cloud download/upload and folder creation, and in-app parametric modeling. Never-charge: APS calls are capped to the free tier.",   "dependencies": {},
page.json+1−1
@@ -1,6 +1,6 @@ {   "slug": "adom-desktop-fusion-bridge",-  "version": "1.4.9",+  "version": "1.5.0",   "type": "app",   "description": "Drive Autodesk Fusion 360 from the cloud via Adom Desktop: 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 with browse/recent/versions, cloud download/upload and folder creation, and in-app parametric modeling. Never-charge: APS calls are capped to the free tier.",   "dependencies": {},
screenshots/readme-2d-board.pngadded
⋯ 1 unchanged line ⋯
screenshots/readme-3d-board.pngadded
⋯ 1 unchanged line ⋯
screenshots/readme-find-open.pngadded
⋯ 1 unchanged line ⋯
screenshots/readme-modeling.pngadded
⋯ 1 unchanged line ⋯
screenshots/readme-schematic.pngadded
⋯ 1 unchanged line ⋯