Agent skill

Ubiquitous Language

by softspark in softspark/ai-toolkit

Extracts DDD ubiquitous language glossary, flags ambiguities, saves to UBIQUITOUSLANGUAGE.md.

Apache-2.0Auto-check passedDevelopment

Install Ubiquitous Language

skills CLI
$ npx skills add softspark/ai-toolkit --skill ubiquitous-language -a claude-code

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

GitHub CLI
$ gh skill install softspark/ai-toolkit ubiquitous-language --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/softspark/ai-toolkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/app/skills/ubiquitous-language .claude/skills/ubiquitous-language && 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
ubiquitous-language
GitHub stars
179
Token cost
~997 tokens
SKILL.md length
405 words
Files
1
Skills in repo
112
Repo updated
First seen
Licence
Apache-2.0

At a glance

Extracts DDD ubiquitous language glossary, flags ambiguities, saves to UBIQUITOUSLANGUAGE.md.

  • Works in 4 steps: Scans conversation for domain-relevant… → Identifies ambiguities, synonyms, and… → Proposes canonical glossary with… → …
  • Tasks that involve Domain-driven design
  • SKILL.md covers Usage, What This Command Does, Process and Output Format, plus 3 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Ubiquitous Language is an agent skill from softspark/ai-toolkit. Extracts DDD ubiquitous language glossary, flags ambiguities, saves to UBIQUITOUSLANGUAGE.md. Triggers: define domain terms, build glossary, harden terminology, DDD, domain model.

Its SKILL.md is about 1000 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Domain-driven design. The repository describes itself as: Professional-grade AI coding toolkit: 94 skills, 44 agents, multi-platform (Claude, Cursor, Windsurf, Copilot, Gemini, Cline, Roo Code, Aider, Augment, Antigravity, Codex CLI… The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Domain-driven design

Example prompts

  • “Use the ubiquitous-language skill to extract DDD ubiquitous language glossary, flags ambiguities, saves to UBIQUITOUSLANGUAGE.md”
  • “/ubiquitous-language”

Requirements

  • Pre-approved tools (allowed-tools): Read, Write, Edit, Grep, Glob

Workflow steps

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

  1. Scans conversation for domain-relevant nouns, verbs, and concepts
  2. Identifies ambiguities, synonyms, and overloaded terms
  3. Proposes canonical glossary with opinionated term choices
  4. Writes to UBIQUITOUS_LANGUAGE.md

What it can do on your machine

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

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Grep
    • Glob

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).

    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

Ubiquitous Language loads about 997 tokens when it runs. Until then it costs about 50 tokens; SKILL.md has 405 words of instructions outside code blocks.

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

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 softspark/ai-toolkit at commit e40ed87, republished under its Apache-2.0 licence (© softspark). 405 words, ~997 tokens.

