---
name: app-creator
description: >
  Use when the user wants to build a new Adom "app", a mini web server that renders its UI in a Hydrogen webview tab.
---
# App Creator
Use when the user wants to build a new Adom "app", a mini web server that renders its UI in a Hydrogen webview tab.

## Boundary with ai-driven-apps (in adom-ui-design)

THIS skill owns CREATING the app: scaffolding, project layout, the server + webview skeleton, the
first commit. `ai-driven-apps` (bundled in adom/adom-ui-design) owns everything after: showing the
app, driving its front-end over the live channel, and ralph-testing the UI. Add build/scaffold
content here; add drive/verify/test content there.

## The app's SKILL.md must include a display section (REQUIRED)

Every app you scaffold ships a SKILL.md, and that skill MUST contain this section (fill in
the app's own show verb):

```markdown
## Displaying this app (REQUIRED — read before showing anything)

To SHOW this app, use `<app> show` (it opens the proper Hydrogen webview tab itself). For
manual display, FIRST load the `webview` skill (adom-workspace-control) and follow it.
- **NEVER open this app in VS Code's "Simple Browser"** — not a webview in the Adom
  ecosystem: no live channel, no console read-back, no AI drivability. Using it is a bug.
- Surfaces: **wv** — Hydrogen webview panel (`webview` skill; HD's pane tab inside HD),
  **pup** (`pup` skill), the user's **real signed-in browser** (Adom browser extension),
  and **hdbw** — HD's standalone Tauri browser window (only under HD). Simple Browser is
  NEVER one of them.
```

Why in every app skill: trigger-word discovery of the webview skill is probabilistic, but
the app's own skill IS reliably loaded when the app is named — so the display rules ride it.
See `ai-driven-apps` (adom/adom-ui-design) for the full surface table and mandate.
