From odin
Applies distinctive judgment to prose, code, design, or decisions to avoid AI-default slop and decoration-heavy overkill. Two modes: audit (judge existing work) and anchor (load taste register before producing).
How this skill is triggered — by the user, by Claude, or both
Slash command
/odin:tasteThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Distinctive judgment over centroid-AI default convergence. Restraint as default. One strong intentional moment per artifact. The two failure modes — slop and overkill — are reciprocal: both come from refusing to commit. Slop hedges by averaging into AI defaults; overkill hedges by piling on decoration that covers thin ideas.
Distinctive judgment over centroid-AI default convergence. Restraint as default. One strong intentional moment per artifact. The two failure modes — slop and overkill — are reciprocal: both come from refusing to commit. Slop hedges by averaging into AI defaults; overkill hedges by piling on decoration that covers thin ideas.
/taste operates across prose, code, design, and decisions with the same charter and the same eight anchors. It is a judgment register; it does not transform the artifact, it decides what about the artifact is committed and what is hedge.
Auto-detect from the user's phrasing, with slash-arg override:
is this slop?, overkill?, elegant?, audit, taste-test this, judge this → audit mode.taste anchor, taste mode, taste register, or anticipates producing fresh work → anchor mode./taste audit, /taste anchor. Override always wins.audit mode procedureWalk the eight anchors one at a time against the artifact. For each: state the anchor, judge the artifact (pass / warn / fail), cite the Side A or Side B charter row when violated, and write a concrete fix. Close with the top-3 ranked fixes. Conflict-handling: when two anchors fail with conflicting fixes (e.g., Restraint says compress, Generosity says expand), surface the tension explicitly — no auto-pick, no fixed precedence list. Tie-break is user-led.
anchor mode procedureLoad the charter and anchors as imperatives the model will honor across subsequent responses. Persistence is best-effort: applies until the user signals "stop taste" or "normal mode" OR context is compacted, whichever comes first. Re-invoke /taste anchor if drift is observed. The model honors a directive loaded once into context.
Side A — slop (centroid-AI default convergence): generic openers ("Sure!", "Of course"), hedge-stacks ("perhaps it might be"), validation phrases ("you're absolutely right"), AI-flat prose with no rhythm, default palettes, defensive nil-checks where impossible, 50/50 decision hedges that pick nothing.
Side B — overkill (decoration covering thin ideas): gradient stacks on every section, thesaurus-soup prose ("orchestrate the holistic synthesis of"), abstraction towers (4 layers where 1 suffices), complexity-flex masking absent conviction, ceremony that performs depth without delivering it.
| Domain | Side A (slop) | Side B (overkill) |
|---|---|---|
| Prose | "I think this might possibly help..." | "We orchestrate a paradigm shift across" |
| Code | try { x } catch { /* swallow */ } | Factory<Builder<Strategy<T>>> |
| Design | Default purple-blue gradient | Gradient on every section + glow + glass |
| Decision | "Both options have merit, so..." | 12-criterion weighted scoring matrix |
See references/charter.md for the full charter.
Eight anchors apply to every domain:
See references/anchors.md for cross-domain manifestations of each anchor.
Per-anchor table, then ranked top-3 fixes:
Anchor | Verdict | Citation | Fix
-------------------|---------|-----------------------|----------------------------
Clarity | pass | |
Hierarchy | warn | Side A: AI-flat prose | Lead with the verdict line
Intent | fail | Side A: hedge-stack | Pick one; drop "might"
Coherence | pass | |
Restraint | warn | Side B: ceremony | Cut the framing paragraph
Generosity | pass | |
Honesty | pass | |
One-strong-moment | fail | Side A: 50/50 hedge | Commit to one direction
Top-3 fixes: 1. Pick one direction (Intent + One-strong-moment).
2. Lead with the verdict (Hierarchy).
3. Cut the framing paragraph (Restraint).
Conflict-handling: when two anchors fail with conflicting fixes, surface the tension in the table; do not auto-pick. Defer resolution to user.
When /taste anchor activates, emit a short register-load message:
/taste anchor active.
Anchors: Clarity, Hierarchy, Intent, Coherence, Restraint, Generosity, Honesty,
One-strong-moment.
Side A (slop) blocks: generic openers, hedge-stacks, validation phrases, AI-flat prose.
Side B (overkill) blocks: thesaurus soup, abstraction towers, decoration covering thin ideas.
Persistence: best-effort. Stop with "stop taste" or "normal mode". May reset on context compaction.
Suspend /taste register temporarily for:
git push --force, rm -rf).Resume the register once the high-stakes section ends.
npx claudepluginhub outlinedriven/odin-claude-plugin --plugin odinAudits taste and elegance of code, designs, architectures, APIs, and text by asking reflective questions that build user's self-judgment, without giving advice or evaluations.
Routes aesthetic questions to the right tool: coherence-check, elegance-testing, pattern-detection, or simplicity-analysis. Use when evaluating design, code, or writing for elegance, complexity, or structural patterns.
Scores own output 0-10 across 5 task-appropriate dimensions before emitting. Used as a pre-emit gate for complex work where grade-inflation is a risk.