myrepolisted
Install: claude install-skill marroccofella/skills
# myrepo — publish a project to GitHub with a live page
Turn a local project into its own public GitHub repository with a browser-runnable Pages site, conforming to the 42.uk theme and spec.
## Hard constraints
- **Publishing is outward-facing and requires the user's explicit go-ahead.** Before creating or pushing anything public, confirm with the user in chat: the exact repo name, public vs. private, and what will be pushed. A `--dry-run` preview is the safe way to show them first.
- **Never leak the local machine.** The publisher runs a privacy scan and refuses if it finds home/workspace paths (e.g. `C:\Users\...`, `/home/...`). Do not pass `--allow-paths` to silence it unless the user confirms those strings are intentional and safe.
- **Never publish secrets.** Do not publish a directory containing credentials, tokens, `.env` files, or private keys. Check before running.
- **Verify, don't assume.** The publisher polls the live Pages URL until it returns 200. Report the *verified* URL; if it did not go green, say so (Pages builds can lag a few minutes) rather than claiming it is live.
- **OAuth only.** Authentication is the user's existing `gh` login. Never request, embed, or suggest a Personal Access Token in code or committed files.
## Verify it offline
Before diagnosing GitHub setup, prove that myrepo 1.3.1's local safety gates work:
```text
node scripts/publish.mjs --self-test
```
This deterministic self-test uses temporary fixtures to exercise the clean-project,