# Hands-on · Rules

A tiny, zero-dependency demo showing how rule sources reshape the same prompt.

## Run

Open `index.html` directly. No build, no server, no `npm install`.

## What it shows

- Five rule sources, taken from a real monorepo (`netcracker/interview`):
  - `AGENTS.md` — repo-wide instruction file.
  - `.agents/skills/gate-discipline/SKILL.md` — skill body loaded on demand.
  - `.husky/pre-commit` — git hook that runs other enforcers.
  - `scripts/check-ui-contract.mjs` — custom CLI enforcer (ratchet).
  - `commitlint.config.cjs` — commit-msg linter.
- Each rule has an on/off switch. Toggling a rule prepends its body to the **ruled** prompt.
- EN ↔ PT toggle keeps both languages useful.
- "Copy ruled prompt" copies the current ruled-prompt text to clipboard.
- Responsive on mobile, Full HD, and 4K (one column under 720 px).

## Mirror of `/hands-on/starter`

Same visual system as the starter (`--paper`, `--ink`, `--blue`, `--gold`). Drop-in replacement under `hands-on/rules/`.

## Token budget

Page weight: ~5 KB total, no framework, no fetch.
