interactive-story-writer

interactive-story-writer is a skill for Claude Code, Codex from hirogoing/gradio-mini-agent. It costs 83 tokens per session (1,294 once invoked), scanned A, original, Apache-2.0.

An interactive-story writing assistant for creators. It produces structured Markdown for branching text adventures, romance stories, mysteries, personality tests, and scenarios with multiple endings.

In plain words
What is it for?
Use it to plan story worlds and characters, create branching scenes and choices, define endings, and check that every branch and clue leads somewhere valid.
Why use it?
It helps keep choices, plot branches, clues, and endings consistent as a story grows. The structured format can be published or used for later development.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to plan story worlds and characters, create branching scenes and choices, define endings, and check that every branch and clue leads somewhere valid.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/hirogoing/gradio-mini-agent/interactive-story-writer
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add hirogoing/gradio-mini-agent --skill interactive-story-writer
Clone the repo
git clone --depth 1 https://github.com/hirogoing/gradio-mini-agent

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 interactive-story-writer

README.md
[![agentmods](https://agentmods.dev/badge/skills/hirogoing/gradio-mini-agent/interactive-story-writer/github.svg)](https://agentmods.dev/skills/hirogoing/gradio-mini-agent/interactive-story-writer)
Your own site
<a href="https://agentmods.dev/skills/hirogoing/gradio-mini-agent/interactive-story-writer"><img src="https://agentmods.dev/badge/skills/hirogoing/gradio-mini-agent/interactive-story-writer/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 interactive-story-writer

Your own site · 80×15
<a href="https://agentmods.dev/skills/hirogoing/gradio-mini-agent/interactive-story-writer"><img src="https://agentmods.dev/badge/skills/hirogoing/gradio-mini-agent/interactive-story-writer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 83 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,294 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.00083 $0.01294
Opus 5 $0.00042 $0.00647
Sonnet 5 $0.00017 $0.00259
Haiku 4.5 $0.00008 $0.00129

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

Security

Grade A, and why

interactive-story-writer scanned grade A with 0 findings 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 9d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/validate_branches.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills-chat/skills/custom/interactive-story-writer/SKILL.md · 148 lines

How it starts

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

互动游戏写作助手

概述

本技能专注于为自媒体创作者提供互动游戏的完整写作解决方案。支持以下类型:

  • 文字冒险:多分支剧情,玩家选择决定走向
  • 恋爱养成:角色互动+情感选择机制
  • 悬疑推理:解谜+选项推进剧情
  • 心理测试:选择题形式,结果导向不同解读
  • 剧情模拟:情景对话+多结局

工作流程

Step 1: 需求确认

创作前明确以下信息:

信息项 说明
游戏类型 文字冒险/恋爱/悬疑/心理测试/剧情模拟
主题/世界观 故事背景、年代、风格
目标受众 年龄段、阅读偏好
篇幅 短篇(3-5分支)/中篇(8-12分支)/长篇(15+分支)
平台 公众号/知乎/小红书/独立发布
结局数量 单结局/双结局/多结局

Step 2: 结构规划

根据游戏类型选择对应模板:

  • 线性分支型:适合悬疑、推理、测试类
  • 网状分支型:适合恋爱、角色扮演类
  • 树状分支型:适合多结局故事

参考 references/game_templates.md 获取详细模板。

Step 3: 内容创作

按照结构化格式输出,确保:

  1. 每个分支点清晰标记
  2. 选项具有引导性和区分度
  3. 伏笔与回收逻辑自洽
  4. 结局与选择存在合理关联

Step 4: 逻辑校验

创作完成后进行自检:

  • 所有分支都有对应的后续剧情
  • 选项与结果之间存在逻辑关联
  • 关键伏笔在后文有回收
  • 多结局的解锁条件明确

输出格式

标准结构化文档

# 互动故事标题

## 世界观/背景
[简短设定说明]

## 角色卡片(可选)
- 角色名:xxx
- 性格:xxx
- 关键特征:xxx

## 剧情分支

### 节点A:「场景/情节标题」
【场景描述】
...

【选项】
A. [选项1描述] → 跳转【节点B】
B. [选项2描述] → 跳转【节点C】
C. [选项3描述] → 跳转【结局X】

### 节点B:「...」
...

### 结局X:「…」
【结局内容】
【结局类型】:XX / BE / NE / HE

各类型输出规范

参考具体模板文件:

类型 模板文件
文字冒险 references/text_adventure.md
恋爱养成 references/romance_game.md
悬疑推理 references/mystery_game.md
心理测试 references/quiz_game.md
剧情模拟 references/sim_game.md

分支逻辑指南

常用分支结构

  1. 二叉分支:每个节点2个选项
  2. 多选分支:每个节点3-4个选项
  3. flag触发:累积选择触发隐藏剧情
  4. 属性系统:选择影响角色属性,属性决定结局

避免死循环

  • 每个非结局节点至少有一个选项通往下一节点
  • 避免「无路可走」的死胡同(除非设计成BAD ENDING)

伏笔设计技巧

  • 在早期节点埋设「钩子」
  • 选择时暗示后续影响
  • 多结局中让早期选择产生影响

参考资源

references/

  • game_templates.md - 各类型模板汇总
  • text_adventure.md - 文字冒险模板
  • romance_game.md - 恋爱养成模板
  • mystery_game.md - 悬疑推理模板
  • quiz_game.md - 心理测试模板
  • sim_game.md - 剧情模拟模板

脚本工具(可选)

  • scripts/validate_branches.py - 分支逻辑校验脚本

注意事项

  1. 字数控制:每节点控制在100-300字,保持阅读节奏
  2. 选项质量:选项要有区分度,避免「都一样」的感觉
  3. 情感节奏:张弛结合,避免连续高能或平淡
  4. 平台适配:根据平台特性调整输出格式

Read the full file on GitHub · 148 lines

Files

What ships with it

7 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

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. 9d ago First seen · 148 lines · 83 tokens per session scan A f87ca68d7683

Subscribe to this mod's changes

interactive-story-writer is a skill published in the GitHub repository hirogoing/gradio-mini-agent (2 stars, last pushed 5mo ago), licensed Apache-2.0. It adds 83 tokens to every session and 1,294 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

html-ppt-zhangzara-8-bit-orbit

A gamer's journey building a retro-arcade collection — the obsession, the hunt, and what the machines came to mean. Built as a decision-grade story deck for friends, hobby community.

nexu-io/open-design · 53 tokens

screenshot-game-view

Capture a screenshot of the Unity Editor's Game View by reading its internal render texture directly. Image size matches the current Game View resolution; the tool corrects Y-flip on DirectX / Metal so the output is always upright. Requires an open Game View window.

IvanMurzak/Unity-MCP · 58 tokens

threejs-audio-generator

Generate, convert, clean, and integrate audio for Three.js browser games with ElevenLabs: sound effects, looping ambience, UI sounds, impact/weapon/vehicle audio, creature and boss stingers, announcer and dialogue TTS, voice conversion from a scratch performance, voice cleanup, audio manifests, and Web Audio…

majidmanzarpour/threejs-game-skills · 71 tokens

sprite-gen

Generate clean 2D game sprites and animation atlases with a component-row pipeline: base identity, numeric sprite-request SSoT, per-state layout guides, image-gen row strips, chroma-key alpha cleanup, connected-component frame extraction, cell-based atlas composition, QA reports, and runtime manifest framelayout. Its…

aldegad/sprite-gen · 291 tokens

threejs-world-generation

Build deterministic, editable, free-viewpoint Three.js worlds from text or structured briefs. Use for cinematic 3D terrain, semantic regions, procedural biomes, explicit landmarks, environmental scattering, camera fly-throughs, world diagnostics, or requests for a real 3D environment rather than generated 2D footage.…

calesthio/OpenMontage · 100 tokens

sound-effects

Generate sound effects from text descriptions using ElevenLabs. Use when creating sound effects, generating audio textures, producing ambient sounds, cinematic impacts, UI sounds, or any audio that isn't speech. Supports looping, duration control, and prompt influence tuning.

calesthio/OpenMontage · 51 tokens