Agent skill

review-story

Multi-provider creative writing critique for stories, screenplays, and narratives. Analyzes structural, emotional, craft, and persona dimensions. Integrates with Horus's Theory of Mind for voice consistency validation.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/review-story

Metadata

Additional technical details for this skill

author
Horus
version
0.1.0
short description
Multi-provider creative writing critique with ToM alignment

SKILL.md

review-story

Multi-provider creative writing critique for Horus persona. Analyzes stories across four dimensions and returns structured feedback for iterative refinement.

Critique Dimensions

Dimension What It Analyzes Weight
Structural Plot, pacing, character arcs, narrative tension, scene transitions 30%
Emotional Intended vs achieved emotion, ToM pattern alignment, resonance 25%
Craft Prose quality, dialogue, sensory details, show-don't-tell 25%
Persona Horus voice consistency, Warmaster tone, tactical precision 20%

Supported Providers

Provider CLI Default Model Strength
anthropic claude sonnet Nuanced character/emotional analysis
openai codex gpt-5.2-codex High-reasoning structural critique
google gemini gemini-2.5-flash Fast iteration feedback
github copilot claude-sonnet-4.5 Free tier via Copilot

Quick Start

bash
cd .pi/skills/review-story

# Single provider review
./run.sh review draft.md --provider claude --emotion rage

# Multi-provider review (recommended for final drafts)
./run.sh review draft.md --providers claude,codex --emotion sorrow

# Focus on specific dimensions
./run.sh review draft.md --provider claude --focus structural,emotional

# Review with Horus persona validation
./run.sh review draft.md --provider claude --validate-persona

Commands

review - Critique a Story

bash
./run.sh review <story_file> [OPTIONS]

Options:
  --provider TEXT       Single provider (claude, codex, gemini, copilot)
  --providers TEXT      Comma-separated list for multi-provider review
  --emotion TEXT        Intended emotion (rage, sorrow, camaraderie, regret)
  --focus TEXT          Dimensions to focus on (structural, emotional, craft, persona)
  --validate-persona    Validate against Horus voice patterns
  --output-dir PATH     Output directory for critique files
  --format TEXT         Output format (json, markdown)

compare - Compare Multiple Drafts

bash
./run.sh compare draft_v1.md draft_v2.md --dimension emotional

synthesize - Combine Multi-Provider Critiques

bash
./run.sh synthesize critique_claude.json critique_codex.json --output synthesis.md

Output Format

json
{
  "provider": "claude",
  "model": "claude-sonnet-4-20250514",
  "story_file": "draft_v1.md",
  "intended_emotion": "rage",

  "structural": {
    "score": 7,
    "issues": [
      {"location": "middle", "issue": "Pacing drags in act 2", "severity": "medium"},
      {"location": "climax", "issue": "Needs more foreshadowing", "severity": "high"}
    ],
    "strengths": ["Strong opening hook", "Clear character motivation"],
    "suggestions": ["Add tension beat at paragraph 15", "Foreshadow betrayal earlier"]
  },

  "emotional": {
    "intended": "rage",
    "achieved": "frustration",
    "alignment_score": 0.6,
    "tom_pattern": "DDL_intensity",
    "issues": ["Build too gradual - DDL rage is explosive after slow burn"],
    "suggestions": ["Amplify with longer setup, then sudden release"]
  },

  "craft": {
    "prose_score": 8,
    "dialogue_score": 6,
    "sensory_score": 7,
    "issues": ["Dialogue feels too modern for Warmaster voice"],
    "suggestions": ["Add more tactical metaphors", "Replace contractions"]
  },

  "persona": {
    "horus_voice_score": 0.7,
    "issues": ["Too much explanation, not enough contempt", "Missing resentment undertones"],
    "tactical_mask_detected": "Tywin",
    "suggestions": ["Add bitter aside about imprisonment", "More sardonic observations"]
  },

  "overall": {
    "score": 7.2,
    "ready_for_next_draft": true,
    "priority_fixes": ["Emotional buildup", "Persona voice"]
  },

  "taxonomy": {
    "bridge_tags": ["Corruption", "Loyalty"],
    "collection_tags": {
      "function": "Confrontation",
      "domain": "Primarch",
      "thematic_weight": "Tragedy"
    },
    "confidence": 0.75,
    "worth_remembering": true
  }
}

Federated Taxonomy Integration

