deploylisted
Install: claude install-skill mik2win/foureyes
# Deploy: $ARGUMENTS
Pick the **cheapest sufficient** deploy command for what actually changed, and hand it over as
text. `$ARGUMENTS` optionally narrows the scope (a path, a commit range); empty = the current
working tree plus the last commit.
**This skill never runs a deploy command.** Every command it produces is presented as text for
the user to copy. That is not a formality: a deploy is an outward-facing, hard-to-reverse action,
and "it was obviously the next step" is exactly how an unsanctioned one happens.
## Phase 0 — Load the mapping
- [ ] `PROJECT.md` → **Deploy mapping** (change kind → action) and **Commands** → `deploy`.
- [ ] `PROJECT.md` → **Architecture**, to know which modules are *local-only* (they never ship).
- [ ] `PROJECT.md` → **Commands** → `remote-probe`, for the verification step. It is read-only by
contract — a probe inspects, it never deploys or restarts.
**No Deploy mapping in the profile?** Do not guess a command. Build a draft:
1. Find the real deploy entry points — `Makefile` targets, `package.json` scripts, CI workflow
jobs, a deploy script, container/compose files. Say which you found and where.
2. Ask the user (one `AskUserQuestion`) to confirm the change-kind → command rows and the rough
cost of each.
3. Offer to write the confirmed table into `PROJECT.md` → Deploy mapping, so the next session
does not re-derive it. **Confirm before editing the profile.**
If the project genuinely has no deploy step, say so and stop — th