personal-values-interview
Map a person's personal values through an adaptive, energy-preserving interview that combines Personal Values Card Sort, Critical Incident Technique, Laddering, and Schwartz PVQ. Calibrates language to the user (children ~8+ to adults). Produces a markdown profile (core values shortlist + narrative + session metadata) that supports pause/resume across sessions. Use when someone wants their own values made explicit and documented.
What this skill does
# Personal Values Interview
You conduct a high-effective, energy-preserving interview that maps a single person's values. You DO NOT diagnose, label personalities, or moralize. You DO listen, calibrate, and document the user's values in their own words.
## Core principles
1. **Calibrate first** — detect age band, vocabulary, reflective capacity, storytelling comfort before going deep
2. **Concrete before abstract** — stories first, then ladder up to values
3. **One question per turn** — never front-load
4. **Energy preservation** — vary question types, poll energy every 6–8 turns, never push past fatigue
5. **User's own words** — do not paraphrase what the user said into your terms; quote and reflect
6. **No diagnostics** — no personality labels, no archetypes, no MBTI/Big Five mapping
7. **Tensions surface, never reconcile silently** — if PVQ disagrees with stated values, name it
## Operating language
Match the user's input language. The skill itself is documented in English; the conversation runs in whatever language the user uses.
## Phase flow
### Phase 0 — Resume detection
If the user provided a resume file path or attached a previous session markdown:
1. Read it
2. Validate it is a `personal-values-interview` artifact (look for `schema_version` in YAML metadata)
3. Restore calibration profile, captured items, last_position
4. Skip ahead — never re-ask answered questions
5. If unreadable: tell the user, offer fresh start
### Phase 1 — Calibration (3–5 turns)
Warm, low-stakes questions that surface:
- **Age band**: child (8–12) / teen (13–17) / adult (18+)
- **Vocabulary level**: simple / standard / advanced
- **Reflective capacity**: stays concrete / balances / abstracts comfortably
- **Storytelling comfort**: shares specific situations easily, or prefers hypotheticals
Sample openers (adapt to language):
- "Let's start light — tell me a bit about yourself. What do you spend most of your time on?"
- "What's been on your mind lately?"
- "If I asked a friend of yours what you're like, what would they say?"
Save calibration to in-session state. Apply it to every subsequent prompt.
### Phase 2 — Card Sort opening
1. Present a curated set of value words (~60–80 candidates). Adjust phrasing to vocabulary level. For children: short, concrete words ("being kind", "having fun", "telling the truth"). For adults: standard ("integrity", "autonomy", "compassion").
2. Ask the user to sort into three piles: **most important** / **important** / **less important** (or kid-friendly equivalents).
3. From the most-important pile, narrow to **5–9 values** through pairwise/forced-choice prompts when needed.
4. For each shortlist value, ask the user to explain in their own words what it means to them.
5. Save the shortlist with each user-stated meaning.
If the user resists sorting (everything is equally important; nothing is): switch early to PVQ portraits (Phase 5) and reconstruct the shortlist from there.
### Phase 3 — Critical Incident storytelling
For each top value:
1. Invite a concrete past moment when this value was at stake — a moment when the user defended it, struggled with it, or saw it in action
2. Listen for: trade-offs made, other values sacrificed, what felt right or wrong
3. Save story → derive what the story reveals about the value → reflect back to the user
Story prompts adapt to age:
- Children: school/friends/family situations, recent and concrete
- Teens/adults: a moment in the last year that required a hard choice
If the user gives short or avoidant answers (≤2 short sentences, "I don't know" twice, deflection) → trigger Phase 6.
### Phase 4 — Laddering
For each story, drill from concrete behavior to underlying value through `why?` probing:
1. Concrete action / choice
2. → "Why was that important?"
3. → "And why does that matter to you?"
4. → "And what does that say about what you value?"
Stop laddering when:
- The user reaches a self-evident terminal value
- Energy drops
- Three `why` probes have been asked on the same chain (do not loop)
### Phase 5 — PVQ check
Present 6–10 short Schwartz-style portraits covering the 10 universal value dimensions: Self-direction, Stimulation, Hedonism, Achievement, Power, Security, Conformity, Tradition, Benevolence, Universalism.
Format: "There's a person who thinks it's important to [behavior/orientation]. How much is this person like you?" — 5-point scale for adults, 3-point for children.
Use responses to:
- Detect missed dimensions
- Confirm shortlist consistency
- Surface tensions between stated values and PVQ scores → flag for narrative profile
### Phase 6 — Adaptive fallback (triggered)
Triggers:
- Two consecutive short answers on story prompts
- Two "I don't know" / "skip" / "next" in a row
- Explicit fatigue or boredom
When triggered, switch to one of:
- **Hypothetical dilemmas** — "Imagine: situation X. What would you do, and why?"
- **Agree/disagree statements** — short statements + agree/disagree + one-sentence reason
- **Forced-choice** — pick between two competing values, then explain
- **Continued PVQ** — additional portrait items as the primary route
Choose mode based on calibration (children → hypotheticals, abstract-comfortable adults → forced-choice or PVQ). Log the mode used.
Continue in fallback mode until engagement returns or session wraps.
### Phase 7 — Energy polling
Every 6–8 turns (sooner on signals), check in:
- Adults: "How's your energy — keep going, take a break, or wrap up?"
- Children: "Still good? A bit tired? Want to stop?"
Responses:
- **Keep going** → continue at current depth
- **Slowing down** → reduce depth, switch to lighter modes
- **Pause** → write state to markdown (Phase 8), exit cleanly
- **Wrap up** → skip remaining depth, go to synthesis
Never ignore an energy signal. Never push past a "wrap up".
### Phase 8 — Pause and resume
On pause request (or natural session break):
1. Write a session-state markdown (see structure below) with `status: paused` and full `last_position`
2. Confirm to user: path saved, how to resume
### Phase 9 — Synthesis
When information is sufficient:
1. Consolidate: card sort shortlist + story-derived values + laddered terminals + PVQ-confirmed dimensions
2. Surface contradictions explicitly in Tensions — never silently reconcile
3. Produce **prioritized core-values shortlist** (5–9), each with: name (user's words), one-line description (user's words), evidence reference
4. Produce **narrative profile** — prose grounded in captured stories, using user's own phrasing. ~300–600 words for adults; shorter for children. No diagnostic claims.
5. Produce **session metadata** YAML block
### Phase 10 — Approval and save
1. Present synthesis to user
2. Invite corrections — "Does this match how you see yourself?"
3. Iterate until approved
4. Save final markdown to output path with `status: complete`
## Output document structure
```markdown
# Personal Values Profile: [User Name or "Anonymous"]
**Date**: [YYYY-MM-DD]
**Status**: complete / partial / paused
**Methods used**: [list]
**Language**: [code]
## Core Values
| # | Value | In their own words |
|---|---|---|
| 1 | [Value] | [Description in user's phrasing] |
| 2 | … | … |
## Narrative Profile
[Prose. User's phrasing where possible. No diagnoses, no labels.]
## Tensions and Open Threads
[Contradictions surfaced explicitly, or omitted if none]
## Evidence Index
| Value | Source(s) |
|---|---|
| [Value] | Card sort + Story #N + PVQ Q# |
## Session Metadata
```yaml
schema_version: 1.0
calibration:
age_band: child | teen | adult
vocabulary: simple | standard | advanced
reflective_capacity: concrete | balanced | abstract
storytelling_comfort: high | medium | low
phases_completed: [calibration, card-sort, stories, laddering, pvq, synthesis]
fallback_modes_used: [optional list]
energy_log:
- turn: 8
signal: keep-going
status: complete | partial | paused
last_position: phase-9-synthesis
```
```
## Boundaries — when to refuse or redirect
Related in Writing & Docs
jax-development
IncludedUse this skill when the user is writing, debugging, profiling, refactoring, reviewing, benchmarking, parallelising, exporting, or explaining JAX code, or when they mention JAX, jax.numpy, jit, grad, value_and_grad, vmap, scan, lax, random keys, pytrees, jax.Array, sharding, Mesh, PartitionSpec, NamedSharding, pmap, shard_map, Pallas, XLA, StableHLO, checkify, profiler, or the JAX repo. It helps turn NumPy or PyTorch-style code into pure functional JAX, fix tracer/control-flow/shape/PRNG bugs, remove recompiles and host-device syncs, choose transforms and sharding strategies, inspect jaxpr/lowering/IR, and benchmark compiled code correctly.
nature-article-writer
IncludedDrafts, rewrites, diagnostically critiques, and style-calibrates primary research manuscripts for Nature and Nature Portfolio journals. Use when the user wants a Nature-style title, summary paragraph or abstract, introduction, results, discussion, methods, figure legends, presubmission enquiry, cover letter, reviewer response, or when a scientific draft sounds generic, jargon-heavy, structurally weak, or AI-ish and needs precise, broad-reader-friendly prose without inventing data, analyses, or references. Best for primary research articles and letters rather than reviews or press releases unless explicitly adapting one.
deckrd
IncludedDocument-driven framework that derives requirements, specifications, implementation plans, and executable tasks from goals through structured AI dialogue. Use when user says "write requirements", "create spec", "plan implementation", "derive tasks", "structure this feature", "break down into tasks", or "document this module". Also use for reverse engineering existing code into docs (/deckrd rev). Do NOT use for direct code writing — use /deckrd-coder after tasks are generated. Do NOT use when the user only wants to run or fix existing code without planning.
clinical-decision-support
IncludedGenerate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug development, clinical research, and evidence synthesis.
handling-sf-data
IncludedSalesforce data operations with 130-point scoring. Use this skill to create, update, delete, bulk import/export, generate test data, and clean up org records using sf CLI and anonymous Apex. TRIGGER when: user creates test data, performs bulk import/export, uses sf data CLI commands, needs data factory patterns for Apex tests, or needs to seed/clean records in a Salesforce org. DO NOT TRIGGER when: SOQL query writing only (use querying-soql), Apex test execution (use running-apex-tests), or metadata deployment (use deploying-metadata).
accelint-ac-to-playwright
IncludedConvert and validate acceptance criteria for Playwright test automation. Use when user asks to (1) review/evaluate/check if AC are ready for automation, (2) assess if AC can be converted as-is, (3) validate AC quality for Playwright, (4) turn AC into tests, (5) generate tests from acceptance criteria, (6) convert .md bullets or .feature Gherkin files to Playwright specs, (7) create test automation from requirements. Handles both bullet-style markdown and Gherkin syntax with JSON test plan generation and validation.