Skip to content
Video & Audio
Skill

/writer-dialogue

对白专家(David Mamet 方法论)——台词创作 / 潜台词设计 / 角色语言个性化 / 对白节拍分析 / 沉默设计。Nomi 创作区写剧本/对白时参考。

BOOST
From plugin
nomi
57393 skills1 MCP
Install
$ npx -y skills add aqm857886159/nomi --skill writer-dialogue --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/writer-dialogue

Context preview

The summary Claude sees to decide when to auto-load this skill.

对白专家(David Mamet 方法论)——台词创作 / 潜台词设计 / 角色语言个性化 / 对白节拍分析 / 沉默设计。Nomi 创作区写剧本/对白时参考。

SKILL.md

writer-dialogue.SKILL.md
name: writer-dialogue
description: 对白专家(David Mamet 方法论)——台词创作 / 潜台词设计 / 角色语言个性化 / 对白节拍分析 / 沉默设计。Nomi 创作区写剧本/对白时参考。
metadata:
  nomi:
    selectable-in-workbench: true
    library:
      kind: skill
      title:
        zh-CN: 对白设计
        en: Dialogue
      summary:
        zh-CN: 对白专家(David Mamet 方法论)——台词创作 / 潜台词设计 / 角色语言个性化 / 对白节拍分析 / 沉默设计。Nomi 创作区写剧本/对白时参考。
        en: Write distinctive dialogue, subtext and purposeful silence.
      appliesTo:
      - text
      group:
        zh-CN: 编剧
        en: Writing
      slots: []
      source:
        url: https://github.com/aqm857886159/Nomi/blob/7a072f12d4e35d1bf341403d942e5c0c702e6c7b/skills/writer-dialogue/SKILL.md
        revision: 7a072f12d4e35d1bf341403d942e5c0c702e6c7b
        author: Nomi contributors
        changes: Nomi adds library presentation metadata; the skill body is unchanged.
        evidence:
        - https://github.com/aqm857886159/Nomi/blob/7a072f12d4e35d1bf341403d942e5c0c702e6c7b/skills/writer-dialogue/SKILL.md
      preview:
        path: assets/cover.png
        type: image
        provenance: illustration
    version: 1.0.0
    tools: []
    required-providers: []
license: AGPL-3.0-only

对白专家 · David Mamet 方法论

Nomi 创作区写剧本、写对白时用这套方法论。以 David Mamet(《拜金一族》《摇尾狗》)为核心蓝本,结合潜台词体系与信息克制原则。

**核心理念:** 对白不是表达,是**行动**。角色说每句话都是为了**得到什么**——请求、威胁、拒绝、引诱、逃避。如果一句台词不是一个动作,删掉它。

---

一、三条铁律

铁律1:台词即动作

每句台词必须是角色为达成目标而采取的一个**动作**:

| 台词动作类型 | 示例 | |-------------|------| | 请求 | "帮我看一下那个读数。" | | 威胁 | "你有三十秒。" | | 拒绝 | "不。" | | 引诱 | "那个矿带我留了一半给你。" | | 逃避 | "你问这个干什么?" | | 试探 | "你的船是什么型号?" | | 伪装 | "我没事。"(实际不是没事) |

**检查方法:** 能不能在每句台词前面加一个动词?"他**威胁**说:'你有三十秒。'" 如果加不上动词,这句台词没有功能。

**功能兜底清单(动词之外,每句台词至少占一项):** 1. 揭示性格——让读者更了解这个人 2. 推进冲突——改变两人之间的关系张力 3. 埋下伏笔——一句话在后面有回响 4. 建立信息不对称——说一半留一半

一项都不占,删掉它。

铁律2:删掉所有"漂亮"的台词

如果一句台词让你觉得"写得真好",它很可能是在炫技。角色不会说漂亮话——他们只想达到目的。

❌ "在这条路的尽头,或许我们能找到属于自己的答案。"
✅ "还有十二跳。"

铁律3:不写情绪词

不写"他愤怒地说"。只写他说了什么、做了什么。读者自己判断。

❌ 林冬冷冷地说:"你走吧。"
✅ 林冬看着扫描仪。"你走吧。" 她没有抬头。

---

二、间接对白理论

**核心技术:** 角色越想要一样东西,越不会直接提到它。

间接对白三层

| 层 | 内容 | 功能 | |----|------|------| | **话题层** | 两人在谈论什么话题 | 表面内容 | | **策略层** | 角色用什么策略获取想要的东西 | 台词动作 | | **欲望层** | 角色真正想要什么 | 从不直接说出 |

**示例:**

话题层:他们在讨论矿带的分配
策略层:老陈在用沉默施压,林冬在用数据反驳
欲望层:老陈想知道林冬是否信任他;林冬想证明自己不需要任何人

潜台词设计三步法(动手顺序)

三层是结构,下面是动手时的顺序: 1. 先定**欲望层**——角色真正想说、却说不出口的那句话。 2. 找一个**话题层**——一个表面话题,让它与欲望产生关联但不直接。 3. 只写**策略层**给读者看——角色只说表层,读者自己感受到深层。

间接对白的禁忌

  • ❌ 角色直接说出自己想要什么:"我需要你信任我。"
  • ❌ 角色解释自己的策略:"我之所以这样说是因为……"
  • ❌ 角色承认自己的真实感受:"说实话,我害怕。"

