关于 writing-shape
通过有步骤的塑形对话,将存放原始素材的 Markdown 文件整理成独立文章。它逐段推进写作,同时不修改源文件。
主要功能
- 01完整读取源文件
- 02提供不同的文章开头选项
- 03逐段塑造文章
- 04边讨论边写入已确认内容
- 05保留文章文件中的编辑
适用场景
- 01根据笔记梳理文章结构
- 02从原始素材中确定文章角度
- 03将片段或访谈记录整理成文章
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ polya20/ grill-me --skill writing-shape安装后在 Claude Code 中输入/writing-shape确认已加载。
详细介绍
用户已经提供(或即将提供)一份 Markdown 原始素材文件。将其视为输入材料——内容可以是整理好的片段列表、杂乱无章的大段文字,也可以是文字记录。格式无关紧要。开始做任何其他事情之前,先从头到尾读完。
然后开展一场梳理讨论,生成一份独立的文章文档。不要编辑原始素材文件——本技能只能读取该文件。
如果用户没有说明文章的保存位置,就询问一次并记住路径。用户会在讨论过程中编辑文章文件;写入前务必重新读取,以保留他们的编辑。
写作流程
- 阅读素材。 完整读取输入文件,了解其中的内容。
- 拟定 2–3 个候选开篇。 每个开篇都应体现不同的文章论点或切入角度。展示所有候选,并让用户选择一个或组合成混合版本。选定的开篇将决定文章后续需要阐述什么。
- 逐段扩展。 确定开篇后,询问:“有了这个开篇,读者接下来需要听到什么?”从素材中提取内容来回答。讨论下一部分应采用段落、列表、表格、提示框、引文还是代码块。每种格式的选择都应经过审慎考虑,并且有充分理由。
- 边写边追加到文章文件。 不要攒到最后再一次性写入。每个段落或区块一经确定,就立即写入,让用户看到文章逐渐成形。
- 重复步骤 3,直到文章完成。 由用户决定何时完成。
对话方式
这是一场反向的深挖讨论。构思时,问题是“你究竟注意到了什么?”;现在要问的是“这篇文章究竟在论证什么?读者需要按什么顺序听到这些内容?”要敢于提出异议,不要放过薄弱的过渡。如果某段没有存在的必要,就删掉。
持续使用以下具体提问方式:
- “这一段给读者带来了什么,而上一段没有?”
- “如果删掉这部分,会有什么问题?”
- “这里应该写成散文,还是改成列表?为什么要用散文?”
- “这句话承担了两项任务——拆开,或者选一项。”
- “开篇承诺了 X,但我们已经偏到 Y 了。要么重新串联,要么换个开篇。”
从素材中提取内容
把原始素材当作矿藏,而不是脚本。提取片段,调整表述以适应上下文,并将其放到合适的位置。一个片段可以拆分到多个段落中,也可以与其他片段合并,或改写成转述。素材的作用是供人开采;文章的作用是保持统一的叙述风格。
如果素材缺少文章所需的内容,要明确指出缺口:“这里需要一个示例,但素材里没有——现在给我一个,否则我们删掉这一节。”
必须实际讨论的格式选择
选择如何呈现某部分内容时,要和用户一起权衡以下取舍,而不是默默决定:
- 散文还是列表。 散文适合展开论证;列表适合呈现并列项目。如果项目之间并非真正并列,散文更合适;如果它们确实并列,列表更便于快速浏览。
- 行内还是提示框。 提示、警告和补充说明可以放在提示框中(
> [!TIP]、> [!NOTE]),但只有在它们确实会打断主要论述时才这样做。否则就放在正文中。 - 表格还是重复结构。 如果同一种结构以相同字段重复 3 次或更多次,就用表格;否则用带粗体引导语的散文。
- 引用还是转述。 原文措辞本身很重要时就引用;只需保留观点时就转述。
- 代码块还是行内代码。 多行内容、可运行代码或示例代码用代码块;单个词项或标识符用行内代码。
写作节奏
每个区块确定后,立即追加到文章文件中。每次写入前都要从磁盘重新读取文件——用户可能在两轮对话之间进行了编辑。切勿盲目覆盖。如果用户想重写某一段,只在原位置编辑该段,其他内容保持不变。
## 不在范围内- 从素材堆中挖掘不在其中的新片段(素材堆就是输入;如果内容不完整,请指出缺失之处,并让用户补充,或删去该部分)。
- 编辑原始素材文件。
- 发布内容、针对特定平台进行格式排版,或添加用户未要求的 frontmatter。
评论
支持 Markdown