Skip to content
cccskills
FreePublished on GitHubEnglish overview

StoryExplanation

Turn a video, article, file, or supplied text into a narrative explanation in the user's first-person voice. Choose a three-part story, linked and cited version, brief summary, or numbered CSE points that can each stand alone.

OriginalShow the original description

Generates narrative explanations in the user's first-person voice, from 3-part narrative to CSE numbered points, each a standalone social-ready thought. USE WHEN story explanation, narrative summary, CSE, CSE5, tell as story, explain as a story, create a narrative, story format, summarize as story, explain in my voice, with links, with citations, abridged, explain this YouTube, explain this article. NOT FOR multi-source research (Research), writing original social posts or blog drafts, wisdom extraction (ExtractWisdom).

danielmiessler/LifeOS19,635 stars(GitHub 19,635 + cccskills 0)
Works withYouTube

Run score Not tested

See how to install

Good for

  • Explain a YouTube video in a personal voice
  • Summarize an article as a three-part story
  • Create cited narrative explanations with links
  • Turn material into standalone numbered points

Overview

What it does

StoryExplanation turns a YouTube video, web article, file, pasted text, or conversation content into an explanation written in the user's first-person voice. You can request a three-part narrative, a version with source links and citations, a short summary, or numbered CSE or CSE5 points. Each point is written to make sense on its own, so it can be reused in places such as social media. The skill includes checks for the requested format and line count.

When it helps

Use it when you want to explain a video or article in your own words, share a concise account, include links to sources, or break material into separate points. It is not intended for broad research across multiple sources or for drafting entirely new social posts or blog ideas.

Example requests

  • “Summarize this video in three parts in my voice.”
  • “Turn this article into an explanation with links.”
  • “Explain this content in five CSE5 points.”

Notes

To retrieve a URL, the skill uses fabric -y for YouTube videos and fabric -u for other web pages. If there is no file defining the user's voice, it uses a general first-person style with plain language.

This overview was written by AI (OpenAI Codex) from the public SKILL.md. Check the original below for the exact behavior.

Document check

AI checked the SKILL.md for operations that need care and for setup requirements. The score comes only from actually running the skill (hands-on test).

SafetyAre sending data, deleting files, and running commands disclosed?
AGoodIt retrieves URLs and checks output format; no deletion, sending, or credential handling is described.
Easy setupDoes it need few tools or API keys, and are they documented?
BPartly lackingURL retrieval requires the fabric CLI; voice configuration setup is only partly described.

Not counted in the score. Rated by AI (OpenAI Codex) as of Oct 28, 2026. Treat it as a guide and read the original before installing.

Disagree? Request a re-evaluation

Tell us which point is wrong and why. No login needed. We will check it against the SKILL.md, redo the evaluation, and show the result here.

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Files included (13)

  • SKILL.md6.6 KB
  • Intents/Create.md1.4 KB
  • Intents/CreateAbridged.md2.0 KB
  • Intents/CreateWithLinks.md5.0 KB
  • Intents/Cse.md7.3 KB
  • Intents/Cse5.md2.1 KB
  • NarrativeFraming.md1.5 KB
  • OutputFormats.md1.1 KB
  • Patterns/create_story_explanation/system.md2.6 KB
  • Setup.md5.1 KB
  • Tools/CheckFormat.help.md2.4 KB
  • Tools/CheckFormat.ts8.8 KB
  • VoiceStyleGuide.md3.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

StoryExplanation

Turns any source (a YouTube video, a URL, a file, pasted text, or "this" for the current conversation) into a narrative explanation in the user's own first-person voice. It explores 5-7 framings, picks the strongest, and outputs in the format you ask for: a 3-part narrative, a links version with inline citations, a 5-line abridged version, or a numbered CSE/CSE5. Each point stands alone, so any one can be lifted straight to social media.

