个人长文写作系统 · CLAUDE CODE · MVP

让 AI 写出,
我宁愿发的那一版。

一个产品经理给自己(只有自己)做的中文长文写作工具。难的不是让 AI 写,是把 AI 味压下去、把判断保住。 下面让 pipeline 跑一遍——同一段题材,看 writer 和 critic 怎么逐轮把一篇看着挺像样的 AI 初稿,逼成我会发的版本。

巴耶杜帕尔的这场选举,与其说是一次理性的抉择,不如说是一场关于符号的角逐。在信息过载的时代,选民很难真正穿透候选人精心构建的形象,去触及其治理能力的实质——他们最终选择的,往往是那个更能承载自己焦虑与期待的叙事当然,我们或许不应简单地苛责选民的非理性因为在制度性信任普遍流失的背景下,这种选择自有其逻辑。更值得深思的是,当一个民主体制亲手把权力交给一个可能侵蚀它的人,它暴露的,正是民主自身那个古老而深刻的悖论这或许是一个没有标准答案的问题,但它值得每一个关心这片土地的人,持续追问下去

没几个选民拿得到这些底。验不了实质,就只能挑行头。最挺的那身西装赢。那件从没穿过的军装赢。

⋯⋯

看看他的偶像们:藤森一九九二年直接解散了秘鲁国会;布克莱带着兵走进萨尔瓦多立法会,坐上议长的椅子,低头祈祷,说这是上帝的意思;米莱举着电锯竞选,那电锯是用来锯国家的。这些招式土得掉渣,可你不得不承认,它们好使。

⋯⋯

他会不会去搬,我不画问号。这套东西扛不扛得住,我才画问号

① 同主题演示构造的 AI 初稿 · ②③ 真实草稿 v4→v5(《巴耶杜帕尔的回响》§8)
往下看怎么做的 ↓
为什么做

目标不是模仿我,是写出比我更好、我会真心欣赏的那一版。

我写不顺。成篇的原创长文产能一直低,稳定出稿的只有拉美旅行写作这一条线。找 AI 搭手,新麻烦又来了—— 它写出来的东西 AI 味太重:导览腔、升华结尾、套路连接词、用力过猛的金句。

这些稿子要上我的公众号,要让真朋友愿意读完。AI 味,或者编造一个我没亲见的事实,会直接把可信度和我自己的声音一起毁掉。 所以这个工具的北极星很简单:同一个题材,它的版本能不能让我宁愿发它,而不是我自己写的那篇。不是骗过某个 AI 检测器。

01

砸掉自己设计的系统

THE DEMOLITION
用 PM 的严谨,先把自己判一遍

第一版我做大了。三层架构、8 个 skill 加 5 个 sub-agent、还有 hook 和向量库——审计里按「13 组件」算这笔账。 做完我换了个身份:让 AI 扮一个严苛的 AI PM 面试官,只评产品判断、不评写作,把设计、流程、计划、三轮 critic、终稿全审一遍。

v0 · 13 组件
主编排 orchestratorintake 读输入genre-router 判体裁thesis-gatesplitter 分流expand 反问补料polish 终修synthesizer 汇判writer 生成critic-literarycritic-essaycritic-techstyle-auditor
13 3
MVP · 3 组件
writer skill
intake + thesis gate + 写作 三合一
critic subagent
单 persona · 独立 context · 3 hard floor + 金句扫描
voice memo
我手写的 markdown,替掉 5 维 voice DNA JSON

写作品味 A,产品架构判断 C——用 multi-agent 复杂度,掩盖一篇文章都没做出版本的事实。

— 我让 AI 给自己出的审计报告 · severity 4/5 · 25k 字符

最戳人的一条:critic 抓到的 4 个问题(招牌句式频次、概念边界、对比方向、反例深度),和我自己抓的 5 个 (编造事实、自夸、AI 味、导览句、概念失败),两张单子几乎不重叠。审计一句话戳穿了原因—— LLM 模仿者天然抓不到 AI 味,因为它自己就是 AI 味的来源。