---

三、节拍(Beat)理论

对白不是句子的堆叠,而是**节拍**的序列。

节拍的定义

一个节拍 = 一次"想要 → 尝试 → 受阻"的微型单元。

当一个节拍结束(尝试失败),角色**换策略**,进入下一个节拍。

节拍分析模板

{场景名} 对白节拍分析
═══════════════════

节拍1:{角色A} 策略:礼貌请求 → {角色B} 反应:拒绝
节拍2:{角色A} 策略:引诱/交换 → {角色B} 反应:犹豫
节拍3:{角色A} 策略:威胁     → {角色B} 反应:沉默
节拍4:{角色B} 策略:反击     → {角色A} 反应:退让

节拍转换检查:每次策略变化是否有触发原因?

策略升级规则

角色不会重复使用失败的策略。每次受阻后策略升级:

礼貌请求 → 诱惑 → 施压 → 威胁 → 沉默(最强策略)

---

四、省略美学

Mamet 的台词以极简著称。

权力编码

  • **句子越短,权力越大。**
  • 指挥官:"撤。"(一个字=绝对权力)
  • 新手:"我觉得也许我们应该考虑撤退?"(长句=没有权力)
  • **省略越多,角色越强。**
  • 老手之间不互相解释:两个老兵不说"我们需要让他们先进来,然后从侧翼包抄"——他们只需要一个眼神。
  • 解释越多,角色越弱或越不信任对方。

台词精简对照表

| 病症 | 原文 | Mamet 版 | |------|------|---------| | 完整句 | "我认为我们应该现在离开这里。" | "走。" | | 礼貌用语 | "可以请你帮我检查一下护盾吗?" | "护盾。" | | 重复确认 | "所以你是说,他们已经来了?" | 删掉。直接写下一个动作。 | | 自我解释 | "我之所以不同意,是因为……" | "不行。" |

---

五、沉默设计(Mamet + Pinter)

三种停顿

| 类型 | 定义 | 剧本写法 | 功能 | |------|------|---------|------| | **Beat** | 节拍转换,策略切换 | (停顿。) | 角色在换策略 | | **Pause** | 角色在处理信息 | (沉默。) | 角色在思考/感受 | | **Silence** | 关系在变化 | 两人都没有说话。 | 关系发生了不可逆改变 |

沉默密度标准

  • 高张力场景:沉默应该比台词多
  • 日常场景:台词可以多于沉默
  • 转折时刻:关键决定前必须有 Silence
  • 冲突结束后:留一段纯环境的静默

---

六、角色语言档案

给每个主要角色建一份语言档案,让不同角色开口就能被认出来。

语言档案模板

{角色名} 语言档案
════════════════

【Mamet 维度】
台词平均长度:{X个字}(越短越有权力)
主要台词动作类型:{指令型 / 试探型 / 逃避型 / …}
策略升级路径:{从什么到什么}
省略程度:{高 / 中 / 低}

【词汇层】常用词汇 + 禁忌词 + 口头禅
【句式层】句式偏好 + 思维模式
【回避层】不说什么 + 绕开方式
【节奏层】说话速度 + 停顿习惯 + 打断倾向
【谎言层】说谎方式 + 说谎信号
【情绪表达层】压力下的变化模式

---

七、对白病症诊断

写完对白,逐句过这张表;命中就按 Mamet 修复法改。

| 病症 | 症状 | Mamet 修复 | |------|------|-----------| | 解释动机 | "我这样做是因为……" | 删掉。用动作表达。 | | 描述情绪 | "我现在很愤怒" | 删掉。写一个具体动作。 | | 总结剧情 | "所以你的意思是……" | 删掉。直接推进。 | | 哲学宣言 | "人生就是这样……" | 删掉。用一个选择表达。 | | 过于顺畅 | A 问 B 答,完美配合 | 加入节拍转换:打断、回避、误解 | | 信息倾倒 | 一句话塞多个信息 | 拆分到多场景,分层传递 | | 策略固定 | 角色全程用同一策略说话 | 每次受阻后必须换策略 | | 作者炫技 | "漂亮"的台词 | 删掉。角色不说漂亮话。 |

---

在 Nomi 创作区怎么用

  • **建角色时** — 先填一份角色语言档案(含 Mamet 维度),后面这个角色所有台词都对着档案写,保证语言个性化、不同角色不串味。
  • **写场景对白时** — 先定三层(欲望 / 话题 / 策略),只写策略层;再按节拍序列展开,每次受阻换策略、逐级升级;配合省略美学压短台词、按三种停顿铺沉默。
  • **改稿时** — 用「对白病症诊断」表逐句过,命中就按修复法改;再跑一遍节拍分析,确认每次策略切换都有触发原因;最后用台词精简对照表把还能砍的砍掉。
Read more
Ships withnomi

Open-source AI video workbench. Bring any model or your local ComfyUI, and let Claude Code / Codex / Cursor direct it over MCP — storyboard, references, generation, editable first cut on a real timeline. Local-first: projects, prompts, and keys stay on your machine. No account, no telemetry.

Get the whole plugin
Stats
573
Stars
131
Forks
Active
Maintenance
TypeScript
Language
AGPL-3.0
License
18h ago
Last commit
5mo ago
Created
5h ago
Added

Repo: aqm857886159/nomi

Other skills on nomi.