К основному содержанию
скилл CX Codex

layers-conceptual-model — скилл для Claude Code

Скилл помогает описать объекты продукта, их связи, состояния и термины до проектирования интерфейса. Нужен, когда модель предметной области ещё меняется.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add jamiemill/layers-skills --skill layers-conceptual-model -a claude-code
Открыть на GitHub

Что делает layers-conceptual-model

layers-conceptual-model помогает определить, какие объекты продукт признаёт, как они связаны, какие действия доступны пользователю и через какие состояния проходят объекты. Он отделяет концептуальную модель от базы данных, вайрфреймов, потоков и пользовательского ментального представления.

Внутри собраны техники для разных решений: выделение объектов из заметок, описание одного объекта, карта связей erDiagram, диаграмма состояний stateDiagram-v2, инвентаризация действий и список единого языка. Скилл предполагает, что уже загружен /layers-intro. Если решения по объектам и терминам закрыты, это повод не подключать его ради самого процесса.

Какие задачи решает

  • выделить реальные объекты из заметок о предметной области
  • развести объекты, атрибуты и значения
  • описать связи и роли между объектами
  • зафиксировать состояния и переходы объектов
  • согласовать названия действий и терминов

Примеры запросов агенту

  • Примени layers-conceptual-model к описанию продукта и выдели реальные объекты, атрибуты и значения.
  • Используй layers-conceptual-model, чтобы построить карту связей erDiagram для объектов продукта.
  • Загрузи /layers-intro, затем с помощью layers-conceptual-model проверь состояния и переходы объекта.

Как установить layers-conceptual-model

1Через Skills CLI (Vercel)

npx skills add jamiemill/layers-skills --skill layers-conceptual-model -a claude-code

2Вручную: положить файлы

~/.claude/skills/layers-conceptual-model/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/layers-conceptual-model/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о layers-conceptual-model

Как установить layers-conceptual-model в Claude Code?

Выполните npx skills add jamiemill/layers-skills --skill layers-conceptual-model -a claude-code, затем повторите npx skills add jamiemill/layers-skills --skill layers-conceptual-model -a claude-code. Файл скилла будет находиться в ~/.claude/skills/layers-conceptual-model/SKILL.md.

Что делает layers-conceptual-model?

Скилл помогает определить объекты продукта, их связи, роли, действия, состояния и термины независимо от интерфейса. Он предлагает подобрать технику под текущий вопрос, а не проходить весь набор сразу.

Нужно ли заранее загружать /layers-intro?

Да. Скилл предполагает, что /layers-intro уже загружен.

Исходный текст

SKILL.md · MIT
---
name: layers-conceptual-model
description: Techniques for defining the product's objects, relationships, states, and vocabulary independently of any interface — the most load-bearing layer
---

# /layers-conceptual-model

*Assumes `/layers-intro` has been loaded. This skill is a library of techniques, not a script — see "How to use these skills" there.*

The conceptual model is the most neglected load-bearing layer. It defines the objects the product recognises, how they relate, what states they can be in, and the vocabulary for all of it — a deliberate decision about how the product models its domain, independent of any interface.

It is **not** the users' messy mental model (that's the domain layer), and **not** a database schema, wireframe, or flow. But the gap between this model and what engineers build matters: a large, unexamined gap is both UX debt (users meet a product that contradicts the model) and technical debt (the system is hard to evolve).

---

## The decisions this layer makes

- What objects the product recognises, and where each object's boundary is
- How those objects relate — cardinality, and named roles where an object plays several
- What a user can do to or with each object
- What states an object can be in, and which transitions matter
- The product's vocabulary — one name per concept, one concept per name

If none of these is genuinely open, you may not need this layer right now. Say so rather than working it for the sake of it.

---

## Disciplines — what keeps the model honest

Apply these to whatever you produce, in any order. They are the high-value part of this layer.

- **Real objects only.** A true object is *instanceable* (you can have many), *structured* (has its own attributes), and *useful* (the user cares about it in its own right). This catches two errors: an attribute promoted to an object, and — more often — **instances mistaken for objects**: "CAC" and "ROAS" aren't objects, they're instances of one object, **Metric**. When several nouns are of-a-kind, model the type as the object; the specific names are instances or values.
- **Attributes that are really relationships.** If an attribute is just the name or ID of another object in the model, model it as a relationship — don't duplicate it.
- **Name the role when an object plays several.** "belongs to one User (as referrer)", not "belongs to one User."
- **No speculative additions.** Every object, attribute, action, and relationship should trace to a stated user need. Scope creep here propagates through every layer above. (Tracing to *strategy vocabulary* doesn't count — strategy words aren't yet objects.)
- **Can-be-an-object ≠ should-be-first-class.** The "real objects only" test tells you something *can* be an object — not that the product should commit to it as a first-class, persistent, stateful entity. That elevation is a design bet with a cost. Justify it by concrete use: *what flow or job forces this thing to persist, hold state, and be returned to?* If nothing does, it's transient, or it's premature. And when an object exists only because of an unvalidated strategy bet, mark it **provisional** — model it as a hypothesis, don't "lock" it, and don't build the layer above on it until the bet is tested.
- **Verb precision.** Does a generic verb (Edit, Delete, Update) hide operations with different real-world consequences? "Edit address" conflates correcting a typo (overwrite is fine) with recording a house move (which should preserve history). When a generic verb could mean genuinely different things, name the operations separately — "Correct address" vs "Register change of address" isn't verbose, it's precise.
- **Implementation is not design.** When talk drifts to how something is stored, generated, or computed, redirect to what the user can do and what happens to things that referenced it. Flag genuinely entangled questions for an engineering conversation rather than forcing a premature answer.