我没 git reset,也没 force push。v0 留在仓库里,顶上加一个 ARCHIVED 框,当反面教材。 13 个组件里只活下来一个设计:Thesis Gate——说什么还没定就开始风格化,是本末倒置。

02

用例子,不用 schema

EXAMPLES ≫ RULES
为什么砍掉 5 维 voice DNA

v0 我想把风格写成一份 5 维 JSON schema——词汇、句法、修辞、人格、格式,逐项填满。补到后面才看清这是打地鼠: 堵一个洞,漏出三个。风格的核心是没法拆成字段的判断,schema 永远补不完。

MVP 换了个法子:一份我手写的 markdown 备忘录,加 5 篇我真写过的拉美行记当 few-shot,每次随机抽 2 篇喂给 writer。 LLM 是模式学习者,不是符号推理器——给它看我怎么写,比给它一串规则管用,实测大概差三四倍。

不要止步于模仿我,也不要极尽贴近这份备忘录。在我的判断与品味之上,写出比我自己更好、我会真心欣赏的版本。

— 我手写的 voice memo,给 AI 协作的那一节

这份备忘录不是一面静态的镜子,是个正在校准的品味目标。每写一篇我手动加一两条,不靠 AI 自动 diff 学习—— 一篇满意的成品都还没有,飞轮没有可转的东西。

03

AI 味到底是什么

WHAT AI SLOP IS
本质、竞品、和我为什么不那么治

动手前我做了一轮调研(三个并行 agent,覆盖中英文的机制、检测、实践、和怀疑视角)。本质是: AI 味不是词汇问题,是概率问题。LLM 每一步都在挑「最可能的下一个词」,写出来的,是把所有人写过的东西取了个平均—— 最稳、最周全、最不得罪人的那一版。检测器(GPTZero、Originality、Turnitin)把这件事量化成两个数:perplexity(文本多可预测,AI 太好猜)、 burstiness(句子节奏多起伏,人忽长忽短、机器齐平)。RLHF 再加一层:打分的人偏爱「清楚、周到、显得到位」, 于是模型学会用导览腔、排比、破折号、四平八稳的对仗,把「安全」演成「深刻」。

所以那些 tell——delve、破折号、「与其说不如说」、「没有标准答案」——不是七个毛病,是一个病根的七种表症: 模型在求稳、在讨好,不在下判断。上面 stage-1 那段「体面的空洞」最难治,正因为它没有病句,只是不敢判断。

检测器对抗派 ✗ 不做
Undetectable AI · QuillBot · StealthWriter

改写文本,去骗过 GPTZero / Originality 的 AI 评分。

跟检测器的军备竞赛——它们 v3/v4 一直在追;何况北极星错了:骗过机器 ≠ 我宁愿发。

禁用词清单派 ✗ 不做
GPT-ism 黑名单:delve / 在…的背景下 / 破折号

把可疑词逐个拉黑、全局替换。

纯词汇层是打地鼠:删一个词,换一种 tell,清单永远补不完(v0 voice DNA 同款陷阱)。

例子 + 品味派 ✓ 我在这派
few-shot · brand voice · Sudowrite

喂模型几篇你真写过的东西,让它学你怎么写。

我在这派——但加了别人没有的两样:一个会扫「体面的空洞」那层残留的 critic,和一条「我宁愿发它」的验收线(不是检测分)。

有意思的是,我和检测器只在诊断上一致、在裁判上分道:它说低 burstiness = AI,对—— 所以我的 writer 把「长短句交替」当硬约束;但它拿检测分当判决,我拿「Rick 会不会贴到公众号」当判决。 治 AI 味的北极星:不是骗过机器,是写出我自己愿意签名的那一版。

04

把 AI 味做成可扫描的清单

THE SCAN
落到第三派,再加一层 critic

