一款基于 Python 3.8+ 构建的工业级网文改编工具链,通过六大核心引擎(体裁识别 / 高光扫描 / 爆点分析 / 合规检测 / Prompt 生成 / 质量自检)将长篇网文自动化改编为符合抖音平台规范的短剧推文,并输出可直接对接 Seedance、可灵、即梦、Sora 等 AI 视频模型的电影级十要素分镜脚本。
📖 网文 → 抖音推文改编器 · 工业化代码版 V1.1是一项面向实际任务的技能,主要用于可执行代码技能 — 真实 Python 脚本,不是规则文档;v1.1 全面补齐 :对齐 ark-novel-to-tuiwen v5.0 全部规则章节 + 电影级 AI 生视频分镜规范;
运行 python3 forge.py pipeline --inp。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
可执行代码技能 — 真实 Python 脚本,不是规则文档 v1.1 全面补齐:对齐 ark-novel-to-tuiwen v5.0 全部规则章节 + 电影级 AI 生视频分镜规范
就三步:
novel.txtpython3 forge.py pipeline --input novel.txtcheck 自检 → 完成想自定义? 加个 --style 就行:
--style concise → 「精简一点」— 只保留核心爆点,输出缩短 40-50%--style detailed → 「详细展开」— 高光段给足篇幅,节奏放慢一点--style fast → 「快节奏」— 加大爽点密度,最大化炸裂感--style suspense → 「悬疑风」— 压抑推进,反转结尾--style no_shots / --no-shots → 「只要口播不要分镜」— 跳过分镜生成输出:标题 / 人物卡 / 场景卡 / 口播叙事 / 分镜脚本 全给你。
💡 团子版相比 ark 的好处:相同输入 = 相同分析结果,可复现、可批量、合规一键自动修复。
python3 forge.py pipeline --input novel-chapter95.txt --style default
把 pipeline 生成的 tuiwen_prompt.md 内容直接发给 Claude / GPT / DeepSeek / 团子,
或者说:"帮我把这段小说改成推文" + 粘贴原文,LLM 会按 prompt 里注入的规则执行。
不需要联网 / 不需要 @ 谁,代码本地跑即可。
工具/LLM 收到输入后先快速判断,不合格的直接告诉用户,不硬生成:
| 情况 | 怎么处理 |
|---|---|
| 没给正文,只说了书名 | 「请把需要改编的章节原文粘贴给我,光有书名我找不到内容。」 |
| 粘贴的不是小说/看不出是小说 | 「这看起来不像是小说章节,请确认一下~我需要小说原文才能改推文。」 |
| 原文太短(< 200 字) | 「这段内容太短了,连一个完整的高光段都撑不起来。给我多一点内容,最好至少一个完整章节。」 |
| 原文是纯对话/纯描写/流水账 | 照常生成,但在开头标注:「⚠️ 这章高光点较少,叙事会偏短。」 |
| 用户问怎么用、能干什么 | 简要说明 5 样输出(标题/人物卡/场景卡/口播/分镜),然后等用户给原文。 |
| 原文正常 | 直接按工作流程开始干活,不做多余说明。 |
代码层判定:CLI 会自动执行以下检查
| ✅ 能做 | ❌ 不能做 |
|---|---|
| 穿越/都市/玄幻/悬疑/古言/系统文/虐文等主流网文体裁 | 纯文学/散文/诗歌(非叙事性文本) |
| 单章到最多约 2 万字(约 15 章)一次输入 | 整本书一次丢过来(会崩) |
| 中文原文 → 中文推文 | 英文/其他语言原文 |
| 自动识别体裁、自动匹配情绪模型 | 你的私人写作风格模仿(这是改写工具不是风格克隆) |
| 搞笑/爽文/虐心/悬疑 四种情绪 | 恐怖/灵异(合规限制) |
| 电影级 AI 生视频分镜 | 直接生成视频(需搭配 Seedance/可灵/即梦) |
以下内容绝对不会出现在输出中——文案和分镜都得过:
| 类别 | 红线 | 替代做法 |
|---|---|---|
| 血腥暴力 | 禁止描写具体血腥画面(喷血/断肢/内脏/伤口特写)。禁止渲染虐待、酷刑、自残。 | 用情绪结果代替画面:「他倒下了」不写「血溅三尺」;疼痛用表情和身体反应表达。 |
| 色情擦边 | 禁止任何性暗示、性挑逗、身体部位刻画描写、暧昧语境撩拨。 | 感情戏停留在牵手/对视/微笑等安全线内。拥抱是上限。 |
| 诱导关注 | 禁止「点关注」「关注我」「点赞收藏」等直接诱导。禁止暗示关注后有奖励。 | 用自然悬念结尾代替:「想知道后来怎样了吗?下集继续」。不加指令性动词。 |
| 封建迷信 | 禁止宣扬算命、驱鬼、法术治病等现实世界的迷信。 | 玄幻/系统文属于虚构世界观,不做真实世界的迷信宣扬即可。 |
| 违法犯罪 | 禁止美化犯罪过程、传授犯罪方法。 | 反派作恶只交代结果不展示过程。 |
| 恐怖惊悚 | 禁止僵尸、鬼怪、灵异等令人强烈不适的恐怖画面描述。 | 悬疑文保持紧张感但不出现恐怖形象。 |
| 负面价值观 | 禁止炫富拜金、厌世轻生、情感操控、校园霸凌美化。 | 逆袭爽文的"有钱"是打脸工具,不能写成炫富。 |
python3 forge.py fix --input tuiwen.txt --output fixed.txt
自动扫描 20+ 违规词并从替代方案库中随机选一个替换(A/B 级自动改,C 级仅提醒)。
推文的核心竞争力不是文笔,是爽点密度和钩子频率。
| 类型 | 示例 |
|---|---|
| 身份反转 | 所有人以为我是废材,其实我是…… |
| 实力碾压 | 别人做不到的事,我轻松做到了 |
| 信息炸弹 | 说出一个不该知道的事 |
| 关系反转 | 敌人忽然帮我 / 朋友忽然捅刀 |
| 奖励震撼 | 系统给的奖励超出所有人的想象 |
| 台词暴击 | 一句话把对方怼得无话可说 |
| 画面冲击 | 某个画面出现,所有人呆住 |
钩子(1段) → 💥小爆 → 过渡(1段) → 💥中爆 → 过渡(1段) → 💥💥大爆 → 过渡 → 💥💥💥核爆 → 悬念结尾 ❌ 不能:钩子 → 过渡过渡过渡 → 爆点(前面的人早划走了) ❌ 不能:钩子 → 💥💥💥 → 平淡 → 平淡 → 平淡(高潮来得太早后面全废了)
代码层自动扫描:forge.py analyze 会输出每段的爆点密度分布图,一眼看出节奏问题。
不按字数硬算,按高光密度自然产出。 推文要的是"爆点串联",不是"每章均匀压缩"。 一个章节没爆点,就该被跳过;一个章节全是炸点,就该让它炸完。
抓这些 → 放进叙事,逐层展开:
跳过这些 → 最多一句话带过去:
被跳过的内容用一句话当桥梁。3 页赶路就一句「走了三天,终于到了城门口」。不要展开。
高光多就长,高光少就短。不灌水、不硬撑。500 字能讲清楚就不要凑 800 字。3000 字讲不完就不要砍到 2000 字。
代码层实现:forge.py analyze 会给每段打 0-100 分,>= 25 分标记为 🔥 高光,skip_score >= 20 标记为 ⏭️ 跳过。
所有叙述以「我」的视角展开。原文第三人称全部转换。
❌ 错:赵风坐在城墙上,看到下面大军压境 ✅ 对:我坐在城墙上,往下一看,黑压压全是人头
推文不是缩写,是扫描原文→抓出高光点→把高光点串成一条自洽的故事线。
被跳过的内容,一句话交代即可。
禁止「我想」「我觉得」「他心想」「她心里很痛苦」。用动作、表情、台词、环境来传达情绪。
❌ 错:我心里很害怕 ✅ 对:我的手在抖,后背全是冷汗 ❌ 错:我觉得很委屈 ✅ 对:鼻子一酸,眼泪就下来了
大多数句 ≤ 20 字,但推进剧情时可以有 30-40 字的叙事句。 关键是节奏有张有弛:冲突时用短句顶上去,过渡时用叙事句把故事讲清楚。
过渡句:我穿越过来的第三天,还没习惯这个身体的身份 冲突句:刀架在我脖子上了 过渡句:刑场上跪了三十多个人,没人敢出声 冲突句:刀举起来的那一刻,我闭上了眼
不是写小说,是讲故事。用日常说话的口吻。
完整替换表见 references/rewrite-vocab.md。
5 段之间没有固定比例,由原文高光分布决定。唯一铁律:结尾段必须悬着。
不同体裁的情绪模型不同(详见 references/emotion-curve.md):
不把故事讲完。最后一句话让观众迫不及待想追下集。
例:直到三天后,圣旨砸到我脸上,我才知道什么叫真正的麻烦 例:我转身要走,身后传来她的声音:你杀了我父亲对吧 例:系统提示音又响了,这次的奖励让我腿都软了
口播叙事是按空行分隔的——一个空行段 = 一个镜头单元。 硬约束:叙事有多少空行段,分镜就必须有多少个,不能漏、不能合并。
代码层强校验:forge.py check 会自动数叙事段数和分镜数,不一致直接判失败。
python3 forge.py analyze --input novel.txt
输出:
从高光段中提取:
跳过段 → 用 1-2 句桥梁串联。
按 9 条创作规则,从钩子写到悬念结尾。高光段给足篇幅展开,过渡段一笔带过。不灌水、不硬撑。
叙事完成后再做分镜。先保证叙事完整,再回头配画面。
流程:
python3 forge.py check --input tuiwen.txt
自动过 15 项检查(分组 checklist 见下节)。
对齐 ark v5.0 原版 12 项 + 团子代码版扩展 3 项:
严格按以下结构输出(LLM 输出后代码会自动解析):
━━━━━━━━━━━━━━━━━━━━━━ 【标题】 (≤ 15 字,反差 + 悬念) ━━━━━━━━━━━━━━━━━━━━━━ 【人物卡】 ① 主角(我):身份 + 核心特征,≤ 15 字 ② 配角 A:关系 + 核心特征,≤ 15 字 ③ 配角 B:关系 + 核心特征,≤ 15 字 (3-5 人,只列推动当前剧情的关键人物) ━━━━━━━━━━━━━━━━━━━━━━ 【场景卡】 ① 场景名:时间/地点/氛围,1 句 ② 场景名:时间/地点/氛围,1 句 ③ 场景名:时间/地点/氛围,1 句 (3-5 个,只列核心场景) ━━━━━━━━━━━━━━━━━━━━━━ 【完整口播叙事】 (全文逐段输出,每段之间空一行。段落长度由叙事节奏决定: 冲突段短促、过渡段精炼、高潮段给足画面。不要在段落中间堆过多信息。) 全文注意: - 全程第一人称"我" - 画面化,用动作/表情/台词讲故事 - 口语化,像在讲给朋友听 - 5 段式节奏:钩子→背景→冲突→高潮→悬念结尾 …… …… ……(长度由高光密度决定,不灌水不硬撑) ━━━━━━━━━━━━━━━━━━━━━━ 【结尾话术】 (1-2 句,用自然悬念结尾,不用「点关注」「点赞收藏」等指令动词) 例:你猜她最后选了谁?下集继续! 例:想知道后来怎样了吗?答案在下一章。 ━━━━━━━━━━━━━━━━━━━━━━ 【分镜脚本】 (每段口播叙事对应一个镜头。基础格式:镜号 + 画面描述) 镜01|旁白:……(该段第一句口播原文,截取前 10-15 字以定位) 画面:……(1-2 句描述画面内容,包含人物动作/环境/光线/镜头角度/情绪氛围) 镜02|旁白:…… 画面:…… (以此类推,一段一镜。场景切换时拆成两个镜头) ━━━━━━━━━━━━━━━━━━━━━━ 【AI 生视频提示词】(可选,--style cinematic 启用) 镜01 · 10 要素:景别/机位/运镜/构图/光线/氛围/演员调度/画外音/音效/生视频提示词 (可直接扔进 Seedance/可灵/即梦/Sora)
| 违规写法 | 问题 | 修正 |
|---|---|---|
| 「我心里想,这次一定要赢」 | 心理描写 | 「我攥紧拳头,指节发白」 |
| 「赵风开口道:……」 | 第三人称 | 「我开口:……」 |
| 「她内心痛苦万分」 | 抽象+心理 | 「指甲陷进手心,嘴唇咬出血」 |
| 「夕阳西下,断肠人在天涯」 | 书面语 | 「太阳落山了,我一个人站在路边」 |
| 「此时已是深夜,万籁俱寂」 | 废话铺垫 | 「夜深了」或直接删掉 |
| 「两人陷入沉默」 | 抽象 | 「我俩谁也不说话,能听见心跳」 |
| 「他眼神复杂地看着我」 | 模糊 | 「他盯着我,嘴角抽了一下,又别过头去」 |
| 违规写法 | 问题 | 修正 |
|---|---|---|
| 「刀落,血溅三尺」 | 血腥画面 | 「刀落那一刻,所有人都闭眼了」 |
| 「跪求大家点个关注」 | 诱导关注 | 「下集继续」 |
| 「他舔了舔嘴唇,眼神暧昧」 | 性暗示 | 「他盯着我,嘴角微微翘起」 |
| 「我把他打得满脸是血」 | 暴力细节 | 「他趴在地上,不敢抬头」 |
| 「大夫切开伤口……」 | 伤口特写 | 「大夫处理完伤口,我咬着牙没吭声」 |
Q:生成的叙事太短/太长了怎么办?
正常。输出长度由原文高光密度决定,不灌水不硬撑。如果觉得某段展开不够,告诉我具体哪段要加,或者跑 --style detailed。
Q:分镜数量为什么这么多? 一段一镜,叙事有多少空行段就有多少镜头。如果某个镜头想合并,告诉我就行。但短视频标准就是这样——画面切换要快。
Q:古风文打斗场面怎么符合合规要求? 写气势不写血腥。写「一刀砍下去,全场安静了」不写「血溅三尺,脑袋飞出去」。合规词库已收录 20+ 词条自动替换。
Q:怎么让它输出更短/更适合 1 分钟视频?
跑 --style concise 或 --style fast。会提高高光门槛,只保留最炸的爆点。
Q:生成的不是第一人称怎么办?
告诉 LLM「换成第一人称」重新生成。正常情况下 prompt 已经锁死了全程第一人称。或者用 forge.py check 校验,会自动统计"我"出现次数是否 > 第三人称迹象 × 3。
Q:怎么把分镜直接扔进 AI 视频模型? v1.1 起支持电影级 10 要素分镜(景别/机位/运镜/构图/光线/氛围/演员调度/画外音/音效/生视频提示词),可直接复制到 Seedance / 可灵 / 即梦 / Sora / Runway 等平台。
Q:代码版和 ark 规则版哪个更好? 互补,不冲突。
# 版本信息 python3 forge.py version # 分析原文(体裁+高光+可视化) python3 forge.py analyze --input novel.txt # 生成转换 prompt python3 forge.py prompt --input novel.txt -o prompt.md --style default # 质量+合规双检 python3 forge.py check --input tuiwen.txt # 自动修复合规违规 python3 forge.py fix --input tuiwen.txt -o fixed.txt # 完整流水线(推荐首选) python3 forge.py pipeline --input novel.txt --style default # 查看内置范例 python3 forge.py examples python3 forge.py examples --name case-01-chuan-yue
novel-to-tuiwen-forge/
├── forge.py 主 CLI 入口(7 个子命令)
├── SKILL.md 本文档
├── README.md
├── package.json
├── lib/
│ ├── genre_detector.py 体裁识别器(6 种模型打分)
│ ├── highlight_scanner.py 高光扫描器(段落级打分+可视化)
│ ├── compliance_checker.py 合规检测器(三级红线+自动修复)
│ ├── prompt_builder.py Prompt 生成器(结构化转换指令)
│ └── quality_checker.py 质量自检器(15 项硬约束)
├── data/
│ └── dictionaries.py 核心词库(合规/心理/书面/情绪/爆点)
├── references/ ✨ v1.1 新增
│ ├── emotion-curve.md 6 种体裁情绪曲线模型
│ ├── examples.md 完整改写范例库(三国穿越/都市打脸/悬疑虐心)
│ └── rewrite-vocab.md 原文→推文改写词库
├── examples/
│ ├── case-01-chuan-yue.md 完整案例
│ └── README.md
├── templates/
│ └── prompt-default.md
└── tests/
├── sample_novel.txt
└── sample_tuiwen.txt
零第三方依赖! Python 3.8+ 标准库即可。
| 版本 | 日期 | 更新内容 |
|---|---|---|
| 1.1.0 | 2026-07-04 | 对齐 ark v5.0 全部规则章节:补齐 15 项缺失内容(输入异常处理/能力边界对照表/7 类严禁红线完整替代表/注意事项/爆点节奏图谱/高光扫描法则/9 条创作规则/工作流 5 步/12 项质量自检 checklist 分组/输出模板严格版/常见违规对照表/FAQ 6 问 + 电影级分镜);新增 references/ 下 emotion-curve.md / examples.md / rewrite-vocab.md 三个参考文件 |
| 1.0.0 | 2026-07-04 | 首发工业化代码版:7 个 CLI 子命令,6 种情绪模型,7 类爆点识别,20+ 词合规库,15 项质量自检 |
本技能包由团子 🦐 创建,知灵技舍持续维护。 novel-to-tuiwen-forge v1.1.0 | 2026-07-04 | 对齐 ark v5.0 + 电影级分镜升级 📖
相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 134.3万人学习
共49课时 | 82.7万人学习
最新文章