Directing Tension Formula logo

Directing Tension Formula

Community
geegl
directing-tension-formula

(1) 不确定场景为何无聊;(2) 需要诊断张力断层——某段内容只有期待没有不确定(乏味的等待),或只有不确定没有期待(令人困惑的混乱);(3) 设计中国套盒式嵌套悬念——在解决旧问题的同时制造新问题

Overview

Publishergeegl
Repositorydirectorskills
Skill namedirecting-tension-formula
Stars
68
Forks
7
Bundled files
1
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 1 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by geegl on GitHub. Read the source before you install it.

Installation

Install the Directing Tension Formula AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/geegl/directorskills/tree/main/output/books/directing-masterclass/directing-tension-formula
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/geegl/directorskills.git /tmp/directorskills
mkdir -p .claude/skills
cp -r /tmp/directorskills/output/books/directing-masterclass/directing-tension-formula .claude/skills/directing-tension-formula
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Directing Tension Formula in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Directing Tension Formula on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Directing Tension Formula is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

期待与不确定的张力公式

R — 原文 (Reading)

戏剧几乎总是带来"期待混杂着不确定"的效果。"期待"指的是对于刚刚发生的事件将如何促发我们预料随后可能发生的新事件,我们所怀有的期待感,"不确定"是指尽管我们知道接下来会发生什么,但却不能肯定它的结果会怎样。 — Mackendrick, 第2章(引述戏剧评论家威廉·阿契尔), ~p.40

I — 方法论骨架 (Interpretation)

戏剧张力不是一个模糊的"好看"感觉,而是可以被拆解为两个独立变量的乘积:期待和不确定。期待来自观众对事件走向的预判——他们看到角色做出某个决定,便"期待"这个决定会产生后果。不确定来自结果的不可预测性——虽然知道大致方向,但具体结果仍然悬而未决。

这两个变量是乘法关系,不是加法关系。任何一方归零,张力就归零:只有期待没有不确定,观众会觉得乏味可期("我知道结局一定是好人赢");只有不确定没有期待,观众会感到困惑迷失("完全不知道在看什么")。

导演的实操任务是"中国套盒"式的张力嵌套:每当解决一个小悬念时,必须同时开启一个新悬念。如果解决了问题却没有引入新问题,张力就会断裂——这就是很多电影"中段塌陷"的根本原因。

这个公式不仅适用于电影编剧,也适用于任何需要"抓住注意力"的叙事场景:演讲、产品演示、游戏设计、教学。凡是需要让人持续关注的内容,都必须同时操控"期待"和"不确定"这两个变量。

A1 — 书中的应用 (Past Application)

案例 1: 特吕弗的鸡尾酒会观察法

  • 问题: 如何向学生证明"潜台词"比"对白"更有戏剧力量?
  • 方法论的使用: 特吕弗描述了一个鸡尾酒会场景——宾客们聊着苏格兰度假和孩子上学,但 Y 先生的眼睛从未离开 X 女士的腿,Z 小姐则冷眼审视 X 女士。观众(观察者)对宾客的对话有"期待"(无非是社交寒暄),但对视线交汇和隐藏欲望有"不确定"(谁在注意谁?谁在掩饰什么?)。期待和不确定同时运作,普通的社交场景变成了充满张力的戏剧。
  • 结论: "场景的实质内容不在这些绝对常规的对话当中,而是在人们的思维活动当中。"
  • 结果: 麦肯德里克用此案例向学生证明,即便在日常场景中,张力公式仍然有效——关键是找到隐藏的"不确定"层。

案例 2: "很久很久以前"框架中的攻击点设计

  • 问题: 如何确定故事应该从哪里"启动"?
  • 方法论的使用: 在"很久很久以前"故事构建框架中,"攻击点"(事情发生了)之后的核心动力机制就是张力公式。"有一天,事情发生了"制造期待(观众期待后果),"因此,接下来"和"但与此同时"维持不确定(结果未明)。
  • 结论: 攻击点的选择必须同时激活期待和不确定——太早则背景不足期待不够,太晚则拖沓。
  • 结果: 框架本身成为了一个可反复应用的张力检测工具。

A2 — 触发场景 (Future Trigger)

用户会在什么情境下需要这个 skill?

  1. 编剧或导演审视自己的剧本/分镜时,感觉某段"不够抓人"但不知道问题出在哪里
  2. 产品经理或内容创作者设计用户引导流程时,需要让用户"一直想看下去"
  3. 游戏设计师设计任务链时,需要确保每个任务完成后玩家仍有动力继续