我的解法落在第三派,但拆成两层、各加一道扫描。第一层是通用的中文 AI 腔,critic 逐类扫、命中即标原句:

导览腔 signposting
接下来 / 下面我把 / 值得一提的是
强行升华结尾
站在历史的… / 这标志着… / 未来可期
总分总骨架
首先 · 其次 · 最后 的作文结构
套路连接词
不仅…而且 / 在…的背景下 / 与此同时
排比 / 破折号堆砌
四字成语强行收尾
大词 / 抽象名词
赋能 / 生态 / 抓手 / 意义重大
hedging 护栏
也许 / 可能 / 某种程度上 / 我觉得

但更对症的是第二层。我真正的毛病不是通用套话,是金句口癖——为了对仗,去找个判断填进去。 所以 critic 逐句扫所有对仗,分三档:

A

判断从场景挤出来,对仗是顺带的结果。留。

B

可疑,像在「做 Rick」,修辞自觉偏高。标出。

C

为风格而风格,贴到哪篇都行的普适格言。砍。

再加一条配额:一篇只够 1–2 记真甩尾,押给 A 类,C 类狠删。还有一条反直觉的——正向约束比负向有效: 「用确定的陈述」比「别 hedging」管用得多。

05

一篇真稿,v4 到 v5 只做减法

WORKED EXAMPLE
哥伦比亚大选《巴耶杜帕尔的回响》

这套东西第一次用在真稿上。升级后的 critic 扫 draft-v4,诊断挺意外:三个 hard floor 全干净——没编造、没自夸、没通用 AI 味, 结尾落在「军装」这个物象上,节奏也健康。真症状是另一个,太像我自己。于是 v5 一个字没加,只做减法,四处:

§8 C 砍电锯补刀

米莱举着电锯竞选,那电锯是用来锯国家的。

v5米莱举着电锯竞选。

藤森 / 布克莱 / 米莱三例都是具体事实,留;删掉的是为俏皮去补的那记甩尾。

§5 B 收冗余对仗

一个被对方从头到脚骂过一轮的人,把这口气咽下去,去给骂她的人抬轿。

v5(整句删除)

瓦伦西亚倒戈的事实前一句已说清,这记是为反讽上的一道修辞。

§10 B thesis 去重

问了一个好问题——也许是这整个国家里最该问的那个。

v5问了一个好问题。

「最该问的那个」是自抬的小 flourish;§7「投了错的答案」已是承重落点。

§10 A 结尾按我的决定保留

我没有答案。硬凑一个,是又一种偷懒。

v5原样保留。

诚实的不收口,不是提前认怂。这记 critic 没动,我也不动。

判断都立住了;砍掉电锯补刀,同一道缝别在三段各甩一记漂亮话。

— critic-v4 给我的一句话
06

我推翻了自己写进计划的推荐

THE RETRACTION
跨模型 A/B 实测

调研里有一条很硬的结论:LLM 给自己的输出挑风格毛病,有约 64.5% 的盲区—— 它自己就是 AI 味的源头,自评约等于演戏。破法是换一个模型来批评。我在计划里白纸黑字写下: 跨模型是最高杠杆,critic 改用 DeepSeek,证据最强、还省钱。

然后我没直接信自己。在同一篇 draft-v4 上跑了一组 A/B:Opus 一版 critic,DeepSeek-v4-pro 一版 critic。 DeepSeek 确实加了新角度,但它在中文文学校准上误判——把承重句判成该砍: 「最挺的西装赢/没穿过的军装赢」「我不画问号/我才画问号」,正是全篇最该留的两记。

所以 critic 定回 Opus,DeepSeek 降成偶尔的第二意见。我撤回了自己在计划里写下的那条推荐。 跨模型破自盲的理论收益,被它在中文文学批评上误砍承重句的实测代价抵消了。证据打败了直觉——包括我自己的直觉。

07

一条把自己否掉两次的时间线

