diff -ruN adom-bridge.orig/SKILL.md adom-bridge/SKILL.md --- adom-bridge.orig/SKILL.md 2026-10-22 14:27:21.773782530 -0500 +++ adom-bridge/SKILL.md 2026-10-22 14:33:15.625802453 -0500 @@ -9,7 +9,7 @@ > **The CLI is `adom-bridge`** (renamed from `adom-bridge-cli` in v2.0.33 — the `-cli` was noise on Linux). Use `adom-bridge `. The old `adom-bridge-cli` name still works (the pkg links both), so existing scripts don't break — but prefer `adom-bridge` going forward. On Windows the CLI file stays `adom-bridge-cli.exe` (the GUI app owns `adom-bridge.exe` there). -**Install surface:** the canonical install page is `apps/adom-bridge` on the Adom wiki — it hosts the Linux CLI (`docker_binary`), the Windows installer (`.exe`), and the four sibling skills (pup, kicad-bridge, fusion-bridge, + this one). The gallia `adom-bridge-discovery` skill surfaces this page on any related user query. `adom-bridge setup_desktop` also returns a dynamic installer URL pulled from the latest GitHub release. +**Install surface:** the wiki page [`adom/adom-bridge`](https://wiki.adom.inc/adom/adom-bridge) hosts the Windows installer (a release download) and this package (the Linux CLI plus the `adom-bridge-*` skill set): `adom-wiki pkg install adom/adom-bridge`. `adom-bridge setup_desktop` also returns the installer URL. **First-time setup?** If the user hasn't installed the desktop app yet, see the Setup section below to walk them through downloading, installing, and connecting the app. @@ -18,10 +18,10 @@ adom-bridge ping ``` -**Companion skills** (installed alongside this one from the wiki): -- `adom-bridge-kicad` — KiCad bridge: launch editors, open designs, install libraries, run DRC, window capture + keyboard/click automation (`plugins/kicad/SKILL.md`) -- `adom-bridge-fusion` — Fusion 360 bridge: launch, open designs, STEP/GLB/.lbr import-export, BOM + API queries, Fusion screenshots (`plugins/fusion360/SKILL.md`) -- `pup` — browser automation (Puppeteer-style): open URLs, screenshot, eval JS, multi-session Chrome (`gallia/skills/pup/SKILL.md`) +**Bridge skills** (each bridge ships its own skills from its own wiki page; `adom-bridge sync_skills` installs them for every bridge the connected desktop has): +- KiCad bridge: launch editors, open designs, install libraries, run DRC, window capture + keyboard/click automation. `adom-wiki pkg install adom/kicad-bridge` +- Fusion 360 bridge: launch, open designs, STEP/GLB/.lbr import-export, BOM + API queries, Fusion screenshots. `adom-wiki pkg install adom/fusion-bridge` +- pup (the AI's own real Chrome): open URLs, screenshot, eval JS, multi-session profiles. `adom-wiki pkg install adom/pup-bridge` ## How It Works @@ -309,7 +309,7 @@ **What requires the CLI fallback:** verbs returning a structured `errorCode:"cli_required"` from this endpoint — currently `pull_file`, `send_files`, `shell_execute`. These use binary streaming or multi-minute approval polling that doesn't fit a single synchronous HTTP request. `GET /status` returns the full list at runtime so callers can branch defensively. -Full integration guide (loopback trust model, recipes for Hydrogen startup/shutdown, retry/backoff patterns, port-discovery code in Rust + TypeScript) lives in [`skills/DIRECT_API.md`](DIRECT_API.md) in this repo, and as a wiki asset attached to `apps/adom-bridge`. +Full integration guide (loopback trust model, recipes for Hydrogen startup/shutdown, retry/backoff patterns, port-discovery code in Rust + TypeScript) lives in [`skills/DIRECT_API.md`](DIRECT_API.md) in this repo, and as a file on the `adom/adom-bridge` wiki page. #### Embedded mode — ab bundled inside Hydrogen (v1.8.42+) @@ -422,7 +422,7 @@ | `bridge_pause` / `bridge_resume` | Flip a routing flag so a bridge's verbs fail-fast with `bridge_paused` (or resume). Does NOT kill the process. | | `bridge_dev_mode` | **The DEV PIN** (`{"name":"kicad","on":true}`): freeze that ONE bridge against ALL automatic updates (the 4h sweep, on-launch sync, on-use auto-update, refresh_bridges) so a developer can modify its installed cache without ab pulling the release over their work. `on:false` releases it. `bridge_list` shows `devPinned:true` and the ab GUI card shows an amber "dev pin" badge with a one-click Unpin. **Etiquette: if a bridge shows `devPinned:true`, a human is mid-development on it - never unpin or force-update it to "get the latest" without asking them.** If YOU are about to edit a bridge's installed files, pin it FIRST. | -**Naming convention for published bridges (3rd-party authors, read this):** when you publish a bridge to the Adom wiki, its **page title / catalog descriptive name MUST start with `Adom Bridge - `** (spaced hyphen) — e.g. `Adom Bridge - Altium Bridge`, matching the bundled bridges (`Adom Bridge - Puppeteer Bridge`, `Adom Bridge - KiCad Bridge`). This keeps every ab bridge grouped with consistent names in app-index pages instead of scattering as bare slugs. It applies to the **wiki/catalog title only** — NOT `bridge.json` `displayName` (the in-app chip label, which stays tool-descriptive like `Altium Designer`) or `name` (the lowercase slug). Full authoring walkthrough: the `adom-bridge-bridge-sdk` skill (the `adom-bridge-sdk` wiki page) + its fill-in-the-blanks templates. +**Naming convention for published bridges (3rd-party authors, read this):** when you publish a bridge to the Adom wiki, give its **page title** the form the live bridge pages use: **` - the Bridge`** (spaced hyphen), e.g. `KiCad - the KiCad Bridge`, `Fusion - the Fusion 360 Bridge`, `Altium - the Altium Bridge` (pup, which is a browser rather than a tool bridge, is `Pup - the AI's own browser`). It applies to the **wiki/catalog title only**, NOT `bridge.json` `displayName` (the in-app chip label, which stays tool-descriptive like `Altium Designer`) or `name` (the lowercase slug). Full authoring walkthrough: the `adom-bridge-sdk` skill (ships in this package) and its `adom-bridge-sdk-*` sub-skills. **Typical "am I on the latest bridges?" flow:** ```bash diff -ruN adom-bridge.orig/skills/adom-bridge/SKILL.md adom-bridge/skills/adom-bridge/SKILL.md --- adom-bridge.orig/skills/adom-bridge/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge/SKILL.md 2026-10-22 14:33:15.757806607 -0500 @@ -9,7 +9,7 @@ > **The CLI is `adom-bridge`** (renamed from `adom-bridge-cli` in v2.0.33 — the `-cli` was noise on Linux). Use `adom-bridge `. The old `adom-bridge-cli` name still works (the pkg links both), so existing scripts don't break — but prefer `adom-bridge` going forward. On Windows the CLI file stays `adom-bridge-cli.exe` (the GUI app owns `adom-bridge.exe` there). -**Install surface:** the canonical install page is `apps/adom-bridge` on the Adom wiki — it hosts the Linux CLI (`docker_binary`), the Windows installer (`.exe`), and the four sibling skills (pup, kicad-bridge, fusion-bridge, + this one). The gallia `adom-bridge-discovery` skill surfaces this page on any related user query. `adom-bridge setup_desktop` also returns a dynamic installer URL pulled from the latest GitHub release. +**Install surface:** the wiki page [`adom/adom-bridge`](https://wiki.adom.inc/adom/adom-bridge) hosts the Windows installer (a release download) and this package (the Linux CLI plus the `adom-bridge-*` skill set): `adom-wiki pkg install adom/adom-bridge`. `adom-bridge setup_desktop` also returns the installer URL. **First-time setup?** If the user hasn't installed the desktop app yet, see the Setup section below to walk them through downloading, installing, and connecting the app. @@ -18,10 +18,10 @@ adom-bridge ping ``` -**Companion skills** (installed alongside this one from the wiki): -- `adom-bridge-kicad` — KiCad bridge: launch editors, open designs, install libraries, run DRC, window capture + keyboard/click automation (`plugins/kicad/SKILL.md`) -- `adom-bridge-fusion` — Fusion 360 bridge: launch, open designs, STEP/GLB/.lbr import-export, BOM + API queries, Fusion screenshots (`plugins/fusion360/SKILL.md`) -- `pup` — browser automation (Puppeteer-style): open URLs, screenshot, eval JS, multi-session Chrome (`gallia/skills/pup/SKILL.md`) +**Bridge skills** (each bridge ships its own skills from its own wiki page; `adom-bridge sync_skills` installs them for every bridge the connected desktop has): +- KiCad bridge: launch editors, open designs, install libraries, run DRC, window capture + keyboard/click automation. `adom-wiki pkg install adom/kicad-bridge` +- Fusion 360 bridge: launch, open designs, STEP/GLB/.lbr import-export, BOM + API queries, Fusion screenshots. `adom-wiki pkg install adom/fusion-bridge` +- pup (the AI's own real Chrome): open URLs, screenshot, eval JS, multi-session profiles. `adom-wiki pkg install adom/pup-bridge` ## How It Works @@ -309,7 +309,7 @@ **What requires the CLI fallback:** verbs returning a structured `errorCode:"cli_required"` from this endpoint — currently `pull_file`, `send_files`, `shell_execute`. These use binary streaming or multi-minute approval polling that doesn't fit a single synchronous HTTP request. `GET /status` returns the full list at runtime so callers can branch defensively. -Full integration guide (loopback trust model, recipes for Hydrogen startup/shutdown, retry/backoff patterns, port-discovery code in Rust + TypeScript) lives in [`skills/DIRECT_API.md`](DIRECT_API.md) in this repo, and as a wiki asset attached to `apps/adom-bridge`. +Full integration guide (loopback trust model, recipes for Hydrogen startup/shutdown, retry/backoff patterns, port-discovery code in Rust + TypeScript) lives in [`skills/DIRECT_API.md`](DIRECT_API.md) in this repo, and as a file on the `adom/adom-bridge` wiki page. #### Embedded mode — ab bundled inside Hydrogen (v1.8.42+) @@ -422,7 +422,7 @@ | `bridge_pause` / `bridge_resume` | Flip a routing flag so a bridge's verbs fail-fast with `bridge_paused` (or resume). Does NOT kill the process. | | `bridge_dev_mode` | **The DEV PIN** (`{"name":"kicad","on":true}`): freeze that ONE bridge against ALL automatic updates (the 4h sweep, on-launch sync, on-use auto-update, refresh_bridges) so a developer can modify its installed cache without ab pulling the release over their work. `on:false` releases it. `bridge_list` shows `devPinned:true` and the ab GUI card shows an amber "dev pin" badge with a one-click Unpin. **Etiquette: if a bridge shows `devPinned:true`, a human is mid-development on it - never unpin or force-update it to "get the latest" without asking them.** If YOU are about to edit a bridge's installed files, pin it FIRST. | -**Naming convention for published bridges (3rd-party authors, read this):** when you publish a bridge to the Adom wiki, its **page title / catalog descriptive name MUST start with `Adom Bridge - `** (spaced hyphen) — e.g. `Adom Bridge - Altium Bridge`, matching the bundled bridges (`Adom Bridge - Puppeteer Bridge`, `Adom Bridge - KiCad Bridge`). This keeps every ab bridge grouped with consistent names in app-index pages instead of scattering as bare slugs. It applies to the **wiki/catalog title only** — NOT `bridge.json` `displayName` (the in-app chip label, which stays tool-descriptive like `Altium Designer`) or `name` (the lowercase slug). Full authoring walkthrough: the `adom-bridge-bridge-sdk` skill (the `adom-bridge-sdk` wiki page) + its fill-in-the-blanks templates. +**Naming convention for published bridges (3rd-party authors, read this):** when you publish a bridge to the Adom wiki, give its **page title** the form the live bridge pages use: **` - the Bridge`** (spaced hyphen), e.g. `KiCad - the KiCad Bridge`, `Fusion - the Fusion 360 Bridge`, `Altium - the Altium Bridge` (pup, which is a browser rather than a tool bridge, is `Pup - the AI's own browser`). It applies to the **wiki/catalog title only**, NOT `bridge.json` `displayName` (the in-app chip label, which stays tool-descriptive like `Altium Designer`) or `name` (the lowercase slug). Full authoring walkthrough: the `adom-bridge-sdk` skill (ships in this package) and its `adom-bridge-sdk-*` sub-skills. **Typical "am I on the latest bridges?" flow:** ```bash diff -ruN adom-bridge.orig/skills/adom-bridge-anywhere/SKILL.md adom-bridge/skills/adom-bridge-anywhere/SKILL.md --- adom-bridge.orig/skills/adom-bridge-anywhere/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-anywhere/SKILL.md 2026-10-22 14:32:06.134797437 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-anywhere -description: Adom Anywhere, the full map of what a LOCAL third-party agent (Claude Desktop, Codex, Claude Code on Windows) can do with the Adom ecosystem from this PC, and where the boundary is. Covers what the Adom Bridge installer already gave you (adom-bridge-cli.exe and adom-wiki.exe on PATH, the auto-linked skill set), driving the PC and pup locally, authoring and managing wiki pages with adom-wiki, the ecosystem skills ab delivers daily (adom core, adom-wiki-cli), and the one hard boundary; running Linux binaries published on the wiki needs an Adom container, which is what Hydrogen provides. Use when a user on Claude Desktop or Codex asks what they can do with Adom, how to use the wiki from their PC, or why a wiki package will not run locally. +description: >- + For an AI running natively on Windows (Claude Desktop, Codex, Claude Code on the PC), not in + an Adom container: what you can do with Adom from this PC and where the boundary is. Use + when asked what can I do with Adom here, how to use the wiki from my PC, or why a wiki + package won't run locally. --- # Adom Anywhere: the Adom ecosystem from any local agent diff -ruN adom-bridge.orig/skills/adom-bridge-anywhere-windows/SKILL.md adom-bridge/skills/adom-bridge-anywhere-windows/SKILL.md --- adom-bridge.orig/skills/adom-bridge-anywhere-windows/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-anywhere-windows/SKILL.md 2026-10-22 14:32:06.134797437 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-anywhere-windows -description: The Windows translation layer for Adom Anywhere. The Adom ecosystem skills that Adom Bridge delivers to a local agent (Claude Desktop, Codex, Claude Code on this PC) were written for Adom LINUX CONTAINERS; this skill is the authoritative table of what changes on a Windows PC that has no container. Read when a delivered skill carries the ADOM ANYWHERE NOTE banner, when an example says adom-cli or bash or ~/project and you are on Windows, when you need to run adom-wiki on Windows with auth, or when a wiki package install fails because its payload is a Linux binary. Triggers include adom anywhere windows, adom-cli not found, container-only skill, wiki cli on windows, and ADOM ANYWHERE NOTE. +description: >- + For an AI running natively on Windows, not in an Adom container: what changes when a + delivered Adom skill assumes a Linux container. Use when a skill shows the ADOM ANYWHERE + NOTE banner, adom-cli is not found, an example says bash or ~/project, or adom-wiki needs + auth on Windows. --- # Adom Anywhere on Windows: the translation layer diff -ruN adom-bridge.orig/skills/adom-bridge-auth/SKILL.md adom-bridge/skills/adom-bridge-auth/SKILL.md --- adom-bridge.orig/skills/adom-bridge-auth/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-auth/SKILL.md 2026-10-22 14:33:15.637802831 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-auth -description: "Sign in to Adom Bridge and connect a cloud container to the user's desktop: the Connections panel 'Sign in to Adom' browser flow, auto-discover servers from the user's Adom Cloud profile (zero JSON paste), register_container from a cloud container, the one-command setup_desktop flow, configure ab from the CLI, the cloud key-value config keys (bridge.container.*), the paste-JSON fallback, and sign-out. Trigger words: sign in to Adom Bridge, connect container to desktop, register_container, setup_desktop, auto-discover servers, connect my desktop, server JSON, cloud config, sign out." +description: >- + Sign in to Adom Bridge and connect a cloud container to the user's desktop: Connections + panel sign-in, auto-discovered servers, register_container, setup_desktop, sign-out. Use + when asked to sign in to Adom Bridge, connect my desktop, connect a container to my PC, or + fix the server config. --- # Adom Bridge — sign-in, auth, and cloud configuration diff -ruN adom-bridge.orig/skills/adom-bridge-bridges-guide/SKILL.md adom-bridge/skills/adom-bridge-bridges-guide/SKILL.md --- adom-bridge.orig/skills/adom-bridge-bridges-guide/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-bridges-guide/SKILL.md 2026-10-22 14:33:15.641802957 -0500 @@ -1,17 +1,10 @@ --- -name: adom-bridge-sdk-guide -description: > - Consumer guide to Adom Bridge bridges: what a bridge is, the Bridges sidebar cards, - bridge status and the bridge LED colors (green/yellow/red/gray), bridge lifecycle - (spawn, stable port, single instance, auto-respawn, duplicate collapse), how to - install a bridge (bridge_install with a manifestUrl), bridge updates (refresh_bridges, - bridge_check_updates, the 4-hour auto-sync from each bridge's wiki page), the bridge - console and logs (bridge_log_read and the ab lifecycle log), bridge management verbs - (bridge_list, bridge_info, bridge_detail, bridge_kill, bridge_pause, bridge_resume, - bridge_readiness), and sync_skills for pulling each bridge's own skill package. - Trigger words: bridge status, bridge LED, install a bridge, bridge_install, - refresh_bridges, bridge console, bridge lifecycle, sync_skills, bridge updates, - bridge_list, bridge_kill, bridge stuck, bridge offline, bridge not running. +name: adom-bridge-bridges-guide +description: >- + Consumer guide to Adom Bridge bridges: what a bridge is, status LEDs, lifecycle, install, + updates, logs and the bridge_* management verbs. Use when a bridge is stuck, offline or not + running, to install a bridge, check for bridge updates, read the bridge console, or + sync_skills. --- # Adom Bridge bridges — the consumer lifecycle guide diff -ruN adom-bridge.orig/skills/adom-bridge-caller-identity/SKILL.md adom-bridge/skills/adom-bridge-caller-identity/SKILL.md --- adom-bridge.orig/skills/adom-bridge-caller-identity/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-caller-identity/SKILL.md 2026-10-22 14:33:15.645803084 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-caller-identity -description: Fix `caller_identity_required` refusals and tell ab who is asking. Read when an Adom Bridge verb is refused with caller_identity_required, when you need to set aiThread / ADOM_AI_THREAD / ADOM_CONTAINER_NAME, when the user asks "which thread is driving my machine" or "identify my thread", when you are writing a bridge that calls ab verbs back and must forward X-Adom-Caller-* headers or set X-Adom-Caller-Delegate, or when you need to understand caller identity, delegation chains, thread name and container name attribution on relayed commands. +description: >- + Fix caller_identity_required refusals and tell ab which AI thread is asking (aiThread, + ADOM_AI_THREAD, X-Adom-Caller-* headers, delegation). Use when a verb is refused with + caller_identity_required, or asked which thread is driving my machine or to identify my + thread. --- # Caller identity: telling Adom Bridge who is asking diff -ruN adom-bridge.orig/skills/adom-bridge-cli-guide/SKILL.md adom-bridge/skills/adom-bridge-cli-guide/SKILL.md --- adom-bridge.orig/skills/adom-bridge-cli-guide/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-cli-guide/SKILL.md 2026-10-22 14:32:06.138797606 -0500 @@ -1,6 +1,9 @@ --- -name: adom-bridge-guide -description: Use when working with the adom-bridge CLI itself - how to run desktop verbs, discover commands (adom-bridge commands, help topics), address targets with --target, start the serve relay with --supervise, read the status/durationMs/timeoutSeconds response shape, stream long ops with watch, or sweep the screenshot cache with janitor. +name: adom-bridge-cli-guide +description: >- + How to use the adom-bridge CLI itself: running verbs, finding commands (commands, help), + --target, serve --supervise, the status/durationMs response shape, watch and janitor. Use + when unsure how to call a verb, find a command, start the relay, or read a CLI response. --- # The adom-bridge CLI diff -ruN adom-bridge.orig/skills/adom-bridge-demo-kit/SKILL.md adom-bridge/skills/adom-bridge-demo-kit/SKILL.md --- adom-bridge.orig/skills/adom-bridge-demo-kit/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-demo-kit/SKILL.md 2026-10-22 14:33:15.653803336 -0500 @@ -1,6 +1,9 @@ --- name: adom-bridge-demo-kit -description: Run a guided on-screen demo or tour on the user's Windows desktop through Adom Bridge - the desktop_demo_panel transport (play/pause/next/back the USER controls), narration captions, and the branded ghost cursor, wired together into one pacing loop. Use when asked to give a demo, run a tour, walk the user through an app, or build a scripted show (altium_demo, kicad tour, fusion demo, or your own). +description: >- + Run a guided on-screen demo or tour on the user's Windows desktop: the desktop_demo_panel + the user controls, narration captions and the branded ghost cursor. Use when asked to give a + demo, run a tour, walk the user through an app, or build a scripted show. --- # The Adom Bridge demo kit: give the user a show they control diff -ruN adom-bridge.orig/skills/adom-bridge-direct-api/SKILL.md adom-bridge/skills/adom-bridge-direct-api/SKILL.md --- adom-bridge.orig/skills/adom-bridge-direct-api/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-direct-api/SKILL.md 2026-10-22 14:33:15.657803460 -0500 @@ -1,6 +1,9 @@ --- name: adom-bridge-direct-api -description: Direct HTTP API on the adom-bridge GUI. Use when authoring a sibling Tauri app (Hydrogen, future Adom-family apps) on the same Windows machine that needs to send commands into adom-bridge without spawning the CLI binary or going through the WebSocket relay. Local-only (loopback bind). +description: >- + Direct loopback HTTP API on the Adom Bridge app, for a sibling app on the same Windows PC + (e.g. Hydrogen) that sends commands into ab without the CLI or the WebSocket relay. +disable-model-invocation: true --- # Direct HTTP API — discover via `~/.adom/direct-api-port` diff -ruN adom-bridge.orig/skills/adom-bridge-discovery/SKILL.md adom-bridge/skills/adom-bridge-discovery/SKILL.md --- adom-bridge.orig/skills/adom-bridge-discovery/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-discovery/SKILL.md 2026-10-22 14:32:53.528995628 -0500 @@ -1,7 +1,11 @@ --- name: adom-bridge-discovery user-invocable: false -description: "Reaches the user's Windows/Mac laptop desktop from this container via adom-bridge — run commands & scripts on the laptop, list/kill processes, restart apps (e.g. Explorer), desktop/app-window screenshots, send/pull files, notifications, list/focus/flash windows, RDP tunnels. Also launches and drives KiCad (schematics/boards/symbols/footprints, DRC, library install, 3D viewer, automation) and Fusion 360 (.f3d/.f3z, import/export STEP/GLB/.lbr, BOM/parameters, Fusion API). Also covers Puppeteer/pup real-Chrome automation (pup_screenshot, pup_eval, pup_navigate, multi-session profiles, ralph-loop), WSL distro control + golden-image bakes (wsl_exec, wsl_exec_async, wsl_import/export/unregister), the relay server (adom-bridge serve), and connection setup. Trigger words: run command on laptop, run on my pc, restart explorer, restart a program, kill a process, list processes, taskkill, screenshot laptop/desktop/windows/fusion/kicad, list windows, focus window, send file to laptop, pull file from laptop, desktop notification, launch KiCad, open in KiCad, run DRC, launch Fusion, import/export STEP, export GLB/lbr, Fusion API, pup, puppeteer, real Chrome, browser automation, flash taskbar, open URL on desktop, RDP, tunnel, WSL, golden image, adom-bridge, bridge to my pc, windows app, KiCad bridge, Fusion bridge." +description: >- + Reach the user's Windows or Mac desktop via adom-bridge: shell, screenshots, windows, files, + notifications, KiCad, Fusion 360, pup (real Chrome), WSL, RDP. Use when asked to run + something on my PC or laptop, screenshot my desktop, send a file to my laptop, open in KiCad + or Fusion, bridge to my pc. --- # adom-bridge — discovery & install @@ -58,30 +62,32 @@ ## 4 — Install (if missing or stale) -The canonical install is the adompkg (bundles the Linux CLI **and** the skill set, which symlink into `~/.claude/skills/`): +The canonical install is the wiki package (it bundles the Linux CLI **and** the skill set, which land in `~/.claude/skills/`): ```bash -adompkg install adom/adom-bridge # → ~/.local/bin/adom-bridge + the adom-bridge-* skills +adom-wiki pkg install adom/adom-bridge # → ~/.local/bin/adom-bridge + the adom-bridge-* skills adom-bridge --version # confirm ``` -`adom-bridge status` reports the latest published version; if your local CLI is older, re-run `adompkg install adom/adom-bridge` to refresh the binary **and** the skills atomically. (Wiki page: `https://wiki.adom.inc/adom/adom-bridge`.) **If you hand-installed only the binary, you won't have the skill set — re-run the adompkg install so the discovery/main/pup/kicad/fusion/direct-api/installer skills land too.** +`adom-bridge status` reports the latest published version; if your local CLI is older, run `adom-wiki pkg update adom/adom-bridge` to refresh the binary **and** the skills atomically. (Wiki page: `https://wiki.adom.inc/adom/adom-bridge`.) **If you hand-installed only the binary, you won't have the skill set — run `adom-wiki pkg install adom/adom-bridge` so the skill set lands too.** ## 5 — What you get once installed -`adompkg install` lays down sibling skills that document the features in depth — they appear in future skill searches: +The package lays down sibling skills that document the features in depth; each bridge ships its own skills from its own wiki page: | Skill | Covers | |---|---| | `adom-bridge` (main) | the full verb reference + shell/process/file/window/WSL/tunnel patterns, status+durationMs result shape | -| `adom-bridge-pup` | Puppeteer real-Chrome automation (pup_open_window/navigate/screenshot/eval, multi-session profiles) | -| `adom-bridge-kicad` | KiCad bridge (open schematics/boards, DRC, library install, 3D viewer, automation) | -| `adom-bridge-fusion` | Fusion 360 bridge (.f3d/.f3z, STEP/GLB/.lbr import-export, BOM/params, Fusion API) | -| `adom-bridge-direct-api` | the loopback HTTP API for sibling apps (Hydrogen) | -| `adom-bridge-installer` | invoking the Windows installer (silent/NOLAUNCH) | +| `adom-bridge-verbs` | every ab-core verb, by category | +| `adom-bridge-bridges-guide` | installing, updating and managing bridges | +| pup (`adom-wiki pkg install adom/pup-bridge`) | Puppeteer real-Chrome automation (pup_open_window/navigate/screenshot/eval, multi-session profiles) | +| KiCad (`adom-wiki pkg install adom/kicad-bridge`) | KiCad bridge (open schematics/boards, DRC, library install, 3D viewer, automation) | +| Fusion 360 (`adom-wiki pkg install adom/fusion-bridge`) | Fusion 360 bridge (.f3d/.f3z, STEP/GLB/.lbr import-export, BOM/params, Fusion API) | + +`adom-bridge sync_skills` installs the skills for every bridge the connected desktop has. But you don't need to read those to act — **`adom-bridge commands` is always the live source of truth** for what verbs exist right now. ## 6 — Why this skill exists -adom-bridge is its own repo with its own release cadence; the deep feature docs ship with the binary (so a binary release doesn't force a gallia release). This skill is the stable, always-present entry point — its one job is to get you to `adom-bridge commands`, the runtime catalog, instead of guessing. +adom-bridge has its own release cadence, and the deep feature docs ship with the binary. This skill's one job is to get you to `adom-bridge commands`, the runtime catalog, instead of guessing. diff -ruN adom-bridge.orig/skills/adom-bridge-embedded/SKILL.md adom-bridge/skills/adom-bridge-embedded/SKILL.md --- adom-bridge.orig/skills/adom-bridge-embedded/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-embedded/SKILL.md 2026-10-22 14:33:15.665803713 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-embedded -description: Adom Bridge's EMBEDDED mode under Hydrogen — what it means when Hydrogen owns ab, the lifecycle contract (ab stays up; exit when Hydrogen exits is opt-in flag-only), and embedded permissions in the CURRENT (v1.9.191) model where AB OWNS APPROVALS and MIRRORS each request to Hydrogen (Hydrogen posts decisions to /permission/resolve, reads /permission/state; the old auto_approve/forward-to-hd contract is gone), inspecting Hydrogen with hd_status and the hd_ verb family, and the read-only Hydrogen-managed relay entry. Use when reasoning about embedded vs standalone behavior, why ab survived (or should survive) an Hydrogen crash, why a gated relay command shows an ab dialog (and mirrors to Hydrogen), or how to drive/inspect Hydrogen. Note: Hydrogen's own setup commands over the loopback direct API are trusted-by-transport and never prompt. +description: >- + Adom Bridge embedded mode under Hydrogen: the lifecycle contract, approvals (ab owns the + prompt and mirrors it to Hydrogen), and inspecting Hydrogen with hd_status and the hd_* + verbs. Use when asked embedded vs standalone, why ab outlived a Hydrogen crash, or why an ab + approval dialog appeared. --- # Adom Bridge embedded mode (under Hydrogen) diff -ruN adom-bridge.orig/skills/adom-bridge-fonts/SKILL.md adom-bridge/skills/adom-bridge-fonts/SKILL.md --- adom-bridge.orig/skills/adom-bridge-fonts/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-fonts/SKILL.md 2026-10-22 14:32:06.138797606 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-fonts -description: Install and manage Windows fonts on the user's machine through adom-bridge's font verbs — list installed families, install a single .ttf/.otf per-user (no admin), uninstall one, or idempotently ensure the Adom brand fonts (Satoshi, JetBrains Mono, Familjen Grotesk) are installed so chat/prose renders in Satoshi instead of falling back to Segoe UI. Use when a font needs to be installed on the PC, when brand fonts are missing, when Hydrogen's setup needs font_ensure_brand, or when the user asks to add/remove a Windows font. Trigger words: install font, font_ensure_brand, font_install, font_list, font_uninstall, Satoshi, JetBrains Mono, Familjen Grotesk, brand fonts, add a font to Windows, missing font, per-user font, ensure brand fonts. +description: >- + Install and manage Windows fonts on the user's PC through adom-bridge's font verbs, + including the Adom brand fonts (Satoshi, JetBrains Mono, Familjen Grotesk). Use when asked + to install a font, add or remove a Windows font, when brand fonts are missing, or for + font_ensure_brand. --- # Windows font management — `font_*` verbs diff -ruN adom-bridge.orig/skills/adom-bridge-installer/SKILL.md adom-bridge/skills/adom-bridge-installer/SKILL.md --- adom-bridge.orig/skills/adom-bridge-installer/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-installer/SKILL.md 2026-10-22 14:33:15.673803964 -0500 @@ -1,6 +1,11 @@ --- name: adom-bridge-installer -description: How to invoke the Adom Bridge NSIS installer from a parent installer (especially Hydrogen's setup steps) — silent install, /NOLAUNCH switch for Hydrogen-managed bundling, live progress via the structured log file at %TEMP%\adom-bridge-install.log. Use when bundling ab inside another Windows installer, writing an install supervisor / setup-step UI, detecting ab's installed version, or upgrading an existing ab install programmatically. +description: >- + Invoke the Adom Bridge NSIS installer from a parent installer (e.g. Hydrogen's setup): + silent install, /NOLAUNCH, live progress from %TEMP%\adom-bridge-install.log. Use when + bundling ab inside another Windows installer, detecting its installed version, or upgrading + it programmatically. +disable-model-invocation: true --- # Adom Bridge installer integration @@ -306,7 +311,7 @@ 1. **Full ab GUI installer** — the actual desktop app (Tauri window, bundled bridges, relauncher). One per OS / architecture. 2. **CLI companion binary** — a separate executable that talks to ab over - the relay. Used by Hydrogen's WSL2 container, gallia builds, sibling-app + the relay. Used by Hydrogen's WSL2 container, cloud containers, sibling-app installers, cron jobs. Does NOT contain ab itself. Both ship together at the same version (single `python scripts/bump-version.py @@ -370,7 +375,7 @@ reads `.windows / .macos / .linux` for its GUI installer URL — it doesn't touch `.cli`. -For Hydrogen / gallia / Docker-side fetchers, prefer the typed lookup: +For Hydrogen / container-side fetchers, prefer the typed lookup: ```bash # Best: read the URL out of the manifest (so the filename can evolve) diff -ruN adom-bridge.orig/skills/adom-bridge-linux/SKILL.md adom-bridge/skills/adom-bridge-linux/SKILL.md --- adom-bridge.orig/skills/adom-bridge-linux/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-linux/SKILL.md 2026-10-22 14:32:06.138797606 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-linux -description: Adom Bridge on Linux (the AppImage, 2.1.175+) - installing and launching exactly one copy, self-update, the bundled EGL, what works on Linux and what is still Windows-only, and how to run it inside a Grok Bot agent computer, which is PAUSED while its agent is idle (wake it with grok_wake before you drive it). Read this before installing, updating or debugging Adom Bridge on a Linux machine, or when a Linux peer on the mesh answers target_not_found / ping unreachable. +description: >- + For Adom Bridge running on a Linux machine (the AppImage), not the adom-bridge CLI in a + container: install one copy, self-update, what is still Windows-only, Grok Bot computers + (wake with grok_wake). Use when installing, updating or debugging ab on Linux, or a Linux + mesh peer is unreachable. --- # Adom Bridge on Linux diff -ruN adom-bridge.orig/skills/adom-bridge-local-ai/SKILL.md adom-bridge/skills/adom-bridge-local-ai/SKILL.md --- adom-bridge.orig/skills/adom-bridge-local-ai/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-local-ai/SKILL.md 2026-10-22 14:33:15.677804091 -0500 @@ -1,6 +1,9 @@ --- name: adom-bridge-local-ai -description: Drive this Windows PC from a LOCAL AI tool (Claude Desktop, Claude Code, Codex, or any agent running on the same machine) through Adom Bridge's bundled CLI, adom-bridge-cli.exe. No relay, no cloud container, no --target. Use when the user says "Claude Desktop, control my PC", "use adom-bridge from Claude Code on Windows", "local AI, drive my desktop", or when you find adom-bridge-cli.exe on PATH. Covers the bundled CLI, the auto-linked consumer skills, loopback direct-API routing, and a starter verb cookbook. +description: >- + For an AI running natively on Windows (Claude Desktop, Claude Code, Codex), not in an Adom + container: drive this PC through the bundled adom-bridge-cli.exe, with no relay or --target. + Use when a local AI is asked to control my PC, or you find adom-bridge-cli.exe on PATH. --- # Adom Bridge from a local AI (same-PC, no relay) diff -ruN adom-bridge.orig/skills/adom-bridge-mesh/SKILL.md adom-bridge/skills/adom-bridge-mesh/SKILL.md --- adom-bridge.orig/skills/adom-bridge-mesh/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-mesh/SKILL.md 2026-10-22 14:33:15.685804342 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-mesh -description: The Adom Mesh (P1) - how one user's several Adom Bridges find and reach each other directly, and across networks through the Adom-hosted relay. Each ab has an ed25519 node identity and a QUIC endpoint; same-account peers are discovered through the Carbon KV directory and mDNS on the LAN; `--target ` tries the mesh first (direct, or via the relay) and falls back to the hc relay. Read this to understand route.via, desktop_mesh_status (relay, relayConnected), desktop_mesh_peers, and what the mesh can and cannot reach yet. +description: >- + The Adom Mesh: how one user's Adom Bridges find and reach each other directly or through the + Adom relay (node identity, peer discovery, route.via). Use when asked about + desktop_mesh_status or desktop_mesh_peers, how --target routes between machines, or why a + peer is unreachable. --- # The Adom Mesh (phase P0) diff -ruN adom-bridge.orig/skills/adom-bridge-multi-machine/SKILL.md adom-bridge/skills/adom-bridge-multi-machine/SKILL.md --- adom-bridge.orig/skills/adom-bridge-multi-machine/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-multi-machine/SKILL.md 2026-10-22 14:33:15.689804469 -0500 @@ -1,6 +1,10 @@ --- -name: adom-bridge-multi-ad -description: Address and fan out to multiple Adom Bridges on one relay. Use when more than one machine runs Adom Bridge on the same relay and you need to target a specific one (--target ) or broadcast to all (--target all) — e.g. a laptop plus an Azure VM. Covers client naming, --target, the targets verb, ambiguous-target handling, and primary_machine (which box is the user's own, so an unqualified request lands there). +name: adom-bridge-multi-machine +description: >- + Address one of several Adom Bridges on a relay (--target ) or broadcast to all + (--target all), plus the targets verb and primary_machine. Use when more than one machine + runs ab (e.g. a laptop plus an Azure VM), on ambiguous_target, or asked to run on a specific + machine or on all of them. --- # Multi-ab addressing — name + fan out to many Adom Bridges on one relay @@ -255,14 +259,3 @@ 5. `--target nope` → `target_not_found` + list, exit 1. 6. Kill+reconnect the VM ab → `targets` still shows exactly 2 (reconnect evicted its own stale entry). 7. Single-ab regression: disconnect VM → no-target `ping` works; local direct path unchanged. -8. Add T-tests to `scripts/test-via-gallia.sh` for `targets`, single-target, the broadcast aggregate - shape, and both error shapes traversing the relay with `_hint` intact. - -## Build / release (when implemented) -- `python scripts/bump-version.py patch` touches `cli/**` AND `src-tauri/**` → **both binaries - rebuild** (build matrix): GUI `cargo build --release` (FAST) → relauncher; relay/CLI on gallia via - `ssh adom-gallia … cargo build --release && sudo install …`. FULL `cargo tauri build` only for the - signed ship. -- Docs in the same ship: `skills/SKILL.md` ("Addressing multiple desktops"), `README.md`, CLI - help-map, `CLAUDE.md` (`--client-name` + multi-ab rule), and the release-ladder Docker Claude - prompt (`--target` usage; drop "last ab wins"; use `targets` for discovery). diff -ruN adom-bridge.orig/skills/adom-bridge-notify/SKILL.md adom-bridge/skills/adom-bridge-notify/SKILL.md --- adom-bridge.orig/skills/adom-bridge-notify/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-notify/SKILL.md 2026-10-22 14:33:15.693804593 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-notify -description: Send native Windows toast notifications from a cloud AI or a bridge via adom-bridge's notify_user verb, and GET THE USER'S ANSWER BACK. Two separate axes: (1) get the reply to you — wait:true blocks and returns their choice, or poll notify_events/notify_response (there is no server-push to a turn-based AI). (2) reveal a window on their screen with `focus` — a local desktop action, incl. focus:{host:true} to reveal Hydrogen when ab is embedded, and focus:{app} for any app. Use to alert the user (build done, export ready), point them at a window that needs them, show a progress bar, or ask for a decision and read it back. Covers every toast type, the exact verb calls, how the AI polls/waits for responses, and what a click actually does. +description: >- + Native Windows toast notifications via adom-bridge notify_user, and getting the user's + answer back (wait:true, or poll notify_events/notify_response), plus focus to reveal a + window. Use to alert the user (build done, export ready), show progress, or ask for a + decision and read the reply. --- # Notifications — `notify_user` (native branded Windows toasts) diff -ruN adom-bridge.orig/skills/adom-bridge-ownership/SKILL.md adom-bridge/skills/adom-bridge-ownership/SKILL.md --- adom-bridge.orig/skills/adom-bridge-ownership/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-ownership/SKILL.md 2026-10-22 14:33:15.697804720 -0500 @@ -1,11 +1,14 @@ --- -name: adom-bridge-bridge-ownership -description: The boundary between Adom Bridge core and a bridge author — what ab owns vs what you (the bridge) own. Read before filing an ab bug about a bridge (kicad, fusion360, native-browser, puppeteer, blender, rdp, or any third-party bridge) or before editing bridge code, so you fix and report in the right place. +name: adom-bridge-ownership +description: >- + The boundary between Adom Bridge core and a bridge author: what ab owns vs what the bridge + owns. Use before filing an ab bug about a bridge (kicad, fusion360, puppeteer, rdp, any + third-party bridge) or before editing bridge code. --- # Who owns what: ab core vs bridge author -**Read this FIRST if you're working on, debugging, or filing a bug about a bridge +**Read this before working on, debugging, or filing a bug about a bridge (kicad, fusion360, native-browser, puppeteer, blender, rdp, or any third-party bridge).** It exists because an AI drove the Fusion bridge end-to-end, hit a dozen issues, and filed almost all of them against **adom-bridge** — when nearly every @@ -63,8 +66,8 @@ container how to drive a bridge's verbs): - **The ab-core pkg** (`adom-wiki pkg install adom/adom-bridge`) ships ONLY core skills — - desktop verbs, discovery, direct-api, installer, notify, multi-ad, bridge-sdk, - bridge-ownership, windows-host. It must NOT bundle a cloud/3rd-party bridge's skill (it + desktop verbs, discovery, direct-api, installer, notify, multi-machine, sdk, + ownership, windows-host. It must NOT bundle a cloud/3rd-party bridge's skill (it would go stale and isn't ab's to own). (2026-06-28: `eagle-commands.md` — Fusion-Electronics, `fusion_electron_run` — was dropped for this reason; 2026-06-29: `pup-SKILL.md` was dropped too when Puppeteer became cloud-owned. Both belong in their bridge's own pkg.) diff -ruN adom-bridge.orig/skills/adom-bridge-permissions/SKILL.md adom-bridge/skills/adom-bridge-permissions/SKILL.md --- adom-bridge.orig/skills/adom-bridge-permissions/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-permissions/SKILL.md 2026-10-22 14:33:15.701804845 -0500 @@ -1,14 +1,10 @@ --- name: adom-bridge-permissions -description: > - How the Adom Bridge human-approval permission gate works for an AI caller. - Read this when a verb refuses with errorCode needs_approval or reason_required, - when you need shell approval / bypass permissions on a machine, when you must - call request_shell_approval to surface the human approval dialog, when a call - demands a reason arg, or before an unattended run that touches shell_execute, - run_script, write_file, or any other gated verb. Covers the human approval - gate, the Approve 1 hr / 24 hr / Bypass Permissions buttons, and why grants - are human-only. +description: >- + How Adom Bridge's human-approval gate works for an AI caller: needs_approval and + reason_required refusals, request_shell_approval, the Approve 1 hr / 24 hr / Bypass buttons, + and why grants are human-only. Use when a verb needs approval or a reason, or before an + unattended shell_execute run. --- # Adom Bridge permissions — the human approval gate for AI callers diff -ruN adom-bridge.orig/skills/adom-bridge-presence/SKILL.md adom-bridge/skills/adom-bridge-presence/SKILL.md --- adom-bridge.orig/skills/adom-bridge-presence/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-presence/SKILL.md 2026-10-22 14:32:06.142797773 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-presence -description: How Adom Bridge lives quietly on the machine. Covers the system tray and close-to-tray behavior (the X button hides the window, ab keeps serving), the low-memory hidden-window mode (WebView2 suspension while hidden), launch on boot (default ON, Startup-shortcut self-heal), and the taskbar icon states (muted "Adom Bridge" standalone tile vs vivid "Adom Bridge Hydrogen Embedded" tile, the AUMID flip). Use when a user or AI asks why ab is still running after closing the window, why memory is low while hidden, how to tell standalone from embedded mode from the taskbar alone, how to enable or disable launch on boot, why the tray icon is missing, or what the window title markers mean. +description: >- + How Adom Bridge lives on the machine: tray and close-to-tray, low-memory hidden mode, launch + on boot, taskbar icon states (standalone vs embedded). Use when asked why ab is still + running after closing it, why the tray icon is missing, or how to turn launch on boot on or + off. --- # Adom Bridge presence: tray, hidden window, taskbar states diff -ruN adom-bridge.orig/skills/adom-bridge-recording/SKILL.md adom-bridge/skills/adom-bridge-recording/SKILL.md --- adom-bridge.orig/skills/adom-bridge-recording/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-recording/SKILL.md 2026-10-22 14:33:15.709805098 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-recording -description: Record the user's screen with Adom Bridge's NATIVE recorder (v2.1.35, wiki #143) - desktop_record_start captures one monitor plus the system audio mix into an H.264/AAC MP4 with no browser and a 4x4 pixel teal dot in a screen corner as the recording tell; desktop_record_window_* records a single window in the background; desktop_record_stop/status/list manage takes. Chrome screen-share recording (picker consent, WebM) is the puppeteer bridge's pup_screen_record_* - a different tool. +description: >- + Record the user's screen with Adom Bridge's native recorder: desktop_record_start (one + monitor plus system audio to MP4), desktop_record_window_* for one window, and + stop/status/list. Use when asked to record my screen, record a window, or capture a desktop + video. --- ## v2.1.35: the native recorder (read this first) diff -ruN adom-bridge.orig/skills/adom-bridge-runtimes/SKILL.md adom-bridge/skills/adom-bridge-runtimes/SKILL.md --- adom-bridge.orig/skills/adom-bridge-runtimes/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-runtimes/SKILL.md 2026-10-22 14:33:15.713805222 -0500 @@ -1,12 +1,10 @@ --- name: adom-bridge-runtimes -description: > - Managed Node and Python runtimes for Adom Bridge bridges. Use this skill when a - node or python bridge fails to spawn, when you need to check runtime status with the - runtimes verb, when a bridge needs Node.js or Python and the box may not have one, - when npm dependencies for a source-only node bridge are missing, or when you want to - understand the no-UAC portable node/python install, the prewarm on first launch, the - Runtimes panel in the GUI, or the loopback-only bind rule for bridge processes. +description: >- + Managed Node and Python runtimes for Adom Bridge bridges: the runtimes verb, the no-UAC + portable install, prewarm, the loopback bind rule. Use when a node or python bridge fails to + spawn, Node.js or Python is missing on the PC, or a node bridge's npm dependencies are + missing. --- # Managed runtimes: how ab provisions Node and Python for bridges diff -ruN adom-bridge.orig/skills/adom-bridge-sdk/SKILL.md adom-bridge/skills/adom-bridge-sdk/SKILL.md --- adom-bridge.orig/skills/adom-bridge-sdk/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-sdk/SKILL.md 2026-10-22 14:33:15.733805854 -0500 @@ -1,12 +1,10 @@ --- name: adom-bridge-sdk description: >- - START HERE to build a bridge for Adom Bridge - a small local server that adds a namespace of - verbs (kicad_, fusion_, pup_, your_prefix_) to Adom Bridge. The orientation skill: the ONE - principle (rich _hint/_next in every verb's OUTPUT, because the AI reads CLI output and - almost never your on-disk SKILL.md), the three artifacts you publish, where every file - lives, the ab-core-vs-author boundary, and a map to the rest of the SDK skill library. Read - this first, then load the specific skill for the phase you are in. + Hub of the bridge SDK: build a bridge, a small local server that adds a verb namespace + (kicad_, pup_, your_prefix_) to Adom Bridge. Covers the core principle, the three artifacts, + the ab/author boundary, and a map to the adom-bridge-sdk-* skills. Use when asked to build + or write a bridge. --- @@ -18,7 +16,7 @@ 2. **Skills**: an **`adom-wiki pkg`** tarball carrying your consumer SKILL.md(s). A container installs it into `~/.claude/skills/` (or `~/.codex/skills/`) so the AI *there* knows your verbs. 3. **Discoverability**: **`discovery_triggers`** on your wiki page so a user saying *"open my app in pup"* surfaces YOU via `adom-wiki discover find`. -> **THE ONE PRINCIPLE THAT MATTERS MOST: read this before anything else.** +> **THE ONE PRINCIPLE THAT MATTERS MOST: read this before you write a verb.** > **The AI almost never reads your on-disk SKILL.md. It ALWAYS reads the OUTPUT of a CLI call.** > So your leverage is in the **`_hint` / `_next` / `related` / `pitfalls` you return on EVERY verb response.** A verb that returns `{success:true}` and nothing else leaves the AI guessing and retry-looping. A verb that returns *what just happened, the obvious next verb, the related verbs, and the pitfall to avoid* gets driven perfectly on the first try. ab relays every field of your response **verbatim** to the calling AI. Treat each verb's output as the documentation the AI will actually read. (Your SKILL.md is for the *human* author + the rare AI that does read it; your verb OUTPUT is for the AI in the loop.) diff -ruN adom-bridge.orig/skills/adom-bridge-sdk-audit/SKILL.md adom-bridge/skills/adom-bridge-sdk-audit/SKILL.md --- adom-bridge.orig/skills/adom-bridge-sdk-audit/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-sdk-audit/SKILL.md 2026-10-22 14:32:06.142797773 -0500 @@ -1,11 +1,9 @@ --- name: adom-bridge-sdk-audit description: >- - AUDIT and maintain a shipped bridge: the self-audit checklist to run when asked to 'audit - against the SDK', how to stay current with SDK changes on your own, the verb-contract quick - reference, how to get bugs reported in the OUTPUT rather than buried in a skill file, and - how to file issues against Adom Bridge or the repos you depend on. Use for a periodic health - check of your bridge or when an SDK-change notice lands on your wiki discussion. + adom-bridge-sdk sub-skill: audit and maintain a shipped bridge against the SDK (self-audit + checklist, staying current, filing issues). +disable-model-invocation: true --- diff -ruN adom-bridge.orig/skills/adom-bridge-sdk-callback/SKILL.md adom-bridge/skills/adom-bridge-sdk-callback/SKILL.md --- adom-bridge.orig/skills/adom-bridge-sdk-callback/SKILL.md 2026-10-22 14:27:21.961789748 -0500 +++ adom-bridge/skills/adom-bridge-sdk-callback/SKILL.md 2026-10-22 14:32:06.142797773 -0500 @@ -1,13 +1,8 @@ --- name: adom-bridge-sdk-callback description: >- - Call Adom Bridge BACK from inside your bridge: the loopback direct API gives you the FULL ab - verb set (screenshots, files, windows, notifications, other bridges), how to forward caller - provenance so the user sees WHICH AI thread asked (X-Adom-Caller-* headers and the - delegation chain), and how to brand a window you borrowed (window identity, taskbar tile, - jump list, overlay badge). Use when your bridge needs an ab verb, when the Activity Log or - an approval prompt misattributes your calls, or when a window you drive presents as the - wrong app. + adom-bridge-sdk sub-skill: call ab verbs back from your bridge, forward X-Adom-Caller-* + provenance, brand a borrowed window. --- diff -ruN adom-bridge.orig/skills/adom-bridge-sdk-manifest/SKILL.md adom-bridge/skills/adom-bridge-sdk-manifest/SKILL.md --- adom-bridge.orig/skills/adom-bridge-sdk-manifest/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-sdk-manifest/SKILL.md 2026-10-22 14:33:15.721805476 -0500 @@ -1,11 +1,8 @@ --- name: adom-bridge-sdk-manifest description: >- - The bridge.json manifest that ships INSIDE your bridge's zip: every field and what Adom - Bridge does with it. Use when creating or editing a bridge.json, when a bridge will not - spawn or is routed the wrong verbs, or when adding verbPrefixes, spawn kind - (python/node/exe/external-http), healthEndpoint, statusVerb, persistent, detect (host-app - detection), timeouts, updateManifestUrl, or docs. + adom-bridge-sdk sub-skill: every bridge.json field and what ab does with it. Use when a + bridge won't spawn or gets the wrong verbs. --- diff -ruN adom-bridge.orig/skills/adom-bridge-sdk-publish/SKILL.md adom-bridge/skills/adom-bridge-sdk-publish/SKILL.md --- adom-bridge.orig/skills/adom-bridge-sdk-publish/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-sdk-publish/SKILL.md 2026-10-22 14:33:15.725805600 -0500 @@ -1,11 +1,8 @@ --- name: adom-bridge-sdk-publish description: >- - PUBLISH a bridge: the three artifacts (runtime Release zip + manifest, the container skills - pkg, and discovery_triggers), the payload rules that keep each artifact clean (runtime-only - / skills-only, media lives on the PAGE), the skill set to ship, USER-skill conventions, the - card hero spec, and the full publish checklist. Use when shipping a new bridge version, when - bridge_install or an auto-update fails, or when your bridge is not discoverable. + adom-bridge-sdk sub-skill: publish a bridge (Release zip + manifest, skills pkg, + discovery_triggers) and the publish checklist. --- diff -ruN adom-bridge.orig/skills/adom-bridge-sdk-runtime/SKILL.md adom-bridge/skills/adom-bridge-sdk-runtime/SKILL.md --- adom-bridge.orig/skills/adom-bridge-sdk-runtime/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-sdk-runtime/SKILL.md 2026-10-22 14:33:15.729805727 -0500 @@ -1,12 +1,8 @@ --- name: adom-bridge-sdk-runtime description: >- - The RUNTIME contract for a bridge: Adom Bridge provisions Node/Python for you and you MUST - bind loopback (ADOM_BIND_HOST) so no firewall prompt appears; plus prewarm, the cold-start - tiers, host-app detection and the bridge_readiness probe, the health endpoint and status- - chip contract (led/summary/tooltip), the lifecycle verbs users drive, and the logging split - (ab owns the file, you own the volume). Use when your bridge fails to spawn, shows the wrong - LED, is slow on first call, or needs a runtime it cannot assume exists. + adom-bridge-sdk sub-skill: the bridge runtime contract (provided Node/Python, loopback bind, + prewarm, health and LED, logs). --- diff -ruN adom-bridge.orig/skills/adom-bridge-thesis/SKILL.md adom-bridge/skills/adom-bridge-thesis/SKILL.md --- adom-bridge.orig/skills/adom-bridge-thesis/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-thesis/SKILL.md 2026-10-22 14:33:09.841693210 -0500 @@ -1,13 +1,9 @@ --- name: adom-bridge-thesis description: >- - The core thesis of Adom Bridge: WHY it exists and what the whole system is for. Read - this to understand the high-level goal before diving into any verb or feature skill, - or when a user asks what Adom Bridge is, why they would want it, what problem it - solves, whether it is only for Adom/Hydrogen users, or how it is safe to let an AI - control a whole computer. Trigger words: what is adom desktop, why adom desktop, - adom desktop goal, adom desktop thesis, value proposition, is it safe, do I need - hydrogen, unleash the AI, full machine access, AI on my PC. + Why Adom Bridge exists and what the whole system is for: full power and full safety for an + AI on your PC. Use when a user asks what is adom bridge, why adom bridge, do I need + Hydrogen, is it safe to let an AI control my computer, or for the value proposition. --- # The Adom Bridge thesis: unleash your AI onto your full PC @@ -81,8 +77,8 @@ ## How to use this skill This skill is the WHY. For the HOW, start with the main `adom-bridge` skill (the verb -surface), `adom-bridge-permissions` (the approval model), `adom-bridge-sdk-guide` -(consuming bridges), `adom-bridge-bridge-sdk` (building one), and `adom-bridge-local-ai` +surface), `adom-bridge-permissions` (the approval model), `adom-bridge-bridges-guide` +(consuming bridges), `adom-bridge-sdk` (building one), and `adom-bridge-local-ai` (driving the PC from a local AI app). When you explain Adom Bridge to a user, lead with the thesis above, in plain words: it lets your AI out of its box and onto your machine, with you holding the leash. diff -ruN adom-bridge.orig/skills/adom-bridge-verbs/SKILL.md adom-bridge/skills/adom-bridge-verbs/SKILL.md --- adom-bridge.orig/skills/adom-bridge-verbs/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-verbs/SKILL.md 2026-10-22 14:33:15.741806105 -0500 @@ -1,6 +1,9 @@ --- name: adom-bridge-verbs -description: The full reference for Adom Bridge's own (ab-core) verbs - every desktop_* / top-level verb the direct API and CLI expose, grouped by category, with a one-line description of what each does and what it takes/returns. Read this to discover what ab can do to a Windows PC (windows, screenshots, input, UI automation, files, shell/WSL, registry/fonts, tunnels, notifications, lifecycle, bridge management, credentials). BRIDGE verbs (kicad_*, fusion_*, pup_*, ...) are NOT here - each bridge ships its own verb skill; this is ab-core only. There is also a live, browsable version at http://127.0.0.1:24680/verbs on any machine running ab. +description: >- + Reference for Adom Bridge's own (ab-core) verbs, desktop_* and top-level, grouped by + category; bridge verbs (kicad_*, pup_*) are in each bridge's skill. Use when asked what can + ab do on my PC, is there a verb for X, or to find a desktop verb's arguments. --- # Adom Bridge core verbs diff -ruN adom-bridge.orig/skills/adom-bridge-web-control-test/SKILL.md adom-bridge/skills/adom-bridge-web-control-test/SKILL.md --- adom-bridge.orig/skills/adom-bridge-web-control-test/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-web-control-test/SKILL.md 2026-10-22 14:32:06.142797773 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-web-control-test -description: How to run - and how to BELIEVE - a web-control test of the KiCad/Fusion library verbs across a batch of wiki components. Covers the four-artifact evidence contract every library import owes (symbol, footprint, 3D chip, ganged view), the mandatory per-image content check, the five known false-success modes that make a green flag lie (stale window, blank workspace, placeholder 3D, screensaver, name mismatch), and the rule that the run is driven from the web-control page in pup so the UI itself is part of the evidence. Read this BEFORE running any "test N components through web control" request. Trigger words: web control test, library matrix, run the library verb on N parts, evidence images per component, kicad_show_library, fusion_show_library, prove the import worked. +description: >- + How to run and trust a web-control test of the KiCad/Fusion library verbs across a batch of + wiki components: the evidence contract and the known false-success modes. Use for a web + control test or library matrix run. +disable-model-invocation: true --- # Web-control library test — the procedure, and the reasons for it diff -ruN adom-bridge.orig/skills/adom-bridge-web-integration/SKILL.md adom-bridge/skills/adom-bridge-web-integration/SKILL.md --- adom-bridge.orig/skills/adom-bridge-web-integration/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-web-integration/SKILL.md 2026-10-22 14:33:15.745806229 -0500 @@ -1,6 +1,9 @@ --- name: adom-bridge-web-integration -description: How a web page served from wiki.adom.inc can detect Adom Bridge on the visitor's PC and (in a planned next phase) trigger consent-gated desktop actions, via CORS AJAX to the loopback API - and the security model that lets ONLY wiki.adom.inc do it while every other website is blocked. Read this when building wiki.adom.inc buttons like "Launch in KiCad", "Open in Fusion", "Send files to desktop", when reasoning about why localhost AJAX from a web page is or isn't safe, when touching the CORS/Private-Network-Access gate in direct_api.rs, or when asked why *.adom.cloud is not allowed. Trigger words: wiki ajax to ab, launch in kicad button, CORS localhost, private network access, web_forbidden, detect adom bridge from browser, wiki.adom.inc integration. +description: >- + How a wiki.adom.inc page detects Adom Bridge on the visitor's PC via CORS to the loopback + API, and the security model that blocks every other site. Use when building a wiki 'Launch + in KiCad' or 'Open in Fusion' button, or for web_forbidden or CORS localhost questions. --- # Web integration — letting wiki.adom.inc reach Adom Bridge safely diff -ruN adom-bridge.orig/skills/adom-bridge-window-capture/SKILL.md adom-bridge/skills/adom-bridge-window-capture/SKILL.md --- adom-bridge.orig/skills/adom-bridge-window-capture/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-window-capture/SKILL.md 2026-10-22 14:32:06.146797940 -0500 @@ -1,6 +1,10 @@ --- name: adom-bridge-window-capture -description: The complete reference for Adom Bridge screenshots — every capture verb, the exact JSON response shape (coordMap, shotId, ownedPopupCount, the screenshots[] child-dialog array, windowRect, the multi-monitor display block), and how the CLI automatically stores each shot on disk (the window/ and screen/ buckets, the ISO-stamped filenames, the single-vs-full/safe pair, the .popup-NN grouping, and the .json sidecar). Read this to drive a GUI app that pops modal dialogs, to capture a backgrounded/occluded window, to understand a multi-monitor grab, or to build a tool (like shotlog) that renders every screenshot shape ab can return. Covers desktop_screenshot_window, desktop_screenshot_screen, kicad_screenshot_all, the coordMap click-what-you-see contract, and the exact on-disk sidecar schema. +description: >- + Reference for Adom Bridge screenshots: every capture verb, the response shape (coordMap, + screenshots[] dialogs, multi-monitor) and how the CLI stores shots and sidecars on disk. Use + to capture a window with dialogs, an occluded window or a monitor, or to parse screenshot + output. --- # Adom Bridge screenshots — full capability, response shape, and on-disk contract diff -ruN adom-bridge.orig/skills/adom-bridge-window-identity/SKILL.md adom-bridge/skills/adom-bridge-window-identity/SKILL.md --- adom-bridge.orig/skills/adom-bridge-window-identity/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-window-identity/SKILL.md 2026-10-22 14:32:06.146797940 -0500 @@ -1,6 +1,9 @@ --- name: adom-bridge-window-identity -description: Make a window an AI drives present itself as YOUR app on Windows — its taskbar button, Alt-Tab entry, hover name, jump-list (right-click menu), taskbar overlay badge, and pins. Covers the AUMID model, the register+stamp two-halves rule, per-session identities, jump-list tasks + header branding, taskbar progress/overlay, and the icon-format rules (why an icon renders as a generic white document and how to fix it). Use when a bridge borrows a host window (e.g. Chrome for Testing) and it reads as the wrong app. +description: >- + Make a window an AI drives present as your app on Windows: taskbar button, Alt-Tab name, + jump list, overlay badge, AUMID. Use when a bridge borrows a host window (e.g. Chrome for + Testing) and it shows as the wrong app or with a blank icon. --- # Window identity and the taskbar — Adom Bridge's AUMID verbs diff -ruN adom-bridge.orig/skills/adom-bridge-windows-host/SKILL.md adom-bridge/skills/adom-bridge-windows-host/SKILL.md --- adom-bridge.orig/skills/adom-bridge-windows-host/SKILL.md 2026-10-22 14:27:21.965789901 -0500 +++ adom-bridge/skills/adom-bridge-windows-host/SKILL.md 2026-10-22 14:32:06.146797940 -0500 @@ -1,7 +1,11 @@ --- name: adom-bridge-windows-host user-invokable: false -description: "Read this BEFORE doing any work on adom-bridge from a Claude Code session running directly on the user's Windows machine. Explains how to route everything through the adom-bridge CLI so paths, file operations, and process spawns reach the user's real filesystem instead of getting silently virtualized into Claude Code's Windows AppContainer sandbox. Skipping this causes hour-long debugging spirals where 'open install folder' fails, bridges install to the wrong place, screenshots come back blank, and synthesized clicks don't reach the WebView2." +description: >- + For Claude Code running natively on the user's Windows PC, not in an Adom container: route + work through adom-bridge-cli.exe so files and spawns reach the real filesystem, not the + AppContainer sandbox. Use when working on ab from such a session, or open-folder, + screenshots or clicks fail. --- # Working on adom-bridge from Claude Code on Windows