Agent skill

Domain Model

by sammcj in sammcj/agentic-coding

Actively build and sharpen a project's domain model - challenge terms against the glossary, stress-test boundaries with scenarios, cross-reference against the code, and record the glossary…

Apache-2.0Auto-check passedDevelopment

Install Domain Model

skills CLI
$ npx skills add sammcj/agentic-coding --skill domain-model -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install sammcj/agentic-coding domain-model --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/sammcj/agentic-coding.git skills-src && mkdir -p .claude/skills && cp -r skills-src/Skills_disabled/domain-model .claude/skills/domain-model && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
domain-model
GitHub stars
162
Token cost
~883 tokens
SKILL.md length
402 words
Files
3
Skills in repo
64
Repo updated
First seen
Licence
Apache-2.0

At a glance

Actively build and sharpen a project's domain model - challenge terms against the glossary, stress-test boundaries with scenarios, cross-reference against the code, and record the glossary…

  • Works in 3 steps: Hard to reverse - the cost of changing… → Surprising without context - a future… → The result of a real trade-off - there…
  • You are changing the domain model itself
  • SKILL.md covers File structure and During the session
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Domain Model is an agent skill from sammcj/agentic-coding. Actively build and sharpen a project's domain model - challenge terms against the glossary, stress-test boundaries with scenarios, cross-reference against the code, and record the glossary (CONTEXT.md) and decisions (ADRs) the moment they crystallise. Use when you are changing the domain model itself, pinning down a ubiquitous language, or recording an architectural decision.

Its SKILL.md is about 880 tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `ADR-FORMAT.md` and `CONTEXT-FORMAT.md`).

It sits in Development, covering Architecture decision records, Load testing and Domain-driven design. The repository describes itself as: Agentic Coding Rules, Templates etc... The licence is Apache-2.0.

When your agent uses it

  • You are changing the domain model itself
  • Pinning down a ubiquitous language
  • Recording an architectural decision

Example prompts

  • “/domain-model”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Hard to reverse - the cost of changing your mind later is meaningful
  2. Surprising without context - a future reader will wonder "why did they do it this way?"
  3. The result of a real trade-off - there were genuine alternatives and you picked one for specific reasons

What it can do on your machine

Read from SKILL.md and the folder at commit 2f25ced. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Domain Model loads about 883 tokens when it runs. Until then it costs about 98 tokens; SKILL.md has 402 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~98
When it runs · the whole SKILL.md, loaded when a task matches
~883

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from sammcj/agentic-coding at commit 2f25ced, republished under its Apache-2.0 licence (© sammcj). 402 words, ~883 tokens.

Download SKILL.mdSave it as .claude/skills/domain-model/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
domain-model
description
Actively build and sharpen a project's domain model - challenge terms against the glossary, stress-test boundaries with scenarios, cross-reference against the code, and record the glossary (CONTEXT.md) and decisions (ADRs) the moment they crystallise. Use when you are changing the domain model itself, pinning down a ubiquitous language, or recording an architectural decision.
disable-model-invocation
true
metadata.source
https://github.com/mattpocock/skills

Domain modelling

Actively build and sharpen the project's domain model as you design. This is the active discipline - challenging terms, inventing edge-case scenarios, and writing the glossary and decisions down the moment they crystallise. Merely reading CONTEXT.md for vocabulary is not this skill; that is a one-line habit any skill can do. This skill is for when you are changing the model, not just consuming it.

File structure

Most repos have a single context:

/
├── CONTEXT.md
├── docs/
│   └── adr/
│       ├── 0001-event-sourced-orders.md
│       └── 0002-postgres-for-write-model.md
└── src/

If a CONTEXT-MAP.md exists at the root, the repo has multiple contexts. The map points to where each one lives:

/
├── CONTEXT-MAP.md
├── docs/
│   └── adr/                          ← system-wide decisions
├── src/
│   ├── ordering/
│   │   ├── CONTEXT.md
│   │   └── docs/adr/                 ← context-specific decisions
│   └── billing/
│       ├── CONTEXT.md
│       └── docs/adr/

Create files lazily - only when you have something to write. If no CONTEXT.md exists, create one when the first term is resolved. If no docs/adr/ exists, create it when the first ADR is needed.

During the session

Challenge against the glossary

When the user uses a term that conflicts with the existing language in CONTEXT.md, call it out immediately. "Your glossary defines 'cancellation' as X, but you seem to mean Y - which is it?"

Sharpen fuzzy language

When the user uses vague or overloaded terms, propose a precise canonical term. "You're saying 'account' - do you mean the Customer or the User? Those are different things."

Discuss concrete scenarios

When domain relationships are being discussed, stress-test them with specific scenarios. Invent scenarios that probe edge cases and force the user to be precise about the boundaries between concepts.

Show full SKILL.md (171 more words)Show less
Cross-reference with code

When the user states how something works, check whether the code agrees. If you find a contradiction, surface it: "Your code cancels entire Orders, but you just said partial cancellation is possible - which is right?"

Update CONTEXT.md inline

When a term is resolved, update CONTEXT.md right there. Don't batch these up - capture them as they happen. Use the format in CONTEXT-FORMAT.md.

CONTEXT.md should be totally devoid of implementation details. Do not treat CONTEXT.md as a spec, a scratch pad, or a repository for implementation decisions. It is a glossary and nothing else.

Offer ADRs sparingly

Only offer to create an ADR when all three are true:

  1. Hard to reverse - the cost of changing your mind later is meaningful
  2. Surprising without context - a future reader will wonder "why did they do it this way?"
  3. The result of a real trade-off - there were genuine alternatives and you picked one for specific reasons

If any of the three is missing, skip the ADR. Use the format in ADR-FORMAT.md.

© sammcj, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in Skills_disabled/domain-model of sammcj/agentic-coding.

  • SKILL.md
  • ADR-FORMAT.md
  • CONTEXT-FORMAT.md

Open the folder on GitHubat commit 2f25ced

Compare with similar skills

Domain Model next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Domain Model compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Domain Model this skillsammcj/agentic-coding162—~883Automated safety check: PassApache-2.0
Domain Modelingromiluz13/cc10x164—~1.8kAutomated safety check: PassMIT
Critique Planayoubben18/ab-method192—~1.4kAutomated safety check: PassMIT
Domain Modelingbrim-borium/spotify_sdk1665 repos~806Automated safety check: PassApache-2.0
Grill With Docsmeain/dotfiles28520 repos~875Automated safety check: PassMIT
Domain Modelingvinvcn/mattpocock-skills-zh-CN4.7k—~477Automated safety check: PassMIT

Similar skills

  • Domain Modeling

    romiluz13/cc10x

    A skill your agent uses when changing or sharpening a project's domain model: challenge terms against the glossary, sharpen fuzzy language, stress-test with edge-case scenarios, update CONTEXT.md…

    164 GitHub stars~1.8k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Critique Plan

    ayoubben18/ab-method

    Pre-implementation critic. An agent skill from ayoubben18/ab-method.

    192 GitHub stars~1.4k tokensUpdated 8 days ago
    DevelopmentAuto-check passed
  • Domain Modeling

    brim-borium/spotify_sdk

    Build and sharpen a project's domain model. An agent skill from brim-borium/spotify_sdk.

    166 GitHub starsUsed in 5 repos~806 tokens
    DevelopmentAuto-check passed
  • Grill With Docs

    meain/dotfiles

    Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as decisions crystallise.

    285 GitHub starsUsed in 20 repos~875 tokens
    DevelopmentAuto-check passed
  • Domain Modeling

    vinvcn/mattpocock-skills-zh-CN

    构建并打磨项目的领域模型。适用于讨论 codebase 术语、编写或编辑 GLOSSARY.md,或记录或编辑 ADR。

    4.7k GitHub stars~477 tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Grill With Docs

    ayoubben18/ab-method

    Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as decisions crystallise.

    192 GitHub stars~2.1k tokensUpdated 8 days ago
    DevelopmentAuto-check passed

