agentCLAWHUBUnverified

叙事手绘故事视频

面向中文成语故事的多场景手绘同步短视频完整制作流程 Skill: 叙事手绘故事视频 Owner: tobewin Summary: 面向中文成语故事的多场景手绘同步短视频完整制作流程 Tags: latest:0.1.0 Version history: v0.1.0 | 2026-08-26T05:59:05.096Z | auto - Initial release of narrated-handdrawn-story-video. - Create high-quality Chinese story short videos with multi-scene hand-drawn visuals, synchronized Qwen3-TTS narration, subtitles, and licensed background music. - Automatic generation of opening poster with title, category,

OpenClaw

Rank

62

Safety

84

Downloads

1.1k

Updated

Oct 11, 2026

Version

0.1.0

Source

CLAWHUB

About

What it does, and when to use it.

Capability contract not published. No trust telemetry is available yet. 1.1K downloads reported by the source. Last updated 10/11/2026.

Avoid when

  • Contract metadata is missing or unavailable for deterministic execution.

Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing

Public facts

Every fact links back to the source it came from.

Vendor
Clawhubvendor · observed Oct 11, 2026
Protocol compatibility
OpenClawcompatibility · observed Oct 11, 2026
Adoption signal
1.1K downloadsadoption · observed Oct 11, 2026
Latest release
0.1.0release · observed Aug 26, 2026
Handshake status
UNKNOWNsecurity

Install and run

Setup complexity: low.

clawhub skill install s174rz3f0862tcfw7pzfh5w8kn83hv2z:narrated-handdrawn-story-video
  1. Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
  2. Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Contract: missing

curl -s "https://www.xpersona.co/api/v1/agents/clawhub-tobewin-narrated-handdrawn-story-video/snapshot"

Documentation

CLAWHUB

82,169 characters of source documentation, loaded on request.

Extracted files

5 files captured from the source.

renderer/skill-package/story-to-handdrawn-video/SKILL.md

---
name: story-to-handdrawn-video
description: Convert Chinese story copy or ordered local images into a hand-drawn diary-comic animation with handwritten captions, left-to-right black-and-white-to-color reveals, optional page-flip transitions, safe uncropped framing, and a silent Remotion picture track.
---

# Story to Hand-drawn Video

Use the project renderer through this Skill's `scripts/run_story_video.py`. Set `STORY_VIDEO_PROJECT` when the project is not the current working directory. The wrapper must not rely on an author-specific absolute path.

## Workflow

1. Accept inline Chinese story text, a UTF-8 text file, or ordered local images.
2. Preserve the user's wording. For text input, keep one complete sentence as one beat by default and split only long compound sentences at natural narrative turns.
3. For uploaded composite pages, automatically crop the handwritten caption and illustration, then derive an aligned black-and-white plate locally.
4. In direct-cut mode, keep the order `text → bw_full → color`; reveal every stage from left to right.
5. In page-flip mode, preserve the untouched uploaded master and show it statically before curling the page from the bottom-right corner. Do not add caption, black-and-white, or recoloring stages. Retain a faded version of the source page on the paper underside.
6. Keep all illustration marks inside the white safe border. Use contained framing and never `cover` cropping.
7. Produce a silent MP4. Voiceover and optional BGM are post-production tasks.
8. Report the scene count, duration, output path, and whether the result is plan-only, preview, or final.

## Uploaded images

Preview:

```bash
python3 scripts/run_story_video.py \
  --images /absolute/01.jpg /absolute/02.jpg \
  --title "故事标题" \
  --mode preview \
  --transition cut
```

Final direct-cut render:

```bash
python3 scripts/run_story_video.py \
  --images /absolute/01.jpg /absolute/02.jpg \
  --title "故事标题" \
  --mode full \
  --transition cut \
  --page-duration 4.4
```

Final page-flip render:

```bash
python3 scripts/run_story_video.py \
  --images /absolute/01.jpg /absolute/02.jpg \
  --title "故事标题" \
  --mode full \
  --transition page-flip \
  --transition-sec 0.7
```

