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.
npx skills add hirogoing/gradio-mini-agent --skill interactive-story-writergit clone --depth 1 https://github.com/hirogoing/gradio-mini-agentWrote 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.
[](https://agentmods.dev/skills/hirogoing/gradio-mini-agent/interactive-story-writer)<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.
<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>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.
| Model | Per session | Once 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 |
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.
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.
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: 内容创作
按照结构化格式输出,确保:
- 每个分支点清晰标记
- 选项具有引导性和区分度
- 伏笔与回收逻辑自洽
- 结局与选择存在合理关联
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 |
分支逻辑指南
常用分支结构
- 二叉分支:每个节点2个选项
- 多选分支:每个节点3-4个选项
- flag触发:累积选择触发隐藏剧情
- 属性系统:选择影响角色属性,属性决定结局
避免死循环
- 每个非结局节点至少有一个选项通往下一节点
- 避免「无路可走」的死胡同(除非设计成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- 分支逻辑校验脚本
注意事项
- 字数控制:每节点控制在100-300字,保持阅读节奏
- 选项质量:选项要有区分度,避免「都一样」的感觉
- 情感节奏:张弛结合,避免连续高能或平淡
- 平台适配:根据平台特性调整输出格式
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.
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.
- 9d ago First seen · 148 lines · 83 tokens per session scan A f87ca68d7683
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.
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.
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.
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…
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…
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.…
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.