← Commit history

Publish 0.3.32

John Lauer ·c9cf571bde · ·parent b587492
5 files changed +75−29
README.md+3−1
@@ -46,7 +46,9 @@ platform-generic vs Windows-specific (not the old `shared`/`wsl2` buckets):   `hydrogen-ports`, `hydrogen-workspace-lifecycle`, the golden-image/WSL2 skills. - **Mixed skills** were split: the generic core stays in `hydrogen-bootstrap`,   and the Windows specifics become a `<name>-windows` companion here (e.g.-  `hydrogen-api-windows` carries the `/wsl/*` endpoint tables,+  `hydrogen-api-windows` carries the `/wsl/*`, `/ab/*`, `/dock/*`, `/hbw/*` and `/widgets/*`+  endpoints and the Windows-only destructive routes; since 0.3.32 this package no longer+  ships its own `hydrogen-api`, which belongs to `hydrogen-bootstrap` alone,   `hydrogen-notifications-windows` the WinRT/AUMID toast mechanics,   `hydrogen-setup-windows` the WSL2 install cascade). Distinct names mean both   layers coexist with no deploy collision.
install.sh+12
@@ -40,6 +40,18 @@ if [ -d "$HERE/skills" ]; then     count=$((count + 1))   done   log "  deployed ${count} Windows/WSL2 skills"+  # 0.3.32 (adom/hydrogen-windows-bootstrap#7): hydrogen-api has ONE owner, the generic+  # adom/hydrogen-bootstrap. This package used to ship its own full copy under the same+  # name, so whichever install ran last won. The Windows rows now live in the+  # hydrogen-api-windows companion. A package update never removes a file an older+  # version delivered, so put the base layer's copy back if ours is still installed.+  # (Never rm the dir here: the base layer, installed first, owns it.)+  BASE_API="$HERE/../hydrogen-bootstrap/skills/hydrogen-api/SKILL.md"+  if [ -f "$BASE_API" ] && ! cmp -s "$BASE_API" "$HOME/.claude/skills/hydrogen-api/SKILL.md"; then+    install -d -m 0755 "$HOME/.claude/skills/hydrogen-api"+    install -m 0644 "$BASE_API" "$HOME/.claude/skills/hydrogen-api/SKILL.md"+    log "  restored hydrogen-api from adom/hydrogen-bootstrap (the one owner of that name)"+  fi fi  # 1. workbench.html state seed — patches the WSL2 code-server install. Seeds
package.json+2−2
@@ -4,7 +4,7 @@   "type": "bootstrap",   "title": "Adom Hydrogen (Windows / WSL2)",   "brief": "The Windows (WSL2) platform layer for Hydrogen.",-  "version": "0.3.31",+  "version": "0.3.32",   "description": "The Windows platform layer for Hydrogen, where the workspace runs in a WSL2 Ubuntu distro. Depends on adom/hydrogen-bootstrap (the platform-generic layer, which bundles the generic hydrogen-* skills) and adds everything specific to the WSL2 runtime: the WSL2/networking/lifecycle hydrogen-* skills (BUNDLED here by design, John+Kyle 2026-07-16) and the WSL2 code-server workbench seed. Sibling adom/hydrogen-mac-bootstrap carries the parallel mac skills. This is the package the golden WSL2 image installs.",   "org": "adom",   "tags": [@@ -31,5 +31,5 @@   "hero": {     "path": "docs/hero.png"   },-  "changelog": "0.3.31: Pup verbs renamed browser_* -> pup_* (the puppeteer bridge 2.0.733 exposes only pup_*), and the adom/adom-shotlog range widened to ^0.29.0 so updates stop skipping it. 0.3.30: skill cleanup: shorter valid descriptions, retired names replaced, dead skill links fixed, hydrogen-skill-catalog removed, maintainer skills hidden."+  "changelog": "0.3.32: hydrogen-api is no longer shipped here (adom/hydrogen-windows-bootstrap#7): adom/hydrogen-bootstrap owns that name, and its Windows-only rows (ab health, WSL endpoints, the Windows-only destructive and refused routes, the Adom Bridge / Dock / ESM / HBW / Settings / Widgets route groups) are in hydrogen-api-windows, now generated from the ah repo. install.sh restores the base copy if this package's old copy is still installed. 0.3.31: Pup verbs renamed browser_* -> pup_* (the puppeteer bridge 2.0.733 exposes only pup_*), and the adom/adom-shotlog range widened to ^0.29.0 so updates stop skipping it. 0.3.30: skill cleanup: shorter valid descriptions, retired names replaced, dead skill links fixed, hydrogen-skill-catalog removed, maintainer skills hidden." }
page.json+3−3
@@ -4,7 +4,7 @@   "slug": "hydrogen-windows-bootstrap",   "title": "Adom Hydrogen (Windows / WSL2)",   "brief": "The Windows (WSL2) platform layer for Hydrogen.",-  "version": "0.3.31",+  "version": "0.3.32",   "author": {     "name": "John Lauer",     "email": "[email protected]"@@ -37,5 +37,5 @@     "README.md",     "skills/**"   ],-  "changelog": "0.3.31: Pup verbs renamed browser_* -> pup_* (the puppeteer bridge 2.0.733 exposes only pup_*), and the adom/adom-shotlog range widened to ^0.29.0 so updates stop skipping it. 0.3.30: skill cleanup: shorter valid descriptions, retired names replaced, dead skill links fixed, hydrogen-skill-catalog removed, maintainer skills hidden."-}+  "changelog": "0.3.32: hydrogen-api is no longer shipped here (adom/hydrogen-windows-bootstrap#7): adom/hydrogen-bootstrap owns that name, and its Windows-only rows (ab health, WSL endpoints, the Windows-only destructive and refused routes, the Adom Bridge / Dock / ESM / HBW / Settings / Widgets route groups) are in hydrogen-api-windows, now generated from the ah repo. install.sh restores the base copy if this package's old copy is still installed. 0.3.31: Pup verbs renamed browser_* -> pup_* (the puppeteer bridge 2.0.733 exposes only pup_*), and the adom/adom-shotlog range widened to ^0.29.0 so updates stop skipping it. 0.3.30: skill cleanup: shorter valid descriptions, retired names replaced, dead skill links fixed, hydrogen-skill-catalog removed, maintainer skills hidden."+}\ No newline at end of file
skills/hydrogen-api-windows/SKILL.md+55−23
@@ -1,10 +1,10 @@ --- name: hydrogen-api-windows description: >--  Windows companion to hydrogen-api: the /wsl/* and legacy /docker/* endpoints,-  /system reboot, /test/probe-dialogs, WebView2 CDP notes, and host-side port-  discovery (ports.json). Use when asked about wsl status, reboot windows,-  probe-dialogs, or ports.json.+  Windows companion to hydrogen-api: the /wsl/*, /ab/*, /dock/*, /hbw/*, /widgets/*+  and legacy /docker/* endpoints, the Windows-only destructive routes, /system reboot,+  and host-side port discovery. Use when asked about wsl status, ab health, reboot+  windows, probe-dialogs, or ports.json. ---  # Hydrogen Control API — Windows / WSL2 specifics@@ -97,41 +97,51 @@ Hydrogen's webview is **WebView2** on Windows; `/cdp-eval`, `/cdp-info`, and  (Gated behind `HD_TEST_API_ENABLED=1`, like the rest of `/test/*`.) -## Moved from the generic hydrogen-api (Windows-only, 2026-10-21)+## Moved from the generic hydrogen-api (Windows-only) -These endpoints exist only in the Windows Hydrogen; the macOS app does not serve them.+These sections exist only in the Windows Hydrogen; the macOS app does not serve them. The+generic `hydrogen-api` skill (adom/hydrogen-bootstrap) is the one `hydrogen-api`; this+companion is where the Windows rows live, so the two never collide in `~/.claude/skills/`. -## ab-health diagnostics (`/ab/*`)+### Windows-only safety rules (add these to hydrogen-api's Safety section)++- **`catastrophic`** on Windows also covers `/setup/virgin-reset` and `/wsl/unregister`+  (deletes the whole `Adom-Workspace` distro, including `/home/adom/project`).+- ⛔ **REFUSED as deprecated** (headless runs with no visible UI): `POST /setup/run-all`,+  `POST /setup/run-step`, `POST /setup/virgin-reset`, `POST /virgin-reset`,+  `POST /wsl/unregister`. They return a refusal pointing at the UI-visible path: run steps+  from the Setup panel, or use its Virgin Reset (`POST /setup/panel/run-virgin-reset`).+- The legacy Docker routes `POST /container-delete`, `/container-pull-image`,+  `/image-delete` and `/volume-delete` still answer, but the workspace is a WSL2 distro, so+  there is nothing to delete or pull: they say so and point at the reset path.+- `GET /container-status` renamed two fields: `docker_available` -> **`runtime_available`**+  and `image_pulled` -> **`workspace_installed`**. The old field names are gone.++### ab-health diagnostics (`/ab/*`)  (Canonical since 1.0.47; the old `/ad/*` spellings still answer as aliases.) -These verify the **adom-bridge / relay / embedded-ab** half of Hydrogen is alive (the-bridge that connects this cloud container to Hydrogen). All GET, all return `{ok, ...}`.+These verify the **adom-bridge / relay / embedded-ab** half of Hydrogen is alive. All GET,+all return `{ok, ...}`.  | Method | Path | Description | |---|---|---| | GET | `/ab/health` | Overall embedded-ab health roll-up | | GET | `/ab/process` | Is the adom-bridge process running | | GET | `/ab/embedded` | Embedded-ab module status |-| GET | `/ab/workspace-direct` | ⭐ The **converged** check — direct path to the workspace relay (use this one) |+| GET | `/ab/workspace-direct` | ⭐ The **converged** check: direct path to the workspace relay (use this one) | | GET | `/ab/relay` | Relay (WS/HTTP) reachability | | GET | `/ab/liveness-beacon` | Liveness beacon freshness | | GET | `/ab/direct-api` | Direct-API reachability | | GET | `/ab/discovery-file` | Discovery file present + parseable | -### Workspace / WSL endpoints+## Windows-only route index -| Method | Path | Body | Description |-|---|---|---|---|-| GET | `/wsl/status` | — | WSL distro state (registered, running, code-server reachable) |-| GET | `/workspace/health` | — | Deep workspace health (distro + code-server + host reachability) |-| GET | `/virgin-reset-progress` | — | Live progress of an in-flight virgin reset |-| POST | `/workspace/terminal-profile` | — | Ensure the stable `Adom-Workspace` Windows Terminal profile (idempotent) |-| POST | `/workspace/terminal-profile/remove` | — | Remove the `Adom-Workspace` Windows Terminal profile(s) |-| POST | `/workspace/check-updates` | — | Check upstream for newer code-server + Claude extension; stage them |-| POST | `/workspace/apply-updates` | — | Apply staged code-server/extension updates + reload editor |+<!-- BEGIN GENERATED WINDOWS ROUTE INDEX --> -### Windows-only route groups+The 59 routes only the Windows Hydrogen serves, generated from the same table+`/_manifest` serves (`scripts/check-manifest-fresh.sh` fails the build if this drifts). The+platform-generic routes are indexed in **hydrogen-api**.  **Adom Bridge** (19) @@ -155,6 +165,13 @@ bridge that connects this cloud container to Hydrogen). All GET, all return `{ok - `GET /direct/health` - `GET /direct/status` +**Container / Docker (legacy)** (4)++- `POST /container-delete`+- `POST /container-pull-image`+- `POST /image-delete`+- `POST /volume-delete`+ **Dock** (6)  - `GET /dock/apps`@@ -171,13 +188,15 @@ bridge that connects this cloud container to Hydrogen). All GET, all return `{ok - `POST /editor/normalize` - `GET /editor/state` -**Hydrogen Browser Window** (9)+**Hydrogen Browser Window** (11)  - `GET /hbw/chrome` - `POST /hbw/chrome-toggle` - `POST /hbw/close` - `POST /hbw/nav` - `POST /hbw/open`+- `GET /hbw/speed`+- `POST /hbw/speed` - `GET /hbw/state` - `GET /hbw/tip` - `GET /hbw/tip-state`@@ -188,9 +207,17 @@ bridge that connects this cloud container to Hydrogen). All GET, all return `{ok - `GET /settings/external-changes` - `POST /settings/rebroadcast` -**Widgets** (7)+**Setup Cascade** (4)++- `POST /setup/run-all`+- `POST /setup/run-step`+- `POST /setup/virgin-reset`+- `POST /virgin-reset`++**Widgets** (8)  - `GET /widgets`+- `POST /widgets/card` - `POST /widgets/close` - `POST /widgets/menu` - `POST /widgets/navigate`@@ -198,3 +225,8 @@ bridge that connects this cloud container to Hydrogen). All GET, all return `{ok - `POST /widgets/refresh` - `GET /widgets/status` +**Workspace & Updates** (1)++- `POST /wsl/unregister`++<!-- END GENERATED WINDOWS ROUTE INDEX -->