Story Multi-Perspective Review
zenstory-ai/oh-story-claudecode
Reviews Chinese web-novel text with several reviewer agents in parallel, falling back to a single-agent pass, and reports structure, character, prose and setting problems with fixes.
This skill should be used when the user asks to "write a query letter", "query", "querying", "pitch", "blurb", "back cover copy", "jacket copy", "comp titles", "comparable titles", "synopsis for…
$ npx skills add danjdewhurst/story-skills --skill submission -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install danjdewhurst/story-skills submission --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/danjdewhurst/story-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/submission .claude/skills/submission && 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 "submission" agent skill from https://github.com/danjdewhurst/story-skills/tree/main/skills/submission into .claude/skills/submission/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "submission", 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/danjdewhurst/story-skills/tree/main/skills/submissionType 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 danjdewhurst/story-skills --skill submission -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install danjdewhurst/story-skills submission --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/danjdewhurst/story-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/submission .agents/skills/submission && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "submission" agent skill from https://github.com/danjdewhurst/story-skills/tree/main/skills/submission into .agents/skills/submission/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "submission", 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 danjdewhurst/story-skills --skill submission -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install danjdewhurst/story-skills submission --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/danjdewhurst/story-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/submission .cursor/skills/submission && 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 "submission" agent skill from https://github.com/danjdewhurst/story-skills/tree/main/skills/submission into .cursor/skills/submission/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "submission", 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/danjdewhurst/story-skills.git --path skills/submission--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 danjdewhurst/story-skills --skill submission -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install danjdewhurst/story-skills submission --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/danjdewhurst/story-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/submission .gemini/skills/submission && 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 "submission" agent skill from https://github.com/danjdewhurst/story-skills/tree/main/skills/submission into .gemini/skills/submission/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "submission", 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 danjdewhurst/story-skills submissionInstalls 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 danjdewhurst/story-skills --skill submission -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/danjdewhurst/story-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/submission .github/skills/submission && 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 "submission" agent skill from https://github.com/danjdewhurst/story-skills/tree/main/skills/submission into .github/skills/submission/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "submission", 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 danjdewhurst/story-skills --skill submission -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install danjdewhurst/story-skills submission --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/danjdewhurst/story-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/submission .opencode/skills/submission && 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 "submission" agent skill from https://github.com/danjdewhurst/story-skills/tree/main/skills/submission into .opencode/skills/submission/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "submission", 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.
submissionThis skill should be used when the user asks to "write a query letter", "query", "querying", "pitch", "blurb", "back cover copy", "jacket copy", "comp titles", "comparable titles", "synopsis for…
Submission is an agent skill from danjdewhurst/story-skills. This skill should be used when the user asks to "write a query letter", "query", "querying", "pitch", "blurb", "back cover copy", "jacket copy", "comp titles", "comparable titles", "synopsis for agents", "submit to agents", "submission tracker", "self-publishing description", "retailer description", "ready to query", "submission readiness check", "submit a short story", "magazine submission", "short-fiction markets", "simultaneous submission", "reprint rights", "order a short story collection", or wants to…
Its SKILL.md is about 4.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including reference files (for example `references/blurb.md`, `references/comp-titles.md` and `references/query-letter.md`).
It sits in Writing & Content, covering Creative writing and fiction. The repository describes itself as: Agent Skills for end-to-end story writing in markdown, packaged as Codex and Claude Code plugins. The licence is MIT.
9 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 1df23f9. 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.
Shell commands in SKILL.md call:
nodeFrom 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.
Submission loads about 4.3k tokens when it runs, and up to ~9.6k if it reads all its reference files. Until then it costs about 224 tokens; SKILL.md has 2,224 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 noted patterns worth knowing about, such as sudo or a known installer.
`bunfig.toml` (which can run code) and `.env`, and a package script runs from the checkout's root. If no CLI is availabAutomated 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 danjdewhurst/story-skills at commit 1df23f9, republished under its MIT licence (© danjdewhurst). 2,224 words, ~4,297 tokens.
.claude/skills/submission/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Get a finished manuscript out the door. This skill checks submission
readiness, drafts the submission package (query letter, pitch, synopsis,
blurb, comp titles), builds the manuscript in submission format, and keeps a
tracker of where the book has gone. Package files live under submission/
in the story project. The author sends every submission themselves; this
skill prepares materials and records outcomes.
A story project with a complete or near-complete draft. Verify story.md
exists in the project root and read its status, genre, sub-genre,
premise, author (or authors for a co-written book), contact, and language fields. If status is not complete or
revising, tell the user the package can be drafted now but the readiness
check will fail until the draft is finished.
language (a missing field means en) is the book's language. Ask which
market the user is submitting to. The query letter, Shunn manuscript
format, comp conventions, and word-count norms in the references are the
English-language (mainly US and UK) market's. Other markets have their
own practice: some publishers take submissions directly rather than
through agents, and many ask for a synopsis and sample pages in their own
format. Ask the user for the guidelines of the agents or publishers they
are targeting and follow those; never present English-market conventions
as universal. Write the package in the language the agent or publisher
reads, which is usually the book's.
publishing
skill. This skill still drafts the blurb and retailer description it
uses, and records the rights a short-fiction market buysseries-continuity); the query for book one is still drafted hererevision-continuity)feedback-triage)[TODO: author to supply] placeholder.Run the deterministic checks and report every finding before drafting:
story reindex .
story wordcount . --write
story check .
story prose .
story report .Then check what the CLI cannot:
story check . (validate, links, and continuity) has no errors. List
warnings for the user to accept or fix.
story prose . shows no avoided spellings, and the user has reviewed
the other findings. If style-sheet.md is missing or still the
scaffold, suggest the voice-style skill first.
Every chapter has status: revised, final, or complete. List any
still at outline or draft.
The total word count sits inside the range for the category in
references/word-count-norms.md. Those ranges are rough conventions
for the English-language market only: state the number and the range,
and ask the user to confirm current norms for their market. For a book
in another language, report the count and ask for that market's norms
instead. A Chinese or Japanese book is counted in characters: report
story wordcount .'s character total, and story validate . checks
target-characters against per-form character ranges where a source
sets one. Never pad or cut to hit a number without the user's direction.
When the count is well outside the range and the user wants to change
it, hand the book to revision-continuity's length pass
(../revision-continuity/references/pass-checklists.md#length-pass),
which budgets the cut or expansion by chapter and arc instead of
trimming every chapter evenly.
No [TODO markers remain in chapter prose. story validate warns about
each chapter that still has one.
Open questions and planted promises are resolved, or deliberately left
for a sequel (check story.md precedes). Once story.md is
status: complete, every open question and planned or planted promise
or clue is a story continuity error, which fails the story-checks CI.
No status means "pays off in the next book", so for each thread the
user confirms is left for a sequel, add an entry to
continuity/exemptions.md rather than changing its status:
---
type: exemption-log
exemptions:
- code: complete-with-open-promise
pattern: "continuity/promises/the-sealed-letter.md is still planted"
reason: "Pays off in book two."
---Rerun story continuity . and confirm the finding shows as dismissed.
Give a verdict: ready, ready-with-caveats (list them), or not-ready
(list the blockers and hand them to revision-continuity).
story.md (premise, synopsis), the main arc files, and the
protagonist's character file.../story-init/references/title-logline.md has the
logline recipe.submission/query.md.Follow references/comp-titles.md. Propose candidates with a one-line
reason each, mark every one unverified until the user confirms year,
category, and fit, and save the agreed list to submission/comps.md.
Follow references/query-letter.md. Draft submission/query.md with the
hook, one or two book paragraphs, the metadata line (title, genre, word
count rounded to the nearest thousand, comps), and a bio placeholder the
author fills in. Keep the letter between 250 and 350 words. If the user
names a specific agent, add a personalization line only from facts the user
provides.
Generate the mechanical draft:
story synopsis . --pages 1 --out submission/synopsis-1-page.md
story synopsis . --pages 3 --out submission/synopsis-3-page.mdThe CLI output is a scaffold stitched from the story.md synopsis and
each arc's Setup, Rising Action, Climax, and Resolution sections.
Rewrite it into polished prose: present tense, third person, main
characters' names in capitals on first use, every major turn, and the
ending revealed. Agents expect the ending; never withhold it.
Keep the 1-page version near 500 words and the 3-page version near 1,500. Overwrite the generated files with the rewritten versions and add the frontmatter from Conventions below.
If the output is thin, the arc files are thin: fill the missing arc
sections with the plot-structure skill, rerun, then rewrite. --out
never replaces an existing file in submission/, so to rerun, write to
dist/ and merge, or delete the generated file first after checking with
the user that it holds no rewriting they want to keep.
Follow references/blurb.md. Draft submission/blurb.md with a tagline,
the back-cover copy (150-200 words), and, for self-publishing, a retailer
description with the same copy plus a comp line if the user wants one. The
blurb never reveals the ending.
This skill owns the retailer description: submission/blurb.md is its
only draft, and the publishing skill reads it there. Keep it and the
description field in story.md in step when the user self-publishes.
For agents and short-fiction markets, build Shunn manuscript format:
story build . --format docx --shunn
story build . --format shunnThese write dist/<story-id>.shunn.docx and dist/<story-id>.shunn.md.
The DOCX has a running head on every page after the first: the author's
surname, a short title, and the page number (Writer / The Last Ember / 2).
The build takes the last word of the first author's name (the first word
in a Chinese, Japanese, Korean, or Hungarian book) and the title before
any subtitle, and cuts a long one to fit. When either is wrong, such as
Le Guin, set surname or short-title in story.md; the build uses
them whole.
For a market that takes PDF, add --pdf to the shunn build: it renders
dist/<story-id>.shunn.pdf (US Letter, Courier, double-spaced, running
head) with a paged-media engine the user has installed, and stops with
install hints when there is none.
The PDF and DOCX are US Letter, which North American markets expect. For a
market that asks for A4 (most outside North America), add --paper a4 to
the --pdf or docx --shunn build; the 1-inch margins stay. Go by the
market's guidelines, not the author's language or country. An author who
always submits on A4 can set paper: a4 under a build entry in
cli-defaults in story.md; other builds ignore it.
Confirm story.md has author (or authors) and contact first; the
title page uses them, joining co-authors with "and". Shunn builds leave out matter/ pages, as submissions expect. With
form: short-story or form: flash in story.md they use Shunn's
short-story layout: the text runs on from the title block, chapters become
sections separated by a centred #, and there are no chapter headings or
page breaks. Any other form starts each chapter on a new page. For
self-publishing, hand off to the publishing skill, which covers EPUB and
print builds (story build . --format epub, --format print --trim 6x9),
retailer metadata, and launch.
For a one-page metadata sheet to check the pitch facts against (title, series, author, word count, description length against retailer limits, keywords, BISAC subjects, and missing fields), run:
story build . --format metadataIf story.md has an ai-disclosure, check each agent's or market's
policy on AI-assisted work and disclose as they require; see the
editorial-review skill.
Tell the user which file in dist/ to send, and remind them to check each
agent's or market's guidelines for format and attachment rules.
Create submission/tracker.md from references/tracker-template.md the
first time the user reports sending a submission. Add or update a row each
time the user reports a submission or a response, using only what they tell
you. On request, summarize: queries out, partial and full requests, offers,
declines, and entries with no response after the window the user sets.
For a short story, novelette, or novella going to magazines, anthologies,
or contests, follow references/short-fiction-markets.md instead of steps
2 to 6: the story goes out in full with a short cover letter. Use the
short-fiction tracker columns (submission type, rights offered) and the
publication history section from that reference, and check the tracker
before suggesting a market: a story with an open exclusive submission goes
nowhere else, and an exclusive market needs a story with no open
submissions. For a market that reads anonymously, add --anonymous to the Shunn
build, which leaves out every name, the running head's surname included.
To assemble a collection, follow its "Assemble a collection" section:
choose the stories, find the linking threads, propose an order, and draft
the acknowledgements from the publication history.
submission/query.md, submission/comps.md,
submission/synopsis-1-page.md, submission/synopsis-3-page.md,
submission/blurb.md, submission/tracker.md.type (query, comps,
synopsis, blurb, submission-tracker) and updated: YYYY-MM-DD.submission/ is outside the story model: the CLI does not validate it
and builds never include it.story wordcount ., rounded to
the nearest thousand (87,000 words). A Chinese or Japanese book gives
its length in characters, as story wordcount . reports it (12万字,
or sheets of 400字 when a Japanese contest asks for them).queried, requested-partial, requested-full,
offer, declined, no-response, withdrawn, plus submitted and
held for short fiction.Use the Story CLI when it is available. If story is not installed, use the bundled fallback node ../story-maintenance/scripts/story.js with the same arguments. Use node <checkout>/bin/story.js instead only when the user names a Story Skills repository checkout or you are working in one. Write the script as an absolute path (resolve the fallback relative to this skill folder) and run it from the folder you would run story from, so . and other relative paths keep their meaning. Use Node, not Bun or a package script: Bun would load that folder's bunfig.toml (which can run code) and .env, and a package script runs from the checkout's root. If no CLI is available, perform the readiness checks manually and write the synopsis from the arc files.
After the readiness check, or any manuscript change made for submission:
story reindex .
story wordcount . --write
story check .
story prose .references/query-letter.md - Query structure (hook, book paragraphs, metadata line, bio), length, personalization, and common mistakesreferences/blurb.md - Back-cover and retailer description formulas for genre fiction, length, and taglinesreferences/comp-titles.md - How to choose comparable titles, how to phrase them, and the verification rulereferences/word-count-norms.md - Rough word-count ranges by category for the English-language market only, to confirm with the userreferences/tracker-template.md - submission/tracker.md template and status definitionsreferences/short-fiction-markets.md - Magazine, anthology, and contest submissions (simultaneous and exclusive, rights, response times and status queries, tracker columns, publication history) and assembling a story collectionEvery story skill follows the shared conventions in ../story-maintenance/references/conventions.md, resolved relative to this skill folder. Read it before creating, renaming, or linking story files. If that file is missing because this skill was installed without story-maintenance, the essentials are: kebab-case ids and filenames, YAML frontmatter on every story-project file, _index.md registry tables that story reindex rebuilds (never edit them by hand), bidirectional links between entities, characters for who is on the page and mentions for who is only referred to, status: deceased plus died-in: chapter-{NN} for deaths, and no project-local generator or build scripts (run only the installed or bundled Story CLI).
© danjdewhurst, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files (references) in skills/submission of danjdewhurst/story-skills.
Open the folder on GitHubat commit 1df23f9
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in danjdewhurst/story-skills, which our catalogue first saw on October 7, 2026.
Submission 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 |
|---|---|---|---|---|---|---|
| Submission this skilldanjdewhurst/story-skills | 279 | 1 repos | ~4.3k | Automated safety check: Notes | MIT | |
| Story Multi-Perspective Reviewzenstory-ai/oh-story-claudecode | 7.4k | 3 repos | ~3k | Automated safety check: Pass | MIT | |
| Story Toolbox Routerzenstory-ai/oh-story-claudecode | 7.4k | 1 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Short Web Fiction Trend Scanzenstory-ai/oh-story-claudecode | 7.4k | 3 repos | ~1.2k | Automated safety check: Pass | MIT | |
| InkOS Creative HarnessNarcooo/inkos | 10k | 1 repos | ~1.1k | Automated safety check: Pass | AGPL-3.0 | |
| Novel Arteternityspring/shuohao-skills | 4.2k | — | ~1.1k | Automated safety check: Notes | Apache-2.0 |
zenstory-ai/oh-story-claudecode
Reviews Chinese web-novel text with several reviewer agents in parallel, falling back to a single-agent pass, and reports structure, character, prose and setting problems with fixes.
zenstory-ai/oh-story-claudecode
Routes a Chinese web-novel writing request to the matching tool in a 13-skill toolbox, covers author habit memory, and can launch a local dashboard for browsing a project.
zenstory-ai/oh-story-claudecode
Scans popular short web-fiction rankings on Chinese platforms such as Dianzhong and Heiyan to surface trending emotional hooks, themes and topic candidates with an expiry warning.
Narcooo/inkos
Drives long-form fiction, scripts, storyboards, interactive films and long-document translation through InkOS, with every change made by a typed action.
eternityspring/shuohao-skills
给 AI 短剧出美术设定集(场景 + 叙事道具):场景的设计意图、一致性锚点、光照时段变体、 空景提示词;道具的戏剧功能、状态变体、尺度参照、白底无手提示词。
zenstory-ai/oh-story-claudecode
Rewrites AI-sounding Chinese web novel text so it reads naturally, changing as little as possible and keeping plot, names and numbers intact.
danjdewhurst/story-skills
This skill should be used when the user asks to "make an audiobook", "narration script", "narrator", "ACX", "Findaway", "pronunciation guide", "how long is the audiobook", "adapt to a screenplay"…
danjdewhurst/story-skills
This skill should be used when the user asks to "validate", "reindex", "repair registries", "check links", "run the continuity, pacing, clue, voice, or name checks", "count words", "summarize a…
danjdewhurst/story-skills
This skill should be used when the user asks to "research", "fact-check", "check the history", "is this accurate", "research notes", "sources", "historical accuracy", "technical accuracy", "how…
danjdewhurst/story-skills
This skill should be used when the user asks to "write a chapter", "next chapter", "chapter outline", "draft chapter", "continue the story", "write a scene", "outline a chapter", or wants to write…
danjdewhurst/story-skills
This skill should be used when the user asks to "create a character", "update a character", "add a character", "build a family tree", "character relationships", "character timeline", "character…
danjdewhurst/story-skills
This skill should be used when the user asks about "pantsing", "discovery write", "write without an outline", "discovery draft", "write into the dark", "story kernel", "reconcile a chapter", "dead…
Categories
This skill should be used when the user asks to "write a query letter", "query", "querying", "pitch", "blurb", "back cover copy", "jacket copy", "comp titles", "comparable titles", "synopsis for…. Submission is an agent skill from danjdewhurst/story-skills.
Submission fits situations like: asks to write a query letter; back cover copy; comparable titles; synopsis for agents.
Run `npx skills add danjdewhurst/story-skills --skill submission -a claude-code`. Or copy the skill folder (skills/submission in danjdewhurst/story-skills) into .claude/skills/submission in your project. Claude Code loads it when a task matches its description.
Run `npx skills add danjdewhurst/story-skills --skill submission -a codex`. Or copy the skill folder (skills/submission in danjdewhurst/story-skills) into .agents/skills/submission 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 danjdewhurst/story-skills --skill submission -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/submission, .gemini/skills/submission, .github/skills/submission and .opencode/skills/submission in your project.
Going by SKILL.md and its folder, Submission needs the command-line tools its instructions call (node).
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 notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Submission is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.3k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 5.3k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Submission: Story Multi-Perspective Review (zenstory-ai/oh-story-claudecode, 7.4k stars), Story Toolbox Router (zenstory-ai/oh-story-claudecode, 7.4k stars), Short Web Fiction Trend Scan (zenstory-ai/oh-story-claudecode, 7.4k stars) and InkOS Creative Harness (Narcooo/inkos, 10k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
danjdewhurst (a GitHub user) maintains it in danjdewhurst/story-skills, which has 279 GitHub stars. The repository holds 24 skills in this directory. The repository was last updated on October 8, 2026.
Source: danjdewhurst/story-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.