Use `--layout auto|composite|full` to control how uploaded pages are interpreted.

## Story text

Plan without generating images:

```bash
python3 scripts/run_story_video.py --input /absolute/story.txt --title "故事标题" --mode plan
```

Prepare Codex Image2 jobs, then import and render:

```bash
python3 scripts/run_story_video.py --input /absolute/story.txt --title "故事标题" --mode generate
python3 scripts/run_story_video.py --mode import
python3 scripts/run_story_video.py --mode render
```

Use `--generator codex` by default. Use `--generator api` only when the user explicitly selects the API fallback and `OPENAI_API_KEY` is available. Use `--force` only when the user explicitly wants an existing generated batch replaced.

For time jumps, ambiguous pronouns, medical scen

SKILL.md

---
name: narrated-handdrawn-story-video
description: "Create polished Chinese story short videos from story text or ordered illustrations: story-specific multi-scene colored hand-drawn visuals, a text-led opening poster, sentence-synchronous local Qwen3-TTS narration with optional character voices, subtitles, and licensed BGM mixed beneath narration. Use for idiom stories, children's stories, history explainers, or any Chinese narrated hand-drawn short-video request where visual variety and audio-text synchronization matter."
---

# Narrated Hand-drawn Story Video

Use the installed `story-to-handdrawn-video` renderer for the picture track, then produce narration and the final mix. This is a quality-first workflow: never substitute one illustration across all story beats.

## Required outcome

- Create an opening poster (normally 3 seconds) with a legible Chinese title, category/tag, concise synopsis, and one takeaway; reserve uncluttered image space for this text. Render the complete image-and-text cover at frame 0; never fade its text in after the video begins.
- Turn the story into 8–18 narrative beats. For every beat, define setting, action, characters, emotion, and an exact subtitle/narration sentence before generating artwork.
- Generate or source a distinct scene illustration for every beat. Build multi-panel source art only as a generation convenience, then crop it into one image per beat.
- Keep character identity, era, palette, and framing consistent with the project's actual output ratio. Read `project.width` and `project.height` from the storyboard before prompting for art; the current renderer defaults to 1080×1440 (3:4), not 9:16. Use `contain` only after the source image has been normalized to the same ratio.
- Generate one local Qwen3-TTS segment per subtitle from that exact string. Use distinct voice-design instructions for narrator and named speaking characters. Derive the scene duration from the resulting audio; do not write narration separately from captions.
- Obtain BGM from a source whose license permits the intended use. Preserve the source URL, author, and license in an attribution text file next to the deliverable.
- Mix BGM softly and duck it under speech. Delay narration by the poster duration. Export a playable H.264/AAC MP4.

## Workflow

1. Write `story.txt` and a two-digit-keyed `visual-plan.json`. Split only at natural narrative turns; resolve pronouns and time jumps in the plan. Keep `caption` and `narration` identical for each scene.
2. Use the existing renderer wrapper to plan/generate/import the scene images. Set `STORY_VIDEO_PROJECT` to the cloned Remotion project when needed:

   ```bash
   STORY_VIDEO_PROJECT=/absolute/project \
   python3 /Users/bingo/.codex/skills/story-to-handdrawn-video/scripts/run_story_video.py \
     --input /absolute/story.txt --title "故事标题" --visual-plan /absolute/visual-plan.json --mode generate
   ```

3. Generate images with the image-generation tool. Prompt for exact story act

README.md

# Narrated Hand-drawn Story Video

An agent-native pipeline for Chinese idiom, history, and children's-story shorts. It turns a story into a vertical 3:4 video with story-specific colored scenes, a complete opening poster at frame 0, local Qwen3-TTS character voices, synchronized captions, and ducked licensed BGM.

## Actual output preview

The image below is the real first frame from the included workflow's **“纳土归宋”** output—not a concept mockup. Its title, category, synopsis, and takeaway are programmatically overlaid by the renderer from frame 0.

