跳到正文
cccskills
免费在 GitHub 公开

ubiquitous-language

Extract a DDD-style domain glossary from conversation context, choosing canonical terms and flagging ambiguity. Use when the user asks to define domain terms, build a glossary, clarify terminology, create a ubiquitous language, or mentions domain modeling or DDD.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md3.8 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

ubiquitous-language

Extract domain terminology from the current conversation and turn it into a concise, shared glossary.

When to use

  • The user asks for a glossary, ubiquitous language, domain vocabulary, or terminology cleanup.
  • A conversation uses multiple names for the same concept.
  • A term appears overloaded, vague, or used differently by engineers and domain experts.
  • The user mentions DDD, domain model, canonical terms, or language hardening.

Process

  1. Scan the current conversation for domain nouns, verbs, lifecycle states, roles, policies, and events.
  2. Exclude generic programming terms unless they carry domain meaning in this context.
  3. Identify terminology problems:
    • One word used for multiple concepts.
    • Multiple words used for the same concept.
    • Vague, overloaded, or implementation-shaped names that hide the domain idea.
  4. Choose canonical terms. Be opinionated, but preserve important aliases as "aliases to avoid" or "also called" notes.
  5. Group terms by natural domain area, actor, lifecycle, or process.
  6. Describe relationships between canonical terms, including cardinality when it is clear.
  7. Include example dialogue that shows a developer and domain expert using the terms precisely.
  8. Flag remaining ambiguities with a recommendation or a question for the user.

Persistence

Default to inline output in the conversation. Do not create a file unless the user asks for one or asks for durable repo knowledge.

When durable knowledge is requested:

  • Use the explicit target file or location the user names.
  • Prefer bd remember for durable agent knowledge when that is the intended persistence mechanism.
  • Prefer existing knowledge/ conventions for repo-level domain knowledge.
  • Do not create MEMORY.md, task-list markdown files, or unrequested permanent documentation.

Output format

Return a glossary in this shape:

# Ubiquitous Language

## <Domain Area>

| Term | Definition | Aliases to avoid |
|------|------------|------------------|
| **Canonical Term** | One-sentence definition of what the concept is. | Old name, vague synonym |

## Relationships

- A **Canonical Term** belongs to exactly one **Related Term**.
- A **Process** may produce one or more **Events**.

## Example dialogue

> **Dev:** "When does a **Canonical Term** become a **Related Term**?"
>
> **Domain expert:** "Only after the **Policy** accepts it. Before that, it is still a **Draft Term**."

## Flagged ambiguities

- "account" was used for both **Customer** and **User**. Use **Customer** for the buyer relationship and **User** for authentication identity.

Canonicalization rules

  • Keep definitions tight: one sentence, focused on what the concept is.
  • Prefer domain language over class, module, endpoint, or UI labels.
  • Use singular nouns for entities and clear verb phrases for domain actions.
  • Preserve useful synonyms only as aliases; do not let them compete with the canonical term.
  • Call out unresolved ambiguity instead of silently choosing when evidence is weak.
  • Avoid inventing terms that are not grounded in the conversation unless clearly labeled as proposals.

Re-running

When invoked again in the same conversation, update the glossary rather than starting over:

  1. Reuse the previous inline glossary or the explicitly requested durable target.
  2. Add new terms from subsequent discussion.
  3. Revise definitions when the domain understanding has changed.
  4. Re-check aliases, overloaded terms, and ambiguous phrases.
  5. Refresh relationships and example dialogue so they include the latest canonical terms.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

add-bead

免费

Capture free-text work as a tracked Beads issue. Use when the user runs /add-bead or wants to quickly file a Beads issue.

中文简介正在准备中。当前显示原文说明。

jupes/agent-forge-harness22026年10月19日 更新

add-repo

免费

Register a new sub-repo in the knowledge base.

中文简介正在准备中。当前显示原文说明。

jupes/agent-forge-harness22026年10月19日 更新

Add focused Bun unit tests for mission-critical behavior and edge cases — not blanket coverage.

中文简介正在准备中。当前显示原文说明。

jupes/agent-forge-harness22026年10月19日 更新

ask

免费

Answer questions about the codebase from knowledge files. Use when the user runs /ask or asks a domain/knowledge question about the repos.

中文简介正在准备中。当前显示原文说明。

jupes/agent-forge-harness22026年10月19日 更新

Meta-skill for creating Agent Forge skills under .claude/skills/ with SKILL.md, optional references/ and scripts/, and Bun scaffolds. Use when the user wants to add or author a skill, scaffold a new skill folder, or align skill docs with harness conventions (JSON script output, Beads for tasks).

中文简介正在准备中。当前显示原文说明。

jupes/agent-forge-harness22026年10月19日 更新

Choose Beads issue priority (P0–P4, numeric, or named) from urgency, impact, and risk when creating or triaging work.

中文简介正在准备中。当前显示原文说明。

jupes/agent-forge-harness22026年10月19日 更新

查看 jupes 的全部技能

报告此技能的问题