
我用 WorkBuddy 写一部北宋背景的长篇小说,正文四十万字量级,卷三写到第三十四章。前十二章很顺,写到第二十章开始出问题——不是写得差,是写得不像同一个人写的:
这些不是 AI 笨,是对话里的记忆靠不住。上下文一换窗口、一压缩,那些约定就蒸发了。
我的解法很笨,但有用:把记忆从对话里拿出来,做成硬盘上的文件。 让 AI 每次开工先读文件,而不是靠它"记得"。
我的工作目录里,正文只占一小半,大头是这四样:
档案 | 作用 | 体量 |
|---|---|---|
故事圣经 | 不可违背的硬规矩(时间线、地理、人物关系、写作律条) | 单文件数万字 |
分章细纲 | 每一章写什么、埋什么、兑什么,以及当前状态 | 每章一个文件 |
人物速查卡 | 每个出场人物的定位、边界、他"知道多少" | 全卷一份 |
裁定补录 | 每一次讨论拍板的结论,按日期编号留档 | 一事一份 |
[ 配图位 ] 图1:我的档案目录——正文只占一小半,大头是这一屏 .md 档案 图1_档案目录.png
关键点在于:正文是可以改的,档案是不可以随便改的。 改档案要留痕,改正文要备份。
每个细纲文件第一行是状态:✅ 已裁 / ⭕ 待裁 / ⏳ 待定。
判一件事做没做完,只看这一行,不许 grep 正文里的"待裁"两个字。
我在这上面栽过两次:大纲正文里写得清清楚楚"⭕ 待裁",可那一条其实早在细纲里已经拍板并落进成稿了,只有大纲没同步。我抄了大纲的标记,白问一遍,还差点把已经定好的东西推翻重来。
教训:标记会过期,状态行不会。 状态行是唯一权威。
我的正文目录长这样:
第三十四章 勘辨【初稿0918】.docx
第三十四章 勘辨【初稿0918】_备份0920五次修订前.docx
第三十四章 勘辨【初稿0918】_备份0920六次修订前.docx
第三十四章 勘辨【初稿0918】_备份0920七次修订前.docx
[ 配图位 ] 图2:一章正文的八个备份——文件名直接写明"第几次修订之前" 图2_备份列表.png
一天改八次,就有八个备份。命名规则="备份+日期+这次改的是什么之前"。 哪一次改坏了,一秒回得去,不必跟 AI 来回拉扯(来回拉扯是最费积分的)。
这是纯技术的一条,但省了我大量时间。
早期我用 python-docx 做批量替换,改完格式全乱——字体、样式、段落间距会丢。后来改用直接操作 docx 的压缩包结构:
import zipfile, shutil, re
shutil.copy(src, bak) # 先备份
z = zipfile.ZipFile(src)
xml = z.read('word/document.xml').decode('utf-8')
xml = xml.replace('旧措辞', '新措辞') # 文本层面替换
# 把修改后的 document.xml 写回,其余条目原样复制
[ 配图位 ] 图3:批量改稿的脚本目录——每一次改动都留一个带编号的脚本 图3_脚本目录.png
原理:.docx 本质是个 zip,正文在 word/document.xml。只换这一个文件、其余原样打包,格式一字节不动。 一次跑几十处替换,秒级完成。
配套建议:每次批量替换都写成一个带编号的脚本(
batch13_xxx.py),脚本本身就是改动记录。
光有档案不够,还得有律条。我把写作纪律单独成文,比如:
这些律条我分成两层存放:
分层判据只有一句话:把这条律里的全部专有名词抹掉,它还成立吗? 成立就是 G,不成立就是 T。
这样做的好处是:写完这本书,G 层可以整套搬到下一部去;而且 AI 不容易把题材的特殊规矩当成通用规矩乱用。
实话:我这部小说目前在晋江的总点击是 249,收藏 9。冷启动阶段,数据不好看。
但我现在可以稳定地做到:隔一周再开工,AI 接上就能写,人物不走形,前后不打架。 这在四十万字的体量上,是以前不敢想的。
顺带一提,我真正依赖的其实是"人"的部分——拍板的是我,AI 负责不让我自己前后矛盾。 每一章能不能过,标准不是"写得好不好",是"有没有犯律"。
最后一条最实在:AI 不会替你想清楚你要写什么,但它能保证你想清楚的东西不丢。
*(本文为 WorkBuddy 真实使用记录,工作流与脚本均在实际项目中运行。)*
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。