<p align="center">
  <img src="docs/assets/natuguisong-opening-poster.jpg" alt="纳土归宋:实际成片首帧预览" width="360" />
</p>

This repository packages an enhanced workflow around a bundled, MIT-licensed copy of [`gnipbao/story-to-handdrawn-video`](https://github.com/gnipbao/story-to-handdrawn-video). The original copyright and license are retained in [`renderer/LICENSE`](renderer/LICENSE).

## What is included

- `SKILL.md`: the agent contract for high-quality story-video production.
- `renderer/`: a 1080×1440 Remotion renderer with scene-reveal animation and generic `opening_poster` support.
- `scripts/synthesize_qwen3.py`: local Qwen3-TTS multi-role voice-plan synthesis.
- `scripts/check_cover_ratio.py`: rejects cover/video aspect-ratio mismatches.
- `scripts/mix_story_audio.py`: poster-delayed narration plus side-chain-ducked BGM.

## Quality rules

1. Every story beat needs a different, story-specific illustration.
2. Caption text and synthesized speech are exactly the same sentence.
3. The cover is displayed from frame 0 and includes tag, title, synopsis, and takeaway.
4. The cover asset must use the exact video aspect ratio; the validator rejects a mismatch.
5. Local Qwen3-TTS is the default. Online Edge TTS is not required.
6. BGM requires a usable license and an attribution file alongside the output.

## Install

```bash
git clone https://github.com/ToBeWin/narrated-handdrawn-story-video.git
cd narrated-handdrawn-story-video/renderer
npm ci
npm run check

# Optional: local Qwen3-TTS runtime
python3 -m venv ../.venv
../.venv/bin/pip install -r ../requirements-qwen3.txt
```

## Storyboard opening poster

Put a normalized 1080×1440 poster image in `renderer/public/assets/posters/`, then add this to `renderer/storyboard.json`:

```json
{
  "opening_poster": {
    "asset": "assets/posters/story-opening.png",
    "duration_sec": 3,
    "tag": "历史故事 · 五代十国",
    "title": "纳土归宋",
    "synopsis": "吴越王钱俶为何献出十三州,\n让江南归入大宋?",
    "takeaway": "减少战乱,守护百姓安宁"
  }
}
```

Run `npm run check` before rendering. It verifies that the first-frame poster uses the same ratio as the video canvas.

## Local Qwen3 multi-role voices

The voice-plan schema has one segment per caption. Use narrator and speaking-character entries independently:

```bash
.venv/bin/python scripts/synthesize_qwen3.py examples/qwen3-voice-plan.json renderer/public --allow-download
```

Each segment generates a local WAV under `renderer/public/`; measure 

renderer/README.md

# story-to-handdrawn-video

[中文](#中文) | [English](#english)

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)

---

## 中文

把中文故事文案或一组有序的手绘图片,转换成 3:4 竖屏**手绘日记漫画动画**:手写体字幕、从左到右的「文字 → 黑白画稿 → 彩色插画」揭示、可选的右下角卷页翻书转场、安全不裁剪的画面构图。基于 [Remotion](https://www.remotion.dev/),默认输出无配音、无音乐的 H.264 画面轨,方便后期配音。

本仓库包含两部分:

- **渲染器项目**(根目录):Remotion 工程,负责实际的分镜、动效和渲染。
- **Codex / Agent Skill**(`skill-package/`):可分发的 Skill,装进 Codex 等 Agent 后用自然语言驱动渲染器,无需手动跑脚本。

### 功能特性

- 中文故事自动分句和动态分镜,保留原文措辞
- 上传漫画页或完整图片,保持原顺序和构图
- 自动拆分上方文字区与下方插画区
- 本地生成与彩色插画对齐的黑白层
- `文字 → 黑白画稿 → 彩色插画` 从左到右揭示
- 可选右下角卷页翻书转场(纸背保留淡化的原页纹理)
- 1080×1440 正式渲染和 720×960 快速预览
- Codex Image2 工作流,以及显式选择的 OpenAI API 工作流

### 环境要求

- Node.js 20 或更高版本
- Python 3.10 或更高版本
- FFmpeg,且 `ffmpeg`、`ffprobe` 可从终端调用
- npm
- Google Chrome,或由 Remotion 管理的兼容浏览器
- 支持 Skill 的 Agent 运行时(Codex、Claude Code、Kimi Code 等)

### 安装

1. 准备渲染器项目:

```bash
git clone https://github.com/gnipbao/story-to-handdrawn-video.git
cd story-to-handdrawn-video
npm ci
npm run check      # TypeScript 检查 + 分镜结构校验,不访问网络
```

2. 把 Skill 装进 Agent 的 skills 目录:

```bash
# Codex
cp -R skill-package/story-to-handdrawn-video ~/.codex/skills/

# Claude Code / 通用 Agent
cp -R skill-package/story-to-handdrawn-video ~/.claude/skills/

# Kimi Code
cp -R skill-package/story-to-handdrawn-video ~/.agents/skills/
```

3. 告诉 Skill 渲染器项目在哪里(在渲染器项目目录内运行 Agent 时可省略):

```bash
export STORY_VIDEO_PROJECT=/absolute/path/to/story-to-handdrawn-video
```

### 使用方法(Codex Skill 示例)

装好 Skill 后,全部通过自然语言驱动,分句、分镜、图片生成、导入、渲染由 Agent 按 Skill 约定自动完成。

**故事文本 → 手绘动画**(Skill 的默认提示词):

```text
使用 $story-to-handdrawn-video 把这段故事生成可后期配音的手绘动画。

<在这里粘贴故事文本>
```

也可以把故事放在 UTF-8 文本文件里:

```text
使用 $story-to-handdrawn-video 把 /absolute/story.txt 生成手绘动画,标题叫「纸上的夏天」。
```

**上传图片 → 手绘动画**(图片按播放顺序给出):

```text
使用 $story-to-handdrawn-video 把这几张图片按顺序生成手绘动画:
/absolute/01.jpg /absolute/02.jpg /absolute/03.jpg
```

**翻书效果**(保留原始页面,从右下角卷页):

```text
使用 $story-to-handdrawn-video 把这些图片做成翻书效果的手绘动画:
/absolute/01.jpg /absolute/02.jpg
```

**先出预览**(720×960,确认效果后再出正式版):

```text
使用 $story-to-handdrawn-video 先给这个故事生成一个预览版。
```

使用建议:

- 故事文本默认一个完整句子一个节拍;想控制节奏,直接在故事里按句分行即可。
- 遇到时间跳跃、指代不明、医疗场景或年龄敏感角色时,建议先让 Agent 给出视觉规划(两位场景编号为键的 JSON),确认后再生成。
- 默认使用 Codex Image2 生成图片;只有明确要求时才会走 OpenAI API(需 `OPENAI_API_KEY`)。
- 输出是静音画面轨,配音和 BGM 属于后期工作。

### 输出契约

| 输入 | 模式 | 输出路径 |
| --- | --- | --- |
| 故事文本 | 正式 | `out/picture_silent.mp4` |
| 故事文本 | 预览 | `out/picture_silent-preview.mp4` |
| 上传图片 | 正式 | `out/uploaded_picture_silent.mp4` |
| 上传图片 | 预览 | `out/uploaded_picture_silent-preview.mp4` |

- 分辨率:正式 1080×1440,预览 720×960
- 编码:H.264,静音

Skill 的完整行为约定见 [skill-package/story-to-handdrawn-video/SKILL.md](skill-package/story-to-handdrawn-video/SKILL.md)。

### 项目结构

```text
.
├── src/                    # Remotion 组件(场景、擦除动效、翻页、缓动)
├── scripts/                # 渲染器入口与导入/校验/打包脚本(由 Skill 调用)
├── skill-package/          # 可分发的 Codex / Agent Skill
├── examples/               # 示例故事文本
├── references/             # 

_meta.json

{
  "ownerId": "kn75z6gevjsyrznm7dg2ez6sen82h8sz",
  "slug": "narrated-handdrawn-story-video",
  "version": "0.1.0",
  "publishedAt": 1787723945096
}
Github ReposUpdated 2d agoRank 70

AionUi

Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!

MCPOPENCLAW
Github ReposUpdated 6mo agoRank 70

activepieces

AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents

OPENCLAW
Github ReposUpdated 6mo agoRank 70

cherry-studio

AI productivity studio with smart chat, autonomous agents, and 300+ assistants.

MCPOPENCLAW
Github ReposUpdated 7mo agoRank 70

CopilotKit

The Frontend for Agents & Generative UI. React + Angular

OPENCLAW

Machine-readable data

The same record, as JSON, for agents and crawlers.

{
  "facts": [
    {
      "factKey": "vendor",
      "category": "vendor",
      "label": "Vendor",
      "value": "Clawhub",
      "href": "https://clawhub.ai/tobewin/skills/narrated-handdrawn-story-video",
      "sourceUrl": "https://clawhub.ai/tobewin/skills/narrated-handdrawn-story-video",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-10-11T11:47:07.368Z",
      "isPublic": true
    },
    {
      "factKey": "protocols",
      "category": "compatibility",
      "label": "Protocol compatibility",
      "value": "OpenClaw",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-tobewin-narrated-handdrawn-story-video/contract",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-tobewin-narrated-handdrawn-story-video/contract",
      "sourceType": "contract",
      "confidence": "medium",
      "observedAt": "2026-10-11T11:47:07.368Z",
      "isPublic": true
    },
    {
      "factKey": "traction",
      "category": "adoption",
      "label": "Adoption signal",
      "value": "1.1K downloads",
      "href": "https://clawhub.ai/tobewin/narrated-handdrawn-story-video",
      "sourceUrl": "https://clawhub.ai/tobewin/narrated-handdrawn-story-video",
      "sourceType": "profile",
      "confidence": "medium",
      "observedAt": "2026-10-11T11:47:07.368Z",
      "isPublic": true
    },
    {
      "factKey": "latest_release",
      "category": "release",
      "label": "Latest release",
      "value": "0.1.0",
      "href": "https://clawhub.ai/tobewin/narrated-handdrawn-story-video",
      "sourceUrl": "https://clawhub.ai/tobewin/narrated-handdrawn-story-video",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-08-26T05:59:05.096Z",
      "isPublic": true
    },
    {
      "factKey": "handshake_status",
      "category": "security",
      "label": "Handshake status",
      "value": "UNKNOWN",
      "href": "https://www.xpersona.co/api/v1/agents/clawhub-tobewin-narrated-handdrawn-story-video/trust",
      "sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-tobewin-narrated-handdrawn-story-video/trust",
      "sourceType": "trust",
      "confidence": "medium",
      "observedAt": null,
      "isPublic": true
    }
  ],
  "events": [
    {
      "eventType": "release",
      "title": "Release 0.1.0",
      "description": "- Initial release of narrated-handdrawn-story-video. - Create high-quality Chinese story short videos with multi-scene hand-drawn visuals, synchronized Qwen3-TTS narration, subtitles, and licensed background music. - Automatic generation of opening poster with title, category, synopsis, and takeaway at correct aspect ratio. - Strict workflow to ensure distinct illustrations per scene, faithful audio-text sync, and consistent visual identity. - Enforced checks for aspect ratio, source attribution, and completed narration before final MP4 delivery.",
      "href": "https://clawhub.ai/tobewin/narrated-handdrawn-story-video",
      "sourceUrl": "https://clawhub.ai/tobewin/narrated-handdrawn-story-video",
      "sourceType": "release",
      "confidence": "medium",
      "observedAt": "2026-08-26T05:59:05.096Z",
      "isPublic": true
    }
  ]
}

Record generated Oct 11, 2026.

Sponsored

Ads related to 叙事手绘故事视频 and adjacent AI workflows.