Every intent reads the source the same way. A YouTube URL (contains "youtube.com" or "youtu.be") is fetched with fabric -y <URL>, any other URL (starts with http:// or https://) with fabric -u <URL>, a file path by reading the file, pasted text as given, and previous output or "this" from the conversation.

Every format has a deterministic check. bun skills/StoryExplanation/Tools/CheckFormat.ts --format <format> [--lines N] [--words N] reads the output from stdin or --file, exits 0 when it conforms and 1 with one violation per line when it does not; flags and per-format checks are in Tools/CheckFormat.help.md. It checks counts, numbering, headers, bullets, labels, periods, link placement and the default cliche list, never voice or fidelity.

Intent--formatOther flags
Createcreatenone
CreateWithLinkslinks--lines N when the request named a length
CreateAbridgedabridgednone
Csecse--lines N, and --words N when the request named a word count
Cse5cse5none

Ideal State

  • Every explanation is written in the user's first-person voice from the voice file and notes named in Config.md (the generic defaults when it is absent), never in the assistant's own register or another person's voice.
  • The source was actually read before writing (a YouTube transcript through fabric -y, a web page through fabric -u, a file, pasted text or the conversation), and nothing in the explanation goes beyond it.
  • The output is exactly the format and length the request named, with no commentary around it (Tools/CheckFormat.ts exits 0 on it), and each point or sentence is a complete thought that lifts to social media unedited.
  • Several framings were explored, the explanation uses the one picked as strongest over the others, and someone who never saw the source can follow the idea from the explanation alone.
  • When Config.md names an opinion-lookup command, the explanation agrees with the user's published position on the topic as that command reports it.

Intent Routing

IntentTriggerFile
Create"story explanation", defaultIntents/Create.md
CreateWithLinks"with links", "with sources"Intents/CreateWithLinks.md
CreateAbridged"abridged", "5-12 words per line"Intents/CreateAbridged.md
Cse"CSE", "comprehensive", /cse; where an install adds line-count shortcut commands, they call this intent with that line countIntents/Cse.md
Cse5"CSE5", "5 lines", /cse5Intents/Cse5.md
FileRead when
VoiceStyleGuide.mdhow the user's voice is applied, cliches to avoid
NarrativeFraming.mdFraming selection rule + angle palette
OutputFormats.mdchoosing between the formats
Patterns/the Create intent's 3-part narrative prompt (Patterns/create_story_explanation/system.md)
Setup.mdfirst-time setup of Config.md and the voice file
Tools/checking an output against its format (CheckFormat.ts; flags in CheckFormat.help.md)
EvalState.mdthe storyexplanation-cse eval scores (machine-owned by skills/Assay/Tools/EvalState.ts, never hand-edited)

Data & Config

The user's voice and optional integrations live in LIFEOS/USER/CUSTOMIZATIONS/SKILLS/StoryExplanation/Config.md; first-time setup is in Setup.md. It names the voice file to write from, voice notes, an optional opinion-lookup command, an optional directory for saved explanations, and an optional explainer MCP tool. Read it before writing. The voice file it names is the canon for prose written as the user. When it is missing, say so once, point the user at Setup.md, and carry on with the generic defaults (first person, plain and conversational, no opinion lookup, nothing saved, the embedded prompt in Intents/Cse.md as the explainer); never borrow another person's voice.

Gotchas

  • CSE = N numbered points (default 8, 3-50, so 3 and 4 lines are valid). CSE5 = 5-point condensed version. A 5-line shortcut is CSE at 5 lines; "CSE5" or "5 lines" is the CSE5 format, and "abridged" is the unnumbered 5-12-word format. Don't mix up the formats.
  • WebFetch returns a small model's summary of a page, never its text (principal directive 2026-09-29), so an article is fetched with fabric -u, never WebFetch.
  • Narrator's asides ('the way everyone does X', 'as anyone would') are vague filler. These universalizing clauses speak for people in general instead of the source; cut them or make each claim specific to the source or to the user's own experience. The user reviews and owns anything posted under their name.

Examples

Example 1: YouTube video story explanation

User: "create a story explanation for this video" [YouTube URL]
-> Invokes Create intent
-> Extracts transcript with fabric -y
-> Returns 3-part narrative (opening/body/closing) in the user's voice

Example 2: Story with inline links

User: "story explanation with links for this article"
-> Invokes CreateWithLinks intent
-> Returns 25-sentence narrative with inline source citations

Example 3: Abridged 5-line summary

User: "give me an abridged 5-line summary of this" [URL]
-> Invokes CreateAbridged intent
-> Returns ultra-concise 5 lines (5-12 words each)

Example 4: CSE with custom line count

User: "/cse 12 leaky abstraction"
-> Invokes Cse intent
-> Returns 12-line numbered story explanation

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

AnnualReports

FreeSummary

Find and fetch vendor cybersecurity reports, then compare their findings on topics such as ransomware, breaches, cloud security, and AI. Analyses identify the reports consulted and cite each figure by vendor, year, and report, including where sources disagree.

  • Find reports in a cybersecurity topic area
  • Fetch a specific vendor report
  • Compare ransomware findings across reports
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Compare a component's own design needs with the goals of the larger system through three structured passes. The result identifies conflicts, recommends an appropriate scope, and assesses whether the proposed design fits the whole.

  • Choosing between a service, a library, and inline code
  • Comparing feature requests with product goals
  • Checking how new components fit an existing system
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Aphorisms

FreeSummary

Find quotes that fit a text’s themes, with attribution and a short reason for each suggestion. Add sourced quotes, research thinkers, and organize a quote collection by theme and usage history to avoid repetition.

  • Finding a fitting quote for a newsletter
  • Saving sourced quotes without duplicates
  • Researching a thinker’s quotes by theme
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

Art

FreeSummary

Create blog illustrations, technical diagrams, comparisons, comics, and icons through workflows tailored to each format. The skill guides composition, color, and model selection, then stages generated images for review before they are used in a project.

  • Creating blog header illustrations
  • Explaining a system with a technical diagram
  • Visualizing comparisons and timelines
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

ArtDirection

FreeSummary

Assess the visual quality of images, films, slides, and site captures against a brief and craft criteria. Two vision judges score the work and rank defects, guiding bounded revision; delivery is gated on a passing critique, with human calibration labels recorded separately.

  • Reviewing a render and listing the most important visual defects
  • Iterating on a film or slide deck until it meets a defined bar
  • Checking whether an image reads as professional
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

ArXiv

FreeSummary

Find arXiv papers by topic, research category, or paper ID. Retrieve titles, authors, abstracts, and links, check new submissions, and add AlphaXiv's AI-generated overviews when available to help decide which papers to read.

  • Checking new AI and machine learning papers
  • Finding papers on a specific research topic
  • Looking up a paper by its ID or arXiv URL
danielmiessler/LifeOS19.6KUpdated Oct 28, 2026

See all skills by danielmiessler

Report a problem with this skill