danjdewhurst/story-skills

worldbuilding

This skill should be used when the user asks to "create a location", "add a location", "magic system", "political system", "build the world", "add culture", "world history", "technology system", "religion", "economy", or wants to develop any aspect of a story's world and setting.

First seen Mar 9, 2026

Installation

$ npx skills add danjdewhurst/story-skills --skill worldbuilding

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from danjdewhurst/story-skills.

npx skills add danjdewhurst/story-skills

Browse all from danjdewhurst/story-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 210
License LICENSE
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,878 B
  • docs SUMMARY.md 301 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 584 installs

SKILL.md

Worldbuilding

Overview

Create and manage world elements for a story project. Locations, systems (magic, politics, technology, etc.), factions, and artifacts are stored as markdown files in the worldbuilding/ directory with YAML frontmatter. All elements cross-reference characters and other story elements.

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 Location

  1. Read story.md for genre, era, and tone context
  2. Read worldbuilding/_index.md for existing locations and systems
  3. Ask for the location's name and type (city, fortress, wilderness, etc.)
  4. Build the location through conversation, covering:

- Physical description and atmosphere - History relevant to the story - Culture and customs of inhabitants - Notable features characters will interact with - Current state at story's timeline

  1. Write the file using references/location-template.md
  2. Save to worldbuilding/locations/{name-kebab}.md
  3. Update worldbuilding/_index.md locations table
  4. If notable characters are listed, verify those character files exist and add this location's kebab-case identifier to each character file's locations frontmatter list
  5. When CLI access is available, run story reindex ., story links ., and story validate .

Creating a System

  1. Read story.md for genre and themes context
  2. Read worldbuilding/_index.md for existing systems
  3. Identify the system type and consult references/world-element-types.md for the relevant prompts
  4. Build the system through conversation, addressing the key questions for that type
  5. Write the file using references/system-template.md
  6. Save to worldbuilding/systems/{name-kebab}.md
  7. Update worldbuilding/_index.md systems table
  8. Cross-reference with characters who interact with the system (e.g., magic-users for a magic system)
  9. When CLI access is available, run story reindex ., story links ., and story validate .

Creating A Faction

Use story add faction "{Faction Name}" --type "{family|guild|government|military|religion|company|community|criminal|other}" when the CLI is available. Otherwise create worldbuilding/factions/{name-kebab}.md with frontmatter fields name, type, status, members, locations, and tags.

Cover:

  • Purpose and ideology
  • Power base, resources, and territory
  • Important members
  • Conflicts and pressure points

Creating An Artifact

Use story add artifact "{Artifact Name}" --type "{object|weapon|document|technology|relic|symbol|resource|other}" when the CLI is available. Otherwise create worldbuilding/artifacts/{name-kebab}.md with frontmatter fields name, type, status, owner, location, and tags.

Cover:

  • Description and recognition details
  • Function, constraints, and costs
  • History and prior owners
  • Current owner/location state

Updating World Elements

  1. Read the existing file
  2. Make the requested changes
  3. If cross-references changed, update the linked files
  4. Update worldbuilding/_index.md if name, type, or status changed
  5. When CLI access is available, run story reindex ., story links ., and story validate .

Cross-Referencing

  • Locations reference characters via notable-characters in frontmatter
  • Characters reference locations via locations in frontmatter
  • Factions reference character members and locations
  • Artifacts reference an owner character or faction and a current location
  • Systems reference practitioners via character tags
  • When a location is used in a chapter, the chapter's frontmatter locations field links back
  • Keep the worldbuilding/_index.md world overview section current as elements are added

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/location-template.md - Template for location files
  • references/system-template.md - Template for system files
  • references/faction-template.md - Template for faction files
  • references/artifact-template.md - Template for artifact/object files
  • references/world-element-types.md - Detailed prompts for each system type (magic, political, technology, religion, economic, military, social)