---

## Techniques

Pick the one that fits the live decision — don't run them all.

| Technique | Use it to |
|---|---|
| **Noun foraging + OOUX** (Sophia Prater) | Extract objects from research or domain notes. The default when you have naturalistic language to mine. Sort nouns into objects / attributes / instances-or-values / set-aside (UI elements, vague abstractions, actions dressed as nouns), using the "real objects only" test above. |
| **Object definition** | Pin down one object: what it is (one sentence, the user's view), its attributes, its relationships (cardinality + role names), and its actions. |
| **Sketch the flow first** (push forward, pull back) | Objecthood is uncertain — whether something should be a persistent object depends on how it's used. Breadboard the flow (`/layers-interaction-flow`) to see what must persist, hold state, or be returned to, then come back and formalise only those. Often the fastest way to tell a real object from a transient one. |
| **Relational object map** (`erDiagram`) | See objects and relationships together and catch missing, reversed, or spurious connections. `\|\|`=exactly one, `o{`=zero-or-many, `\|{`=one-or-many; crow's foot on the many side; labels read first entity → second. |
| **State transition diagram** (`stateDiagram-v2`) | For an object whose status changes what users can do — name the states, the transitions, and what each state forbids. |
| **Action (CTA) inventory** | List every action a user can take, across all objects, in one place — the product's call-to-action vocabulary. Listing them together (not object by object) is what exposes inconsistency (Add vs Create vs New for one operation) and over-flattening (one verb hiding distinct operations). |
| **Ubiquitous language list** | Resolve naming. For each contested concept: the chosen term, rejected alternatives, and why. One name per concept, one concept per name — in UI, help text, API names, and internal talk alike. |
| **Semantic IxD / action grammar** (Rosenberg) | Audit verb consistency and precision across many actions and objects. |
| **Event storming — commands/policies** (Brandolini) | Process-heavy domain: start from what happens, work back to the objects involved. |
| **Card sorting** | Vocabulary is unclear or contested across users or teams. |
| **Walking the existing product** | Redesign: the current UI reveals the implicit model — compare it to how users actually think. |

Also probe the **temporal decisions** from `/layers-intro` — intermediate action states, read-model lag, relationship temporality, deletion semantics, history — for any object where they bite.

---

## Working with the designer

Find which of the decisions above are live. Offer the technique that fits: noun foraging if there's material to mine, walking the product if redesigning, or straight to object definition if the objects are known and only their shape is open. Do the next useful thing, not the whole toolkit.

Capture only the residue — the object definitions that got settled (and which are still **provisional**, pending a bet or a flow), any diagram that encodes a real relationship or lifecycle, the vocabulary calls, and the open questions (objects that felt thin, decisions deferred to engineering). Don't write a report the designer won't reread.

If domain work hasn't been done, say plainly: this model is a hypothesis until there's evidence.

When the objects and actions are stable, the natural next move is to design how users move through them — `/layers-interaction-flow`.

© jamiemill · MIT · jamiemill/layers-skills

Похожие скиллы

Всё по теме «Дизайн» →
principle-model-the-domain backnotprop Помогает описывать предметную область через структуры данных, а не разрастающиеся условия. Нужен для логики состояний и повторяющихся правил формы данных. CX Codex +1 5 200установок tend juxt Скилл для редактирования и проверки спецификаций .allium. Переводит требования в правила и переходы, очищая модель от деталей реализации. CX Codex +1 2 600установок domain-modeling pandoscope Скилл помогает зафиксировать термины проекта в глоссарии и записать архитектурные решения, пока вы проектируете. CX Codex +1 1 800установок knowledge-layers haowjy Скилл решает, в какой слой проекта писать знание: AGENTS.md, .context/, KB, docs/ или рабочий каталог. Пригодится, когда агент путается, где искать контекст. CX Codex +1 384установок refero-design referodesign Задаёт исследовательский процесс для UI и продуктового дизайна: сначала референсы, затем код. Пригодится для лендингов, экранов, редизайна и полировки интерфейса. CX Codex +1 12 000установок hooked-ux wondelai Разбирает вовлечение и удержание по Hook Model: триггер, действие, награда, инвестиция. Ставит петле оценку и отсекает манипулятивные схемы. CX Codex +1 6 200установок

Из того же набора8

layers-product-strategy Связывает бизнес-цели с болями пользователей и формирует гипотезы решений. Пригодится продуктовым командам для проверки рискованных допущений без лишних затрат. CX Codex +1 2 000установок layers-surface Скилл для аудита видимого слоя продукта: слова, объекты, обратная связь, иерархия, доступность. Помогает понять, что чинить на поверхности, а что — глубже. CX Codex +1 2 000установок layers-interaction-flow Скилл для проектирования структуры взаимодействия: места, действия, краевые случаи и пути отказа до того, как вы возьмётесь за визуал. CX Codex +1 2 000установок layers-intro Задаёт фреймворк Layers of Product Design для сессий продуктового дизайна. Скилл загружают первым, чтобы передать контекст остальным навыкам линейки layers. CX Codex +1 2 000установок layers-observed-behaviour Скилл помогает спланировать исследование пользователей и превратить интервью, тикеты и аналитику в наблюдения с пометкой уверенности. CX Codex +1 1 900установок layers-user-needs Библиотека техник, чтобы вытащить и расставить по важности нужды, боли и желания пользователей — материал для продуктовой стратегии. CX Codex +1 1 900установок layers-domain Скилл помогает зафиксировать терминологию, разногласия и границы контекстов предметной области до проектирования интерфейса. CX Codex +1 1 900установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой