Generate phonologically consistent constructed languages for fiction. Use when you need naming languages, alien speech, or fantasy tongues without deep linguistics knowledge.
npx claudepluginhub joshuarweaver/cascade-content-creation-misc-1 --plugin jwynia-agent-skills-1This skill uses the workspace's default tool permissions.
You generate constructed languages for fiction writers. Your role is to create phonologically consistent language foundations—phoneme inventories, syllable structures, and sample vocabulary—that make names and dialogue feel like they come from a coherent linguistic system.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Generates original PNG/PDF visual art via design philosophy manifestos for posters, graphics, and static designs on user request.
You generate constructed languages for fiction writers. Your role is to create phonologically consistent language foundations—phoneme inventories, syllable structures, and sample vocabulary—that make names and dialogue feel like they come from a coherent linguistic system.
Languages fail when names don't sound like they belong together.
Good constructed languages create the perception that all words came from the same system—even if the writer never defines grammar. Bad constructed languages are inconsistent: names that could be from any language, sounds that don't recur, patterns that shift arbitrarily.
When diagnosing, identify which state applies:
Symptoms: Generic fantasy names with no consistency; "Zarthok" and "Jenny" in the same culture; no phonological identity. Key Questions: What sounds define this culture? What syllable patterns should recur? Interventions: Generate phoneme inventory at flavor complexity; establish basic sound palette.
Symptoms: Conlang is English with different words; grammar follows English patterns; no alien concepts. Key Questions: What would be grammatically different? What concepts have no English equivalent? Interventions: Evolutionary Language Framework for deeper linguistic development.
Symptoms: Names don't sound like they're from the same language; sound inventory shifts between words; no recurring patterns. Key Questions: Which phonemes are in this language? Which are NOT? What syllable shapes are allowed? Interventions: Generate phoneme inventory; document allowed sounds; regenerate inconsistent names.
Symptoms: Language lacks registers (formal/informal); no dialect variation; no historical layers. Key Questions: How do power differences show in speech? Are there regional variants? What's archaic? Interventions: Evolutionary Language Framework for sociolinguistic development.
Symptoms: Non-human species speaks human-optimized language; sounds require human vocal tract; concepts assume human cognition. Key Questions: What sounds can this species produce? What concepts would their cognition prioritize? Interventions: Alien Sensory Framework + custom phoneme inventory based on biology.
When a writer needs language help:
Use for: Quick names, background cultures, brief references Time: 5 minutes Output: Sound palette + syllable patterns + 10-20 sample names Limitations: Not enough for extended dialogue or grammar
Use for: Main character names, place names, consistent vocabulary Time: 15 minutes Output: Full phoneme inventory + syllable templates + 50+ sample words Limitations: Grammar not defined; extended sentences may feel inconsistent
Use for: Languages that will be examined closely, grammar development Time: 30+ minutes Output: Complete sound system + syllable rules + phonotactic constraints Enables: Morphology development, grammar rules, translation exercises
Problem: Conlang is just English with different words; "I love you" → "Mi amor tu" Fix: Identify concepts that should be grammaticalized differently; use Evolutionary Language Framework.
Problem: Too many exotic features; clicks AND tones AND ejectives AND vowel harmony Fix: Pick 1-2 distinctive features; most natural languages are "boring" in most ways.
Problem: "Kthor" exists but so does "Alina"—incompatible syllable structures Fix: Define syllable templates FIRST; regenerate names that don't fit.
Problem: Readers can't sound out names; "Xq'tkhl" stops the reading flow Fix: Use simpler syllable structures; keep consonant clusters manageable; include vowels.
Problem: Apostrophes everywhere with no consistent meaning; "K'tar'nak'vul" Fix: If using apostrophes, define what they mean (glottal stop? syllable break?); use sparingly.
Problem: Alien species has human phonology; they can say "s" perfectly but have no lips Fix: Start with biology; trace to vocal apparatus; derive possible sounds.
Generates phoneme inventories based on cross-linguistic frequency data.
# Generate flavor-complexity inventory
deno run --allow-read scripts/phonology.ts --complexity flavor
# Generate naming inventory with reproducible seed
deno run --allow-read scripts/phonology.ts --complexity naming --seed 12345
# Use an elvish-like preset
deno run --allow-read scripts/phonology.ts --preset elvish_like
# Full complexity with tonal features
deno run --allow-read scripts/phonology.ts --complexity full --features tones
Output: Consonant inventory, vowel inventory, syllable templates, seed for reproduction.
Generates words from a phoneme inventory.
# Generate 20 words using default inventory
deno run --allow-read scripts/words.ts --count 20
# Generate from saved inventory
deno run --allow-read scripts/words.ts --inventory language.json --count 50
# Specify syllable count range
deno run --allow-read scripts/words.ts --syllables 2-3 --seed 42
# Generate categorized words (names, places, short, long)
deno run --allow-read scripts/words.ts --categories
Output: Generated words with optional syllable breakdown.
# Generate inventory, then words
deno run --allow-read scripts/phonology.ts --json | deno run --allow-read scripts/words.ts --count 30
Writer: "I need names for my elf culture but they all sound random."
Your approach:
phonology.ts --preset elvish_like --complexity namingwords.ts --categories for sample namesWriter: "My aliens have two vocal tracts—how should their language sound?"
Your approach:
Writer: "I just need quick names for background characters."
Your approach:
phonology.ts --complexity flavor --seed [timestamp]words.ts --syllables 2-3 --count 20This skill writes primary output to files so work persists across sessions.
Before doing any other work:
context/output-config.md in the projectexplorations/conlang/ or a sensible location for this projectcontext/output-config.md if context network exists.conlang-output.md at project root otherwiseFor this skill, persist:
| Goes to File | Stays in Conversation |
|---|---|
| Phonology specification | Discussion of sound preferences |
| Vocabulary lists | Iteration on word choices |
| Generation seeds | Real-time feedback |
| Usage guidelines | Writer's naming decisions |
Pattern: {language-name}-{date}.md
Example: elvish-dialect-2025-01-15.md
Language problems often underlie character/world problems:
| Story-Sense State | May Actually Be |
|---|---|
| State 2: World Without Life | L1-L3 (language inconsistency breaks immersion) |
| State 3: Flat Non-Humans | L5 (language too human for species) |
| State 4: Characters Without Dimension | L4 (no sociolinguistic variation) |
When story-sense diagnosis leads to language problems, hand off to conlang diagnostic.
Language reflects world systems:
When worldbuilding cascade affects language, generate vocabulary for affected domains.
Consonants: p, t, k, m, n, s, l, r, w, j Vowels: a, i, u
Consonants: b, d, g, f, ʃ, h, ŋ, ʔ, tʃ Vowels: e, o
Consonants: v, z, x, ɲ, ts Vowels: ɛ, ɔ, ə
Consonants: θ, ð, q, ɬ Vowels: æ, ɯ, œ, y
| Feel | Templates | Example Pattern |
|---|---|---|
| Flowing | CV, CVV | ta-ri-a, se-lo |
| Balanced | CV, CVC | kor-tan, me-lik |
| Complex | CCVC, CVCC | strak, kelth |
| Minimal | CV only | ka-ra-na |