domain-modeling

Builds and maintains project domain glossaries and architecture decision records.

Updated Sep 17, 2026
One-click install
npx skills add https://github.com/jordizle/claude-skills --skill domain-modeling-jordizle
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: domain-modeling
Source: https://github.com/jordizle/claude-skills/tree/main/domain-modeling
Command: npx skills add https://github.com/jordizle/claude-skills --skill domain-modeling-jordizle

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Domain terminology drifts and architectural decisions get forgotten, leaving future readers guessing why the code looks the way it does. This Skill keeps a project's ubiquitous language and decision history accurate by challenging fuzzy terms, cross-checking claims against code, and recording CONTEXT.md entries and ADRs the moment they crystallize. ## Core Features & Use Cases - Glossary sharpening: Detects vague or conflicting terminology during discussion, proposes canonical terms, and updates CONTEXT.md inline using a strict opinionated format. - ADR authoring with discipline: Offers an Architecture Decision Record only when a decision is hard to reverse, surprising without context, and the result of a real trade-off, using a minimal one-paragraph template. - Multi-context support: Handles both single-context repos (one root CONTEXT.md) and multi-context repos via a CONTEXT-MAP.md that maps bounded contexts and their relationships. - Use Case: While designing a billing feature, a user says "account" ambiguously; the Skill asks whether they mean Customer or User, resolves the term, writes it into CONTEXT.md, and later records an ADR explaining why Billing communicates with Ordering via domain events instead of synchronous HTTP. ## Quick Start Ask the assistant to use the domain-modeling skill to review the terminology in your design discussion and record the agreed terms and decisions in CONTEXT.md and docs/adr/.

Frequently Asked Questions about domain-modeling

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create an architecture decision record for my project?

Create a sequentially numbered Markdown file like 0001-slug.md in docs/adr/ containing a short title and one to three sentences covering context, decision, and rationale. Only add Status, Considered Options, or Consequences sections when they add genuine value.

How do I write a ubiquitous language glossary for a codebase?

Create a CONTEXT.md at the repo root listing each domain term with a one or two sentence definition and an Avoid line for rejected synonyms. Keep it free of implementation details and only include terms specific to the project's domain, not general programming concepts.

When should I write an ADR versus skipping it?

Write an ADR only when all three hold: the decision is hard to reverse, surprising without context, and the result of a real trade-off between alternatives. Skip it for easily reversed choices, obvious decisions, or cases with no genuine alternatives.

Does this approach support multiple bounded contexts in one repo?

Yes. Multi-context repos use a root CONTEXT-MAP.md listing each context, its location, and its relationships, with per-context CONTEXT.md files and context-specific docs/adr/ directories. Single-context repos just use one root CONTEXT.md.

What belongs in CONTEXT.md and what should be excluded?

CONTEXT.md is a glossary only: canonical domain terms, tight definitions, and avoided synonyms. Exclude implementation details, specs, scratch notes, and general programming concepts like timeouts or error types, even if the project uses them heavily.