TIMELINE
17 commits · 5/21 → 6/06
  1. v0 05-21

    我先把它做大了

    「个人长文写作系统」v0:Claude Code plugin,三层架构,按三体裁差异化,Critic Council 同 persona 跑三遍,外加学习飞轮、MCP 向量库。审计后来按「13 组件」算这笔账。

  2. 压测 05-22 ~ 23

    跑通全链路,也跑出第一个警讯

    用最严苛的档,写一篇训练集没直接覆盖的题材,验过拟合。链路跑通了。

    战争故事 ↘

    writer 自报招牌句式用了 6 次,critic 一数实际 10 次。作者自审不可靠——频次这种东西得让 critic 来数、加硬约束,不能信生成器自己报的数。

  3. 砸 v0 05-23

    换个身份,把自己的设计判了 C

    让 AI 扮一个严苛的 AI PM 面试官,只评产品判断、不评写作,审 spec / 流程 / 计划 / 三轮 critic / 终稿。判 severity 4/5,13 组件砍到 3,只留 Thesis Gate。

    战争故事 ↘

    审计还翻出两件事:writer 曾给一篇稿编造 5 处私人家族细节;给 critic 成句的替换模板,会让 writer 机械套句式绕过 voice。从此 critic 只给改写方向,不给可以照抄的句子。

  4. MVP 06-03 ~ 04

    重启,严格照计划落地不加料

    单 writer skill + 单 critic subagent + 我手写的 voice memo + 5 篇真行记 few-shot(每次随机抽 2 篇)。计划里写了一条守则:不要因为「想做点新东西」就加组件。

  5. 真稿 06-04 ~ 06

    第一篇真文章,暴露真症状

    哥伦比亚大选《巴耶杜帕尔的回响》v1 跑到 v5。三个 hard floor 全干净,真毛病是另一个——太像我自己。

    战争故事 ↘

    critic-v3 给了一句我后来一直记着的话:这不是 voice,这是 voice 的肌肉记忆。招牌对仗用顺了手,就成了口癖。

  6. 降AI味 06-06

    把 AI 味做成可逐句扫描的东西

    critic 升级:抽象的「AI 味」拆成可扫描的中文 tell 清单 + 金句 earned-vs-cosplay 逐句分档 + 配额。writer 端同步加 burstiness、挖深单例、物象收尾。

  7. 定案 06-06

    跑一组 A/B,把自己的推荐推翻

    我在计划里写过「critic 改用 DeepSeek 是最高杠杆」。在 draft-v4 上跑 Opus vs DeepSeek-v4-pro 两版 critic 一比——DeepSeek 误砍承重句。critic 定回 Opus,我撤回自己写下的那条推荐。

08

怎么算它成了

THE BAR
克制,加一个真判据

我给它定了一个唯一判据——不是 voice_score,不是 severity,不是「pipeline 跑通」这些好算的代理指标。 是 critic 的反馈,和人评(我自评 + 一个真朋友评)的重合度

50%
critic / 人评 重合度 ≥
3/5
我愿意贴公众号 ≥
4/5
真朋友想读完 ≥

达标,才考虑加组件;不达标,回去重做 critic,或者干脆停。下面这些我都刻意没做—— 每一个都能讲通,但对一个只有我自己用的工具(N=1),它们是工程上的过度反应:

学习飞轮(自动 diff 回流)MCP 向量金句库四人 critic councilmd2wechat 渲染超长禁用词清单8 阶段 state machine
09

现在的状态

STATUS
验证窗口里
MVP 三组件已落地 第一篇 v1→v5 跑通 5 篇 + 三个月验证窗口中 未进 v2

这个项目最值钱的不是代码。是一条把自己否掉两次的记录——一次砸掉自己设计的系统,一次推翻自己写下的推荐。 对一个 AI 产品经理,这两下比多做几个组件更说明问题。

仓库 writing_pipeline 含未发表的个人写作,和这份对自己的审计,暂不公开。