domain

Builds and maintains a project's DOMAIN.md domain model and decision records.

Updated Aug 5, 2026
One-click install
npx skills add https://github.com/skkap/claude-skills --skill domain-skkap
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: domain
Source: https://github.com/skkap/claude-skills/tree/main/plugins/shape-it/skills/domain
Command: npx skills add https://github.com/skkap/claude-skills --skill domain-skkap

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Projects accumulate inconsistent vocabulary: two words for one thing, one word carrying two meanings, and hard-to-reverse decisions whose reasoning is forgotten. This Skill maintains a single written domain model (DOMAIN.md) plus decision records under docs/decisions/ so terminology, relationships, rules, and the reasons behind choices stay written down and consistent. ## Core Features & Use Cases - Domain model maintenance: Creates and sharpens DOMAIN.md entries with definitions, Avoid synonyms, Kinds, Rules, and See links, graduating to DOMAIN-MAP.md plus per-area files in large projects. - Decision records: Writes dated, numbered records in docs/decisions/ for choices that are hard to reverse and involved real trade-offs, including deliberate no-s, with superseding support. - Two-axis marker system: Defines inline markers (domain vs decision, and nothing/attention/answer needed) used in conversation and shared with the shape-it and domain-adopt skills. - Use Case: While discussing invoicing, a user says "account" meaning two different things; the Skill flags the conflict, walks one real case end to end, resolves the term, and writes the entry and a decision record in the same session. ## Quick Start Ask the assistant to use the domain skill to resolve the conflicting terminology in this project and record it in DOMAIN.md.

Frequently Asked Questions about domain

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

FAQPage Schema
How do I create a domain model for my project?

Start a DOMAIN.md at the project root with a Language section containing entries: a one-sentence definition plus optional _Avoid_, _Kinds_, _Rules_, and _See_ lines. Create it lazily with the first resolved term rather than scaffolding empty headings.

What belongs in DOMAIN.md versus a decision record?

DOMAIN.md holds what is true about the subject regardless of implementation; decision records hold why a particular setup was chosen. If a statement survives rebuilding everything from scratch, it is domain; if it only makes sense given this arrangement, it is a decision record.

When does a decision earn a record in docs/decisions/?

A decision earns a record when it is hard to reverse and involved a real trade-off between alternatives. Surprise is only a prioritization signal, not a third condition; deliberate no-s qualify when they recur or would surprise a reasonable reader.

Does this work for non-code projects like company records?

Yes, the same format applies to records projects, knowledge vaults, and research archives. Entries cover things like fiscal years, members, and banks, and decision records capture filings and structural choices with the same two-condition gate.

When should a single DOMAIN.md be split into multiple areas?

Split when the file passes roughly 150 lines and its terms fall into clusters that barely reference each other. Create a DOMAIN-MAP.md at the root and per-area DOMAIN.md files next to the material they describe; length alone is not the trigger.

What is the difference between domain and domain-adopt?

The domain skill maintains and sharpens an existing model during normal work. domain-adopt is a separate, manually invoked skill that bulk-seeds a model from vocabulary already scattered through CLAUDE.md, READMEs, and other files.