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.
- Skill ID
- danjdewhurst/story-skills/worldbuilding
- Publisher
- danjdewhurst
- Repository
- story-skills
- Installs
- 0
- Files
- 6
- Synced
- Sep 23, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
danjdewhurst/story-skills/worldbuildingInstalls these files- SKILL.md
- references/artifact-template.md
- references/faction-template.md
- references/location-template.md
- references/system-template.md
- references/world-element-types.md
What this skill tells the agent
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
- Read
story.mdfor genre, era, and tone context - Read
worldbuilding/_index.mdfor existing locations and systems - Ask for the location's name and type (city, fortress, wilderness, etc.)
- 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
- Write the file using
references/location-template.md - Save to
worldbuilding/locations/{name-kebab}.md - Update
worldbuilding/_index.mdlocations table - If notable characters are listed, verify those character files exist and add this location's kebab-case identifier to each character file's
locationsfrontmatter list - When CLI access is available, run
story reindex .,story links ., andstory validate .
Creating a System
- Read
story.mdfor genre and themes context - Read
worldbuilding/_index.mdfor existing systems - Identify the system type and consult
references/world-element-types.mdfor the relevant prompts - Build the system through conversation, addressing the key questions for that type
- Write the file using
references/system-template.md - Save to
worldbuilding/systems/{name-kebab}.md - Update
worldbuilding/_index.mdsystems table - Cross-reference with characters who interact with the system (e.g., magic-users for a magic system)
- When CLI access is available, run
story reindex .,story links ., andstory 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
Then:
- Save to
worldbuilding/factions/{name-kebab}.md - Update the Factions table in
worldbuilding/_index.md - If members are listed, verify those character files exist
- When CLI access is available, run
story reindex .,story links ., andstory validate .
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
Then:
- Save to
worldbuilding/artifacts/{name-kebab}.md - Update the Artifacts table in
worldbuilding/_index.md - If an owner or location is listed, verify those files exist and cross-reference back
- When CLI access is available, run
story reindex .,story links ., andstory validate .
Updating World Elements
- Read the existing file
- Make the requested changes
- If cross-references changed, update the linked files
- Update
worldbuilding/_index.mdif name, type, or status changed - When CLI access is available, run
story reindex .,story links ., andstory validate .
Cross-Referencing
- Locations reference characters via
notable-charactersin frontmatter - Characters reference locations via
locationsin 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
locationsfield links back - Keep the
worldbuilding/_index.mdworld overview section current as elements are added
CLI Maintenance
Use the Story CLI when it is available. If story is not installed, use bun run story -- from the Story Skills repository checkout or the bundled fallback 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, backlink, and word-count 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)
More from danjdewhurst
Use this skill in a project
Open any RiverX project, search the Skills panel for danjdewhurst/story-skills/worldbuilding, and install it in one click.
