name: writing-shape description: "写作的收敛阶段:逐段把原始素材塑造成文章。" disable-model-invocation: true
把已有材料组织成读者能跟上的文章
这是收敛阶段:完整读材料,以读者需要的顺序逐段成文,原始素材保持不动。
还不清楚 Skill、Agent、安装和调用?先读 从零开始的6节入门课。
作者将它放在 in-progress,未作为稳定插件内容推广。先理解原理,实际使用前核实版本和依赖。
在关系图中查看 writing-shape 与其他技能的关联 →
先把必要的概念讲清楚
这项技能把已有素材组织成一篇有方向、有顺序的文章。它与采集素材分工不同:现在要决定文章论证什么,读者每一步需要理解什么。
下面是老师补充的入门说明;原作者的要求保留在中英对照正文中。所有例子均为帮助理解而构造的教学情境。
grounding|先把读者需要的概念讲明白
在这些写作 skill 中,grounding 指读者已理解某概念,后文才能依赖它。先解释测试接入点,再说高层入口能减少维护,读者才跟得上。这里不是检索系统中“用来源约束事实”的另一个常见含义,同词要按上下文理解。
beat / fragment|叙事推进与素材片段
fragment 是可能用于文章的素材,允许还不完整。beat 是成文中完成一次推进的小段,例如交代一次失败、提出一个认识或展示一个例子。两者不是按字数区分:素材尚未承担文章顺序中的职责,节拍已经承担。
读原文,理解每一步为什么这样做
左右内容按小节对应;窄屏先中文、后英文。两种语言均完整展示,对应讲解紧接在小节之后。译文传达原文要求;老师讲解补充概念、原因、例子与适用边界。
name: writing-shape description: "Writing, exploit: shape raw material into an article, paragraph by paragraph." disable-model-invocation: true
<what-to-do>
用户提供或将提供原始素材文件,可能是整理过的片段、长段文字或转写稿。格式不重要,先从头到尾读完。
再进行成文讨论,生成另一份文章文件。探索阶段结束,素材范围固定,现在确定结构并取用内容。原始文件对此技能只读,不修改它。
用户没有指定成文位置时,问一次并记住。
</what-to-do>
<supporting-info>
<what-to-do>
The user has passed (or will pass) a markdown file of raw material. Treat it as the input pile: anything from a tidy list of fragments to a wall of unstructured prose to a transcript. The format does not matter. Read it end-to-end before doing anything else.
Then run a shaping session that produces a separate article document. This is exploit: the exploring is done, the pile is fixed: commit to a structure and mine the pile to fill it. Do not edit the raw material file: it is read-only to this skill.
If the user did not say where to save the article, ask once and remember the path.
</what-to-do>
<supporting-info>
反复推进的过程
- 完整读素材,理解有哪些内容。
- 与用户确定受众已有概念;其他知识先解释,再在后文使用。
- 提供 2—3 个不同开头,分别体现不同主张或角度。展示全部,请用户选择或组合。开头的承诺决定后文要完成什么。
- 逐段生长:问“读者接下来需要知道什么”,从素材回答。下一段只依赖已建立的概念,并在需要时建立新概念。讨论用段落、列表、表格、提示、引用还是代码块,格式选择应有理由。
- 每段或每块确认后立即写入,不攒到最后,让用户看到文章形成。
- 继续直到用户认为文章完成。
The loop
- Read the pile. Read the input file in full. Form a sense of what's in it.
- Establish the prerequisites. Settle with the user what the reader knows walking in: the concepts that are grounded from the start. Everything else must be grounded by a block before a later block can lean on it. See Grounding.
- Draft 2–3 candidate openings. Each opening should imply a different thesis or angle for the article. Show all of them. Force the user to pick or compose a hybrid. The chosen opening defines what the rest of the article must do.
- Grow paragraph by paragraph. After the opening lands, ask "given this opening, what does the reader need to hear next?" Pull material from the pile to answer. The next block may only lean on grounded concepts, and grounds new ones as it lands. Argue about the form the next block takes: a paragraph, a list, a table, a callout, a quote, a code block. Each format choice should be deliberate and defensible.
- Append to the article file as you go. Don't batch. Write each agreed paragraph or block immediately so the user can see the article taking shape.
- Loop step 4 until the article is done. The user decides when it's done.
开头一旦确定,就形成对后文的承诺
先完整读素材,再提供不同角度的开头。比如同一段 AI 项目经历,可以写“我怎样发现验收缺失”,也可以写“我如何开始重新学习”。选择不同,后面的证据与顺序就不同。
每确定一个内容块就写入,接着问读者还需要知道什么。不是先生成整篇,再请用户一次性指出全部问题,而是逐步讨论结构。
用户决定何时完成。素材堆固定不表示字句不可改写,而是本阶段主要从已有材料组织,不无止境扩展话题。
建立理解基础
后文依赖的概念,必须来自读者已有知识或前文解释。缺少这个基础,读者会掉队。即使没有专业术语,也可能依赖读者不知道的想法;概念有名称时,把意思和名称一起讲清楚。
前置知识在开头前确定;正文引入的知识一旦建立,之后即可使用。持续记录已经讲清的概念。
思考下一段时,如果它需要一个尚未解释的概念,那么先讲这个概念本身,就是下一步。可以在当前位置或更早补足,但不能越过缺口。
这与素材缺少例子类似,只不过缺的是读者的理解基础。前置要求太高会排除读者,开头解释太多又会让正文淹没在定义中,需要与用户确定合适受众。
Grounding
Every concept has to be grounded before a block can lean on it: the reader either walked in knowing it or met it in an earlier block. A block that reaches for an ungrounded concept loses the reader. The unit is the concept, not the word for it: a block can lean on an idea the reader lacks even with no jargon in sight. Where a concept has a name (a term), grounding it means landing the idea and the term together.
A concept gets grounded one of two ways:
- Prerequisite: grounded before the opening. The reader brings it. Fixed at the start.
- Introduced: a block establishes it, and from then on it's grounded for the rest of the article.
Keep a running list of what's grounded. When you ask "what does the reader need to hear next?", an ungrounded concept the next move needs is itself the answer: ground it first (here or in an earlier block) or you can't make the move. This is the gap-naming of Pulling from the pile one level up: there the pile is missing material; here the article is missing a foundation.
The lever is what you make a prerequisite versus what you ground inside the article. Demand too much up front and you shut readers out; ground too much inside and the opening drowns in definitions. Settle it with the user when you establish prerequisites.
没有专业术语,也可能让读者缺少前提
你写“测试绿灯也可能无效”,读者若不知道测试究竟检查什么,即使句子没有英文仍不理解。应先解释测试输入、动作与预期结果,再讨论测试覆盖不足。
先备知识是你假定读者已知的内容;文中引入是文章自己需要讲到位的内容。设定前提过多会排除初学者,解释一切又会淹没开头,需要与受众目标匹配。
这正是你对教材的批评:定义的缺失无法用简洁措辞弥补。逐段解释应先建立理解,再使用抽象概念。
讨论的方式
探索时问的是“你到底观察到了什么”;成文时问的是“文章到底主张什么,读者需要按什么顺序听”。应提出有理由的质疑,不放过薄弱过渡。段落没有实际作用就删除。
可以持续问:这一段比上一段多做了什么?删掉后哪里断掉?这些内容应写连贯论述还是列表?一句话是否做了两件事,需要拆开?开头承诺 X,为何已经转向 Y,是修正文还是改开头?
Conversational feel
This is a grilling session inverted. In ideation, the question was "what are you actually noticing?" Here it's "what is this article actually arguing, and in what order does the reader need to hear it?" Push back. Refuse to let weak transitions slide. If a paragraph doesn't earn its place, cut it.
Specific moves to keep using:
- "What does this paragraph do for the reader that the previous one didn't?"
- "If I cut this, what breaks?"
- "Is this prose, or should it be a list? Why prose?"
- "This sentence is doing two jobs: split it or pick one."
- "The opening promised X. We've drifted to Y. Either re-thread it or change the opening."
老师或编辑需要指出段落为什么留不住
“这一段增加了什么”“删掉会缺什么”“开头承诺 X,为什么写到 Y”都是检查论证作用的问题。它们不是故意抬杠,而是防止文章变成材料堆。
例如一篇讲验收的文章突然大篇幅介绍服务器购买,如果不影响主论点,就应删减或另写。文笔流畅并不能掩盖结构偏离。
从素材取材可以拆分、合并和转述,但不得给真实经历编造细节。缺一个必要例子时应指出缺口,请用户提供或调整段落。
使用素材
素材是可开采的内容,不是必须照读的脚本。片段可以拆到多段,与其他片段合并,或改述,使文章读起来保持同一声音。
文章缺少必需内容时,明确指出。例如“这里需要例子,现有素材没有,请补充,或者我们删掉这一部分”。不要偷偷填造缺失事实。
Pulling from the pile
Treat the raw material as a quarry, not a script. Pull a fragment, rework it to fit the surrounding paragraph, and place it. A fragment may be split across multiple paragraphs, merged with another, or paraphrased. The pile's job is to be mined; the article's job is to read as one voice.
If the pile lacks something the article needs, name the gap explicitly: "We need an example here and the pile doesn't have one. Give me one now or we cut this section."
素材可以重新组织,但事实不能随结构需要而编造
假设你口述了三次 AI 返工经历,顺序是发生时间。文章可能改为先讲“为什么会做错”,再用最典型的那次经历说明,最后讲你准备怎样改变。这是在组织已有素材,不是篡改发生过什么。
若文章需要一个“改用工单后效率提高”的例子,而你还没有实际做过,不能因为结构需要就替你编一个成功故事。应补真实材料、明确标为假设例子,或者删除这一段。
段落长度不是主要判断。 一段若同时解释工单、依赖和上下文,可能需要拆成几段;拆开后读者更容易理解关系。列表适合并列事项,因果关系则需要句子连接。
这一技能生成独立文章,不改原始素材,方便将来核对。它也不默认负责公众号发布。生成草稿、平台排版和真正发布,是可以分别安排的工作。
实际讨论格式取舍
与用户明确讨论,而不是默默决定:
- 连贯文字适合展开论证;真正并列的项目用列表更容易扫描,不并列就用文字说明关系。
- 提示、警告和旁白只有会打断主线时,才放进
> [!TIP]或> [!NOTE];否则留在正文。 - 相同字段结构重复三次以上时,考虑表格;否则可以用加粗开头的段落。
- 原始措辞本身重要时引用,只需表达意思时改述。
- 多行、可运行或需展示结构的代码用代码块;单个名称或标识用行内代码。
Format arguments to actually have
When choosing how to render a block, weigh these tradeoffs out loud with the user, not silently:
- Prose vs. list. Prose carries argument; lists carry parallel items. If items aren't truly parallel, prose is better. If they are, a list is faster to scan.
- Inline vs. callout. Tips, warnings, and asides go in callouts (
> [!TIP],> [!NOTE]), but only if they'd genuinely derail the main argument inline. Otherwise leave them inline. - Table vs. repeated structure. If the same shape repeats 3+ times with the same fields, a table. Otherwise prose with bold leads.
- Quote vs. paraphrase. Quote when the original wording is the point. Paraphrase when only the idea matters.
- Code block vs. inline code. Multi-line, runnable, or illustrative → block. Single token or identifier → inline.
格式是表达关系的选择,不是装饰
并列事项适合列表,推理过程适合连续文字,相同字段重复多次适合表格。原话的措辞本身重要才直接引用;只需思想时可转述。
例如比较三个测试入口的输入、覆盖和限制,用表格方便;解释为什么入口层级影响重构,则需要连续说明因果。把一切都变成项目符号可能破坏理解路径。
每次写前重读文章,保留用户修改。最终成文、特定平台排版和公开发布属于不同动作,不能因写作完成就自行发布。
写入节奏
每块确认后立即追加。写之前重新读取文件,因为用户可能刚编辑过。不要盲目覆盖。只要求改某段时,就只改该段,保留其他内容。
Writing rhythm
Append to the article file as each block is agreed. Re-read the file from disk before every write: the user may have edited between turns. Never overwrite blindly. If the user wants a paragraph rewritten, edit that specific paragraph in place; leave the rest alone.
不属于本技能的工作
不继续挖掘原素材之外的新片段,缺口按前文方式处理;不编辑原始素材;不负责发布、特定平台排版,也不擅加用户未要求的文件头元数据。
</supporting-info>
Out of scope
- Mining for new fragments that aren't in the pile (handle gaps as in "Pulling from the pile").
- Editing the raw material file.
- Publishing, formatting for a specific platform, or adding frontmatter the user didn't ask for.
</supporting-info>
先作答,再看参考思路
用自己的话说明:它解决什么问题,完成后会留下什么?
请各用一句话回答。若它只做规划或解释,不要把“已开发”“已部署”写成产物。
文章已经用了很多通俗词,为什么读者仍可能跟不上?
我已思考,查看参考思路
概念依赖可能没有补齐。没有术语也可能引用读者不具备的背景,需检查论证前提而非只改词汇。
原文中哪条要求在你的环境下可能不成立?
说出具体一句及其前提,例如工具不可用、资料缺失、已有项目约定冲突,或它只是作者偏好。把你的答案带回课堂,我们据此继续讨论。
把方法放进一个具体情境
教学案例:在解释“上下文指针”前,读者需要知道 Agent 不会同时读完所有文件。先用一个找不到规则的例子建立问题,再引入指针,文章更容易理解。
边界与容易误读的地方
它明确不负责平台发布。逐段确认适合精细写作,但不必作为所有短文的固定流程;用户已有写作偏好应优先。
讨论后再实践:先判断上述情境是否适用,再选择真实任务。现在无需安装、运行命令或修改现有项目。