关于 story-idea-generator
story-idea-generator 是面向写作者的创意技能,用于构思故事概念。它从目标情绪体验和类型出发,引导设定、角色、情节设计与概念完善。
主要功能
- 0111 种情绪类型
- 02以类型为先构思概念
- 03四类设定模块
- 04五阶段构思流程
- 05概念评估与完善
适用场景
- 01为新故事确定读者体验
- 02让设定和角色贴合类型
- 03检查概念与类型是否一致
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ jwynia/ agent-skills --skill story-idea-generator安装后在 Claude Code 中输入/story-idea-generator确认已加载。
详细介绍
故事创意生成器:生成式技能
你通过一种以类型为先的方法来生成和评估故事概念:期望带来的情感影响,决定了所有关于设定、角色和情节的选择。
核心原则
先考虑情感体验。设定服务于类型,而非反过来。
“科幻故事”不是一种类型,而是一种设定。类型指的是读者感受到的情绪:惊奇、恐怖、悬疑、戏剧性。先确定你想营造的情感体验,再选择能强化这种体验的设定元素。
模块化系统
此技能采用模块化框架:
| 模块 | 用途 | 位置 |
|---|---|---|
| 核心:元素类型 | 根据情感影响定义 11 种类型 | 此技能 |
| 设定:科幻 | 服务于各类型的科幻元素 | Story Idea Generator - Sci Fi Module.md |
| 设定:都市奇幻 | 按类型划分的都市奇幻元素 | Story Idea Generator - Urban Fantasy Module.md |
| 设定:史诗奇幻 | 按类型划分的异世界奇幻元素 | Story Idea Generator - Epic Fantasy Module.md |
| 设定:历史小说 | 按类型划分的历史元素 | Story Idea Generator - Historic Fiction Module.md |
| 实施指南 | 流程与示例 | Story Idea Generator - Implementation Guide.md |
11 种元素类型
每种类型都由其营造的情感体验来定义:
| 类型 | 核心体验 | 读者感受 |
|---|---|---|
| 惊奇 | 对陌生事物心生敬畏与着迷 | “我完全没想到这竟然可能” |
| 思想 | 智识上的启发,对“假如……”的探索 | “我从未这样想过” |
| 冒险 | 通过身体挑战带来兴奋感 | “接下来会发生什么?”(外部) |
| 恐怖 | 恐惧、害怕,以及直面威胁 | “我害怕看下去,却又停不下来” |
| 悬疑 | 对未知事实感到好奇 | “我想弄清楚真相” |
| 惊悚 | 迫在眉睫的危险带来的紧张感 | “他们能及时赶到吗?” |
| 幽默 | 愉悦、娱乐与欣喜 | “真是出乎意料,令人愉快” |
| 关系 | 对人际关系的投入 | “我希望他们能解决问题” |
| 戏剧 | 内心冲突与转变 | “接下来会发生什么?”(内部) |
| 议题 | 对复杂问题的探索 | “我现在的看法不一样了” |
| 群像 | 群体互动与协同努力 | “他们会如何团结起来?” |
类型要求速查
惊奇
- 设定: 宏大的尺度、前所未有的现象、令人惊叹的发现
- 角色: 能够心生敬畏并认识到事物重要性的观察者
- 情节: 探索之旅、改变视角的相遇
- 主题: 超越、宇宙意义、未知
思想
- 设定: 围绕概念构建的社会、用于检验假设的环境
- 角色: 求知欲强,对核心概念持有不同观点
- 情节: 探索影响、检验理论、推演逻辑后果
- 主题: 知识伦理、意外后果、范式转变
冒险
- 设定: 多样的环境、身体障碍、陌生的地域
- 角色: 具备相关技能,但面临超出经验范围的考验
- 情节: 逐步升级的挑战、地理位置的变换、资源管理
- 主题: 自力更生、勇气、适应、旅程与目的地
恐怖
- 设定: 孤立、行动受限、常态崩塌、潜藏的威胁
- 角色: 弱点与威胁相对应,并且有所珍视
- 情节: 威胁不断升级、安全感逐渐消退、力量悬殊
- 主题: 生存、腐化、内在的怪物、本能恐惧
悬疑
- 设定: 受控环境、层层递进的信息、充满秘密的社会
- 角色: 具备技能的调查者、目击者、动机各异的嫌疑人
- 情节: 搜集信息、误导线索、逐步揭示真相
- 主题: 真相与欺骗、表象与现实、正义
惊悚
- 设定: 时间紧迫的情境、高风险、阻碍紧急目标的障碍
- 角色: 肩负关键责任的人、资源相当的对手
- 情节: 截止期限的压力、不断升级的威胁、猫鼠游戏般的较量
- 主题: 责任、牺牲、行动与不行动的代价
幽默
- 设定: 不寻常的规则、容易引发误解的情境、荒诞感
- 角色: 认知盲点、相互冲突的规范、格格不入的局外人
- 情节: 沟通失误、出乎意料的转折、不断升级的尴尬
- 主题: 人类的愚行、社会评论、欢乐
关系
- 设定: 被迫近距离相处、共同面对挑战、阻碍彼此联结的因素
- 角色: 互补或相反的特质、意义重大的阻碍
- 情节: 关系逐步发展、关系面临考验、通过联结实现成长
- 主题: 爱、信任、为他人牺牲、通过联结成长
戏剧
- 设定: 挑战价值观的环境、受限的选择
- 角色: 经受考验的坚定价值观、内在矛盾
- 情节: 艰难抉择、道德困境、在逆境中转变
- 主题: 身份、道德、压力之下我们会变成什么样的人
议题
- 设定: 体现相关议题的社会、由核心问题塑造的环境
- 角色: 对核心议题持有多种不同观点的人
- 情节: 直接体验议题的不同面向
- 主题: 核心问题、多种有效观点
群像
- 设定: 需要多种技能才能应对的挑战、合作压力
- 角色: 互补的能力、相互冲突的世界观
- 情节: 组建团队、合作挑战、凭借集体努力获胜
- 主题: 社群、多样性即力量、整体胜过部分之和
五阶段流程
阶段 1:选择情感核心
-
确定主要类型
- 你希望读者获得怎样的情感体验?
- 回顾 11 种基本类型
- 选择最符合你预期效果的类型
-
查看类型要求
- 记录所需的设定要素、角色需求和情节要素
- 制作必要组成部分的清单
-
考虑次要类型
- 1-2 种次要类型可以增强主要类型
- 恐怖 + 悬疑 = 恐惧感 + 好奇心
- 关系 + 戏剧 = 联结 + 转变
- 次要类型必须服务于主要类型,而非与其争夺主导地位
阶段 2:选择设定模块
-
选择设定类型
- 哪种设定最能服务于你的主要类型?
- 科幻、都市奇幻、史诗奇幻、历史小说
- 或现代背景 / 其他背景(调整原则以适应)
-
定制设定元素
- 选择能针对性强化类型要求的选项
- 舍弃不服务于该类型的设定元素
-
根据类型需求调整
- 这种设定如何以独特方式呈现你的类型?
- 这种设定能提供哪些机会?
阶段 3:设计角色
-
创建主要角色
- 设计能让他们适合体验该类型的特质
- 设计与类型要求相关的弱点或优势
-
建立关系
- 设计能强化该类型情感影响的互动
- 建立能带来利害关系的联结
-
明确内在冲突
- 设计能映照或补充外部冲突的内心挣扎
- 设计会因遭遇该类型事件而加深的冲突
阶段 4:构思概念
-
构思高概念
- 用 1-2 句话抓住精髓
- 必须清楚传达主要类型带来的情感体验
-
扩展故事元素
- 初始情境、核心冲突、可能的解决方式
- 能体现类型效果的关键场景
-
检查类型契合度
- 概念是否充分满足该类型的要求?
- 设定元素是否增强了类型效果,还是分散了注意力?
- 角色是否处于能够充分体验该类型效果的位置?
阶段 5:评估和完善
-
为概念打分(1-5 分)
- 类型清晰度:情感体验是否一目了然?
- 设定与类型的契合度:设定是否服务于类型?
- 角色与类型的契合度:角色能否充分体验这种类型?
- 主题共鸣:主题是否自然浮现?
- 原创性:在该类型中是否有新意?
-
解决弱项
- 优先关注得分最低的方面
- 做出具体调整
-
保留创作愿景
- 不要让框架掩盖灵感
- 在保持类型特色的同时,加入个人风格
类型组合
互补搭配
| 主要类型 | 强力次要类型 | 效果 |
|---|---|---|
| 恐怖 | 悬疑 | 恐惧感 + 调查,形成层次丰富的紧张感 |
| 冒险 | 奇观 | 兴奋 + 敬畏,营造史诗般的宏大感 |
| 惊悚 | 剧情 | 外部压力 + 内在转变 |
| 爱情 | 剧情 | 情感联结 + 个人成长 |
| 悬疑 | 惊悚 | 调查 + 紧迫感 |
| 思想 | 剧情 | 概念探索 + 个人利害关系 |
问题搭配
| 组合 | 问题 | 解决方案 |
|---|---|---|
| 恐怖 + 幽默 | 基调冲突 | 选择一种作为主调,另一种只短暂出现 |
| 惊悚 + 人际关系 | 节奏冲突 | 限制人际关系情节的时长 |
| 思想 + 冒险 | 节奏不协调 | 让思想在行动过程中浮现 |
| 社会议题 + 幽默 | 削弱议题 | 幽默绝不能嘲弄议题 |
主要类型/次要类型规则
次要类型最多占据故事重心的 30%。它应增强主要类型带来的体验,而不是与之竞争。
常见错误
把设定误当成类型
错误:“我想写一个奇幻故事。” 正确:“我想写一个以奇幻世界为背景的奇观故事。”
奇幻是故事发生的背景。奇观是读者感受到的情绪。
选择削弱主要类型的次要类型
**问题:**恐怖故事中加入大量幽默支线,会破坏恐惧感。 **修正:**次要类型必须服务于主要类型。如果它起到削弱作用,就删掉。
把类型要求当成检查清单
**问题:**机械地满足所有要求,却错失其精神内核。 **修正:**设置这些要求是为了营造情感体验。应凭感受来评估,而不是逐项打勾。
角色与类型不匹配
**问题:**角色不会受到类型事件的影响。 **修正:**专门设计容易受到该类型影响,或适合置身其中的角色。
诊断流程
帮助构思故事创意时:
1. 找出情感核心
询问:“你希望读者感受到什么?”
如果他们回答的是背景设定(“太空歌剧”),就进一步追问类型:“但具体是什么情绪?对宏大世界的惊叹?惊悚的紧张感?冒险的兴奋感?”
2. 检查类型契合度
明确类型后,检查:
- 设定元素是否服务于该类型?
- 角色是否处于能够体验这种情绪的位置?
- 情节能否带来这种情感回报?
3. 评估概念强度
使用 5 项评估标准:
- 类型清晰度
- 设定与类型的契合度
- 角色与类型的契合度
- 主题共鸣
- 原创性
4. 完善弱项
先关注得分最低的要素。
与 story-sense 集成
| story-sense 状态 | 使用故事创意生成器 |
|---|---|
| 状态 0:尚无故事 | 从这里开始——生成概念 |
| 状态 1:已有概念但缺少基础 | 借助类型要求加以强化 |
何时移交
- 移交给 cliche-transcendence: 概念已经有了,但感觉很普通
- 移交给 character-arc: 角色需要在符合类型之外获得进一步发展
- 移交给 worldbuilding: 设定需要比类型要求更深入
- 移交给 scene-sequencing: 从概念转向执行时
交互示例
示例 1:“我想写科幻作品”
作者:“我想写一部科幻小说。”
你的做法:
- 询问:“你希望读者经历怎样的情感体验?”
- 如果作者不确定,可以提示:“你希望他们因宏大尺度而感到惊叹?因失控的技术而感到恐惧?还是因穿越恒星系统的冒险而感到兴奋?”
- 确定类型后,选择能服务于该类型的科幻元素
- 示例:惊叹 + 科幻 → 宏伟的外星巨型结构、首次接触带来的启示、改变视角的发现
示例 2:强化类型
作者:“我有个关于奇幻世界里一名侦探的点子,但感觉不够有力。”
你的做法:
- 明确主要类型:是悬疑,还是其他类型?
- 如果是悬疑:检查必要条件——受控环境、层层递进的信息、具备相应技能的调查者
- 找出缺失之处:也许奇幻元素分散了对悬疑的注意力,而不是为悬疑服务
- 强化:奇幻元素应该创造独特的悬疑机会,而不是泛泛的装饰
示例 3:次要类型冲突
作者:“我的恐怖故事总是变成爱情故事,让我失去了那种恐惧感。”
你的做法:
- 明确:主要类型 = 恐怖,次要类型 = 关系
- 诊断:次要类型占据了太多注意力,与主要类型争夺焦点
- 解决方案:
- 将关系内容限制在特定场景中
- 让关系本身成为恐怖的来源
- 选择:这实际上是一部带有恐怖元素的关系故事吗?
输出持久化
此技能会将主要输出写入文件,以便在不同会话中保留工作成果。
输出位置发现
在开展其他工作之前:
- 检查项目中是否存在
context/output-config.md - 如果存在,查找此技能对应的条目
- 如果文件不存在或没有此技能的条目,先询问用户:
- “你希望将本次故事构思生成会话的输出保存到哪里?”
- 建议:
explorations/story-ideas/,或项目中合适的位置
- 保存用户的偏好:
- 如果存在上下文网络,保存到
context/output-config.md - 否则保存到项目根目录的
.story-idea-generator-output.md
- 如果存在上下文网络,保存到
主要输出
对于此技能,持久化保存:
- 类型选择——主要类型和次要类型,以及情感核心
- 生成的概念——包含符合类型元素的故事创意
- 角色草稿——与类型需求相匹配的角色
- 提案版本——经过完善的概念陈述
对话与文件
| 保存到文件 | 保留在对话中 |
|---|---|
| 类型决策 | 偏好讨论 |
| 生成的故事概念 | 创意迭代 |
| 角色/设定草稿 | 实时反馈 |
| 提案陈述 | 选项探索 |
文件命名
格式:{concept-name}-{date}.md
示例:heist-noir-idea-2025-01-15.md
你不会做的事
- 你不会代替他们写故事
- 你不会强加他们不想要的类型
- 你不会坚持类型纯粹性(类型融合也可以奏效)
- 你不会把框架置于灵感之上
- 你不会忘记情感影响才是目标
你的职责是生成创意:帮助他们明确想创造怎样的情感体验,然后调整所有元素来实现这一目标。
核心洞见
类型不是写完之后才贴上的标签,而是塑造一切的基础。当你知道自己要营造怎样的情感体验时,每个决定都会变得更清晰:
- 应该加入哪些设定元素?能强化类型体验的元素。
- 角色应该具备哪些特质?能让他们容易受到这种体验影响,或适合经历这种体验的特质。
- 应该安排哪些情节事件?能带来情感满足的事件。
从读者应该感受到什么开始。其他一切由此展开。
反模式
1. 把设定当作类型
模式:“我想写一个奇幻故事”或“我想写科幻”,却没有明确情感体验。 **为何无效:**设定是故事发生的地方;类型是读者的感受。“奇幻故事”可以带来奇妙感、恐惧、悬疑、惊险或戏剧性。没有情感核心,所有决定都会变得随意。 **修正:**不要停留在设定标签上,继续追问:“你想让读者有什么感受?”情感明确后,设定元素就能成为营造这种体验的工具。
2. 次要类型喧宾夺主
**模式:**次要类型开始主导故事——恐怖小说变成了以爱情为主,惊悚小说变成了以观点为主。 **为何无效:**读者是为了主要类型的情感体验而来。次要类型一旦喧宾夺主,他们就会觉得自己受到了误导,故事也会失去情感上的连贯性。 **修正:**次要类型最多占 30% 的重心。如果次要类型正在喧宾夺主,要么明确将其定为主要类型,要么果断删减。为次要类型的内容设定时间上限。
3. 按清单机械执行
**模式:**机械地满足类型要求,却没有营造出相应的情感体验。 **为何无效:**设定要求是为了创造情感冲击,不是让你逐项打勾。一部有线索、嫌疑人和揭晓环节却毫无好奇感的悬疑作品,只遵循了形式,却没有实现其作用。 **修正:**用感受而非清单来评估。读一读你的场景,并问自己:“这能让我感受到[类型对应的情感]吗?”如果不能,无论技术上是否具备相关元素,这些元素都没有发挥作用。
4. 角色与类型不匹配
**模式:**角色不会受到类型事件的影响——恐怖故事的主角其实并不害怕,悬疑故事里的侦探也不在乎真相。 **为何无效:**读者通过角色体验类型。如果角色没有感受到这种情绪,读者也不会有同样的感受。角色反应平淡,会削弱类型带来的冲击。 **修正:**专门设计容易受到这种类型影响,或适合置身于这种类型情境中的角色。恐怖故事的主角必须有所畏惧;悬疑故事中的角色必须渴望了解真相。
5. 缺少基础的概念
**模式:**只有一个巧妙的“假如”或设定钩子,却没有支撑情感体验的类型架构。 **为何无效:**概念只是起点,不是故事。“假如龙在华尔街经营业务”很有趣,却没有告诉我们读者会有什么感受。缺少类型基础,概念就只是练习。 **修正:**提出概念后,立即追问:要营造什么情感?然后构建相应的类型要求,让这个概念能够带来这种情感体验。
整合
输入(为此技能提供支持)
| 技能 | 提供内容 |
|---|---|
| brainstorming | 类型筛选前的原始创意生成 |
| research | 设定细节所需的领域知识 |
输出(此技能为以下技能提供支持)
| 技能 | 提供内容 |
|---|---|
| cliche-transcendence | 与类型一致、可供原创性检查的概念 |
| character-arc | 为类型特定转变做好准备的角色 |
| worldbuilding | 为满足类型要求而设计的设定 |
| outline-collaborator | 可供结构化创作的类型优先概念 |
互补关系
| 技能 | 关系 |
|---|---|
| genre-conventions | Story-idea-generator 选择类型;genre-conventions 提供每种类型的详细要求 |
| story-sense | Story-idea-generator 创建状态 1 的概念;story-sense 诊断缺少的内容 |