mcpField
W
writing-beats

writing-beats

github.com/mattpocock创意与媒体305.7k495.7k 次安装1 天前更新
代码仓库

关于 writing-beats

writing-beats 是一个用于文章写作的 skill,将原始素材转化为分步推进的叙事。它以“节拍”(beat)为单位逐步写入文章文件,并跟踪读者已掌握的概念,确保每一步都建立在已铺垫的内容之上。

主要功能

  1. 01逐节拍推进,每次只写入一个节拍
  2. 02跟踪已建立的概念,管理前置知识
  3. 03从原始素材中提取内容,允许改写与重组
  4. 04每步后从磁盘重新读取文章,保留用户编辑

适用场景

  1. 01将一份原始素材整理成结构清晰的长文
  2. 02以选择式路径探索同一素材的不同叙事切入点

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/mattpocock/skills --skill writing-beats

安装后在 Claude Code 中输入/writing-beats确认已加载。

附带文件agents/openai.yaml

详细介绍

用户已经传入(或即将传入)一份原始素材的 Markdown 文件。这里采用的是 利用(exploit) 模式:探索已经完成,素材池已经确定。请选定一条路径,从素材池中挖掘内容来填充每个节拍。

如果用户没有说明文章保存位置,请询问一次并记住该路径。

然后按节拍逐步推进,采用选择你自己的冒险(choose-your-own-adventure)的方式:

  1. 确定前置条件。 在任何节拍开始之前,先与用户确认读者一开始已经掌握的内容,即从一开始就已落地的概念。其他概念都必须先由某个节拍落地,后续节拍才能使用。参见落地。
  2. 从原始素材中撰写 2–3 个候选起始节拍。每个节拍都是进入文章的不同切入点。每个节拍只能依赖已落地的概念,并注明它会落地哪些新概念。在写入文章文件之前,先向用户展示这些节拍。由用户选择其中一个。预览所选节拍会解锁哪些后续节拍,让用户看到路径前方的大致走向。
  3. 用户选定起始节拍后,只将该节拍写入文章文件。一个节拍可以是一句话,也可以是数段,视其自然长度而定。写完即停止。
  4. 从磁盘重新读取文章文件。然后提供 2–3 个候选后续节拍:基于文章当前状态,故事可以转向的不同方向。每个节拍都必须能从当前已落地的概念集合中到达,并注明它会落地哪些概念。
  5. 重复步骤 3–5,直到文章自然结束。

落地

每个概念都必须先落地,节拍才能依赖它:读者要么一开始就已了解,要么在更早的节拍中接触过。概念是落地的基本单位,而不是词语。即使文中没有出现术语,节拍也可能依赖读者尚未掌握的想法。若某个概念有名称(即术语),则落地时需要同时讲清楚这个想法和这个术语。

概念通过以下两种方式落地:

  • 前置条件:在第一个节拍之前即已落地。读者自带这部分知识,在开始时确定。
  • 引入:由某个节拍建立。此后,该概念对所有后续节拍而言都已落地。

因此,每个节拍承担两项工作:它需要已经落地的概念,并落地新的概念。需要维护一份已落地概念的清单,每个节拍落地后及时更新。

这决定了选择你自己的冒险的走向。只有当候选节拍所需的概念全部已落地时,它才可达。选择一个会落地概念 X 的节拍,就会解锁所有原本在等待 X 的节拍。提供后续节拍时,它们都必须能从当前已落地的概念集合中到达,并说明各自会落地什么,让用户看到每个选择会打开哪些路径。

最关键的权衡在于:哪些内容作为前置条件,哪些内容在文章中落地。前置要求过高,会把不具备这些知识的读者拒之门外;在文章中落地过多,则早期节拍会被定义淹没。确定前置条件时应与用户商定,之后每当某个诱人的节拍需要依赖尚未落地的概念时,都要重新审视:解决办法要么是在它之前插入一个落地节拍,要么是把该概念提升为前置条件。

什么是节拍

节拍是旅程中的一个动作。它只做一件事:铺设场景、提出观点、提出问题、插入旁白,或转换视角。然后停下,让读者停在一个便于下一个节拍转向的位置。

节拍的大小由它所需要的内容决定:

  • 如果这一动作只需一句话,那就只写一句(例如“然后三周什么都没有发生。”)。
  • 如果这一动作需要铺垫,就写一个短段落。
  • 如果这一节拍是一个完整的小片段、论证或示例,就写多个段落。

如果一个“节拍”需要五个段落和三个小标题,那它就不是一个节拍,而是两个节拍粘在一起。应当将其拆分。

## 从素材堆中取材

从原始素材堆中取材,填充每个情节节点。你可以改写、拆分、重组或直接引用。素材堆是一座采石场。

结束历程

文章在旅程完成时结束,而不是在素材堆取空时结束。大多数素材堆都会留下未被采用的零散片段。这没有问题,因为本来就应该准备比所需更多的原始素材。

写作节奏

  • 每次只追加一个情节节点,不要提前写。
  • 每次写入前,都从磁盘重新读取文章文件。完全保留用户的编辑。
  • 如果用户大幅修改了之前的情节节点,让它影响后续内容。
  • 如果用户说"重写那个情节节点"或"回去把第 3 个情节节点换个写法",照做:原地编辑,其余部分保持不动。

评论

支持 Markdown