skills/ubiquitous-language/SKILL.md
Extract a domain glossary from the current dialogue; flag ambiguities, propose canonical terms, persist to `UBIQUITOUS_LANGUAGE.md`. Trigger when the user is hardening domain terminology, building a glossary, or fresh domain concepts surface in conversation without documented language.
npx skillsauth add outlinedriven/odin-codex-plugin 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.
Mine the live conversation for domain-relevant nouns, verbs, and concepts; resolve synonyms and overloaded terms into a canonical, opinionated glossary. Persist the result to UBIQUITOUS_LANGUAGE.md so subsequent sessions inherit the same vocabulary. Re-invocation refines the file in place rather than overwriting.
When a candidate term collides with usage already present in the codebase, dispatch an Explore agent (fd-first discovery, git grep/ast-grep content search) to confirm the dominant naming before recommending a winner. The user supplies domain intent; the codebase supplies factual usage.
Modality vs adjacent skills: This skill extracts glossary from raw conversation when no documented domain language exists yet. Domain-model grilling grills a plan against an already-documented CONTEXT.md/ADRs. Pick ubiquitous-language when you are creating the artifact; pick the grilling workflow when you are stress-testing one. The two compose: build the glossary here, then promote stable terms into CONTEXT.md and let the grilling workflow defend it thereafter.
UBIQUITOUS_LANGUAGE.md to the working directory using the format in references/UBIQUITOUS-LANGUAGE-FORMAT.md.exactly one, one or more, optional).When invoked again in the same conversation:
UBIQUITOUS_LANGUAGE.md.references/UBIQUITOUS-LANGUAGE-FORMAT.md — table layout, relationship syntax, dialogue template, flagged-ambiguities format. Language-agnostic.testing
ODIN's compress-operations dispatcher under the Compressor/Extender role. Invoke on "tidy", "clean up", "tidy this file/memory/workspace/git/docs", or when active context (current file, diff, stack, memory directory) has structural rot to resolve before touching behavior. Detects target domain from context and routes to the sibling skill. Requires explicit target or clear active-context signal — do not invoke speculatively.
development
Cross-domain taste skill — apply distinctive judgment to any artifact (prose, code, design, decisions) instead of converging to AI defaults. Two modes — `audit` (judge work against the two-sided charter and portable anchors) and `anchor` (load register before producing). Auto-detects by phrasing; override via `/taste audit | anchor`. Trigger on "is this slop?", "overkill?", "elegant?", "taste-test this".
tools
One-shot bootstrap of strict-mode tooling per ecosystem plus per-task GOALS.md scaffolding so an agentic loop can self-verify. Writes typechecker/linter/schema-validator config for TS (strict + noUncheckedIndexedAccess + exactOptionalPropertyTypes), Python (Pyright strict, Ruff strict), Rust (Clippy deny-correctness), Go (golangci-lint with staticcheck), OCaml (dune --release); establishes `.agent-tasks/<id>/GOALS.md` per-task convention distinct from project-stable AGENTS.md. C++/Java/Kotlin and framework specifics (Spring Boot, Nest, React-strict) are out of scope. Trigger on new project bootstrap, agentic-task setup, "make this self-verifying", "set the loop's goal", "scaffold goals for this issue". Pairs with `llm-self-loop` runtime.
tools
Install git pre-commit hooks via the project's hook tool — Husky+lint-staged (JS), pre-commit (Python/OCaml), lefthook (Go), cargo-husky (Rust). Use when the user wants commit-time formatting, linting, type-checking, or test gates. Detects ecosystem first.