writing-shape

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese
<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>
<what-to-do>
用户已提供(或即将提供)一份包含原始素材的markdown文件。将其视为输入素材库——内容可以是规整的片段列表、无结构的大段文字或转录稿,格式无关紧要。在开展任何工作前,请先完整通读这份文件。
随后启动整理环节,生成一份独立的文章文档。这就是提炼(exploit):探索阶段已完成,素材库内容固定——确定文章结构并从素材库中提取内容填充。请勿编辑原始素材文件——该技能仅可读取此文件。
若用户未说明文章保存路径,请询问一次并记录该路径。
</what-to-do> <supporting-info>

The loop

循环流程

  1. Read the pile. Read the input file in full. Form a sense of what's in it.
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. Loop step 4 until the article is done. The user decides when it's done.
  1. 通读素材库:完整读取输入文件,了解其中包含的内容。
  2. 明确前提条件:与用户确认读者在阅读文章时已具备的知识——即从一开始就已锚定的概念。所有其他概念必须先通过某一章节进行锚定,后续章节才能引用。详见概念锚定
  3. 草拟2–3个候选开篇:每个开篇应体现文章不同的核心论点或切入角度。展示所有候选开篇,要求用户选择一个或整合出一个混合版本。选定的开篇将决定文章后续的内容走向。
  4. 逐段拓展:确定开篇后,思考“基于这个开篇,读者接下来需要了解什么?”从素材库中提取内容来回答这个问题。下一章节仅可引用已锚定的概念,并在内容中锚定新的概念。讨论下一章节的呈现形式——段落、列表、表格、提示框、引用或代码块。每种格式的选择都应经过深思熟虑且有充分依据。
  5. 随时追加至文章文件:不要批量处理。每确定一个段落或章节,立即将其写入文章文件,让用户可以看到文章逐步成型的过程。
  6. 重复步骤4直至文章完成:由用户决定文章何时完成。

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.
每个概念必须先被锚定,后续章节才能引用:读者要么在阅读前就已了解该概念,要么在文章前面的章节中已经接触过。若某一章节引用了未锚定的概念,会导致读者理解困难。锚定的单位是概念本身,而非概念的名称——即使没有使用专业术语,章节也可能引用了读者不了解的概念。当概念有对应的术语时,锚定意味着同时传递概念的含义和术语本身。
概念的锚定方式有两种:
  • 前提条件:在开篇前就已锚定,由读者自带。在开始阶段确定。
  • 引入式:通过某一章节来确立概念,此后该概念在整篇文章中均已锚定。
持续记录已锚定的概念。当你思考“读者接下来需要了解什么?”时,如果后续内容需要引用未锚定的概念,那么答案就是:先锚定该概念——要么在此处,要么在更早的章节——否则无法推进。这是素材提取中“缺口识别”的升级:素材提取中是素材库缺少内容;这里是文章缺少基础支撑。
关键在于区分哪些作为前提条件,哪些在文章内部锚定。若要求读者预先掌握过多知识,会将部分读者拒之门外;若在文章内部锚定过多内容,开篇会被大量定义淹没。在明确前提条件时,需与用户共同确定这一点。

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."
将原始素材视为采石场,而非脚本。提取片段,修改使其适配上下文,然后嵌入文章。一个片段可能被拆分到多个段落中,与其他片段合并,或被改写。素材库的作用是供挖掘使用;文章的目标是保持统一的叙事风格。
若素材库缺少文章所需的内容,需明确指出缺口:“此处需要一个示例,但素材库中没有——请现在提供一个示例,否则我们将删除这一部分。”

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.
在选择章节的呈现格式时,需与用户公开讨论以下权衡因素,而非自行决定:
  • 段落 vs 列表:段落用于传递论点;列表用于呈现平行内容。如果内容并非真正平行,段落更合适;如果是平行内容,列表更便于快速浏览。
  • 内嵌 vs 提示框:提示、警告和附注应放在提示框中(
    > [!TIP]
    ,
    > [!NOTE]
    )——但只有当这些内容会真正打乱主线论证时才使用提示框。否则应内嵌在正文中。
  • 表格 vs 重复结构:如果相同结构重复3+次以上且包含相同字段,使用表格;否则使用带粗体引导的段落。
  • 引用 vs 改写:当原文措辞至关重要时,使用引用;当仅需保留核心观点时,使用改写。
  • 代码块 vs 内嵌代码:多行、可运行或说明性代码→使用代码块。单个标记或标识符→使用内嵌代码。

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.
每确定一个章节,就将其追加至文章文件。每次写入前,重新从磁盘读取文件——用户可能在两次操作之间编辑过内容。切勿盲目覆盖。若用户要求重写某个段落,仅编辑该特定段落;保留其他内容不变。

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>
  • 挖掘素材库中未包含的新片段(按“素材提取”中的方式处理缺口)。
  • 编辑原始素材文件。
  • 发布文章、针对特定平台进行格式调整,或添加用户未要求的前置内容。
</supporting-info>