# Harbor — agents.md

## 0. Hard rules (fail closed)

Read DESIGN.md first. Compose shadcn under this contract's tokens — do not invent OKLCH.
Pass `npm run validate` before done. Contract MCP is optional.

## 1. Load order (mandatory)

1. `docs/platform.md` + `docs/harbor.md`
2. This file + design.md
3. Skills via `npx skills add byronwade/ui.byronwade.com`
4. Recipe → compose → validate gates

## 2. Platform consistency (all contracts)

Architecture is shared. Change filenames / MCP tools / JSON keys in `lib/platform/skeleton.ts` for **every** contract — never fork for Harbor alone.
Design DNA may differ (`harbor` aesthetic). Structure must not.

## 3. Design influences → mapping

See `docs/harbor.md`.

## 4. Material laws (app chrome)

Quiet paper ops surfaces, semantic status chips, dense index rows — no cinema.

## 5. Skills

- `harbor-theme`
- `harbor-compose`
- `harbor-ops`
- `harbor-surface`
- `harbor-a11y`

## 6. Agents

Author → reviewer against DESIGN.md + skills.

## 7. Negotiated endpoints

- design.md · agents.md · architecture.md · llms.txt under `/harbor/`
- Machine kit: `https://ui.byronwade.com/r/harbor.contract.json`

## 8. Done gate

- [ ] Law book loaded
- [ ] Skill followed
- [ ] Tokens / radii / depth from kit only
- [ ] `npm run validate` green
- [ ] Optional MCP `validate_ui` if tool-wired
