tap-setuplisted
Install: claude install-skill LeonTing1010/taprun
# Tap: adaptive login-site setup (spin-style)
**When it's needed**: only for LOGGED-IN sites. Public pages / open APIs need no
setup at all — the plugin's MCP server (over `npx @taprun/cli`) already runs.
Logged-in sites are the exception: the Chrome extension reaches a **stable local
`tap` binary** through the native-messaging bridge (npx's ephemeral path can't be
a bridge, so a real install is required here).
## Step one is always diagnosis, never installation (retrieval-first)
**Run this first and read its real output — do NOT assume from memory what is or
isn't installed:**
```bash
npx -y @taprun/cli embed --verify
```
It prints a **prerequisite ladder** (stable binary → NM bridge manifest →
extension → host socket), each rung ✓/✗. **Fix only the ✗ rungs, cheapest
first; skip the ✓ ones.** If everything is ✓, just tell the user "you're ready"
and stop — do nothing more.
## Fix rung by rung (cheapest-first; two human gates must be explicit)
| Rung (only if ✗) | Fix | Human consent? |
|---|---|---|
| No stable binary | `npx -y @taprun/cli bridge setup` — `bridge setup` self-copies the **running** engine to `~/.tap/bin/tap` (the exact bytes npx already downloaded for the MCP server, **no second download**) and writes the NM manifest in the same step. Only if npx is absent, fall back to a remote install — **show the command and get consent BEFORE running**: `brew install LeonTing1010/tap/taprun` (if brew), or `curl -fsSL https://taprun.dev/install.sh \| sh` | npx path: