Ops index · preview

Harbor

Calm ops admin — dense indexes, quiet chrome, semantic status.

Open source · Compact · semantic chips

Ops index

Compact · semantic chips

  • ORD-2401

    Restock ceramic vessels

    Open · 12m
  • ORD-2398

    Refund #4821

    Needs review
  • ORD-2390

    Ship queue — West

    Healthy
  • ORD-2384

    Carrier delay — East

    Watching
  • ORD-2371

    Pick wave — Bay 4

    In progress
  • ORD-2366

    Vendor credit — Alder

    Queued
  • ORD-2359

    Cycle count — Shelf C

    Healthy
  • ORD-2348

    Hold — damaged carton

    Blocked

Design contract install

Install into any project

Agent stack: law book + verified skills + CI gates are required. Contract MCP is optional. shadcn MCP / CLI installs atoms; Harbor keeps agents inside closed tokens via docs, skills, and npm run validate.

0. Agent loop (golden path)
Fail-closed order — gates are the bailiff, not a skipped tool call.
  1. 01Load /harbor/design.md + /harbor/agents.md (REQUIRED FIRST)
  2. 02Open harbor-* skill (compose / specialty) — verified cookbook
  3. 03Pick a task recipe — list-resource / object-detail / agent-rail / …
  4. 04list_primitives + shadcn add — compose approved atoms only; never twin kits
  5. 05npm run validate — REQUIRED BEFORE DONE (check:design · platform · contrast)
  6. 06Optional MCP: get_contract → validate_ui when the session is tool-wired
1. Skills (required cookbook)
Native Harbor skill pack — theme, compose, specialty.

all skills

npx skills add byronwade/ui.byronwade.com

Harbor theme skill

npx skills add byronwade/ui.byronwade.com --skill harbor-theme
2. Law book + gates
Machine markdown + npm run validate.

done gate

npm run validate
3. Compose with shadcn
Install atoms, then stay inside the contract.

shadcn init

npx shadcn@latest init -d --base radix

add primitives

npx shadcn@latest add button card input table tabs dialog
4. Contract API (JSON)
Slim consistency kit — mandate, tokens, primitives, recipes.

curl

curl -sS https://ui.byronwade.com/r/harbor.contract.json

/r/harbor.contract.json

5. Optional — contract MCP
Accelerator for tool-calling agents. Not a substitute for gates.

npx (any project)

CONTRACT_ID=harbor CONTRACT_SITE=https://ui.byronwade.com npx -y --package=github:byronwade/ui.byronwade.com contract-mcp

.cursor/mcp.json

{
  "mcpServers": {
    "harbor-contract": {
      "command": "npx",
      "args": [
        "-y",
        "--package=github:byronwade/ui.byronwade.com",
        "contract-mcp"
      ],
      "env": {
        "CONTRACT_ID": "harbor",
        "CONTRACT_SITE": "https://ui.byronwade.com"
      }
    },
    "shadcn": {
      "command": "npx",
      "args": [
        "shadcn@latest",
        "mcp"
      ]
    }
  }
}
get_contractresolve_tokenvalidate_uilist_primitivesget_recipeapply_prefs

shadcn MCP/CLI installs atoms. Law book + skills + npm run validate enforce the system. Contract MCP is optional.

Contributor checkout: CONTRACT_ID=harbor node packages/contract-mcp/server.mjs

Next: explore UI primitives, app shells, theme, and design.md — all styled with Harbor tokens on this route.

UI gallery

Shared shadcn — Harbor skin

One component set under components/ui. This route applies the DNA; we do not fork controls per contract.

Open full UI page →
Buttons & badges
Primary, outline, ghost, destructive — brand comes from this contract's --brand.
DefaultSecondaryOutline

App shells

Workbench & composer proofs

Product chrome — same shells as Meridian, restyled by Harbor.

Open surfaces →

Surface studio

Switch density lanes in one chrome

Workbench, composer, marketing, mobile, desktop — same tokens, remapped hit targets.

Surface studio

Try the lanes

⌘K
empty via search
IDTitle
ISS-1842Tighten selected-state contrast
ISS-1839Ship help drawer reading lane
ISS-1831Map activity to agent timeline
ISS-1820Align edge depth on panels
applicationISS-1842 bound

Application workbench

Object list + detail + agent rail — compose shadcn, don't twin shells.

⌘K
empty via search
IDTitle
ISS-1842Tighten selected-state contrast
ISS-1839Ship help drawer reading lane
ISS-1831Map activity to agent timeline
ISS-1820Align edge depth on panels
applicationISS-1842 bound

Composer shell

Bound AI next to the object — provenance and activity stay readable.

01 export function IssueRow() {

02 return (

03 <tr className="bg-brand/10">

04

05 </tr>

06 )

07 }

Meridian · applicationIssueRow.tsx