mcpbeat

Character Management

danjdewhurst/character-management

This skill should be used when the user asks to "create a character", "update a character", "add a character", "build a family tree", "character relationships", "character timeline", "character arc", "character profile", or needs to manage characters in a story project.

2k tokens
context cost
the whole folder, loaded on every use
3
files
instructions only
0
copies elsewhere
how many repositories repackaged it
133
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/danjdewhurst/story-skills --skill character-management

The instruction itself

10 sections, as written by the author

Character Management

Overview

Create and manage rich character profiles for a story project. Each character is a markdown file with YAML frontmatter in the characters/ directory. Characters are cross-referenced with other story elements through kebab-case identifiers.

Prerequisites

A story project must already exist (created via the story-init skill). Verify by checking for story.md in the project root.

Creating a Character

  • Read story.md for genre, themes, and tone context
  • Read characters/_index.md for existing characters
  • Ask for the character's name and role (protagonist, antagonist, supporting, minor)
  • Build the profile through conversation, exploring:
  • Appearance and distinguishing features
  • Personality, traits, and quirks
  • Backstory and formative events
  • Motivations (external wants vs internal needs)
  • Voice and speech patterns (ask for example dialogue)
  • Character arc (starting state, turning points, ending state)
  • Key life events for the timeline
  • Write the character file using the template in references/character-template.md
  • Save to characters/{name-kebab}.md, or use story add character "{Name}" --role "{role}" when the CLI is available
  • Update characters/_index.md registry table
  • If relationships reference existing characters, update those character files too
  • When CLI access is available, run the maintenance pass in the story root:
story reindex .
story links .
story validate .

Updating a Character

  • Read the existing character file
  • Read characters/_index.md for context on other characters
  • Make the requested changes
  • If relationships changed, update the other character's file (bidirectional)
  • Update characters/_index.md if role or status changed
  • When CLI access is available, run story reindex ., story links ., and story validate .

Managing Relationships

Reference references/relationship-types.md for the full list of relationship types and inverse pairs.

When adding a relationship:

  • Add the relationship entry to the character's frontmatter
  • Add the inverse relationship to the other character's frontmatter
  • Update the Relationship Map section in characters/_index.md

Family Trees

Family trees are maintained in the characters/_index.md under the "Family Trees" section. Format:

## Family Trees

### {Family Name}
- **{Character Name}** ({status}) - [{name-kebab}.md]
  - **{Child Name}** - [{name-kebab}.md]
  - **{Child Name}** - [{name-kebab}.md]

Indent children under parents. Note marriages/partnerships inline.

Cross-Referencing

  • When a character is referenced in worldbuilding (e.g., a location's notable-characters), ensure the link exists both ways
  • Character-location backlinks live in the character file's locations frontmatter list
  • Faction memberships live in worldbuilding/factions/{faction-kebab}.md under members
  • Artifact ownership can reference a character id in worldbuilding/artifacts/{artifact-kebab}.md
  • When a character appears in a plot arc, ensure they're listed in the arc's characters frontmatter
  • Character tags should be consistent across the project (e.g., if magic-user is used, always use that exact tag)

CLI Maintenance

Use the Story CLI when it is available. If story is not installed but the story-maintenance skill is present, use node ../story-maintenance/scripts/story.js with the same arguments, resolving the path relative to this skill folder. If no CLI is available, perform the registry and backlink checks manually.

Reference Files

  • references/character-template.md - Full blank template for character profiles
  • references/relationship-types.md - Complete relationship type reference with inverse pairs

How to use it

Copy the folder

Take danjdewhurst/character-management 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.