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.
npx skills add jwynia/agent-skills --skill story-sense -a claude-codeWhat 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-code2Manually: put the files in place
~/.claude/skills/story-sense/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/story-sense/
1Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill story-sense -a codex2Manually: put the files in place
.agents/skills/story-sense/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill story-sense -a cursor2Manually: put the files in place
.cursor/skills/story-sense/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install jwynia/agent-skills story-sense2Manually: put the files in place
.github/skills/story-sense/SKILL.md1Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill story-sense -a gemini-cli2Platform CLI
gemini skills install https://github.com/jwynia/agent-skills --path skills/creative/fiction/core/story-senseManually: put the files in place
.devin/skills/story-sense/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add jwynia/agent-skills --skill story-sense -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
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