Download SKILL.mdSave it as .claude/skills/ubiquitous-language/SKILL.md (or your agent's skills folder).
name
ubiquitous-language
description
Extracts DDD ubiquitous language glossary, flags ambiguities, saves to UBIQUITOUS_LANGUAGE.md. Triggers: define domain terms, build glossary, harden terminology, DDD, domain model.
allowed-tools
Read, Write, Edit, Grep, Glob
user-invocable
true
effort
medium
argument-hint
[domain or context to extract terms from]

Ubiquitous Language

$ARGUMENTS

Extract and formalize domain terminology into a consistent glossary.

Usage

/ubiquitous-language [domain or context]

What This Command Does

  1. Scans conversation for domain-relevant nouns, verbs, and concepts
  2. Identifies ambiguities, synonyms, and overloaded terms
  3. Proposes canonical glossary with opinionated term choices
  4. Writes to UBIQUITOUS_LANGUAGE.md

Process

  1. Scan conversation for domain terms
  2. Identify problems:
    • Same word used for different concepts (ambiguity)
    • Different words used for same concept (synonyms)
    • Vague or overloaded terms
  3. Propose canonical glossary
  4. Write to UBIQUITOUS_LANGUAGE.md
  5. Output summary inline

Output Format

markdown
# Ubiquitous Language

## {Domain Group}

| Term | Definition | Aliases to avoid |
|------|-----------|-----------------|
| **Order** | A customer's request to purchase one or more items | Purchase, transaction |

## Relationships

- An **Invoice** belongs to exactly one **Customer**

## Example dialogue

> **Dev:** "When a **Customer** places an **Order**..."
> **Domain expert:** "..."

## Flagged ambiguities

- "account" was used to mean both **Customer** and **User** — ...

Rules

  • MUST be opinionated — pick the best term and list alternatives as aliases to avoid
  • MUST flag every ambiguity (one word → two concepts) and every synonym (two words → one concept) with an explicit recommendation
  • MUST write tight definitions (one sentence) that define what the term is, not what it does
  • NEVER include generic programming concepts (array, function, endpoint, class) — this glossary is for the domain, not the toolchain
  • NEVER silently overwrite an existing UBIQUITOUS_LANGUAGE.md — read the current file first, then update incrementally preserving prior decisions
  • CRITICAL: show relationships with cardinality ("an Order belongs to exactly one Customer"). Vocabulary without relationships is a word list, not a language.
  • MANDATORY: include 3-5 example dialogue exchanges showing correct usage. Abstract glossaries without dialogue rarely get adopted.
Show full SKILL.md (195 more words)Show less

Gotchas

  • Domain terms often overlap with framework jargon (e.g., "Service" in DDD vs "Service" in Angular). If the framework already claims a term, prefer a domain-specific alternative to avoid collision.
  • Stakeholders resist terminology change even when their current terms are ambiguous. "Account" replacing "User" triggers more discussion than expected — plan for negotiation in the example dialogue section.
  • Glossaries rot when features ship without updating them. A UBIQUITOUS_LANGUAGE.md last updated 6 months ago is a snapshot, not a source of truth. Flag staleness in the header and re-run this skill periodically.
  • Relationships between terms are easy to hand-wave with "related to". Pin down the cardinality (0..1, 1..*, 1..1) — vague relationships produce schema ambiguity later.
  • The opinionated canonical choice may contradict marketing or legal language. Note conflicts explicitly rather than hiding them; the domain model and the marketing site can legitimately diverge.

When NOT to Use

  • For writing a PRD (full requirements) — use /write-a-prd
  • For generating user-facing documentation — use /docs
  • For implementation planning — use /plan or /prd-to-plan
  • For enforcing language in commit messages or code reviews — use /brand-voice (distinct concern: writing style, not domain terms)
  • When the project is a single-developer throwaway — glossary overhead is not justified

© softspark, 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

Just SKILL.md in app/skills/ubiquitous-language of softspark/ai-toolkit.

Open the folder on GitHubat commit e40ed87

Compare with similar skills

Ubiquitous Language 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.

Ubiquitous Language compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ubiquitous Language this skillsoftspark/ai-toolkit179—~997Automated safety check: PassApache-2.0
Domain Modelingfossasia/eventyay-interpretation1.6k31 repos~821Automated safety check: PassApache-2.0
Architecture Governancezai-org/ZCode7.6k—~1.2kAutomated safety check: PassApache-2.0
Evolutionary Modular Architecturetech-leads-club/agent-skills7k—~3.7kAutomated safety check: PassCC-BY-4.0
Domain Modelingbrim-borium/spotify_sdk1665 repos~806Automated safety check: PassApache-2.0
Domain Modeling and Glossarywindmill-labs/windmill18k—~622Automated safety check: PassCustom licence

Similar skills

  • Domain Modeling

    fossasia/eventyay-interpretation

    Build and sharpen a project's domain model. An agent skill from fossasia/eventyay-interpretation.

    1.6k GitHub starsUsed in 31 repos~821 tokens
    DevelopmentAuto-check passed
  • Apply the repository's architecture policy to code changes by generating a bounded context package, checking module and layer boundaries, and reporting baseline-aware violations.

    7.6k GitHub stars~1.2k tokensUpdated 10 days ago
    DevelopmentAuto-check passed
  • Evolutionary Modular Architecture

    tech-leads-club/agent-skills

    Guides design of modular-monolith platforms with DDD, flat-by-aggregate modules, anti-corruption layers, outbox events and resilience, plus an architecture document with SVG diagrams.

    7k GitHub stars~3.7k tokensUpdated today
    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
  • Domain Modeling and Glossary

    windmill-labs/windmill

    Actively challenges vague or conflicting terminology as you design, and keeps a living domain glossary file up to date in real time.

    18k GitHub stars~622 tokensUpdated today
    DevelopmentAuto-check passed
  • Ddd

    swamp-club/swamp

    Domain Driven Design guidance for TypeScript/Deno codebases.

    644 GitHub stars~1.4k tokensUpdated today
    DevelopmentAuto-check passed

More from softspark/ai-toolkit

All 112 skills in this repo
  • Prepare Test Env

    softspark/ai-toolkit

    Prepare or verify a project QA environment with source identity, readiness, browser access, evidence paths and owned cleanup.

    179 GitHub stars~1.8k tokensUpdated yesterday
    Auto-check: notes
  • A11y Validate

    softspark/ai-toolkit

    Accessibility validator: WCAG 2.1 AA, EN 301 549, EAA. An agent skill from softspark/ai-toolkit.

    179 GitHub stars~3.8k tokensUpdated yesterday
    Auto-check: notes
  • Analyze

    softspark/ai-toolkit

    Analyzes code quality, complexity, patterns across codebase.

    179 GitHub stars~1k tokensUpdated yesterday
    Auto-check passed
  • Autonomous Dev

    softspark/ai-toolkit

    Drives a brief, specification, issue or existing PR through implementation, review, tests and QA to a ready PR.

    179 GitHub stars~2.6k tokensUpdated yesterday
    Auto-check: notes
  • Brand Voice

    softspark/ai-toolkit

    Direct technical voice for docs, README, user-facing text. An agent skill from softspark/ai-toolkit.

    179 GitHub stars~2.1k tokensUpdated yesterday
    Auto-check passed
  • CI

    softspark/ai-toolkit

    Detect/generate/debug CI pipeline config (GitHub Actions, GitLab CI).

    179 GitHub stars~1.1k tokensUpdated yesterday
    Auto-check: notes

Categories

Questions about Ubiquitous Language

What does Ubiquitous Language do?

Extracts DDD ubiquitous language glossary, flags ambiguities, saves to UBIQUITOUSLANGUAGE.md. Ubiquitous Language is an agent skill from softspark/ai-toolkit.md.

When should I use Ubiquitous Language?

Ubiquitous Language fits situations like: tasks that involve Domain-driven design.

How do I install Ubiquitous Language in Claude Code?

Run `npx skills add softspark/ai-toolkit --skill ubiquitous-language -a claude-code`. Or copy the skill folder (app/skills/ubiquitous-language in softspark/ai-toolkit) into .claude/skills/ubiquitous-language in your project. Claude Code loads it when a task matches its description.

How do I install Ubiquitous Language in Codex?

Run `npx skills add softspark/ai-toolkit --skill ubiquitous-language -a codex`. Or copy the skill folder (app/skills/ubiquitous-language in softspark/ai-toolkit) into .agents/skills/ubiquitous-language in your project. Codex loads it when a task matches its description.

Can I use Ubiquitous Language 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 softspark/ai-toolkit --skill ubiquitous-language -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ubiquitous-language, .gemini/skills/ubiquitous-language, .github/skills/ubiquitous-language and .opencode/skills/ubiquitous-language in your project.

What does Ubiquitous Language need to run?

SKILL.md names no scripts, command-line tools or credentials: Ubiquitous Language is instructions for the agent only. Its frontmatter pre-approves these tools: Read, Write, Edit, Grep, Glob.

Does Ubiquitous Language 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 Ubiquitous Language 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 Ubiquitous Language use?

Ubiquitous Language 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 Ubiquitous Language use?

About 997 tokens (SKILL.md is roughly 4k 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 Ubiquitous Language?

Skills that share tags, products or a category with Ubiquitous Language: Domain Modeling (fossasia/eventyay-interpretation, 1.6k stars), Architecture Governance (zai-org/ZCode, 7.6k stars), Evolutionary Modular Architecture (tech-leads-club/agent-skills, 7k stars) and Domain Modeling (brim-borium/spotify_sdk, 166 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ubiquitous Language?

softspark (a GitHub user) maintains it in softspark/ai-toolkit, which has 179 GitHub stars. The repository holds 112 skills in this directory. The repository was last updated on October 8, 2026.

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