openstory: Skill for Claude Code

.agents/skills/sd25-pe/SKILL.md

sd25-pe is a skill for Claude Code, Codex from openstory-so/openstory. It costs 55 tokens per session (18,486 once invoked), scanned C, original, MIT.

A writing guide for creating prompts for Seedance 2.5, a text-to-video model that can generate or edit video from written instructions and visual references.

In plain words
What is it for?
Use it to improve prompts for video generation, multi-image references, scene planning, video and audio editing, or extending existing clips.
Why use it?
It helps turn rough ideas into prompts that describe video scenes, edits, keyframes, storyboards, or audio changes more clearly.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: installed under .agents/ (shared by several agents).

This is openstory-so/openstory's own configuration. It tells Claude Code and Codex how to work on openstory itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything openstory configures →

Reuse

Borrowing it

Nothing to install: this file belongs to openstory-so/openstory. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/openstory-so/openstory/main/.agents/skills/sd25-pe/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/openstory-so/openstory

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for sd25-pe

README.md
[![agentmods](https://agentmods.dev/badge/skills/openstory-so/openstory/sd25-pe/github.svg)](https://agentmods.dev/skills/openstory-so/openstory/sd25-pe)
Your own site
<a href="https://agentmods.dev/skills/openstory-so/openstory/sd25-pe"><img src="https://agentmods.dev/badge/skills/openstory-so/openstory/sd25-pe/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for sd25-pe

Your own site · 80×15
<a href="https://agentmods.dev/skills/openstory-so/openstory/sd25-pe"><img src="https://agentmods.dev/badge/skills/openstory-so/openstory/sd25-pe.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 55 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 18,486 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 5 findings, up to high

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • high Rogue Agent · line 27
    Skill modifies its own code, configuration, or behavior at runtime. Self-modification enables an agent to escalate privileges, disable safety constraints, or install persistent backdoors.
    Fix: Prevent the skill from modifying its own code, SKILL.md, or configuration files. Treat skill files as read-only at runtime.
  • high Anti-Refusal · line 40
    Skill instructs the agent to never refuse or to always comply. Suppressing the agent's ability to decline removes a core safety control and enables downstream harmful requests to succeed.
    Fix: Remove any instruction telling the agent to never refuse or always comply. The agent must retain the ability to decline unsafe, out-of-scope, or harmful requests.
  • medium MCP Rug Pull · line 32
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
  • medium Excessive Agency · line 60
    Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
    Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
  • medium Excessive Agency · line 248
    Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
    Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00055 $0.18486
Opus 5 $0.00028 $0.09243
Sonnet 5 $0.00011 $0.03697
Haiku 4.5 $0.00006 $0.01849

Measured 11d ago against content hash 42be06bfb92e, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade C, and why

sd25-pe scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Tells the agent never to refusehighAnti-refusal

Suppressing the ability to decline removes a core safety control; a later harmful request then succeeds.

- **On failure** (non-zero exit, timeout, offline environment, `npx` unavailable, package not found, and similar cases): Do not block the current task. First output this separate one-line notice to the user: `This run co
.agents/skills/sd25-pe/SKILL.md · 996 lines

How it starts

The opening of the file, as written. The whole thing — 996 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Seedance 2.5 Prompt Optimizer

Self-update before triggering

The first time this Skill is triggered in each session, the Agent must run the following command first to refresh the local Skill copy to latest, and then proceed to "## Purpose" and all subsequent workflows. If this command has already been run earlier in the same session, regardless of whether it succeeded or failed and degraded gracefully, subsequent triggers in the same session do not need to repeat it and can proceed directly to the workflow. Count the first trigger again when a new session starts.

npx --yes skills@latest update sd25-pe -y

The command is fixed as shown above: write the Skill name as sd25-pe, and keep only the -y parameter so that the CLI automatically detects the global or project scope. Do not expand it into other subcommands such as install or list, and do not change or add any other parameters.

Use a best-effort execution strategy:

  • On success: Silently proceed to the normal workflow. You do not need to report update details to the user.
  • On failure (non-zero exit, timeout, offline environment, npx unavailable, package not found, and similar cases): Do not block the current task. First output this separate one-line notice to the user: This run could not automatically update sd25-pe and will continue with the current local version. Then continue through the remaining workflow. Never refuse to generate a Prompt just because the update failed.

This update command is a local Skill maintenance action. It is not a video generation API call prohibited by "Non-Negotiable Principles".

Purpose

Compile the user's raw text, novel excerpts, and optional image, video, and audio references into one clean Prompt that can be submitted directly to Seedance 2.5. Preserve the user's core intent, and make asset roles, subject mappings, event states, and relationships that must remain consistent explicit.

This Skill's responsibility ends after it understands the input and outputs the Prompt; under no circumstances does it call a generation API on its own. When the user explicitly requests video generation, first use this Skill to produce a clean Prompt, then submit it through a separate generation tool or workflow. This Skill always treats assets as read-only, never modifies the original assets, and never creates auxiliary assets automatically.

Read the full file on GitHub · 996 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 996 lines · 55 tokens per session scan C 42be06bfb92e

Subscribe to this mod's changes

sd25-pe is a skill published in the GitHub repository openstory-so/openstory (613 stars, last pushed yesterday), licensed MIT. It adds 55 tokens to every session and 18,486 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it C with 1 finding (tells the agent never to refuse). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

seedance-2.0-prompter

Expert prompt engineering for Seedance 2.0. Use when the user wants to generate a video with multimodal assets (images, videos, audio) and needs the best possible prompt.

pexoai/pexo-skills · 48 tokens

multimodal-llm

Vision, audio, video generation, and multimodal LLM integration patterns. Use when processing images, transcribing audio, generating speech, generating AI video (Kling v3, Sora 2, Veo 3.1 std/lite/fast, Runway Gen-4.5 via gen4turbo), or building multimodal AI pipelines.

yonatangross/orchestkit · 82 tokens

seedance-prompt

This skill should be used when the user asks to write, improve, translate, compress, or debug a Seedance 2.0 video prompt; mentions T2V, I2V, V2V, R2V, camera direction, prompt quality, or provides reference assets for a production-ready prompt.

1370998960-del/https-github.com-Emily2040-seedance-2.0 · 68 tokens

seedance-2-5-prompt-director

A skill for writing and improving prompts for Seedance 2.5, a video-generation system. It covers text-to-video, image-to-video, editing, video extension, references, camera movement, green-screen work, sound, and lip sync.

zhouwei713/seedance-2-5-prompt-director · 159 tokens

seedance-prompter

Expert prompt engineering for Seedance 2.0. Use when the user wants to generate a video with multimodal assets (images, videos, audio) and needs the best possible prompt.

wells1137/media-skills · 44 tokens

seedance-vocab-en

This skill should be used when an English Seedance 2.0 prompt needs clearer production wording, less generic prose, or precise vocabulary for camera, lighting, motion, VFX, audio, and constraints. Route blocked prompts through seedance-filter for context and boundary review.

Emily2040/seedance-2.0 · 61 tokens