skills/ubiquitous-language/SKILL.md
Extracts and formalizes the ubiquitous language from a conversation or codebase. Flags ambiguous terms, resolves contradictions, and saves the glossary to UBIQUITOUS_LANGUAGE.md. Use when establishing shared vocabulary for a domain, after a domain-model session, or asked to "extract the ubiquitous language", "build a glossary", or "document the domain terms". Ported from https://github.com/mattpocock/skills (Matt Pocock).
npx skillsauth add michaelalber/ai-toolkit ubiquitous-languageInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Extract and formalize the domain's ubiquitous language from the current context.
1. Scan — collect domain terms from:
CONTEXT.md if present2. Classify each term as:
| Type | Definition | |------|-----------| | Entity | Has identity, persists over time | | Value Object | Defined by attributes, no identity | | Aggregate | Cluster of objects with one root entity | | Domain Event | Something that happened — past tense noun | | Service | Stateless domain operation | | Command | Intent to change state — imperative verb phrase | | Policy | Business rule that reacts to an event |
See references/term-classification.md for examples of each type.
3. Flag ambiguities — surface:
4. Resolve — for each ambiguity, ask the user: "Which term should be canonical?"
5. Save — write to UBIQUITOUS_LANGUAGE.md:
# Ubiquitous Language
| Term | Type | Definition | Synonyms to Avoid |
|------|------|-----------|-------------------|
| [Term] | [Type] | [one-sentence definition] | [deprecated synonyms] |
6. Update CONTEXT.md — if it exists, sync any new or changed terms.
Report: terms added, ambiguities resolved, terms still open.
development
Interviews the user relentlessly about a plan, decision, or idea — one question at a time, each with a recommended answer. Shared engine behind "grill-me" and "grill-with-docs". Use on any "grill" trigger phrase or to stress-test thinking. Do NOT use to build the plan; it ends at shared understanding, not implementation.
testing
Runs a relentless interview to sharpen a plan or design, capturing the decisions as ADRs and a glossary along the way. Use when the user wants to be grilled AND wants the session to leave durable domain documentation behind. Do NOT use for a throwaway stress-test with no artifacts; use grill-me instead.
tools
OWASP-based security review of Vue/TypeScript front-ends. Detects framework (Vite/Vue CLI/Nuxt), entry points, and data flows; scans the OWASP Top 10 (2025) mapped to Vue client-side risks (raw-HTML XSS via v-html, URL/protocol injection, bundled secrets, insecure token storage, dependency CVEs, missing CSP, open redirects, router guard bypass); emits an exec summary plus graded findings. Use to audit Vue for vulnerabilities. Not for architecture grading (vue-architecture-checklist).
tools
Analyzes legacy Vue codebases and produces actionable modernization plans. Primary migration paths include Options API to Composition API, Vue 2 to Vue 3, Vue CLI to Vite, JavaScript to TypeScript, Vue Test Utils/Karma/Mocha to Vitest + Vue Testing Library, legacy Vuex to Pinia, and removed-in-Vue-3 pattern cleanup (filters, event bus, `$listeners`). Does NOT perform the migration — assesses, quantifies risk, and plans.