More from sammcj/agentic-coding

All 64 skills in this repo
  • Yue2 Music

    sammcj/agentic-coding

    A skill your agent uses when generating songs with YuE2, covering a recording via SheetSage2 audio-to-ABC, editing a score or lyrics with melody preservation, or building a reproducible listening…

    162 GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Bento Slides

    sammcj/agentic-coding

    A skill your agent uses when creating or editing Bento (.bento.html) slide decks, including any request for a single-file HTML slide deck.

    162 GitHub stars~2.9k tokensUpdated today
    Auto-check passed
  • Idrive Backup

    sammcj/agentic-coding

    A skill your agent uses whenever the user wants you to manage, discuss or diagnose iDrive Backup configuration on macOS

    162 GitHub stars~1.7k tokensUpdated today
    Auto-check: notes
  • Piper Tts Training

    sammcj/agentic-coding

    Train custom TTS voices for Piper (ONNX format) using fine-tuning or from-scratch approaches.

    162 GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • PPTX To Md

    sammcj/agentic-coding

    Convert a PPTX slide deck into per-slide markdown that preserves both the verbatim text and the meaning of embedded screenshots, diagrams and charts in their original layout positions.

    162 GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Skill Creator Primer

    sammcj/agentic-coding

    You MUST load this skill before the skill-creator skill AND before making ANY change to, or conducting a review of ANY Agent Skill.

    162 GitHub stars~9.8k tokensUpdated today
    Auto-check passed

Categories

Questions about Domain Model

What does Domain Model do?

Actively build and sharpen a project's domain model - challenge terms against the glossary, stress-test boundaries with scenarios, cross-reference against the code, and record the glossary…. Domain Model is an agent skill from sammcj/agentic-coding.md) and decisions (ADRs) the moment they crystallise.

When should I use Domain Model?

Domain Model fits situations like: you are changing the domain model itself; pinning down a ubiquitous language; recording an architectural decision.

How do I install Domain Model in Claude Code?

Run `npx skills add sammcj/agentic-coding --skill domain-model -a claude-code`. Or copy the skill folder (Skills_disabled/domain-model in sammcj/agentic-coding) into .claude/skills/domain-model in your project. Claude Code loads it when a task matches its description.

How do I install Domain Model in Codex?

Run `npx skills add sammcj/agentic-coding --skill domain-model -a codex`. Or copy the skill folder (Skills_disabled/domain-model in sammcj/agentic-coding) into .agents/skills/domain-model in your project. Codex loads it when a task matches its description.

Can I use Domain Model in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sammcj/agentic-coding --skill domain-model -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/domain-model, .gemini/skills/domain-model, .github/skills/domain-model and .opencode/skills/domain-model in your project.

What does Domain Model need to run?

SKILL.md names no scripts, command-line tools or credentials: Domain Model is instructions for the agent only.

Does Domain Model access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Domain Model safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Domain Model use?

Domain Model is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Domain Model use?

About 883 tokens (SKILL.md is roughly 3.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Domain Model?

Skills that share tags, products or a category with Domain Model: Domain Modeling (romiluz13/cc10x, 164 stars), Critique Plan (ayoubben18/ab-method, 192 stars), Domain Modeling (brim-borium/spotify_sdk, 166 stars) and Grill With Docs (meain/dotfiles, 285 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Domain Model?

sammcj (a GitHub user) maintains it in sammcj/agentic-coding, which has 162 GitHub stars. The repository holds 64 skills in this directory. The repository was last updated on October 9, 2026.

Source: sammcj/agentic-coding on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.