worldbuilding
npx machina-cli add skill danjdewhurst/story-skills/worldbuilding --openclawWorldbuilding
Overview
Create and manage world elements for a story project. Locations and systems (magic, politics, technology, etc.) 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 location references to them
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)
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
Cross-Referencing
- Locations reference characters via
notable-charactersin frontmatter - 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
Reference Files
references/location-template.md- Template for location filesreferences/system-template.md- Template for system filesreferences/world-element-types.md- Detailed prompts for each system type (magic, political, technology, religion, economic, military, social)
Source
git clone https://github.com/danjdewhurst/story-skills/blob/main/skills/worldbuilding/SKILL.mdView on GitHub Overview
Worldbuilding helps you create and manage all story world elements, from locations to magic, politics, and technology. Elements are stored as markdown files in worldbuilding/, using YAML frontmatter, and they cross-reference characters and other story elements to stay cohesive.
How This Skill Works
Start by ensuring a story project exists (look for story.md). Review existing elements in worldbuilding/_index.md, decide whether you’re creating a location or a system, then build it through guided prompts. Write the new element with the appropriate template (location-template or system-template), save it under worldbuilding/locations/ or worldbuilding/systems/, and update the _index.md. Cross-reference characters and other elements so links stay consistent.
When to Use It
- Create a new location (city, fortress, wilderness, etc.) for a story
- Add culture, customs, or notable features to a region
- Develop a magic, political, technology, religious, or economic system
- Outline world history or the broader world context for the narrative
- Cross-reference elements with characters and update the world index
Quick Start
- Step 1: Ensure a story project exists (look for story.md in the root)
- Step 2: Decide whether you’re adding a location or a system and gather inputs
- Step 3: Write the element using the appropriate template and save under worldbuilding/locations/ or worldbuilding/systems/; then update worldbuilding/_index.md
Best Practices
- Check story.md to align genre, era, and tone before building elements
- Consult worldbuilding/_index.md to understand existing locations and systems
- Use the designated templates (location-template.md or system-template.md) when writing files
- Cross-reference practitioners or notable characters where applicable
- Keep worldbuilding/_index.md current to reflect new or updated elements
Example Use Cases
- Create a coastal city with a layered culture, trade networks, and a harbor politics scheme
- Design a magic system with schools, costs, and rituals that influence daily life
- Build a technology system tied to a scarce resource and a corporate governance layer
- Develop an ancient history that shapes current factions and myths
- Establish a religion with rituals, holy sites, and its impact on laws and economy