All review-story outputs include taxonomy metadata for multi-hop graph traversal:

Bridge Attributes (Cross-Collection Connectors)

Bridge Story Signals Enables Connection To
Precision Calculated strategy, methodical planning Technical optimization lessons
Resilience Endurance, withstanding adversity Error handling patterns
Fragility Betrayal aftermath, shattered trust Technical debt warnings
Corruption Warp influence, moral compromise Silent failure bugs
Loyalty Oaths, brotherhood, honor Security compliance lessons
Stealth Subterfuge, hidden agendas Evasion techniques

Multi-Hop Example

[Story Critique]                      [Code Lesson]
bridge_tags: ["Resilience"]     →    bridge_tags: ["Resilience"]
"Dorn's endurance at Terra"          "Fault-tolerant retry logic"
        ↘                           ↙
          [Query: "Endurance patterns"]
                    ↓
         Both retrieved via shared
         "Resilience" bridge attribute

Integration with create-story

The create-story skill calls review-story between drafts:

DRAFT 1
    ↓
/review-story draft_1.md --provider claude --emotion rage
    ↓
[Synthesize critique into actionable notes]
    ↓
DRAFT 2 (addresses structural + emotional issues)
    ↓
/review-story draft_2.md --providers claude,codex --focus craft,persona
    ↓
FINAL DRAFT

Horus Voice Patterns (Persona Validation)

When --validate-persona is enabled, the critique checks against:

Tactical Masks (from HORUS_PERSONA.md)

Mask Source Trait Detection Signals
Resentment George Carlin Systematic deconstruction Cynical asides, "the system" references
Authority Tywin Lannister Cold dismissal, legacy focus Commands, legacy mentions, dismissive tone
Pacing Dave Chappelle Silence and revelation Strategic pauses, buildup-payoff patterns
Contempt Stewie Griffin High-intellect insults Technical elitism, "primitive" references

Emotional Patterns (from HORUS_TOM_SYSTEM.md)

Pattern Model Detection
Camaraderie Luna Wolves / Stilgar Tribal loyalty, "brother" references
Regret Carlin cynicism + The Wound Self-deprecation, Davin references
Sorrow Maximus / Katsumoto Stoic grief, honor-bound dignity
Anger Michael Corleone Cold intensity, family defense
Rage Daniel Plainview Manic precision, competitive fury

Example Session

$ ./run.sh review draft_v1.md --provider claude --emotion rage --validate-persona

[REVIEW] Analyzing draft_v1.md...
[REVIEW] Provider: claude (claude-sonnet-4-20250514)
[REVIEW] Intended emotion: rage

[STRUCTURAL] Score: 7/10
  ⚠ Middle section pacing drags (lines 45-78)
  ⚠ Climax needs stronger foreshadowing
  ✓ Strong opening hook
  ✓ Clear character motivation

[EMOTIONAL] Alignment: 60%
  Intended: rage → Achieved: frustration
  Pattern: DDL_intensity not fully realized
  → Suggestion: Longer slow burn before explosive release

[CRAFT] Score: 7.5/10
  Prose: 8 | Dialogue: 6 | Sensory: 7
  ⚠ Dialogue too modern for Warmaster
  → Replace contractions, add tactical metaphors

[PERSONA] Horus Voice: 70%
  Detected mask: Tywin (Authority)
  ⚠ Missing resentment undertones
  ⚠ Too explanatory, not enough contempt
  → Add bitter aside about imprisonment

[OVERALL] 7.2/10 - Ready for Draft 2
  Priority fixes: Emotional buildup, Persona voice

Output: review_output/claude_draft_v1.json

Environment

Variable Purpose
ANTHROPIC_API_KEY For Claude provider
OPENAI_API_KEY For Codex/GPT provider
GOOGLE_API_KEY For Gemini provider
REVIEW_STORY_OUTPUT_DIR Default output directory

Dependencies

  • Python 3.11+
  • Access to at least one provider (claude, codex, gemini, or copilot)
  • Optional: Access to Horus persona files for voice validation

Related Skills

Skill Relationship
/create-story Calls review-story between drafts
/review-code Sister skill for code review
/review-paper Sister skill for academic papers (proposed)
/memory Stores successful critique patterns

Expand your agent's capabilities with these related and highly-rated skills.

Didn't find tool you were looking for?

Be as detailed as possible for better results