mcpField
S
s4h-writing-dialogue

s4h-writing-dialogue

github.com/human-avatar创意与媒体23635 次安装15 周前更新
代码仓库

关于 s4h-writing-dialogue

s4h-writing-dialogue 是面向写作者的对话分析与修改技能,按步骤检查潜台词、人物声音、说明性对白、场景作用和推进节奏,并提供后续写作技能建议。

主要功能

  1. 01区分表层目标与潜台词
  2. 02分析人物声音差异
  3. 03标记角色间的说明性对白
  4. 04判断场景作用与推进节奏
  5. 05针对问题台词提出改写

适用场景

  1. 01诊断草稿中平淡的对白
  2. 02区分不同说话者的声音
  3. 03找出多余的说明性对白
  4. 04修改缺乏推进力的场景

安装

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

$npx skills add https://github.com/human-avatar/skills-for-humanity --skill s4h-writing-dialogue

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

详细介绍

写作:对话

对话主要有两种失败方式:说得直白透彻,毫无言外之意;或解释角色早已知道的事情,把背景说明伪装成对话。这两种问题给读者带来的效果相同——平淡无趣,仿佛作者的手清晰可见,角色沦为代言人,而不是真实的人。

真实的对话往往拐弯抹角。发生冲突的人很少会说“我在生你的气”。他们会聊别的。愤怒藏在他们谈论餐具、日程安排或某人神情的话语里。潜台词才是场景本身——表面上的对话只是承载它的工具。对话如果太直白,潜台词和表面内容就会变成同一回事,也就没有了场景——只剩信息传递。

人物声音的区分是第二个主要问题。每个角色都有独特的思维节奏,有受自身经历塑造的词汇范围,有与自身创伤相对应的回避方式,也有各自面对沉默的态度。角色听起来千篇一律时,对话唯一能用来区分他们的就只剩归属标注(“他说/她说”)——这意味着这些角色在纸面上还没有真正活起来。


你的流程

步骤 1:说话者的目标——表层与潜台词 针对对话中的每位说话者,识别:

**框定核对:**继续之前,确认具体的对话内容。用一句话说明你识别出的内容——正在分析的对话、涉及的说话者,以及表面上的戏剧情境——然后使用 AskUserQuestion:

  • 问题:“我的理解是:[用一句话概括对话、说话者及其所处情境]。对吗?”
  • 标题:“框定”
  • 选项:
    • 是——继续——框定正确
    • 调整——有一处不对;用户会先纠正再继续
    • 重新框定——实际情境与理解不同;先纳入用户的修正再继续
  • **表层目标:**他们看起来在谈论什么
  • **潜台词目标:**他们实际上想通过这段交流得到什么(他们不会直接说出来的内容)

两者应该有所不同。如果表层目标和潜台词目标完全相同,那说明说话者说的就是他们的真实想法——潜台词已经消融在明面上,场景也就失去了张力。

步骤 2:声音差异化 分析每位说话者独特的声音特征:

  • **节奏:**长而复杂的句子,还是简短直白的陈述?说话会被打断,还是总能完整表达?
  • **词汇范围:**正式、受过教育的措辞,口语化表达,还是领域专用语言?
  • **回避模式:**受到追问时,这个角色如何搪塞、回避或转移话题?
  • **与沉默的关系:**这个角色会填补沉默、制造沉默,还是把沉默当作武器?

如果不同角色的声音可以互换——交换他们的台词,场景也没有任何变化——说明角色还没有被塑造出各自的特点。

步骤 3:说明性内容检查 标记角色向彼此解释双方早已知道的事情、而唯一目的只是让读者了解的台词。这就是“你知道的,鲍勃”问题:“你知道,我们结婚十五年了,你父亲从来就不喜欢我。”谁也不需要被告知这些。这些内容只是为了读者而存在——而读者早已知道。

真正需要的说明性内容,可以通过冲突呈现(角色对同一事件各有不同说法)、好奇心呈现(角色确实不知道某件事),或揭示呈现(信息在压力下浮出水面,而非主动透露)。

步骤 4:场景作用 这段对话在发挥什么作用?标记所有适用项:

  • **冲突:**两种相互对立的诉求直接交锋
  • **揭示:**角色或读者得知了新信息
  • **建立关系:**亲密感或联结得以建立或受到考验
  • **协商:**角色努力达成某种安排
  • **回避:**角色通过误导来应对威胁

如果这段对话没有明显作用——只是单纯的一来一往——就应该删掉或调整方向。

步骤 5:推进势头 这段对话是在推动场景发展,还是让场景停滞?判断场景状况在对话中变化的速度。如果对话的第一句和最后一句所处的状态相同,那么对话就在原地打转。


与用户确认

继续之前,使用 AskUserQuestion 工具。用 1–2 句话说明你对情境的理解——正在分析什么,以及核心问题是什么——然后提问:

  • 问题:“我的理解是:[用 1–2 句话概括你的理解]。你希望如何继续?”
  • 标题:“范围”
  • 选项:
    • 完整分析——完成所有步骤,并展示完整推理过程
    • 仅看关键发现——只给出结论,省略逐步细节
    • 聚焦特定方面——深入分析其中一个方面
    • 重新框定——理解有误;请纠正,之后会按修正后的框定进行分析

根据用户的选择继续。如果用户重新框定,请先纳入修正,再进行分析。


输出格式

对话分析

说话者目标:

  • [说话者 A]:表层目标 / 潜台词目标
  • [说话者 B]:表层目标 / 潜台词目标
  • FLAGGED:[表层目标与潜台词目标相同的说话者]

声音差异:

  • [说话者 A]:节奏 / 用词 / 回避模式 / 与沉默的关系
  • [说话者 B]:同上
  • FLAGGED:[声音可以互换的角色]

说明性内容标记:[引用的台词 + 说明为何属于说明性内容 + 如何以合理方式传递信息]

场景功能:[冲突 / 揭示 / 增进感情 / 协商 / 转移话题——标出所有适用项 / 若均不适用则标记 FLAG]

推进势头:[场景是否通过对话推进?在哪里停滞?]

逐句点评:[针对最精彩和最薄弱的互动给出具体点评——引用并分析]

标记台词的改写:[针对具体台词进行改写,以恢复潜台词、区分声音或删去说明性内容]


备注

  • 潜台词不等于晦涩。即使角色没有说出口,读者也应该能感受到话语之下的含义。清晰度与潜台词并不矛盾。
  • 最好的对话改写能让表面内容合情合理,同时暗藏潜台词——角色仍在谈论真实的事情,但他们说的并非真正想表达的内容。
  • 与 /s4h-writing-scene-construction 搭配使用,可在场景背景下诊断对话——对话问题往往也是场景构建问题。
  • 与 /s4h-writing-character-development 搭配使用,因为声音源自角色:角色的创伤与防御方式决定了他们如何说话、回避,以及哪些话无法直接说出口。
  • 如果问题在于某个角色的声音在整部手稿中前后不一致,而非仅在单个场景中不一致,则与 /s4h-writing-voice-consistency 搭配使用。

接下来

交付此输出后,使用 AskUserQuestion 提供下一步选项:

  • 问题:“对话已完成。接下来做什么?”
  • 标题:“下一步”
  • 选项:
    • /s4h-writing-voice-consistency — 确保对话在全文中保持声音一致
    • /s4h-writing-character-development — 借助对话深化角色
    • /s4h-writing-scene-construction — 将对话嵌入场景
    • 完成 — 收尾并综合目前的内容

评论

支持 Markdown