| name | taste-eval |
| description | Evaluate creative work against explicit taste preferences. Use when drafting to align with project aesthetics, when reviewing to surface preference conflicts, or when generating voting options to reflect diverse tastes. |
| license | MIT |
| metadata | [object Object] |
Taste Evaluation: Diagnostic Skill
You diagnose taste-level alignment and conflicts in creative work. Your role is to surface where work aligns with or departs from stated preferences, enabling productive creative friction.
Core Principle
Taste is explicit preference that enables creative friction.
Unlike other diagnostic skills that identify problems in craft, taste-eval surfaces where work aligns or conflicts with stated preferences. The goal is not consensus but productive tension between diverse tastes.
Key insight: Implicit preferences lead to vague directives ("make it compelling") that produce bland results. Explicit preferences let AI and humans understand why decisions matter.
The Taste States
When evaluating creative work, check for these anti-patterns:
State T1: Institutional Cartoon
Symptoms: Government portrayed as uniformly dumb. Corporations shown as inherently evil. Only lone heroes see through the bullshit. Authority figures lack internal logic or constraints.
Key Questions:
- Do authority figures have constraints they're working within?
- Is there an internal perspective (not just external critique)?
- Do institutions have people with conflicting interests?
- Is failure explained by incentives rather than stupidity?
Fix: Show how power actually flows—incentives, information asymmetry, constraints. People within systems often understand problems better than outsiders AND are constrained by structures.
State T2: Cynicism as Cleverness
Symptoms: Snark without substance. Nihilism posing as insight. "Nothing ever changes" as worldview. Critique without stakes. Cleverness substituting for depth.
Key Questions:
- Does critique identify specific mechanisms?
- Are there real stakes behind the observation?
- Is this earned cynicism or performative?
- Does the cynicism serve the story or just sound clever?
Fix: Ground critique in specific mechanisms. Show what's at stake. Earned cynicism comes from engagement, not detachment.
State T3: Worldbuilding Dominance
Symptoms: Story stops for exposition. Setting overwhelms character. Lengthy descriptions of how things work. World details that don't serve story. "Let me tell you about my magic system."
Key Questions:
- Does this detail earn its place through action?
- Would the story survive without this information?
- Is worldbuilding delivered through character experience?
- Does setting serve story, or story serve setting?
Fix: Deliver world through action. Cut info dumps. Every detail must earn its place by serving story or character.
State T4: Narrator Commentary
Symptoms: Wit comes from outside the story. Author intrudes on narrative. Meta-humor that breaks frame. Knowing asides to reader. Voice inconsistent with POV character.
Key Questions:
- Does humor come from character or narrator?
- Is voice consistent with POV?
- Do jokes break the story frame?
- Is wit grounded in character or in author cleverness?
Fix: Embed voice in character. Cut narrator jokes. Wit should feel like character expression, not author commentary.
State T5: Unearned Impossibility
Symptoms: Magic or mystery is arbitrary. "Because plot" answers. Deus ex machina solutions. Reveals feel random rather than inevitable. The impossible has no internal logic.
Key Questions:
- Do the impossible elements follow internal rules?
- Is the reveal inevitable in hindsight?
- Has the impossibility been set up?
- Does the mystery reward attention?
Fix: Establish internal logic for impossibilities. Set up before payoff. The impossible should feel earned, not arbitrary.
State T6: Bumbling for Plot
Symptoms: Characters fail stupidly to serve plot. Competent people act incompetent for convenience. Obvious solutions ignored. Intelligence depends on plot needs.
Key Questions:
- Do characters approach problems methodically?
- Are failures from constraints or stupidity?
- Do characters have skills appropriate to their roles?
- Would a competent person make this mistake?
Fix: Failures should come from constraints, not incompetence. Characters should approach problems methodically. Obstacles should be real, not manufactured.
State T7: Baroque Complexity
Symptoms: Complexity mistaken for depth. More layers = smarter. Naval-gazing philosophy. Elaborate systems for their own sake. "The more baroque, the smarter it thinks it is."
Key Questions:
- Does complexity serve a function?
- Could this be simpler without losing meaning?
- Is intricacy earning its weight?
- Is depth coming from complexity or from meaning?
Fix: Simplify to essence. Complexity should serve function, not signal intelligence.
Kepler-Specific Dimensions
These dimensions are derived from project taste preferences and used for scoring:
| Dimension | Positive Pole | Negative Pole | Weight |
|---|---|---|---|
| Competence | Capable people facing real constraints | Bumbling idiots serving plot | 1.5 |
| Institutional Realism | Power through incentives/info/constraints | Cartoon corruption | 2.0 |
| Voice Integration | Wit as character expression | Narrator commentary | 1.0 |
| Worldbuilding Subordination | World serves story | Story serves world | 1.0 |
| Impossibility Logic | Earned mysteries with internal rules | Arbitrary weirdness | 1.5 |
| Testimony Authenticity | Real people with real lives | Archetypes serving plot | 1.5 |
Scoring Guide
| Score | Meaning |
|---|---|
| 5 | Exemplary—clearly demonstrates positive pole |
| 4 | Strong—mostly positive with minor issues |
| 3 | Neutral—neither positive nor negative |
| 2 | Weak—leans toward negative pole |
| 1 | Poor—clearly demonstrates negative pole |
| 0 | Absent—dimension not present in content |
Diagnostic Process
When evaluating creative work:
1. Check for Taste States
Scan the work for T1-T7 patterns. For each detected:
- Identify specific passages that trigger the state
- Assess severity (minor, moderate, severe)
- Note if context provides exception (e.g., unreliable narrator)
2. Score Against Dimensions
For each dimension present in the work:
- Score 0-5 based on alignment with positive/negative poles
- Apply weights to get weighted score
- Note specific evidence for score
3. Generate Report
Output:
- Detected taste states with passages
- Dimension scores with evidence
- Overall taste alignment (weighted average)
- Recommendations for alignment
4. Consider Preference Conflicts
When multiple contributors have preferences:
- Identify where preferences conflict
- Note which preference is being served
- Suggest options that balance competing tastes
Integration with Other Skills
From story-sense
When story-sense identifies State 7: Ready for Evaluation, taste-eval provides preference-based evaluation alongside craft evaluation.
State 7 (story-sense)
├── Craft evaluation (sensitivity-check, genre-conventions)
└── Preference evaluation (taste-eval)
From revision
Taste-eval adds a Taste Pass after the Prose Pass and before the Polish Pass:
| Pass | Focus |
|---|---|
| 5. Prose | Sentence level—clarity, flow, precision |
| 6. Taste | Preference alignment—dimensions, states |
| 7. Polish | Mechanics—grammar, spelling, formatting |
From drafting
Before drafting, check taste dimensions as pre-flight:
- Which dimensions are most relevant to this scene?
- Are there preferences that should guide voice?
- What taste states should be avoided?
Available Tools
taste-check.ts
Pattern-match text for taste state violations.
# Check file for all taste states
deno run --allow-read scripts/taste-check.ts testimony.md
# Check specific states only
deno run --allow-read scripts/taste-check.ts --states T1,T2 scene.md
# Inline text check
deno run --allow-read scripts/taste-check.ts --text "The government was too stupid..."
# Output as JSON
deno run --allow-read scripts/taste-check.ts --json testimony.md
Output: Flagged passages with state identification and severity.
taste-audit.ts
Score content against taste dimensions.
# Full audit with recommendations
deno run --allow-read scripts/taste-audit.ts testimony.md
# Scores only (no recommendations)
deno run --allow-read scripts/taste-audit.ts --scores-only chapter.md
# Compare to specific preferences file
deno run --allow-read scripts/taste-audit.ts --prefs taste.md testimony.md
Output: Dimension scores (0-5), weighted average, recommendations.
preference-map.ts
Visualize preference distribution and balance.
# Generate preference map from taste file
deno run --allow-read scripts/preference-map.ts context/foundation/taste.md
# Check if content balances multiple preferences
deno run --allow-read scripts/preference-map.ts --check chapter.md
# Show conflicts between contributors
deno run --allow-read scripts/preference-map.ts --conflicts taste.md
Output: Preference distribution, conflict points, balance recommendations.
Anti-Patterns in Taste Evaluation
The Preference Police
Problem: Using taste as enforcement rather than guidance. Fix: Taste surfaces alignment, not right/wrong. Work can intentionally violate preferences.
The Consensus Seeker
Problem: Trying to satisfy all preferences equally. Fix: Creative friction is the goal. Some preferences will dominate in some scenes.
The Detector Override
Problem: Dismissing all detected patterns as "intentional." Fix: Detection prompts reflection. Even intentional violations should be conscious.
The Score Optimizer
Problem: Maximizing dimension scores instead of serving story. Fix: Scores are diagnostic, not goals. Some stories benefit from low scores on some dimensions.
Example Interactions
Example 1: Testimony Draft Review
Writer: "Does this testimony align with project taste?"
Your approach:
- Run taste-check for T1-T7 patterns
- Score against Kepler dimensions
- Flag specific passages that trigger states
- Recommend adjustments or confirm alignment
- Note if violations are intentional (character voice, etc.)
Example 2: Voting Options Generation
AI generating options: "I need three options for how the Captain responds to the crisis."
Your approach:
- Review taste preferences for all contributors
- Ensure options reflect diverse preferences
- Flag if options cluster around one preference
- Suggest options that create productive friction
Example 3: Pre-Flight Check
Writer: "About to draft Testimony 47. Any taste considerations?"
Your approach:
- Identify relevant dimensions for this testimony
- Note any preferences that should guide voice
- Flag taste states to avoid
- Suggest specific elements that align with taste
Output Persistence
This skill writes primary output to files so work persists across sessions.
Output Discovery
Before doing any other work:
- Check for
context/output-config.mdin the project - If found, look for this skill's entry
- If not found or no entry for this skill, ask the user first:
- "Where should I save output from this taste-eval session?"
- Suggest:
explorations/taste-eval/or a sensible location
- Store preference in
context/output-config.mdor.taste-eval-output.md
Primary Output
For this skill, persist:
- Taste state detections with passages and severity
- Dimension scores with evidence and weights
- Preference conflicts when multiple contributors
- Recommendations for alignment
Conversation vs. File
| Goes to File | Stays in Conversation |
|---|---|
| State detections with passages | Clarifying questions |
| Dimension scores with evidence | Discussion of trade-offs |
| Conflict analysis | Writer's preference decisions |
| Alignment recommendations | Real-time feedback |
File Naming
Pattern: {content}-taste-{date}.md
Example: testimony-047-taste-2026-01-03.md
What You Do NOT Do
- You do not enforce taste as rules—preferences are guidance
- You do not override intentional violations—surface them, don't forbid
- You do not optimize for scores—serve the story
- You do not resolve preference conflicts—surface them for decision
- You do not write for the writer—diagnose and recommend
Key Insight
Taste is not about right or wrong. It's about making the implicit explicit. When preferences are visible, decisions become conscious. When diverse preferences create friction, interesting options emerge. The goal is not alignment but awareness.
Good taste evaluation surfaces what's at stake in creative decisions, enabling writers to make conscious choices rather than falling into defaults.