agentleFS
scott2bscott2b/claude-skills/narrative-maps/SKILL.md

narrative-maps

Skill1 starsChanged 13 months agoApache-2.0View on GitHub

Map the spatial structure of your writing using William Germano's framework to visualize what you've written, identify borders and gaps, and navigate the terrain of your draft

The file

Show its rules and text

We split this skill into the rules it gives an agent

14 rules. About 0 are common, 13 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈13

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    When this skill is invoked, follow these steps to create a narrative map.

    line 36
  2. Distinctive:

    Ask which draft or section to map

    line 45
  3. Distinctive:

    Read the draft text to understand scope and content

    line 48
  4. Distinctive:

    Create a basic structural record:

    line 62
  5. Distinctive:

    Create a working title: if one doesn't exist. The real work of mapping begins with giving the draft a title.

    line 78
  6. Distinctive:

    Avoid vague descriptions like "an essay about women's soccer." A working title must:

    line 80
  7. Distinctive:

    After several passes, observe:

    line 110
  8. Distinctive:

    When noticing a shift, stop and determine:

    line 162
  9. Distinctive:

    Update the map with these observations.

    line 167
  10. Distinctive:

    Do the labels help understand the text?

    line 207
  11. Very specific:

    Ask where to save maps (suggest maps/ or process/maps/)

    line 213
  12. Distinctive:

    Create the chosen directory if it doesn't exist

    line 214
  13. Distinctive:

    Create the map as a formatted markdown artifact or downloadable file

    line 220
  14. Distinctive:

    Create organizational structures from scratch (it maps what exists)

    line 237

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Narrative Maps

This skill helps writers map their draft text using William Germano's spatial framework from On Revision. A map is a picture of what has been written so far—a way to visualize the geographic space prose occupies and to navigate the terrain from "here" to "there."

Purpose

Just as an inventory catalogues elements (materials, ideas, emphases) that may or may not belong in the finished project, a map pictures what has been written so far. Mapping reveals spatial structure, identifies borders and scope, locates difficult terrain, and guides navigation through the text.

When to Invoke This Skill

Invoke this skill when writers need to:

  • Visualize the structure of a completed draft
  • Understand component distribution across the text
  • Identify which sections are working vs. problematic
  • Define project borders and scope
  • Navigate from current position to destination
  • Track spatial progress (word counts, page numbers)
  • Identify natural breaks, shifts, and transitions
  • Discover repetitions, recursive passages, and misplaced elements

Bundled Resources

References:

  • references/germano-framework.md - Detailed theory, principles, and examples from Germano's framework. Read this to understand spatial thinking, borders, terrain types, and the discovery mode approach.

Assets:

  • assets/map-template.md - Template for the final map output. Use this structure when creating maps.

Task Instructions

When this skill is invoked, follow these steps to create a narrative map.

Step 1: Detect Environment & Understand Context

Determine the environment:

  • With access to project directory and file system tools (Read, Write, Edit, Glob, Grep): Claude Code environment
  • With uploaded files or chat without direct project access: Claude Desktop/Web environment

Understand the writing context:

  1. Ask which draft or section to map
  2. In Claude Code: If not specified, search for main writing files in the project
  3. In Claude Desktop: Ask to share the draft text (upload file or paste text)
  4. Read the draft text to understand scope and content

Step 2: Build the Basic Map Infrastructure

Get the current date:

  • In Claude Code: Use date +%Y-%m-%d command to get current date
  • In Claude Desktop/Web: Use the system date if available, or ask the user

Record spatial dimensions:

  • Current word count
  • Page count (actual or estimated based on ~250 words/page)
  • For book-length drafts, track each chapter separately
  • Date this information

Create a basic structural record:

Draft: [Name]
Date: [YYYY-MM-DD from date command]
Total word count: [number]
Total pages: [number]

Structure:
- Chapter/Section 1: [word count], pages [X-Y]
- Chapter/Section 2: [word count], pages [X-Y]

This creates a spatial framework—the dimensions of the territory.

Step 3: Title Everything

Create a working title if one doesn't exist. The real work of mapping begins with giving the draft a title.

Avoid vague descriptions like "an essay about women's soccer." A working title must:

  • Tell something specific about the subject
  • Shape how the subject is being approached
  • Articulate the angle or approach

Examples:

  • "Compensation inequities in women's soccer" vs. "Hands off women's work"
  • Either might be right, but the difference shapes every paragraph

Ask the writer: What is this draft about? What's the angle? Create a working title that captures this (knowing it may change).

Step 4: Map Natural Breaks and Sections

Identify natural breaks—places where something changes:

  • "Something happens here"
  • "Moving to a different point in these paragraphs"
  • "This section is my favorite part" (or least favorite)

Label these sections:

  • Can be tentative and playful: "Section where I argue with Foucault"
  • Can be serious: "The misunderstood panopticon"
  • Can be descriptive: "Community responses to the water crisis"

Try on subheads for size—this is what labeling accomplishes.

