Skip to main content
skill CX Codex

story-sense — Claude Code skill: diagnose what your story needs

A diagnostic skill that figures out what state your story is in and what's blocking it. Built for writers who are stuck and can't tell why.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add jwynia/agent-skills --skill story-sense -a claude-code
Open on GitHub

What story-sense does

story-sense is a diagnostic skill for fiction. It doesn't write prose for you — it identifies where you're stuck: blank page, thin world, flat characters, broken pacing, weak ending, stalled draft. From your symptoms it names the problem and points to the right tool.

Under the hood there's a state model running from State 0 to State 7, a decision tree, and two Deno scripts: entropy.ts pulls random prompts from curated lists (lies, ghosts, disasters, dilemmas), and functions.ts builds characters from abstract roles like healer or keeper_of_secrets. Both run via deno run --allow-read.

The skill deliberately withholds answers at first. Clarifying questions, then one intervention, then reassessment. If you want the agent to actually write a scene, that's story-collaborator's job. The scripts need Deno installed.

What it helps with

  • figure out why a story won't move forward
  • tell a character problem apart from a pacing problem
  • pick one intervention instead of ten at once
  • diagnose why an ending falls flat
  • get a random prompt when every idea feels derivative

Example prompts for the agent

  • My story is stuck and I can't tell what's wrong
  • The characters feel flat even though the plot is solid — what do I fix?
  • Run entropy.ts and give me a couple of twist ideas

How to install story-sense

1Skills CLI (Vercel)

npx skills add jwynia/agent-skills --skill story-sense -a claude-code

2Manually: put the files in place

~/.claude/skills/story-sense/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/story-sense/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about story-sense

How do I install story-sense in Claude?

Run npx skills add jwynia/agent-skills --skill story-sense -a claude-code. The skill lands at ~/.claude/skills/story-sense/SKILL.md.

What does story-sense do?

It matches your symptoms to a story state and recommends a specific next step. Think diagnosis, not text generation.

How is story-sense different from story-collaborator?

story-sense only diagnoses and routes you to the right tool. If you want the agent writing alongside you, reach for story-collaborator.

Source text

SKILL.md · MIT
---
name: story-sense
description: "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."
license: MIT
compatibility: Works with any fiction format. Entry point for fiction diagnostics.
metadata:
  author: jwynia
  version: "1.0"
  type: diagnostic
  mode: diagnostic
  domain: fiction
---

# 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

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

## Available Scripts

### entropy.ts
Injects creative randomness from curated lists.

```bash
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.

```bash
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.

## Related Skills

Routes to all fiction skills based on diagnosed state.

© jwynia · MIT · jwynia/agent-skills

Similar skills

Everything for Writing and docs →

From the same set77

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor