Matplotlib
zLanqing/codex-claude-academic-skills
Low-level plotting library for full customization. An agent skill from zLanqing/codex-claude-academic-skills.
Structure stories around essential emotional moments using Rodriguez's approach integrated with elemental genres.
$ npx skills add jwynia/agent-skills --skill key-moments -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install jwynia/agent-skills key-moments --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/creative/fiction/structure/key-moments .claude/skills/key-moments && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "key-moments" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/structure/key-moments into .claude/skills/key-moments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "key-moments", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/structure/key-momentsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add jwynia/agent-skills --skill key-moments -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install jwynia/agent-skills key-moments --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/creative/fiction/structure/key-moments .agents/skills/key-moments && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "key-moments" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/structure/key-moments into .agents/skills/key-moments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "key-moments", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jwynia/agent-skills --skill key-moments -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install jwynia/agent-skills key-moments --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/creative/fiction/structure/key-moments .cursor/skills/key-moments && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "key-moments" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/structure/key-moments into .cursor/skills/key-moments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "key-moments", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/jwynia/agent-skills.git --path skills/creative/fiction/structure/key-moments--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add jwynia/agent-skills --skill key-moments -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install jwynia/agent-skills key-moments --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/creative/fiction/structure/key-moments .gemini/skills/key-moments && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "key-moments" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/structure/key-moments into .gemini/skills/key-moments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "key-moments", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install jwynia/agent-skills key-momentsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add jwynia/agent-skills --skill key-moments -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/creative/fiction/structure/key-moments .github/skills/key-moments && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "key-moments" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/structure/key-moments into .github/skills/key-moments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "key-moments", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add jwynia/agent-skills --skill key-moments -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install jwynia/agent-skills key-moments --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/jwynia/agent-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/creative/fiction/structure/key-moments .opencode/skills/key-moments && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "key-moments" agent skill from https://github.com/jwynia/agent-skills/tree/main/skills/creative/fiction/structure/key-moments into .opencode/skills/key-moments/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "key-moments", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
key-momentsStructure stories around essential emotional moments using Rodriguez's approach integrated with elemental genres.
Key Moments is an agent skill from jwynia/agent-skills. Structure stories around essential emotional moments using Rodriguez's approach integrated with elemental genres. Use when plotting feels mechanical, when emotional beats need defining, or when building stories from vivid scenes rather than plot outlines.
Its SKILL.md is about 4.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Data & Analytics, covering Data visualization. The licence is MIT.
10 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit e02ec7e. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Key Moments loads about 4.9k tokens when it runs. Until then it costs about 67 tokens; SKILL.md has 2,202 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from jwynia/agent-skills at commit e02ec7e, republished under its MIT licence (© jwynia). 2,202 words, ~4,912 tokens.
.claude/skills/key-moments/SKILL.md (or your agent's skills folder).You help writers identify and sequence the essential emotional experiences that define their story's genre, then build the world, characters, and connective tissue around those moments. Based on Robert Rodriguez's methodology of visualizing key moments first, integrated with elemental genre theory.
Stories are defined by emotional experiences, not plot mechanics. Identify the key moments your genre requires, sequence them for maximum impact, then build everything else to enable those moments.
This inverts the typical outline-then-dramatize approach: you start with vivid, memorable scenes and work backward to what must exist to make them possible.
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Initial Encounter | Surprise and awe | Establishes spectacular nature of setting/concept |
| Scale Revelation | Humbling realization of vastness | Contextualizes protagonist's place |
| Perspective Shift | Paradigm change in understanding | Forces reevaluation of assumptions |
| Wonder Escalation | Intensification of awe | Raises stakes and deepens engagement |
| Transcendent Integration | Meaning-making through wonder | Provides thematic resolution |
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Question Inception | Curiosity activation | Establishes central puzzle |
| Pattern Recognition | Satisfaction of connection | Provides momentum and engagement |
| False Resolution | Surprise from misdirection | Creates complexity and extends engagement |
| Progressive Revelation | Deepening understanding | Builds toward solution |
| Solution Crystallization | Illumination and closure | Completes emotional journey |
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Threshold Crossing | Excitement of departure | Transitions to adventure world |
| Capability Test | Confidence from competence | Establishes protagonist's abilities |
| Resource Depletion | Vulnerability from loss | Forces adaptation and growth |
| Ultimate Challenge | Fear and determination | Tests protagonist's limits |
| Return Transformation | Pride and perspective | Demonstrates growth from journey |
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Wrongness Glimpse | Unease from dissonance | Establishes threat potential |
| Safety Violation | Shock from boundary breach | Demonstrates vulnerability |
| Threat Escalation | Escalating dread | Raises stakes |
| Failed Solution | Despair from ineffectuality | Deepens hopelessness |
| Confrontation | Terror meets courage | Provides climactic moment |
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Stakes Establishment | Concern for outcome | Sets up tension framework |
| Deadline Imposition | Anxiety from time pressure | Creates urgency |
| Near Miss | Relief with lingering tension | Maintains engagement through peaks/valleys |
| Option Elimination | Mounting pressure | Forces protagonist into harder choices |
| Decision Under Duress | Catharsis through action | Provides climactic release |
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Significant Connection | Recognition of potential | Establishes relationship basis |
| Intimacy Deepening | Warmth from vulnerability | Develops emotional investment |
| Value Conflict | Frustration from differences | Creates meaningful obstacles |
| Relationship Crisis | Heartbreak or betrayal | Tests connection's resilience |
| Reconciliation/Resolution | Emotional closure | Completes relationship arc |
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Internal Conflict Revelation | Recognition of contradiction | Establishes character struggle |
| External Pressure Point | Stress from circumstances | Forces character choices |
| Failure Moment | Shame from inadequacy | Deepens character journey |
| Truth Confrontation | Painful self-awareness | Catalyzes change |
| Character Evolution | Self-actualization | Demonstrates growth |
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Perspective Challenge | Intellectual discomfort | Establishes issue's complexity |
| Stake Personalization | Emotional investment | Makes abstract concrete |
| Complexity Recognition | Cognitive expansion | Prevents simplistic resolution |
| Position Testing | Value/belief examination | Forces intellectual honesty |
| Perspective Integration | Nuanced understanding | Provides thematic resolution |
| Key Moment Type | Emotional Experience | Story Function |
|---|---|---|
| Group Formation | Belonging potential | Establishes the collective |
| Role Establishment | Identity within community | Defines character functions |
| Group Fracture | Loyalty testing | Creates internal conflict |
| Collective Challenge | Shared adversity | Forces cooperation |
| Synergy Moment | Strength through unity | Demonstrates group value |
Step 1: Determine Primary and Secondary Genres
Step 2: Select Critical Key Moments
Step 3: Sequence Moments Optimally
Step 4: Visualize Each Moment
Step 1: Determine Required World Elements
Step 2: Design Supporting Systems
Step 1: Identify Required Character Functions
Step 2: Create Character Arcs
Step 1: Identify Bridging Requirements
Step 2: Design Multifunctional Bridge Scenes
Step 3: Install Setup-Payoff Mechanics
Evaluate Emotional Progression:
Verify Causal Logic:
Test for Genre Satisfaction:
Concept: An oceanographer discovers unusual bioluminescent patterns that appear to form a communication system, leading to evidence of an ancient aquatic civilization.
Wonder Key Moments (Primary):
Mystery Key Moments (Secondary):
Character Functions:
Connective Tissue:
context/output-config.md in the projectstories/structure/ or explorations/stories/Pattern: {story-name}-moments-{date}.md
context/output-config.md{story-name}-moments-{date}.mdTrigger phrases: "design the complete emotional arc", "integrate both genres", "coordinate world with moments"
| Task | Agent Type | When to Spawn |
|---|---|---|
| Genre research | general-purpose | When exploring genre emotional requirements |
| Story consistency | Explore | When checking moments against existing story |
Pattern: Building the plot outline first, then trying to locate where to insert emotional beats. Why it fails: Emotion retrofitted to plot feels mechanical. The moments don't emerge naturally from character and situation; they interrupt the story to deliver required feelings. Fix: Start with the emotional experiences you want readers to have. Build backward: what situations create those emotions? What characters would be in those situations? What world enables those situations?
Pattern: Choosing key moments that deliver different emotional experiences than the primary genre promises. Why it fails: Readers come to genres for specific emotional experiences. A horror novel that delivers primarily relationship moments disappoints horror readers without satisfying romance readers. Fix: Verify that your most prominent key moments belong to your primary genre. Secondary genre moments support; they don't dominate. If the mismatch is intentional, you're writing a different genre than you think.
Pattern: Connective scenes that only move characters from one key moment to the next without developing character, world, or theme. Why it fails: Readers feel the pacing sag in bridge sections. They're just waiting for the next interesting thing. The story develops a stop-start rhythm rather than continuous engagement. Fix: Every bridge scene should serve at least two purposes: moving toward the next key moment AND developing character OR revealing world OR exploring theme. If a scene only serves logistics, compress or cut it.
Pattern: Treating every scene as a key moment, loading the story with climactic experiences. Why it fails: Without contrast, high-intensity moments lose impact. Emotional fatigue sets in. Readers become numb when everything is equally important. Fix: Limit key moments to 5-8 per story. Let some scenes be quieter. The valleys make the peaks feel taller. Save your strongest moments for where they'll have maximum impact.
Pattern: Key moments that don't follow logically from established character and world but happen because the plot needs them. Why it fails: Readers sense when characters act against their nature to reach a predetermined destination. The moments feel artificial, earned by authorial fiat rather than story logic. Fix: Work backward from each key moment: given this character and this world, what sequence of events makes this moment inevitable? If you can't find a path, either the moment doesn't fit or the character/world needs adjustment.
| Skill | What it provides |
|---|---|
| genre-conventions | Genre-specific emotional requirements |
| story-sense | Diagnosis of what emotions are missing or misplaced |
| character-arc | Character states that enable or resist key moments |
| Skill | What this provides |
|---|---|
| scene-sequencing | Clear emotional targets for scene construction |
| worldbuilding | World requirements to enable key moments |
| outline-collaborator | Structural skeleton built around emotional beats |
| Skill | Relationship |
|---|---|
| genre-conventions | Key-moments defines the emotional beats; genre-conventions ensures they satisfy genre expectations |
| scene-sequencing | Key-moments identifies what moments matter; scene-sequencing structures the approach and aftermath |
© jwynia, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/creative/fiction/structure/key-moments of jwynia/agent-skills.
Open the folder on GitHubat commit e02ec7e
Key Moments next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Key Moments this skilljwynia/agent-skills | 170 | — | ~4.9k | Automated safety check: Pass | MIT | |
| MatplotlibzLanqing/codex-claude-academic-skills | 4.7k | 17 repos | ~2.9k | Automated safety check: Pass | MIT | |
| Chart Visualizationbytedance/deer-flow | 84k | 1 repos | ~840 | Automated safety check: Pass | MIT | |
| Scientific Visualizationmims-harvard/OptimusKG | 147 | 19 repos | ~6.3k | Automated safety check: Pass | MIT | |
| SeabornzLanqing/codex-claude-academic-skills | 4.7k | 15 repos | ~4.9k | Automated safety check: Pass | BSD-3-Clause | |
| Plot From DataTrae1ounG/paper-plot-skills | 872 | 1 repos | ~583 | Automated safety check: Pass | None |
zLanqing/codex-claude-academic-skills
Low-level plotting library for full customization. An agent skill from zLanqing/codex-claude-academic-skills.
bytedance/deer-flow
Picks a suitable chart type from 26 options for your data, maps the data to that chart's parameters and generates a chart image through a JavaScript script.
mims-harvard/OptimusKG
Create publication figures with matplotlib/seaborn/plotly. An agent skill from mims-harvard/OptimusKG.
zLanqing/codex-claude-academic-skills
Statistical visualization with pandas integration. An agent skill from zLanqing/codex-claude-academic-skills.
Trae1ounG/paper-plot-skills
Generate publication-quality matplotlib figures by selecting a pre-built paper style and substituting user data.
ChenLiu-1996/figures4papers
Covers publication-ready matplotlib figures for academic papers, slides, and reports—bars, trends, scatter, heatmaps, and multi-panel layouts—with this…
jwynia/agent-skills
Diagnose devcontainer configuration problems and guide development environment setup.
jwynia/agent-skills
Create distinctive, production-grade frontend interfaces with high design quality.
jwynia/agent-skills
Orchestrate agile development workflows for Gitea repositories using the tea CLI.
jwynia/agent-skills
Generate game assets using AI image generation APIs (DALL-E, Replicate, fal.ai) and prepare them for Godot.
jwynia/agent-skills
Develop AI agents, tools, and workflows with Mastra v1 Beta and Hono servers.
jwynia/agent-skills
Create and manipulate PowerPoint PPTX files programmatically.
Categories
Structure stories around essential emotional moments using Rodriguez's approach integrated with elemental genres. Key Moments is an agent skill from jwynia/agent-skills. Structure stories around essential emotional moments using Rodriguez's approach integrated with elemental genres.
Key Moments fits situations like: plotting feels mechanical; emotional beats need defining; building stories from vivid scenes rather than plot outlines.
Run `npx skills add jwynia/agent-skills --skill key-moments -a claude-code`. Or copy the skill folder (skills/creative/fiction/structure/key-moments in jwynia/agent-skills) into .claude/skills/key-moments in your project. Claude Code loads it when a task matches its description.
Run `npx skills add jwynia/agent-skills --skill key-moments -a codex`. Or copy the skill folder (skills/creative/fiction/structure/key-moments in jwynia/agent-skills) into .agents/skills/key-moments in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jwynia/agent-skills --skill key-moments -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/key-moments, .gemini/skills/key-moments, .github/skills/key-moments and .opencode/skills/key-moments in your project.
SKILL.md names no scripts, command-line tools or credentials: Key Moments is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Key Moments is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.9k tokens (SKILL.md is roughly 20k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Key Moments: Matplotlib (zLanqing/codex-claude-academic-skills, 4.7k stars), Chart Visualization (bytedance/deer-flow, 84k stars), Scientific Visualization (mims-harvard/OptimusKG, 147 stars) and Seaborn (zLanqing/codex-claude-academic-skills, 4.7k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
jwynia (a GitHub user) maintains it in jwynia/agent-skills, which has 170 GitHub stars. The repository holds 111 skills in this directory. The repository was last updated on February 24, 2026.
Source: jwynia/agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.