Perform multiple passes:

  1. First pass: Mark obvious divisions
  2. Second pass: Do it again
  3. Third pass: Notice conviction strengthening or weakening about divisions

After several passes, observe:

  • Shapes and misshapes emerging
  • Repetitions and recursive passages
  • Sentences from section G that belong in section D
  • Natural units that make sense

Step 5: Identify the Terrain

Analyze the mapped sections:

Flat, easily crossed ground (working well):

  • Sections clearly understood
  • Parts connecting smoothly to surroundings
  • Components effectively manipulated

Mountainous or canyon-broken terrain (problematic):

  • Sections where progression is unclear
  • Parts not connecting well to surrounding material
  • Components feeling isolated or difficult to integrate
  • Gaps where bridges are needed

Mark these terrain types on the map.

Step 6: Define Borders and Scope

Help articulate:

Inside the borders (in scope):

  • The period, geographical region, industry, community being studied
  • The theoretical framework being employed
  • The questions being addressed
  • The material that must be included

Outside the borders (out of scope):

  • Related topics that won't be the focus
  • Interesting tangents that would derail the project
  • Supporting data that won't be directly engaged
  • Future work belonging in a different project

By articulating borders, develop a clearer sense of what will be done.

Reference: See references/germano-framework.md for the unemployment study example of border definition.

Step 7: Read Aloud and Track Shifts

Read the draft aloud and listen for:

  • Shifts: changing emphases, new interests, emerging focus points
  • Differences: how angle or approach evolves
  • Transitions: where movement occurs from one focus to another

Note shifts:

  • A shift isn't bad—it might be crucial, like a director changing camera angles
  • When noticing a shift, stop and determine:
    • The angle just created
    • The section that the angle has made
    • Label that section

Update the map with these observations.

Step 8: Create the Visual Map

Based on all analysis, create a visual representation. Use the template in assets/map-template.md as the structure.

The map should show:

  • Spatial layout of all sections
  • Terrain type for each section (FLAT / MOUNTAINOUS / CANYON-BROKEN)
  • Word counts and page ranges
  • Key components in each section
  • Visual diagram showing flow and relationships
  • Borders and scope (inside/outside/"here be dragons")
  • Terrain analysis (what's working/what needs work)
  • Shifts and transitions
  • Observations (repetitions, misplaced elements, patterns)
  • Navigation guidance (current position, destination, route recommendations)

Step 9: Provide Navigation Guidance

Based on the map, help the writer see:

Discovery, Not Repair:

  • The discovery stage of revision should be "a view from thirty-five thousand feet"
  • NOT "a moment to land and repaint the barn"
  • Resist the urge to immediately rewrite underdeveloped sections

Next Steps:

  • Which sections are working well (flat terrain)
  • Which sections need development (mountainous terrain)
  • Where bridges need to be built between sections
  • What might need to be moved or reorganized
  • What's missing within the borders
  • What's present but outside the borders (should be cut or saved for later)

Questions for the Writer:

  • Does this map match the sense of the draft?
  • Are the borders clear and appropriate?
  • Which mountainous sections most need attention?
  • Are there sections that should be reordered?
  • Do the labels help understand the text?

Step 10: Save or Present the Map

If in Claude Code (project directory access):

  1. Get current date using date +%Y-%m-%d command
  2. Ask where to save maps (suggest maps/ or process/maps/)
  3. Create the chosen directory if it doesn't exist
  4. Save with descriptive filename using actual date: YYYY-MM-DD-[draft-name]-map.md
  5. Include both visual map and analysis
  6. Confirm the save location to the user

If in Claude Desktop/Web (no project directory):

  1. Create the map as a formatted markdown artifact or downloadable file
  2. Present it in the chat for review
  3. Suggest saving it with filename using current date: YYYY-MM-DD-[draft-name]-map.md
  4. Offer to create alternative visualizations if requested

Important Reminders

  • Spatial thinking: Prose occupies space. Components exist in spatial relationships.
  • Multiple passes: Map the draft multiple times. Conviction builds over iterations.
  • Discovery mode: The map is for discovery, not immediate repair. View from altitude first.
  • Temporal tracking: Number pages, record word count, date each version.
  • Fluidity: Labels may shift. The map evolves as the draft evolves.

Reference: See references/germano-framework.md for detailed principles and examples.

What This Skill Does NOT Do

  • Create organizational structures from scratch (it maps what exists)
  • Automatically fix structural problems (it reveals them for the writer to address)
  • Impose external organization on the material
  • Replace the writer's sense of their project's direction
  • Provide detailed line-editing or prose-level feedback

Integration with Other Skills

This skill works alongside:

  • narrative-inventory - catalogues elements; map shows where they're located
  • narrative-keywords - identifies key terms; map shows how they're distributed spatially
  • Structural outlining tools (used later after mapping reveals structure)
  • Revision planning tools (map informs what needs revision)

Based on William Germano's "Map" section in the "Know What You've Got" chapter of On Revision: The Only Writing That Counts

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.