首页 / 全部技能 / 内容创作 / writing-shape
内容创作 · mattpocock/skills

writing-shape

Writing, exploit: shape raw material into an article, paragraph by paragraph.

L2 本地 · 限定工作目录V1 已固定读写文件Dual-pass Audit
Author mattpocockGitHub mattpocock/skills ↗Stars 257659License MIT(GitHub API spdx MIT;仓库根 LICENSE: Copyright (c) 2026 Matt Pocock)Commit 3cca18b368
管控等级描述 skill 的能力与建议配套的管控措施,不代表质量或安全认证,也不表示可用或不可用。是否使用由用户和管理者决定。不同 agent 宿主对权限的约束各不相同,请勿假定宿主一定会提供安全兜底。第三方 skill 版权归原作者,使用风险由使用者自行承担。

1实现原理 · 为什么它能做到

定位为 exploit 且素材文件只读:把用户给的素材堆当输入 pile,通读后承诺结构、逐段开采;明确禁止编辑素材文件本身。

skills/in-progress/writing-shape/SKILL.md
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.
与 writing-beats 同属 exploit 但形态不同:beats 走节拍旅程分叉,shape 走段落级逐步成型 + 显式格式辩论。

主循环:通读 pile → 与用户定 prerequisites → 给 2-3 个候选 opening(各自暗示不同论点)强制用户选或杂交 → 逐段生长 → 每段落盘 → 循环至用户叫停。

skills/in-progress/writing-shape/SKILL.md
**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.
step 4:'ask "given this opening, what does the reader need to hear next?" Pull material from the pile to answer.'——逐段生长由『读者下一步需要听什么』驱动。

每段落地前辩论格式:段落/列表/表格/callout/引用/代码块的选择必须自觉且可辩护,并给出明确取舍启发。

skills/in-progress/writing-shape/SKILL.md
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.
取舍规则实例:'Prose vs. list. Prose carries argument; lists carry parallel items. If items aren't truly parallel, prose is better.'、'Table vs. repeated structure. If the same shape repeats 3+ times with the same fields, a table.'

grounding 约束与 beats 同源:每块只能用已 grounded 概念;'读者下一步需要听什么' 的答案若缺地基,就先补地基块。

skills/in-progress/writing-shape/SKILL.md
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.
'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…This is the gap-naming of Pulling from the pile one level up.'

反向 grilling 的会话质感:这是倒置的 grilling 会话(从『你在注意什么』变成『文章在论证什么、按什么顺序听』),要求 push back、不许弱转场滑过去、砍掉不配位的段落。

skills/in-progress/writing-shape/SKILL.md
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.
配套反诘句式清单:'What does this paragraph do for the reader that the previous one didn't?'、'The opening promised X. We've drifted to Y. Either re-thread it or change the opening.'

素材缺口显式命名:pile 缺文章需要的东西时,直接点名要用户补,而不是硬写或跳过。

skills/in-progress/writing-shape/SKILL.md
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."
显式 Out of scope:不挖 pile 之外的新碎片、不改素材文件、不发布/不排版/不加用户没要的 frontmatter。

2核心能力

01通读任意形态素材 pile(碎片清单/无结构 prose/transcript)并形成整体判断
022-3 个候选 opening 强制选择(或杂交),开篇定全篇义务
03grounding 运行清单驱动逐块可达性
04格式辩论:prose/list/callout/table/quote/code block 的显式取舍
05素材缺口点名要补(gap-naming),pile 采石场式重构素材
06逐段即写即落盘、每写前重读磁盘防覆盖

4管控建议与判定依据

建议配套管控措施
面向 Agent
限定工作目录
面向管理者
保留操作记录
判定依据(文件路径与关键语句摘要)
  • 本地工作目录: 文件读写与工件输出: 用户指定的独立文章文件:逐块追加、按用户要求就地重写特定段落;素材文件明确只读
审计说明: 。仅本地文件操作:读素材文件(只读,显式禁止编辑)、写用户指定的独立文章文件(逐块追加 + 用户要求时就地改段);无脚本、无网络外发、无凭证读取、无删除指令。注意点:写路径由用户指定('ask once and remember the path');文章文件与素材文件分离,素材不会被污染。

5第二遍独立确认

  • [ok] 素材只读声明 — 'Do not edit the raw material file: it is read-only to this skill.' 原文在;Out of scope 段重复 'Editing the raw material file'。
  • [ok] 候选 opening 强制选择 + 杂交选项 — 'Force the user to pick or compose a hybrid. The chosen opening defines what the rest of the article must do.' 原文在。
  • [ok] 逐段生长循环 + 格式辩论 — 'Grow paragraph by paragraph' 步骤与 'Argue about the form the next block takes…Each format choice should be deliberate and defensible.' 均在;Format arguments 五组取舍原文在。
  • [ok] grounding 机制 — Grounding 节 + 'Keep a running list of what's grounded' 原文在;与 beats 概念一致。
  • [ok] 写前重读磁盘 / 就地改段不盲覆盖 — 'Re-read the file from disk before every write…Never overwrite blindly. If the user wants a paragraph rewritten, edit that specific paragraph in place' 原文在。
  • [ok] 文件写入范围 — 仅用户指定文章文件;素材文件只读;无删除/移动/其它路径指令。
  • [ok] 外部依赖为空 — token 扫描零命中;grilling 仅为概念引用('grilling session inverted'),无 Skill-tool 调用指令。
  • [ok] 元数据 + beta 状态 — GitHub API MIT/257659/2026-09-04;本地 HEAD == 3cca18b;in-progress README 列为 beta。

6结论

  • 开篇即定全篇义务:候选 opening 强制选择,防止文章写到一半散焦。
  • 格式决策显式化:每块用 prose/list/table/callout/quote/code 哪种载体都要可辩护,杜绝无意识散文。
  • gap-naming:pile 缺料就点名要,不硬写不跳过,文章质量不因素材缺口妥协。
  • 素材文件只读 + 写前重读磁盘,双重保护用户资产不被破坏。
  • 编辑者姿态:push back、砍不配位的段、抓开篇承诺漂移,像资深编辑而非打字员。
  • 适合: 适合有固定素材堆(fragments 收集产物/访谈/笔记)想精修成一篇连贯文章的作者;尤其适合愿意逐段讨论格式与论证、把模型当编辑搭档的人。与 writing-fragments 串联是完整管线。
    不适合: 不适合素材还在探索阶段的场合(先 explore);不适合想要快速一次成稿或严格大纲驱动写作的用户;不适合素材缺口无法由用户补齐的场景;不适合需要平台排版/frontmatter 产出的发布流程(显式 out of scope)。
    Install Agent-Ready
    ① Verified Mirror 2026-09-09
    Option A · Direct DownloadDownload writing-shape.tar.gz
    sha256: f8d01b68a6c6dcdf…
    Option B · Copy Guide for Agent
    install.json
    agent 读 JSON 指南后会自动从本站下载安装,无需更多说明。
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 3cca18b368.