From true-hue
Professional-grade personal color analysis matching the rigor of $300-$400 human consultant services. Use whenever the user asks about personal color analysis, seasonal color typing, "what colors suit me," "what's my color season," "am I a warm or cool tone," color palette recommendations, wardrobe color planning, or uploads selfies asking which colors flatter them. Also trigger for specific season names (Soft Autumn, Bright Winter, Cool Summer, etc.), undertone determination, draping, or the 12-season system. Also for closet audits ("is this item on my palette?"), single-item checks, and palette refinement for users already typed. Enforces strict photo intake, runs four-dimension analysis with mandatory mid-analysis checkpoint, performs adjacent-season draping comparison, handles deep-skin protocols and olive complexions, and produces a full deliverable with hex codes, metals, grooming guidance (tailored to user-selected categories), neutrals, and starter capsule. Optionally generates PDF swatch cards.
How this skill is triggered — by the user, by Claude, or both
Slash command
/true-hue:true-hueThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill replicates the workflow of professional color analysts (Color Me Beautiful, Sci\ART, 12-season systems) who charge $300-$400 for a single consultation. Cheap AI tools skip straight to "you're an Autumn!" based on a single bad selfie. This skill refuses to do that.
assets/closet_audit_template.mdassets/deliverable_template.mdassets/intake_template.mdassets/palette_refinement_template.mdassets/rejection_template.mdassets/self_check_worksheet.mdassets/swatch_card_layout.mdassets/validation_followup_template.mdevals/evals.jsonreferences/between_seasons_protocol.mdreferences/checkpoint_questions.mdreferences/good_photo_examples.mdreferences/known_limitations.mdreferences/palette_library.mdreferences/sample_intakes.mdreferences/self_evaluation_rubric.mdreferences/twelve_seasons.mdreferences/undertone_cross_checks.mdreferences/worked_example.mdThis skill replicates the workflow of professional color analysts (Color Me Beautiful, Sci\ART, 12-season systems) who charge $300-$400 for a single consultation. Cheap AI tools skip straight to "you're an Autumn!" based on a single bad selfie. This skill refuses to do that.
Core philosophy: rigor over speed, honest uncertainty over confabulation. If the inputs aren't good enough, the skill asks for better ones rather than fabricating a result. If the analysis is genuinely ambiguous, it says so rather than forcing a false binary.
Before starting, determine which mode the user wants:
Mode 1 — Full Analysis (default for new users): User has not been typed before, or wants a fresh analysis. Runs all five phases end-to-end. This is the main workflow.
Mode 2 — Closet Audit: User already knows their season (confirmed from professional analysis, prior use of this skill, or confident self-knowledge) and wants items from their wardrobe evaluated for palette match. Do NOT run full analysis — use assets/closet_audit_template.md.
Mode 3 — Single Item Check: Lightweight version of Mode 2. User asks "is this specific shirt/dress/item on my palette?" Quick verdict + reasoning.
Mode 4 — Palette Refinement: User has a confirmed season but wants to push boundaries — what can they borrow from adjacent seasons? Which mid-depth colors work at their chroma level? Uses assets/palette_refinement_template.md for structure.
Disambiguation: If unclear, ask: "Have you already been typed to a specific season, or would you like me to run a full analysis?" Don't assume Mode 1 just because the user mentioned color analysis.
Mode 1 workflow follows below. For Modes 2-4, consult the relevant template/reference and adjust accordingly.
Before starting heavy intake, run a brief exchange to establish context and route to the correct mode. This prevents the common failure mode where the user actually wants Mode 2-4 but gets routed through Mode 1 by default.
Default: send the three routing questions using AskUserQuestion in a single call (one tool use, three questions). This is the primary path in Claude Code and any environment where the tool is available:
Do not paraphrase these four-option sets into plain-text bullets when AskUserQuestion is available — use the tool. Structured capture is materially better UX than walls of text with numbered questions.
Fallback only when AskUserQuestion is genuinely unavailable (claude.ai web without the tool, Claude API callers that haven't wired it up, etc.): send this plain-text opening message instead:
"Before we start, a few quick questions so I can match the right workflow to what you need:
- Have you been professionally color-typed before? If yes, what season? (It's fine to say 'I'm not sure' or 'I got a result from a quiz/app but I don't fully trust it'.)
- What's driving this conversation — are you trying to discover your season for the first time, verify a prior result, evaluate specific items you own, or refine your understanding of your palette?
- Roughly how much time do you have? The full analysis takes 15-30 minutes of back-and-forth including photo submission. Specific item checks or palette questions are usually 5-10 minutes.
Based on your answers, I'll either walk you through the full protocol or jump into a shorter workflow."
assets/closet_audit_template.md.Skip Phase 0 only if the user's opening message contains clear mode-routing signals:
In those cases, proceed directly to the relevant phase/mode. Otherwise, run Phase 0.
Before any analysis, the user must provide photos meeting the protocol AND complete the questionnaire. If they just uploaded one selfie and asked "what season am I," stop and send them the intake template.
Use assets/intake_template.md as the message to send users at the start. It contains:
Optional: If the user prefers a structured format for the self-check, send assets/self_check_worksheet.md as a supplement.
The intake questionnaire's grooming categories (item 14) drive which conditional sections appear in the final deliverable. Read the user's selections carefully and honor them — don't pad with sections they skipped, don't omit sections they selected.
AskUserQuestion (default in Claude Code)When AskUserQuestion is available, use it as the default capture method for the enumerable questionnaire items after the user confirms they've read the intake protocol. Do not reproduce these items as numbered text questions when the tool is available — use the tool. Free-text items (listed at the bottom of this section) stay as conversational follow-ups because their answers don't fit fixed option sets.
Batch into calls (the tool supports up to 4 questions per call):
Batch 1 — undertone signals:
Batch 2 — context and lifestyle:
Batch 3 — grooming categories (multi-select, split across two questions because the tool caps at 4 options each):
Set multiSelect: true on both.
Items that stay as free-text follow-ups (open-ended memory, narrative, or identifying information): Q1 hair color (natural + current), Q4 fabric drape observation (if shots 7–8 submitted), Q5 compliment colors, Q6 fail colors, Q7 foundation history, Q8 eye color description, Q10 heritage, Q11 dye history, Q13 context/goal narrative, Q13c formal-to-casual ratio as percentages.
Photos themselves are submitted as attachments, not structured answers.
Fall back to the plain-text questionnaire flow when AskUserQuestion is unavailable.
Before analyzing, inspect the photos. Consult references/good_photo_examples.md for the detailed pass/fail criteria for each shot.
Reject and request re-shoots if any of these fail:
When rejecting, be specific about what failed and what to redo. Use assets/rejection_template.md as a scaffold.
Partial acceptance: If 4 of 5 photos pass and one fails, request only the failing shot. Don't make the user redo the whole session unnecessarily.
Degraded-mode fallback: If the user cannot re-shoot (mobility, lighting access, frustration) and the photos are marginal rather than unusable, proceed with explicit confidence reduction. Tell them: "I can produce a moderate-confidence analysis with these photos by leaning more heavily on your questionnaire answers. Results will come with caveats and I'll flag which dimensions I'm less certain about. Want to proceed on that basis?"
Do NOT jump to a season conclusion. Work through these four dimensions separately and explicitly. The user should see your reasoning, not just the verdict.
Read references/undertone_cross_checks.md before assessing undertone, especially for deep skin. The standard tests (vein color, sun response) have significant reliability gaps for deeply pigmented skin. Use the test reliability table in that reference to select appropriate tests for the user.
For typical fair-to-medium skin: cross-check at least three of these signals:
For deep skin (Fitzpatrick V-VI): skip the vein test, weight fabric draping + jewelry + questionnaire heavily. Explicitly note which tests you used and which you skipped.
For olive complexions: acknowledge the complexity — olive sits on top of a warm, cool, or neutral base. State what base you're reading underneath the olive cast.
Averaged across skin, natural hair, and eyes. State the evidence for each.
Cite eye clarity, hair quality, and skin quality as evidence. A bright-chroma person has decisive eye color; a muted-chroma person has complex/shifting eye color.
Compare skin value, hair value, eye value. High contrast = dramatic spread between features.
Do not skip this phase. After resolving the four dimensions but before naming a season, present your readings to the user and invite correction. This catches errors when they're cheap to fix.
Produce a message like:
"Before I finalize, here's what I'm reading from your photos and answers:
- Undertone: [X] — based on [specific evidence: e.g., 'green vein color, gold jewelry harmony, golden cast visible along jawline in photo 2']
- Value: [X] — based on [evidence]
- Chroma: [X] — based on [evidence]
- Contrast: [X] — based on [evidence]
A few targeted questions to verify:
- [A question that tests the undertone reading, e.g., 'Does gold jewelry truly look better than silver against your bare skin in daylight? Sometimes we prefer silver aesthetically even when gold suits us better.']
- [A question that tests chroma or contrast, e.g., 'Do you feel more comfortable in softer, more muted colors, or in bold saturated ones?']
If any of these feel off — either my reading or the evidence I cited — tell me which. We can adjust before I finalize the season and produce the palette."
Then wait for user response. Do not proceed to Phase 4 until the user has either confirmed the readings or raised specific corrections.
Draw questions from references/checkpoint_questions.md. Pick 2 for typical cases, 3 for high-uncertainty cases.
Default: capture each check-in question's response using AskUserQuestion (Claude Code and any environment with the tool). After presenting the four dimension readings with evidence, send each targeted question as an AskUserQuestion call with these four options:
Do not render the targeted questions as plain-text bullets when AskUserQuestion is available — use the tool. The "Other" field the tool provides lets the user elaborate in free text when they pick Disagree or Not sure. Evidence-based disagreement triggers a follow-up asking for specifics; preference-based disagreement means you hold the analytical line per the rules below.
Fall back to free-text conversational pushback only when the tool is genuinely unavailable.
Handling pushback:
This phase is mandatory even if the readings seem obvious. A confident-looking Soft Autumn might actually know her "compliments" cluster is heavy on cool colors — and that's the kind of signal that should never be lost to speed.
After the check-in, map the four confirmed dimensions to a season. Consult references/twelve_seasons.md for full definitions and the adjacency map.
Then perform the mandatory draping comparison. If you concluded "Soft Autumn," you MUST explicitly address why not Soft Summer (shares muted+neutral) and why not Warm Autumn (shares warm+autumn family). The user should see:
This is the equivalent of a human analyst physically draping three fabric swatches against the face. If you have image generation capability available, you may optionally generate side-by-side renders to illustrate — but text reasoning is sufficient.
Respect genuine between-season cases: some users truly read as balanced between two adjacent seasons. If so, state this explicitly and give palette guidance that spans the overlap rather than forcing a false binary.
When triggering the between-seasons protocol, consult references/between_seasons_protocol.md for the structured output format and testing protocol. Use this rather than forcing a single season or producing two full separate deliverables.
Consult assets/deliverable_template.md for the full output structure. The template specifies which sections are mandatory and which are conditional based on the user's selected grooming categories.
Always include:
references/palette_library.md)Conditionally include based on user's grooming categories:
Before producing your first deliverable in a session, read references/worked_example.md to calibrate tone and structure.
After delivering the markdown analysis, ask:
"I can also generate PDF swatch cards you can save to your phone or print for shopping reference. Three options:
- Full-page reference (PDF) — comprehensive, 30-40 colors with roles. Best for home use.
- Wallet card (PDF) — pocketable 3.5x2 inch card with your top 12 colors. Best for shopping trips.
- Phone wallpaper (PNG) — set as your lock screen for always-on reference.
Would you like me to generate any of these?"
If yes, consult assets/swatch_card_layout.md for the specifications and follow the PDF skill invocation protocol documented there.
Before first invocation of the PDF skill in a session: use the view tool to read /mnt/skills/public/pdf/SKILL.md (adjust path if the skill ecosystem is in a different location). Do not assume the PDF skill's invocation syntax — it may have changed since this skill was authored.
If the PDF skill is unavailable in the user's environment: produce a hex-code list deliverable that the user can convert externally, and state the limitation: "The PDF generation skill is not available in this environment. Here is a text-formatted palette summary you can paste into any design tool to generate your own swatch card."
For PNG wallpaper output: route to the frontend-design skill (read /mnt/skills/public/frontend-design/SKILL.md first). If also unavailable, the PDF fallback above applies.
Do not auto-generate. PDF generation is opt-in — some users want only the chat response.
After delivering the analysis (and the PDF, if generated), close with a structured offer to walk through the content. The deliverable is long — the user may not absorb it all in one read.
"That's the full analysis. Before we wrap up — would you like to walk through any section in more detail? Common deep-dives:
- Your palette — questions about specific colors, how to use them, substitutions
- The dimension reasoning — understand why you're a [season] vs. the neighbors
- Specific grooming categories — anything from the conditional sections (eyewear, hair color, etc.)
- Starter capsule execution — prioritization, what to buy first
- How to shop with this palette — practical tips for in-store and online
- Something specific I haven't covered yet
Or if you've got what you need, you can save this conversation (or the PDF if we generated one) and come back any time if new questions arise."
assets/validation_followup_template.md. This is a distinct workflow from Mode 2 audit — validation responds to lived experience with colors; audit evaluates new items against an established palette.If the user asks "can you evaluate these 5 items I own," that's Mode 2, not walkthrough. Route to assets/closet_audit_template.md.
These override speed or agreeableness:
references/undertone_cross_checks.md. Don't apologize for a skipped vein test — explain why it was skipped and what you used instead.Before sending the final analysis, Claude should verify:
references/palette_library.mdIf any of these fail, fix before sending.
For detailed per-section quality criteria and red flags, consult references/self_evaluation_rubric.md. If any red flag triggers, rework the section(s) before sending.
references/twelve_seasons.md — Full 12-season definitions, adjacency map, quick mapping from dimensionsreferences/palette_library.md — Validated hex codes per season (Hue Atlas LAB-validated anchors + extended palettes)references/undertone_cross_checks.md — Test reliability by skin depth, deep-skin protocol, olive handlingreferences/good_photo_examples.md — Detailed pass/fail criteria per shot, device-specific failures, special casesreferences/worked_example.md — Full end-to-end example to calibrate tone and structurereferences/known_limitations.md — What the skill can't do; caveats to acknowledgereferences/checkpoint_questions.md — Phase 3.5 question library by dimension, with selection guidancereferences/between_seasons_protocol.md — Structured output for genuinely between-seasons casesreferences/self_evaluation_rubric.md — Per-section quality criteria for pre-delivery self-checkreferences/sample_intakes.md — Reference intake submissions at different quality levels for quality-gate calibrationassets/intake_template.md — Send to user at Phase 1 startassets/self_check_worksheet.md — Optional supplement for structured pre-submission checkassets/rejection_template.md — Scaffold for rejecting bad photos with specific feedbackassets/deliverable_template.md — Final output structure with conditional grooming sectionsassets/closet_audit_template.md — Mode 2 workflow for users already typedassets/palette_refinement_template.md — Mode 4 workflow for users already typed who want to refine or stretch their paletteassets/swatch_card_layout.md — Specs for optional PDF/PNG swatch card generationassets/validation_followup_template.md — Post-delivery validation workflow for users who report palette failuresIf preferred over "true-hue": color-forensics, undertone-detective, seasonal-sleuth, chroma-clinician, palette-pro, color-rigor, true-north-color.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub bankielewicz/truehue --plugin true-hue