Emotion Performance Director logo

Emotion Performance Director

Community
kangarooking
emotion-performance-director

Use when the user wants to design, rewrite, refine, or vary emotional acting prompts for live-action AI video characters. Translate abstract emotions, dialogue, subtext, and scene context into concise, observable, temporally ordered micro-performance directions. Preserve the user's existing character, scene, camera, and dialogue requirements unless they explicitly ask to change them. Do not use for general story writing, shot design, action choreography, or visual asset design when emotional performance is not the main task.

Overview

Publisherkangarooking
Repositorydirector-skills
Skill nameemotion-performance-director
Stars
233
Forks
33
Bundled files
Instructions only
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.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

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

Installation

Install the Emotion Performance Director 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/kangarooking/director-skills/tree/main/emotion-performance-director
  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/kangarooking/director-skills.git /tmp/director-skills
mkdir -p .claude/skills
cp -r /tmp/director-skills/emotion-performance-director .claude/skills/emotion-performance-director
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Emotion Performance Director 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 Emotion Performance Director 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 Emotion Performance Director 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.

Emotion Performance Director

Purpose

Turn abstract emotional intent into AI-video-executable human performance.

The skill does not merely label emotion. It describes how emotion becomes visible and audible through behavior over time.

Core formula:

Subtext → key performance signals → temporal order → afterbeat

Where performance signals are selected only as needed from:

gaze / breath / face / body / voice

Do not force every channel into every prompt.

Core Principles

  1. Subtext drives performance. Infer what the character wants, resists, hides, or cannot fully control. Do not generate from the emotion label alone.

  2. Describe observable behavior, not abstract emotion words. Prefer “her jaw tightens and her voice drops” over “she becomes very angry.”

  3. Use the fewest signals that make the emotion legible. Normally select 2–4 dominant signals from gaze, breath, face, body, and voice. If removing a gesture does not weaken the performance, remove it.

  4. Emotion unfolds in time. Organize the performance as:

    • before the line
    • during the line
    • after the line
  5. Preserve one psychological cause. Gaze, breath, facial tension, posture, and voice should feel like different consequences of the same internal state, not a collection of unrelated acting tricks.

  6. Default to naturalistic screen acting. Favor restrained micro-reactions, slight delays, incomplete gestures, and residual reactions after speech. Avoid theatrical overacting unless the user explicitly requests it.

Input Handling

Minimum usable input:

  • dialogue or intended action
  • emotional intent

Optional context may include:

  • relationship between characters
  • immediate trigger or situation
  • subtext
  • desired restraint/intensity
  • POV or eyeline target
  • existing full video prompt

Do not require the user to provide structured parameters when natural-language context is sufficient.

If the user provides an existing video prompt, modify only the emotional-performance layer unless asked to change other elements.

Workflow

1. Infer the subtext

Determine the immediate psychological intention behind the line.

Examples:

  • “I want you to leave before I lose control.”
  • “I am hurt, but I do not want you to see how much.”
  • “I am pretending this does not matter anymore.”
  • “I want to push you away while still hoping you stay.”

Use this internally to keep the performance coherent. Do not explain the subtext unless the user asks for analysis.

2. Select the dominant performance signals

Choose only the channels that materially distinguish the intended emotion.

Gaze

  • locks onto the other person
  • avoids eye contact
  • briefly loses focus
  • flickers toward and away from the target
  • becomes dull, alert, playful, guarded, or vacant through observable eyeline behavior

Breath

  • shallow and steady
  • held briefly before speaking
  • heavier through the nose
  • interrupted or uneven
  • one restrained exhale or sigh

Face

  • jaw tightens
  • lips press together
  • mouth tries to suppress a smile
  • brow contracts slightly
  • facial muscles lose tension

Body

  • shoulders sink or tighten
  • torso leans slightly forward or retreats
  • hands hesitate or lose their resting position
  • head turns away after the line
  • weight shifts subtly rather than making a large gesture

Voice Describe only the useful vocal behavior, such as:

  • volume
  • pace
  • breath support
  • articulation
  • pitch movement
  • pause
  • ending/tail

Do not over-specify every vocal parameter.

3. Arrange the signals in time

Use a simple three-beat structure.

Before the line Establish the emotional state through one or two preparatory signals.

During the line Specify the essential vocal delivery and any concurrent restrained physical action.

After the line Add one residual reaction when useful: held eye contact, looking away, a delayed tear, a small tremor, shoulders dropping, a swallowed breath, or stillness.

The afterbeat should feel like a consequence, not an extra dramatic flourish.

4. Prune

