reviewlisted
Install: claude install-skill Cavalry-Collective/visual-stack
## 0 · Host (do this first)
This skill is **tool-agnostic**. The loop is defined in
`plugins/vstack/contracts/review-loop.md` and the ops you need in
`plugins/vstack/contracts/host.md`. **Never invent host-specific tool names in
this file** — they live only in the Host adapter.
| You are running under… | Load adapter | Set |
| --- | --- | --- |
| **Codex** | `skills/review/hosts/codex.md` | `VSTACK_HOST=codex` (or `--host codex` on `serve`) |
| **Grok** Build / Grok CLI | `skills/review/hosts/grok.md` | `VSTACK_HOST=grok` (or `--host grok` on `serve`) |
| **Claude Code** | `skills/review/hosts/claude.md` | `VSTACK_HOST=claude` (default if unset) |
Adapters live in the `hosts/` directory beside this SKILL.md. Do not read
`plugins/vstack/host-profiles/<id>.json` instead: that JSON is UI data with no
tool mapping.
**Read the adapter before §3.** Every `background`, `watch_stream`, `stop`,
`share`, and `browser_capture` step is fulfilled exactly as that file says.
A two-way review loop. The user comments on the screen; you apply the comments, ask about anything ambiguous, and publish the next version. Two things can go under it:
| | what it is | what you change |
|---|---|---|
| **A page** (§1–§3) | a wireframe you just generated, an exported screen, a prototype — any self-contained HTML file | the file |
| **A UI that exists** (§7) | an app on localhost, or a website on the internet: the real screens, real data, real states | the source code — or, for a site you don't own,