语言信号

  • "这场戏好像缺点什么"
  • "观众/用户到这里就不想看了"
  • "怎么让人一直想看下去"
  • "张力断了" "中段塌了"

与相邻 skill 的区分

  • 与 f04(戏剧反讽操控法)的区别:f04 是张力公式的一种高级应用——通过"观众知道角色不知道的信息"来制造不确定。张力公式是更底层的原理,涵盖所有类型的期待和不确定组合。

E — 可执行步骤 (Execution)

  1. 扫描:提取当前内容的"期待源"和"不确定源"

    • 完成标准:列出当前段落中所有让受众产生"接下来会怎样"感的元素(期待源),以及所有让受众"无法确定结果"的元素(不确定源)
    • 判停条件:如果某一列为空,问题已定位——缺什么补什么
  2. 检测:计算两个变量的"强度匹配"

    • 完成标准:对每个期待源和不确定源标注强度(高/中/低),检查是否存在"期待很强但不确定很弱"或反之的失配
    • 判停条件:两个变量的强度在同一量级,且没有任何一方为零
  3. 嵌套设计:在解决点同时埋入新问题

    • 完成标准:每个"答案/解决"旁边标注一个新的"疑问/冲突",确保受众在获得满足的同时产生新的好奇
    • 判停条件:从头到尾不存在任何"张力真空"——即两个相邻的解决之间没有新的悬念源

B — 边界 (Boundary)

不要在以下情况使用此 skill

  • 纯粹的情感表达场景(如诗歌式慢电影中的冥想段落):这些场景的价值在于体验本身而非叙事推进,强行注入张力会破坏节奏
  • 纪录片中客观信息传递段落:某些段落的功能就是"告知"而非"吸引",此时追求张力可能导致信息失真

作者在书中警告的失败模式

  • 反例 ce07(闪回作为"解药"):当编剧无法在"现在时"中维持张力时,用闪回制造虚假的不确定——这不是真正的张力,而是用时间跳跃掩盖结构缺陷
  • 反例 ce02(活动冒充动作):某些场景看似有张力(角色在做某事),但因为缺乏真正的"不确定"(事件没有产生可见的戏剧结果),实际上只是"活动"而非"动作",张力公式中不确定=0

作者的盲点 / 时代局限

  • 麦肯德里克的案例几乎全部来自经典好莱坞/英国叙事电影,对非线性叙事(如《记忆碎片》)或碎片化叙事(如王家卫)中的张力机制未做讨论。这些作品可能用"困惑"代替"不确定",用"氛围"代替"期待",形成另一种有效的张力结构
  • 公式假设张力是"吸引观众"的唯一机制,但现代流媒体环境中"背景播放"等观看模式可能需要不同的注意力模型

容易混淆的邻近方法论

  • "悬念设计"(f28:悬念与震惊的二择决策):悬念和震惊只是张力公式的两种操作手法,不是张力本身
  • "叙事动力"(g16):叙事动力是张力在场景间因果链上的体现,张力公式则适用于单个场景内部的微观诊断

相关 skills

  • depends-on: f04(戏剧反讽操控法——张力公式的高级应用形式)
  • contrasts-with: f29(场景必要性检验法——检验的是场景的结构性存在理由,而非微观张力)
  • composes-with: f01("很久很久以前"故事构建框架——张力公式是框架中每个步骤的底层动力)

审计信息

  • 验证通过: V1 ✓ / V2 ✓ / V3 ✓
  • 蒸馏时间: 2026-06-07

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Directing Tension Formula AI skill do?

(1) 不确定场景为何无聊;(2) 需要诊断张力断层——某段内容只有期待没有不确定(乏味的等待),或只有不确定没有期待(令人困惑的混乱);(3) 设计中国套盒式嵌套悬念——在解决旧问题的同时制造新问题

Why use Directing Tension Formula on TypingMind?

Because you install it once and use it with any model. Directing Tension Formula is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Directing Tension Formula in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/geegl/directorskills/tree/main/output/books/directing-masterclass/directing-tension-formula. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Directing Tension Formula?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Directing Tension Formula?

As many as you like. As long as a model supports skills, you can use Directing Tension Formula with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Directing Tension Formula AI skill free?

Yes. It is published on GitHub by geegl under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