Before output, remove:

  • redundant gestures
  • multiple signals expressing the same thing
  • gestures added only to fill a channel
  • simultaneous reactions that should happen sequentially
  • behavior that contradicts the subtext
  • exaggerated crying, shouting, shaking, or gesturing unless explicitly required

Rule:

If the emotion still reads after deleting an action, prefer deleting it.

Consistency Rules

  • Do not make the character look into the camera by default. Use the scene partner or established eyeline unless the user requests POV, selfie, direct address, or camera-facing performance.
  • Preserve dialogue wording exactly unless the user asks to rewrite it.
  • Do not automatically add tears to sadness, grievance, despair, or breakdown.
  • If tears are used, control their timing. A delayed tear after the line is often more natural than beginning the shot already crying.
  • Low-energy emotions should generally use fewer and smaller movements than high-arousal emotions.
  • High restraint should reduce external movement rather than merely adding words such as “restrained” or “controlled.”
  • Breakdown does not mean every channel becomes extreme at once. Loss of breath rhythm or motor control can carry the performance without exaggerated facial acting.
  • Stillness is a valid performance choice.

Output Contract

By default, output one concise natural-language emotional performance prompt that can be inserted directly into an AI video prompt.

Do not expose intermediate analysis, channel labels, scoring systems, or psychological taxonomies unless the user explicitly requests them.

Write in chronological order and keep the character as the grammatical subject whenever possible.

Preferred shape:

[subtext-informed setup]. Before speaking, [1–2 observable signals]. Then, [voice + line + at most one concurrent physical signal]. After speaking, [one residual reaction].

Do not mechanically reproduce this wording; use natural prose.

Few-shot Reference: Same Line, Different Emotion

These examples demonstrate how the same dialogue can produce distinct performances through different signal selection and timing. Treat them as references, not fixed templates.

Playful / smiling: “滚”

She looks toward the other person with lively eyes, lightly presses her lips together as if suppressing a smile, and tilts her head slightly. One hand makes a small, casual shooing motion as she says with a soft laugh in her voice, “滚啊~”, letting the ending trail lazily. Only after speaking does she turn her face away a little, suddenly shy and unwilling to hold eye contact.

Hurt / aggrieved: “滚”

Her eyes are slightly wet and vulnerable. Her breath catches once, her lips press together, and her shoulders draw inward. She says “滚!” with a choked but forceful voice. After the word lands, she looks back at the other person from the side and holds the stare.

Disappointed: “滚”

The brightness gradually leaves her eyes. She lets out one low breath, her shoulders loosen and sink, and her body shifts a small step backward. She says “滚。” quietly, clearly, and without dragging the word out. Afterward she does not add anything or move to recover the moment.

Controlled anger: “滚”

She fixes her gaze on the other person. Her jaw tightens, her breathing becomes heavier, and her upper body presses forward almost imperceptibly. Instead of shouting, she says “滚。” in a low, tight, hard voice with clean articulation. After speaking she keeps staring, while a small involuntary tremor passes through her tense body.

Breakdown: “滚”

Her gaze begins to lose stability and her breathing turns uneven. She retreats slightly, and her hands fail to find a natural resting position. She forces out “滚……” through a tense voice carrying restrained sobbing, the ending unable to close cleanly. Only after the line does one clear tear finally run down her cheek.

Emotionally exhausted / dead inside: “滚”

She never fully looks at the other person. Her gaze remains hollow and unfocused, her breathing shallow but stable, and her shoulders hang slightly lower than before. She says “滚。” evenly and decisively, without emphasis or sobbing. As she speaks, one tear slips silently from her lower eyelid while the rest of her face barely reacts.

Quality Bar

A successful output should pass four questions:

  1. Can the video model observe every important instruction?
  2. Do the chosen signals come from the same psychological state?
  3. Is there a clear before/during/after sequence rather than simultaneous action stacking?
  4. Can anything be removed without weakening the intended performance?

If the answer to question 4 is yes, remove it before returning the prompt.

Frequently asked questions

What does the Emotion Performance Director AI skill do?

Use when the user wants to design, rewrite, refine, or vary emotional acting prompts for live-action AI video characters. Translate abstract emotions, dialogue, subtext, and scene context into concise, observable, temporally ordered micro-performance directions. Preserve the user's existing character, scene, camera, and dialogue requirements unless they explicitly ask to change them. Do not use for general story writing, shot design, action choreography, or visual asset design when emotional performance is not the main task.

Why use Emotion Performance Director on TypingMind?

Because you install it once and use it with any model. Emotion Performance Director 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 Emotion Performance Director in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/kangarooking/director-skills/tree/main/emotion-performance-director. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Emotion Performance Director?

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 Emotion Performance Director?

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

Is the Emotion Performance Director AI skill free?

Yes. It is published on GitHub by kangarooking 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 👇