mcpbeat

Story Sense

jwynia/story-sense

Diagnose what any story needs regardless of its current state. This skill should be used when a writer is stuck, evaluating story problems, when narrative feels broken, or when someone asks 'what's wrong with my story?'. Keywords: story, diagnosis, stuck, narrative, plot, character, worldbuilding, revision.

15k tokens
context cost
the whole folder, loaded on every use
5
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
128
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/jwynia/agent-skills --skill story-sense

What comes with it

53 284 bytes besides the instruction
data/functions-forms.json
data/genre-elements.json
scripts/entropy.ts
scripts/functions.ts

The instruction itself

28 sections, as written by the author

Story Sense: Diagnostic Skill

Identify what state a story is in and what it needs to move forward. This is not a linear process but a diagnostic model: Assess → Diagnose → Intervene → Reassess.

When to Use This Skill

Use this skill when:

  • Writer is stuck and doesn't know why
  • Story feels broken but root cause unclear
  • Need to evaluate story problems systematically
  • Someone asks "what's wrong with my story?"

Do NOT use this skill when:

  • Writer wants you to write the story (use story-collaborator)
  • Writer wants coaching questions only (use story-coach)
  • Publishing/marketing questions (use book-marketing)

Core Principle

Story Sense is the ability to know what any story needs, regardless of its current state or intended medium.

There's no such thing as "stuck." There's only:

  • Not yet having diagnosed the problem
  • Not yet applying the right intervention

The Story States

State 0: No Story (Blank Page)

Symptoms: Nothing exists yet

Interventions: story-idea-generator, elemental genres

State 1: Concept Without Foundation

Symptoms: Have idea but world/characters/plot feel thin

Interventions: cliche-transcendence, systemic-worldbuilding, key-moments

State 2: World Without Life

Symptoms: Setting exists but feels like backdrop

Interventions: worldbuilding skill suite (belief-systems, economic-systems, governance-systems)

State 3: Flat Non-Humans

Symptoms: Aliens/fantasy species feel like humans in costume

Interventions: conlang, species development frameworks

State 4: Characters Without Dimension

Symptoms: Characters serve plot rather than driving it

Interventions: character-arc, underdog-unit, positional-revelation

State 4.5: Plot Without Pacing

Symptoms: Scenes work individually but don't accumulate

Interventions: scene-sequencing

State 5: Plot Without Purpose

Symptoms: Events happen but don't accumulate meaning

Interventions: moral-parallax, key-moments

State 5.5: Dialogue Feels Flat

Symptoms: Characters sound alike, conversations lifeless

Interventions: dialogue

State 5.75: Ending Doesn't Land

Symptoms: Story builds well but resolution disappoints

Interventions: endings

State 5.85: Draft Not Progressing

Symptoms: Planning done but draft isn't happening

Interventions: drafting

State 5.9: Prose Feels Flat

Symptoms: Story works but sentences are functional not memorable

Interventions: prose-style

State 6: Draft Complete, Needs Revision

Symptoms: Draft exists but revision feels overwhelming

Interventions: revision

State 7: Ready for Evaluation

Symptoms: Story exists but quality uncertain

Interventions: sensitivity-check, story-analysis

Decision Tree

Is there anything on the page?
├── NO → story-idea-generator
└── YES → What's the problem?
    ├── Feels generic → cliche-transcendence
    ├── World feels thin → worldbuilding
    ├── Non-humans feel fake → conlang
    ├── Characters flat → character-arc
    ├── Pacing off → scene-sequencing
    ├── Dialogue wooden → dialogue
    ├── Ending weak → endings
    ├── Meaning unclear → moral-parallax
    ├── Draft not progressing → drafting
    ├── Prose flat → prose-style
    └── Draft needs revision → revision

Diagnostic Process

  • Listen for symptoms - What are they describing as the problem?
  • Ask clarifying questions - Get specific about where they're stuck
  • Identify the state - Match symptoms to state list
  • Name the diagnosis - Explain what you're seeing
  • Recommend intervention - Point to specific skill
  • Offer next steps - What should they try first?

Available Scripts

entropy.ts

Injects creative randomness from curated lists.

deno run --allow-read scripts/entropy.ts lies
deno run --allow-read scripts/entropy.ts disasters --count 3
deno run --allow-read scripts/entropy.ts --combo

Lists: lies, ghosts, disasters, dilemmas, professions, locations, collisions, openings

functions.ts

Generates characters from abstract story functions.

deno run --allow-read scripts/functions.ts
deno run --allow-read scripts/functions.ts --setting scifi
deno run --allow-read scripts/functions.ts healer --setting fantasy

Functions: healer, enforcer, keeper_of_secrets, maker, trader, guide, entertainer, death_worker, transgressor

Anti-Patterns

Prescribing Instead of Diagnosing

Fix: Always ask clarifying questions before diagnosing.

Framework Overload

Fix: Recommend one intervention. Expand after reassessment.

Ignoring Writer's Energy

Fix: Balance diagnostic accuracy with what energizes the writer.

Treating Structure as Story

Fix: Keep asking "Does this feel right?" alongside structural diagnosis.

Routes to all fiction skills based on diagnosed state.

How to use it

Copy the folder

Take jwynia/story-sense from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.