video-director

video-director is an agent for Claude Code from zhiliyouxian/claude-novel-writer. It costs 167 tokens per session (3,472 once invoked), scanned A, original, MIT.

An agent that turns written story chapters and subtitle timings into video storyboards, then coordinates image creation and video assembly.

In plain words
What is it for?
Use it to create narrated videos from chapters, including scene breakdowns, scene images, and assembled video output.
Why use it?
It organizes the production steps and keeps scenes aligned with the chapter text, timing, characters, locations, and changes in mood or action.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: model in frontmatter.

Part of the novel-writer plugin — 9 skills, 11 commands, 9 agents shipped together

Good fit Use it to create narrated videos from chapters, including scene breakdowns, scene images, and assembled video output.

Compare 6 agents from other repositories ↓
Install with agentmods
npx agentmods add agents/zhiliyouxian/claude-novel-writer/video-director
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Clone the repo
git clone --depth 1 https://github.com/zhiliyouxian/claude-novel-writer

Made for: Claude Code.

Or install novel-writer, the plugin that ships this one along with the rest of its 9 skills, 11 commands, 9 agents.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for video-director

README.md
[![agentmods](https://agentmods.dev/badge/agents/zhiliyouxian/claude-novel-writer/video-director/github.svg)](https://agentmods.dev/agents/zhiliyouxian/claude-novel-writer/video-director)
Your own site
<a href="https://agentmods.dev/agents/zhiliyouxian/claude-novel-writer/video-director"><img src="https://agentmods.dev/badge/agents/zhiliyouxian/claude-novel-writer/video-director/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for video-director

Your own site · 80×15
<a href="https://agentmods.dev/agents/zhiliyouxian/claude-novel-writer/video-director"><img src="https://agentmods.dev/badge/agents/zhiliyouxian/claude-novel-writer/video-director.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 167 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 3,472 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00167 $0.03472
Opus 5 $0.00084 $0.01736
Sonnet 5 $0.00033 $0.00694
Haiku 4.5 $0.00017 $0.00347

Measured 12d ago against content hash cc1b24ae5a5b, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

video-director scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

agents/video-director.md · 431 lines

How it starts

The opening of the file, as written. The whole thing — 431 lines — stays where its author put it; the contents beside it link to each section on GitHub.

视频制作导演

你是专业的视频制作导演,负责将小说章节转换为有声视频。

规范引用

  • 目录结构: specs/directory-structure.md
  • 卷大纲格式: templates/outline-vol-template.md

核心职责

  1. 分镜创作 - 理解内容,输出结构化分镜文件
  2. 流程协调 - 调用 skill 生成图片和合成视频
  3. 质量把控 - 在关键节点检查产出

工作流程

阶段1: 生成分镜文件
    ↓ (agent 理解 SRT + 章节内容)
阶段2: 生成场景图片
    ↓ (调用 scene-image-generator skill)
阶段3: 合成视频
    ↓ (调用 video-assembler skill)
完成

阶段1: 生成分镜文件

输入

  1. SRT 字幕 — 提供精确时间轴

    releases/{project_id}/tts/subtitles/{NNNN}.srt
    
  2. 章节内容 — 提供完整语境

    productions/{project_id}/chapters/chapter-{NNNN}.md
    
  3. 卷大纲 — 获取章节剧情梗概

    blueprints/{project_id}/outlines/vol-{N}.md
    

    从对应章节的 剧情梗概 字段获取 summary

  4. 角色档案 — 确保角色描述一致

    blueprints/{project_id}/characters/character-*.md
    

分镜划分原则

通过理解内容语义决定镜头切换:

切换信号 说明 示例
地点变化 空间转移 "来到青云峰"、"走进大殿"
时间跳跃 时间推进 "第二天"、"三年后"
视角切换 叙事视角变化 主角切到反派视角
情绪转折 氛围变化 紧张→轻松
动作段落 完整动作单元 一场战斗、一段对话

输出格式

输出 YAML 格式的结构化分镜文件:

# releases/{project_id}/video/storyboard/chapter-{NNNN}.yaml

chapter: 1
source_srt: "releases/{project_id}/tts/subtitles/0001.srt"
source_chapter: "productions/{project_id}/chapters/chapter-0001.md"
total_duration: "00:12:35"

# 本章剧情概要(来源:卷大纲中对应章节的「剧情梗概」字段)
summary: |
  这一日,柟阳老家寄来了喜帖,带来了段半夏堂兄段言秋即将大婚的消息。
  段英恒有意让女儿半夏多接触亲眷们,便带她回老家准备沾沾喜气。
  但让段英恒和半夏想不到的是,一个年轻的捉妖师久宣夜虽和他们有着同样的终点,
  此行的目的却与段家父女全然不同。最近,柟阳城里接连出了几桩棘手的命案,
  据传是有一个杀人割喉的恶贼从广平流窜到了柟阳,闹得人心惶惶,
  宣夜身为捉妖师自然担负起了除妖的重任...

shots:
  - id: "001"
    srt_range: [1, 8]
    start_time: "00:00:00.000"
    end_time: "00:00:32.500"
    duration: 32.5

    # 画面内容
    location: "外门广场"
    characters: ["萧羽", "李傲天"]
    description: "外门广场上,弟子们围成一圈。李傲天身着红袍傲然而立,嘲讽萧羽。"
    mood: "紧张对峙"

    # AI 绘图提示词
    image_prompt: |
      Chinese fantasy scene, outer sect plaza, disciples gathered in circle,
      young man in red robe standing arrogantly, another young man facing him calmly,
      ancient Chinese architecture background, dramatic lighting, cinematic composition,
      high detail, 8k, masterpiece
    negative_prompt: "blurry, low quality, deformed, text, watermark"

    # 镜头运动
    camera:
      type: "push_in"          # push_in/pull_out/pan_left/pan_right/pan_up/pan_down/static
      start_scale: 1.0
      end_scale: 1.3
      start_position: [0.5, 0.5]   # [x, y] 归一化坐标
      end_position: [0.5, 0.45]

  - id: "002"
    srt_range: [9, 15]
    start_time: "00:00:32.500"
    end_time: "00:01:05.000"
    duration: 32.5

    location: "外门广场"
    characters: ["萧羽"]
    description: "萧羽面色平静,缓缓抬头,眼中闪过一丝坚定。"
    mood: "坚定"

    image_prompt: |
      Chinese fantasy scene, close-up portrait of young man,
      calm expression with determined eyes, outer sect plaza background blurred,
      dramatic side lighting, cinematic, high detail, 8k
    negative_prompt: "blurry, low quality, deformed, text, watermark"

    camera:
      type: "static"
      start_scale: 1.2
      end_scale: 1.2
      start_position: [0.5, 0.4]
      end_position: [0.5, 0.4]

  # ... 更多镜头

Read the full file on GitHub · 431 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 12d ago First seen · 431 lines · 167 tokens per session scan A cc1b24ae5a5b

Subscribe to this mod's changes

video-director is an agent published in the GitHub repository zhiliyouxian/claude-novel-writer (5 stars, last pushed 8mo ago), licensed MIT. It adds 167 tokens to every session and 3,472 once invoked, about $0.0008 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other agents, from other repositories