domain-modeling

Builds and maintains project glossaries and architecture decision records during design discussions.

Updated Jun 28, 2026
One-click install
npx skills add https://github.com/AO-HyS/aohys.com --skill domain-modeling-ao-hys
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: domain-modeling
Source: https://github.com/AO-HyS/aohys.com/tree/main/.agents/skills/domain-modeling
Command: npx skills add https://github.com/AO-HyS/aohys.com --skill domain-modeling-ao-hys

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Teams lose track of domain terminology and the reasoning behind architectural decisions, leading to inconsistent language in code and repeated debates about choices already made. This Skill actively sharpens a project's domain model by maintaining a CONTEXT.md glossary and recording Architecture Decision Records (ADRs) as decisions crystallize. ## Core Features & Use Cases - Glossary Management: Creates and updates CONTEXT.md files with opinionated term definitions, including canonical terms and words to avoid, supporting both single-context and multi-context repositories via CONTEXT-MAP.md. - ADR Recording: Writes lightweight, sequentially numbered ADRs in docs/adr/ only when decisions are hard to reverse, surprising without context, and the result of real trade-offs. - Language Sharpening: Challenges vague or conflicting terminology during design sessions, cross-references claims against actual code, and stress-tests domain relationships with concrete edge-case scenarios. - Use Case: While designing a billing feature, the user says "account" ambiguously; the Skill asks whether they mean Customer or User, updates CONTEXT.md with the resolved term, and offers an ADR when the team decides Billing communicates with Ordering via domain events instead of synchronous HTTP. ## Quick Start Ask the assistant to help define the domain terms for your project and record why you chose your current architecture in an 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 a domain glossary for my codebase?▼

Create a CONTEXT.md file at the repository root listing each domain term with a one or two sentence definition and words to avoid. The Skill updates this file inline as terms are resolved during design discussions, keeping it free of implementation details.

When should I write an architecture decision record?▼

Write an ADR only when a decision is hard to reverse, surprising without context, and the result of a genuine trade-off between alternatives. Decisions that are easy to reverse, obvious, or had no real alternatives should be skipped.

How do I handle multiple bounded contexts in one repository?▼

Create a CONTEXT-MAP.md at the repo root listing each context, where it lives, and how contexts relate to each other. Each context then gets its own CONTEXT.md and optionally its own docs/adr/ directory for context-specific decisions.

What format should an ADR follow?▼

ADRs live in docs/adr/ with sequential numbering like 0001-slug.md and contain a short title plus one to three sentences covering context, decision, and rationale. Optional sections like Status, Considered Options, and Consequences are added only when they add genuine value.

What are the limitations of a CONTEXT.md glossary?▼

CONTEXT.md is strictly a glossary and must not contain implementation details, specs, or scratch notes. It only covers terms specific to the project's domain, excluding general programming concepts like timeouts or error types.