RBD
For AI
JSON models · runs in this browser · no remote compute

Machine-readable models

Agents produce model JSON. You import it on RBD or GO, or paste it here. Monte Carlo runs in this tab — there is no public simulate endpoint. Library numbers are PREP-range placeholders, not a stamped analysis.

GET /llms.txt

Agent prompt

You are helping an analyst use RBD Workbench, a browser-only Monte Carlo reliability calculator (UFC 3-520-02 / IEEE 3006.8 placeholders).

There is no remote simulate endpoint. Do not POST models. Produce model JSON for the analyst to import on the RBD or GO page (or paste on /ai and run in their browser).

Use kind "rbd" or "go". Mermaid flowchart; node IDs are equipment keys. k-of-n is knRequired[subgraphId], never the subgraph title. Do not include PII or site names.

Read /llms.txt.

RBD example:
{
  "kind": "rbd",
  "mermaid": "%% source: util\n%% sink: load\nflowchart LR\n  util[\"Utility feeder\"] --> xfmr[\"MV transformer\"]\n  xfmr --> swg[\"LV switchgear\"]\n  swg --> cab[\"LV cable\"]\n  cab --> load((Load))",
  "knRequired": {},
  "missionHours": 8760,
  "trials": 1000,
  "seed": 1
}

Library λ values are placeholders — flag that they must be replaced with the project PREP extract before a BOD.

llms.txt

# RBD Workbench

Monte Carlo reliability and availability calculator for facility electrical and mechanical systems (UFC 3-520-02 methods; IEEE 3006.8 / USACE PREP-range placeholders). Calculation aid. Not a stamped design. AS-IS, no warranty.

There is **no remote simulate API**. Monte Carlo runs in the visitor's browser only. Do not POST models to this host.

## Pages
- / — Reliability Block Diagram workbench (import JSON, Run)
- /go — Goal-Oriented (GO) method
- /ai — agent instructions, JSON examples, in-browser playground
- /usage — anonymous 30-day counts (event + method only)
- /llms.txt — this file

## How an agent should help
1. Read this file.
2. Produce a model JSON (below). No names, emails, project titles, or site-identifying PREP extracts.
3. Hand it to the analyst to import on / or /go, or paste into /ai and run in their browser.
4. Flag that library λ values are placeholders and must be replaced with the project PREP extract before a BOD.

## Model JSON
{
  "kind": "rbd" | "go",          // default rbd; GO requires "go"
  "mermaid": "flowchart LR ...", // node IDs are equipment keys
  "components": { "<id>": { "lambdaPerYear", "mttrHours", "ps", "beta", "mq", "passThrough", "operatorType?", "tripFrom?", "standbyFor?", "startDelayHours?", "autonomyHours?" } },
  "knRequired": { "<subgraphId>": 2 },  // k-of-n lives here, never in diagram titles
  "missionHours": 8760,
  "trials": 10000,
  "seed": 1
}

Omitted components are filled from the PREP-range library by node id / label. Circle/stadium nodes are pass-through.

## Mermaid
- flowchart LR (or TB). Series: a --> b --> c. Parallel: split and rejoin.
- %% source: util, gen
- %% sink: load   (GO also accepts %% output: load)
- k-of-n: subgraph lists members; set knRequired[subgraphId] = k.
- GO operators on the card: 5 source, 1 two-state, 6 turn-on (Ps on rising demand), 7 turn-off (fail-to-trip does not drop load), 2 OR, 10 AND, 11 k-of-m. Type 8 is startDelayHours / autonomyHours fields, not a glyph.

## Example (RBD)
{
  "kind": "rbd",
  "mermaid": "%% source: util\n%% sink: load\nflowchart LR\n  util[\"Utility feeder\"] --> xfmr[\"MV transformer\"]\n  xfmr --> swg[\"LV switchgear\"]\n  swg --> cab[\"LV cable\"]\n  cab --> load((Load))",
  "knRequired": {},
  "missionHours": 8760,
  "trials": 1000,
  "seed": 1
}

## Example (GO)
{
  "kind": "go",
  "mermaid": "%% source: util\n%% output: load\nflowchart LR\n  util[\"Utility feeder\"] --> pdu[\"PDU\"]\n  pdu --> load((Success))",
  "knRequired": {},
  "missionHours": 8760,
  "trials": 1000,
  "seed": 1,
  "components": {
    "util": {
      "id": "util",
      "operatorType": 5
    },
    "pdu": {
      "id": "pdu",
      "operatorType": 1
    },
    "load": {
      "id": "load",
      "operatorType": 1,
      "passThrough": true
    }
  }
}

In-browser playground

Result JSON appears here. Compute stays in this tab.