用途:storm-generate 用于端到端运行 STORM 文章生成流水线,适合用户要求“生成一篇 storm 文章”或“写一篇关于 X 的维基百科风格文章”时使用。它会按顺序执行四个阶段:research、outline、write、polish;若某阶段的产物已存在则跳过(除非使用 --force)。
关键前提:执行任何操作前,必须先通过 Skill 工具加载 storm-engine 技能,由它定义产物布局、阶段门控契约、引用规范与检索回退机制,不可自行发挥。
参数:<topic>(必填)文章主题;--max-perspective N(默认3)发现的角色数量;--max-turns N(默认3)每个角色的最大问答轮次;--output-dir PATH 显式输出位置,与 --save 互斥;--save 持久化到 docs/storm/<slug>/ 而非临时目录;--docs DIR 在本地文档基础上做依据(配合 --docs-only 则替代网络);--force 即使产物已存在也重跑所有阶段;--retriever mcp|web|local 覆盖检索来源(默认 mcp 并带回退)。
流程:解析参数,无主题时用 AskUserQuestion 询问;按引擎契约推导 slug 与输出目录并创建;写入 run-config.json 保存参数快照,用 date -u +%Y-%m-%dT%H:%M:%SZ 记录 started_at(唯一生成时间戳处);按 research、outline、write、polish 顺序逐阶段检查完成产物,已完成且非 --force 则标记 skipped 并记录跳过,否则调用对应 /storm:<phase> 技能并在返回后验证产物、标记 completed 或 failed;全部完成后读取 article-polished.md 并汇总主题、字数、引用来源数、章节数与最终文章绝对路径;若使用临时目录需突出显示其绝对路径。
并发与失败:research 与 write 阶段内部使用 Task 子代理,但本编排技能严格串行执行阶段,绝不跨阶段并行;某阶段失败则停止并报告,不进入下一阶段,更新 run-config.json 记录失败原因,不带 --force 重新调用可从失败阶段恢复。
限制:资料未提供具体平台支持、收费方式、效果保证与更多环境要求。