SuperAPI AI 工具集

story-init

写作与研究

查看项目

更新于 10-15 15:38

技能介绍

用途

story-init 用于初始化一个全新的故事项目,生成结构化的 Markdown 文件夹布局。它创建故事圣经、登记表、场景追踪、连续性状态、术语表、世界观文件夹、情节结构和章节追踪器,全部为带 YAML frontmatter 的交叉引用 Markdown 文件。

适用场景:

  • 开始一个新故事、书籍或虚构项目
  • 为已有的故事想法搭建文件夹结构

不适用场景:

  • 向已有故事项目追加内容(应使用对应领域的技能)
  • 已有书籍的续集、前传或姊妹篇(应使用 series-continuity,它会链接项目并跨项目携带正典)
  • 寻找创意本身:当用户只有模糊概念、多个竞争想法或尚无前提时,先运行 premise-workshop 技能,再带着选定的前提、形式和体裁回到本技能
  • 转换已有手稿或章节草稿:应运行 story import '<source>' --title '{Title}',再根据其输出的实体候选构建故事圣经。Import 不接受 --form,之后需手动在 story.md 中设置 form 和 target-words

主要能力

  • 生成故事项目骨架:故事圣经(story.md)、登记表、场景追踪、连续性状态、术语表、世界观文件夹、情节结构、章节追踪器
  • 通过 Story CLI 的 story init 命令创建起始项目,并支持 --form、--genre、--sub-genre、--setting-era、--pov、--tense、--synopsis、--theme 等参数
  • 根据 form 设置默认 target-words(novel 80,000;novella 30,000;novelette 12,000;short story 5,000;flash 1,000;chapter book 10,000;picture book 500;serial 无书籍级默认值)
  • 生成 .gitignore(仅当项目没有时),忽略 dist/、.story.lock、临时文件和编辑器交换文件
  • 提供手动搭建参考(references/manual-setup.md),在无法运行 CLI 时按手写方式创建文件
  • 提供标题与 logline 参考(references/title-logline.md)

使用方式

工作流:

  1. 询问基本故事信息(若 premise-workshop 已产出前提、logline、体裁和形式,则复用而非重复询问):标题、形式(novel、novella、novelette、short-story、flash、serial、picture-book、chapter-book;未选择时传 --form novel)、体裁与子体裁、简要梗概(2-3 句)、设定时代/时期、关键主题(2-4 个)、POV 风格(第一人称、第三人称有限、第三人称全知)、时态(过去、现在、未来、混合)、书籍写作语言(BCP 47 标签,如 en、en-GB、fr、es-MX、pt-BR、de、ja、zh-Hans;默认 en)。

  2. 若 Story CLI 可用,优先用它创建起始项目:

story init '{Title}' --form '{form}' --genre '{genre}' --sub-genre '{sub-genre}' --setting-era '{era}' --pov '{pov-style}' --tense '{tense}' --synopsis '{synopsis}' --theme '{theme-1}' --theme '{theme-2}'

所有值均用单引号包裹。切勿使用双引号,因为 $(...)、反引号和 " 仍会生效。值内的单引号在 POSIX shell(bash、zsh、sh、Git Bash)中写作 ''',在 PowerShell 中写作 ''。切勿在 cmd.exe 中运行。

  1. 初始化后立即记录语言:story init 没有对应标志,需手动在 story.md frontmatter 中添加 language: {tag},使用用户给出的确切标签(含 en-GB、en-AU 等区域变体)。英文书籍也应写入。

  2. 中文(zh)或日文(ja)书籍按字符计数而非单词:story wordcount、story progress、登记表和形式检查均按字符计量,对照 target-characters。由于语言在 init 后添加,--form 已写入 target-words,需替换为 target-characters(中文:novel 200,000;novella 60,000;short story 10,000;flash 1,500;日文:novel 150,000;novella 80,000;short story 20,000;flash 4,000),或用户指定的数字。novelette、picture-book、chapter-book 无字符长度默认值,需询问用户。然后运行 story reindex .、story wordcount . --write、story check .。

  3. 起草工作前提:story init 不写入 premise 和 counter-premise,需手动在 story.md frontmatter 中添加或填写,作为带引号的字符串(premise: "...")。前提是一句话控制性理念——价值 + 原因;反前提是反派所体现的论点。

  4. 展示创建内容摘要并建议下一步:"Workshop the premise"、"Add your first character"、"Start worldbuilding"、"Define your plot structure"、"Set up the style sheet"、"Run story next ."。

  5. 在 CLI 可用时,从新项目文件夹内运行维护命令:story reindex .、story wordcount . --write、story check .。

若 story 未安装,使用捆绑的备用脚本 node ../story-maintenance/scripts/story.js,参数相同。仅在用户指定 Story Skills 仓库检出或正在其中工作时,才使用 node <checkout>/bin/story.js。脚本应写为绝对路径,并从运行 story 的文件夹运行。使用 Node,而非 Bun 或包脚本。

若 story 和备用脚本均无法运行(缺少 Node 或未安装 story-maintenance 技能),按 references/manual-setup.md 手动创建文件。

适用场景

  • 全新小说、中篇、短篇、闪小说、连载、绘本或章节书的项目初始化
  • 为已有故事想法搭建结构化文件夹
  • 需要故事圣经、登记表、连续性追踪等基础设施的写作项目

限制

  • 不用于向已有故事项目追加内容
  • 不用于续集、前传或姊妹篇(使用 series-continuity)
  • 不用于寻找创意本身(先使用 premise-workshop)
  • 不用于转换已有手稿或章节草稿(使用 story import)
  • init 拒绝已存在的目录,除非传 --force;--force 仅创建缺失的起始文件,绝不覆盖已有的 story.md、登记表、时间线或 continuity/state.md
  • 故事 id 为标题的 kebab-case 形式,每次运行都会从标题重新计算,标题变更后需运行 story reindex . 重写所有登记表中的 id
  • 无 ASCII 字母或数字的标题(如中文)需要 --dir 指定 ASCII 文件夹名
  • 其他出版元数据(isbn、publisher、publication-date、description、keywords、subjects、copyright、cover-alt、ai-disclosure)为可选,初始化时不询问
  • 本技能的具体收费、价格、平台支持等信息暂未提供