skill
adom-workspace-control
Public Made by Adomby adom
Adom workspace panel and pane management — open, close, split, resize, swap, and move tabs in the Hydrogen editor layout
name: webview
description: >
WEBVIEW — what the word "webview" (or "wv") means on EVERY Adom platform and
exactly how to open one. When the user says "show me in webview", "open it in
webview", "in a webview", "webview tab", "wv" — on web Hydrogen (cloud) or
Hydrogen Desktop — it ALWAYS means a native Adom workspace webview tab opened
via adom-cli hydrogen webview open-or-refresh. NEVER VS Code's built-in
Simple Browser, never an editor-internal browser page. THE PLATFORM TRAP is
the URL: in a CLOUD container the webview renders in the user's browser, so
localhost is WRONG — use the slug proxy URL (VSCODE_PROXY_URI style); in
Hydrogen Desktop localhost is CORRECT (same machine). Trigger words — webview,
wv, show me in webview, open in webview, in a webview, webview tab, webview
panel, native webview, show in webview, launch in webview.
webview — one meaning on every Adom platform
Parent skill: adom-workspace-control (workspace/panel mechanics live there).
A webview (short: wv — use and accept both; "show it in wv" == "show it in
a webview") is a native webview tab in the Adom workspace — a first-class
panel next to the user's editor. Always ONE word ("webview", never "Web View");
the two-word form is not an Adom term. The SAME adom-cli opens it everywhere:
adom-cli hydrogen webview open-or-refresh --name "<Tab Name>" --url "<URL>" --panel-id <id>
# --panel-id is REQUIRED to CREATE (get one: adom-cli hydrogen workspace get)
# re-running with the same --name just navigates/refreshes (idempotent handle)
# verify: the tab MUST appear in `adom-cli hydrogen workspace tabs` — else you
# did NOT open a webview; go again.
⚠️ The URL depends on WHERE you are (the classic mistake)
| Platform | The webview renders in… | Local server URL to use |
|---|---|---|
| Web Hydrogen (cloud container) | the user's browser, far from this container | the slug proxy URL — ${VSCODE_PROXY_URI}-style, e.g. https://<user>-<slug>.adom.cloud/proxy/<port>/…. http://localhost:<port> is WRONG here — the user's browser can't reach the container's loopback. |
| Hydrogen Desktop | HD's own window on the same machine | plain http://localhost:<port> is CORRECT (HD binds local ports by design). See hd-webview for HD specifics. |
⛔ NEVER
- Never open VS Code's built-in "Simple Browser" (or any editor-internal browser) to satisfy a webview request — banned outcome (2026-07-16 incident).
- Don't silently substitute pup or a native browser; "webview" names exactly
one surface. For choosing BETWEEN surfaces, see
hd-open-url(HD) or ask.
---
name: webview
description: >
WEBVIEW — what the word "webview" (or "wv") means on EVERY Adom platform and
exactly how to open one. When the user says "show me in webview", "open it in
webview", "in a webview", "webview tab", "wv" — on web Hydrogen (cloud) or
Hydrogen Desktop — it ALWAYS means a native Adom workspace webview tab opened
via `adom-cli hydrogen webview open-or-refresh`. NEVER VS Code's built-in
Simple Browser, never an editor-internal browser page. THE PLATFORM TRAP is
the URL: in a CLOUD container the webview renders in the user's browser, so
localhost is WRONG — use the slug proxy URL (VSCODE_PROXY_URI style); in
Hydrogen Desktop localhost is CORRECT (same machine). Trigger words — webview,
wv, show me in webview, open in webview, in a webview, webview tab, webview
panel, native webview, show in webview, launch in webview.
---
# webview — one meaning on every Adom platform
Parent skill: `adom-workspace-control` (workspace/panel mechanics live there).
A **webview** (short: **wv** — use and accept both; "show it in wv" == "show it in
a webview") is a native webview tab in the Adom workspace — a first-class
panel next to the user's editor. Always ONE word ("webview", never "Web View");
the two-word form is not an Adom term. The SAME `adom-cli` opens it everywhere:
```bash
adom-cli hydrogen webview open-or-refresh --name "<Tab Name>" --url "<URL>" --panel-id <id>
# --panel-id is REQUIRED to CREATE (get one: adom-cli hydrogen workspace get)
# re-running with the same --name just navigates/refreshes (idempotent handle)
# verify: the tab MUST appear in `adom-cli hydrogen workspace tabs` — else you
# did NOT open a webview; go again.
```
## ⚠️ The URL depends on WHERE you are (the classic mistake)
| Platform | The webview renders in… | Local server URL to use |
|---|---|---|
| **Web Hydrogen (cloud container)** | the user's browser, far from this container | the **slug proxy URL** — `${VSCODE_PROXY_URI}`-style, e.g. `https://<user>-<slug>.adom.cloud/proxy/<port>/…`. `http://localhost:<port>` is WRONG here — the user's browser can't reach the container's loopback. |
| **Hydrogen Desktop** | HD's own window on the same machine | plain `http://localhost:<port>` is CORRECT (HD binds local ports by design). See `hd-webview` for HD specifics. |
## ⛔ NEVER
- **Never** open VS Code's built-in "Simple Browser" (or any editor-internal
browser) to satisfy a webview request — banned outcome (2026-07-16 incident).
- Don't silently substitute pup or a native browser; "webview" names exactly
one surface. For choosing BETWEEN surfaces, see `hd-open-url` (HD) or ask.