This file is byte-identical to the first copy the registry indexed, one of 3 indexed copies. Same content hash, so the same checks give both the same grade.
principle-model-the-domain from cursor/plugins is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Model the Domain
Encode the real domain in a data structure instead of scattering it across conditionals. A structure that matches the domain makes invalid states unrepresentable and deletes branches. Choosing it at write time is cheap. Recovering it later reads as a refactor and gets deferred.
Reach for:
- A state machine instead of scattered booleans, phases, or lifecycle checks.
- A typed model instead of loose parameters or repeated shape assumptions.
- A map, registry, lookup table, or discriminated union instead of branching spread across files.
- A reducer or command/event model instead of ad hoc state mutations.
- A module organized around one body of domain knowledge instead of a sequence such as load, validate, transform, and save. Execution order is not ownership.
- A small module boundary that gathers repeated behavior, ownership, or invariants.
- A queue, cache, index, graph, tree, or normalized collection where the access pattern calls for it.
- Any other structure that fits. When none fits, work out what the code must never allow and how the data gets read, then find the structure that encodes exactly that.
…
The line at the top of this page pins the label git:20261016.182f2ce, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_qe7sfsejceimf6or
GET https://markdownregistry.com/api/v1/resolve?ref=cursor/plugins/principle-model-the-domain
GET https://markdownregistry.com/api/v1/blob/52c0d85e0c3827c41c18299b642657d7b47eaf77b7b31609e42e0df42b84c75f
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
cursor/plugins · advisor/skills/advisor/SKILL.md · Advisor mode. Consult a stronger (or different) model at key checkpoints: before major decisions, when stuck on an…
cursor/plugins · agent-compatibility/skills/check-agent-compatibility/SKILL.md · Run the full repository compatibility pass: scanner score, startup path, validation loop, and docs reliability.
cursor/plugins · cli-for-agent/skills/cli-for-agents/SKILL.md · Designs or reviews CLIs so coding agents can run them reliably: non-interactive flags, layered --help with examples…
cursor/plugins · create-plugin/skills/create-plugin-scaffold/SKILL.md · Create a new Cursor plugin scaffold with a valid manifest, component directories, and marketplace wiring. Use when…
cursor/plugins · create-plugin/skills/review-plugin-submission/SKILL.md · Audit a Cursor plugin for marketplace readiness. Use when validating manifests, component metadata, discovery paths…
cursor/plugins · cursor-sdk/skills/cursor-sdk/SKILL.md · Guide users building apps, scripts, CI pipelines, or automations on top of the Cursor TypeScript SDK (`@cursor/sdk`)…
cursor/plugins · cursor-team-kit/skills/control-cli/SKILL.md · Build or adapt a local harness to drive, inspect, and profile an interactive CLI or TUI without external services. Use…
cursor/plugins · cursor-team-kit/skills/control-ui/SKILL.md · Build or adapt a local browser/CDP harness to drive and inspect a web, IDE, or Electron UI. Use for local UI…
cursor/plugins · pstack/skills/principle-model-the-domain/SKILL.md · Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files.
michael-denyer/pstack-claude · plugins/pstack/skills/principle-model-the-domain/SKILL.md · Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files.
backnotprop/pstack · skills/principle-model-the-domain/SKILL.md · Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files.
j-star-films-studios/vibecode-protocol-suite · assets/.agent/skills/engineering-principles/model-the-domain/SKILL.md · Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files. Encode the…
creedants/pstack-t3 · skills/principle-model-the-domain/SKILL.md · Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files.
arjitj2/open-pstack · plugins/pstack/skills/principle-model-the-domain/SKILL.md · Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files.
painhardcore/pstack · .opencode/skills/principle-model-the-domain/SKILL.md · Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files. Encode the…
shiwenbin1617/pstack · skills/principle-model-the-domain/SKILL.md · Apply when writing stateful logic, or when code branches a lot or repeats a shape assumption across files. Encode the…