# Kinema
**Repository Path**: smallc/Kinema
## Basic Information
- **Project Name**: Kinema
- **Description**: 由 Codex、Claude Code 等工具驱动 AI漫剧、AI电影、AI解说的 AI大模型 影像智能体。控制章节与分镜的多层智能规划,统一管理角色、场景、道具与视觉资产,贯通从内容策划、镜头生成到最终成片的完整生产流程。
- **Primary Language**: Python
- **License**: AGPL-3.0
- **Default Branch**: main
- **Homepage**: https://bladex.cn
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2026-09-03
- **Last Updated**: 2026-09-04
## Categories & Tags
**Categories**: Uncategorized
**Tags**: AI, Agent, skills, claude, codex
## README
---
传统 AI 视频创作往往要在多个工具之间来回切换:脚本、分镜、生图、配音、视频和剪辑各自分散,
角色与场景设定也容易遗落在不同会话里。改动一处,后续产物常常要跟着重做。**Kinema** 把这些环节接进同一条制作管线,
从立项一路推进到可持续制作的系列内容;资产可以复用、追踪和回滚。
- ✍️ **长篇小说创作** —— 十章为一批,每批完成后自动经过**七项复核**(设定一致性 · 人设 · 情节连贯 ·
AI 腔 · 文风 · 伏笔 · 节奏);角色口吻、道具、卷纲和伏笔账本也会随剧情更新。
可以从零开始原创,也可以继续一部尚未完成的作品。
- 🎬 **小说改剧本,剧本拆分镜** —— 一章就是一集,每个镜头配好中英文提示词;
开拍前先跑一遍零成本静态体检,运镜雷同、景别单调、AI 腔都会被标出来。
- 🎥 **3D 导演台** —— 正式生成前先用灰模完成走位、动作和镜头调度,
**30+ 个运镜预设**覆盖十余种标志性镜头语言,并可渲染为可复现的预演片。
- ✏️ **简笔分镜板** —— 把一个镜头按时间切成几段动作,画成铅笔草图,再附一条逐秒时间轴。
视频模型拿到的就不是一句笼统描述,而是每一秒该发生什么。
- 🎭 **角色设定表** —— 三区两视设定图、道具三视图、取景地主视觉图,按出场逐镜自动挂载。
一张脸能在几十个镜头里稳住,靠的就是这套。
- 🎨 **常用画风预设** —— 赛博朋克 · 新海诚 · 吉卜力 · 国漫仙侠 · 3D国漫 · 皮克斯 · 迪士尼3D ·
写实CG · 美漫 · 水墨 · 粘土定格 · 微缩世界 · 像素 · 虚拟制片,切换画风档即可统一调整整套视觉语言。
产物逐阶段落盘,经你确认才进入下一步;云端 AI 与本地部署 AI 可自由配置;**引擎在你的机器上运行,密钥由你保管,成片归你所有。**
## 🎬 系统界面
Kinema 把执行交给引擎,把创作判断和验收留给你。因此它提供的是完整制作台,而不只是进度显示。
下面的界面顺序也对应实际制作流程。
项目页 — 一部剧一页看全:原著、每一集的渲染模式/镜数/时长/实际花费,下面接着角色设定
|
角色设定 — 每个角色一张三区设定图:正面肖像特写与正/背面全身像,锁定的音色就在卡上试听
|
道具设定 — 每件道具一张结构三视图,配材质与光线说明。同一件东西,在每个镜头里长得一样
|
场景设定 — 每个场景一张主视觉,配材质与光线说明。同一个地方,在每个镜头里长得一样
|
剧本工作台 — 先有小说:350 章、130.9 万字,左目录右正文,扩写/拆书/图书/问书指令一键取用
|
人物关系图谱 — 角色、阵营、地点、器物和世界观连成一张图,每条关系都标明类型(亲缘/盟友/师承/敌对/情感/归属/竞争)。人物与设定的连贯性可以直接查询,不必全靠记忆
|
章节制作台 — 顶上五道关口(脚本 → 分镜图 → 配音 → 动态片段 → 成片)
,中间时间线,下面资产血缘:改一张设定图,下游镜头当场标为过期
|
分镜脚本 — 一镜一行:景别、运镜、时长、台词、情绪,以及完整的画面与运动提示词
|
3D 导演台 — 用灰模完成走位、动作和镜头调度,再渲染为可复现的预演片;30+ 个运镜预设覆盖十余种标志性镜头语言
|
简笔分镜板 — 一个镜头切成几拍铅笔草图,五色标注运动轨迹/摄影机运动/取景/灯光/声音,
配一条逐秒说明交给视频模型
|
音频剧本 — 把整章声音写成一份可执行脚本:声线、台词和秒级时间轴按段编排,参考音逐条对位;
可从分镜一键起草,再由生成式音频模型输出整轨
|
分镜卡与放映 — 每镜的图、配音、动态片段各自独立审阅,旁边就是拼好的成片;
点一下复制一条交给 agent 的改镜指令
|
## 🚀 快速开始
唯一的硬依赖是 **FFmpeg**。引擎内核零 Python 依赖,mock 链路完全离线。
```bash
brew install ffmpeg # macOS · Debian: sudo apt install ffmpeg
cd engine
python3 -m kinema doctor # 自检 ffmpeg / 配置 / providers / 存储后端
# 离线端到端、零成本:占位图与合成音跑通真实管线的每一段
cp examples/sample_project.json /tmp/demo.json
python3 -m kinema run --project /tmp/demo.json --mock
python3 -m kinema studio # 打开制作台 → http://127.0.0.1:8787
```
## 🎞️ 一集怎么做出来
在编码 agent 中调用对应的画风能力包,就可以开始制作:
```
/kn-cyberpunk 义体佣兵突入财阀塔 47 层:一条走廊,十二个守卫,战术系统损坏度 80%
```
实际执行流程如下。**每道关口都会先将产物落盘并等待确认**;只有显式执行 `kinema run` 才会连续跑完整条管线:
```bash
python3 -m kinema project new --title "剑与雨" --id bladerain --profile cyberpunk
python3 -m kinema chapter new bladerain --title "第四十七层" # → ch01
# ↑ agent 在这里接手:写文案、拆分镜、写双语提示词
python3 -m kinema project refs bladerain # 设定集 —— 一致性的根基
python3 -m kinema lint --chapter bladerain/ch01 # 零成本静态体检:运镜雷同、景别单调、反 slop
python3 -m kinema gen-image --chapter bladerain/ch01 --only 1 # 只出首镜,先把风格定死再花钱
python3 -m kinema tts --chapter bladerain/ch01 # 配音(按角色卡声线描述定制的音色)
python3 -m kinema animatic --chapter bladerain/ch01 # 全片 Ken Burns 样片过节奏审,零视频成本
python3 -m kinema gen-video --chapter bladerain/ch01 --dry-run # 花钱前逐镜报价
python3 -m kinema gen-video --chapter bladerain/ch01 --approved-only # 只烧点过头的镜
python3 -m kinema assemble --chapter bladerain/ch01 # 动态版成片
# 渲染档按内容定(有对白 → native,全旁白 → dubbed);--native / --dubbed / --kenburns 可为本次覆盖
```
## 🧭 为什么是 Kinema
| 主张 | 依据 |
|---|---|
| 💰 **生成前先算清成本** | `--dry-run` 逐镜报价;`done` 的镜被锁定,`--force` 也不覆盖;整批预估超过 `budget` 时,事前闸不会发出任何请求;预估与实际花费分别记录。 |
| 🎭 **用资产与血缘管理一致性** | 角色三区两视设定图、道具三视图和取景地主视觉图按出场逐镜挂载;固定 seed;设定图一旦变化,资产血缘会立即标记受影响的下游镜头。角色身份先于运动生成确定。 |
| 🏭 **工作室级审阅流程** | 五态审阅 × 版本栈 × 像素锚定评论 × 宫格候选选优 × 局部框选改造 × 跨镜批量编辑。agent 提出方案,你负责通过、修改或回滚。 |
| 💻 **普通笔记本就够** | 重活全在云端 API,本地只做 FFmpeg 合成、字幕与运镜——**纯 CPU,无需显卡**。 |
| 🔌 **换模型不改制作管线** | 代码绑定图像、视频、语音和音乐能力,而不是具体厂商。在 `models.yaml` 中增加模型别名或切换默认 provider,所有画风档沿用同一套路由。 |
| 🤖 **支持多种编码 agent** | `AGENTS.md` 为 Claude Code、Codex、Cursor、Copilot、Windsurf、Aider 和 Zed 提供统一工程规范;各工具的专属文件只保留入口,不复制规则。 |
## 🎛️ 三种渲染模式
渲染模式按章设定,一章一个入口。不写时引擎按内容定档:有对白上镜的章走 **native**,
全旁白的解说章走 **dubbed**,用音频剧本整轨的章走 native。Ken Burns 不作缺省,
要零成本静图版就显式加 `--kenburns`。
| 模式 | 画面 | 声音 | 视频成本 |
|---|---|---|---|
| **kenburns** | 静图缓动运镜 | Kinema 配音 + BGM | **零** |
| **dubbed** | Seedance 图生视频,闭唇出片,表演跟随配音节奏 | Kinema 配音 + BGM | 按秒计费 |
| **native** | Seedance 原生音画;每位说话人的选角音色作参考音随请求附发,口型、台词、嗓音出自同一次生成 | 模型自声上主轨;旁白镜要混烧 TTS 旁白时按章打开 `native_voiceover`(单次可用 `assemble --burn-voice`) | 按秒计费 |
## 🎨 模型与画风
模型和画风统一配置在 **`config/models.yaml`**,并内置十余个 provider 别名:
| 能力 | 主力 | 备选 |
|---|---|---|
| 图像 | Seedream | Nano Banana · 通义万相 · MiniMax |
| 视频 | Seedance 2.0 mini / 2.5 | Veo · MiniMax H3 |
| 语音 | seed-audio-1.0 按声线描述定制音色(缺省)· seed-tts-2.0 模版音色 | MiniMax |
| 音乐 | ElevenLabs | MiniMax · 内置 CC0 曲库(无密钥自动降级) |
此外还有 **40+ 个画风档**、**10+ 个特效**、**零成本转场**(配 CC0 音效)、
**30+ 个运镜预设**(覆盖十余种标志性镜头语言),以及随画风走的字幕版式。
## 📚 能力包
Kinema 的创作流程整理为一组 **能力包**,统一放在 [`.claude/skills/`](.claude/skills/);
内容覆盖故事拆镜、不同画风的提示词写法和配音表演指导。
- **Claude Code** 自动发现,直接斜杠调用:`/kn-anime`、`/kn-explainer`、`/kinema-novel`…
- **其他 agent** 走 [`docs/skills/INDEX.md`](docs/skills/INDEX.md),同一批内容的中立索引。
`kinema` 定义通用制作流程,其他能力包在此基础上扩展。
## 🗂️ 工程结构
```text
Kinema/
├── .claude/skills/ # 能力包唯一实体 —— 单源原地编辑(frontmatter 由编译器维护)
├── .agents/skills # → .claude/skills 的别名链接(Codex · Gemini CLI · Amp · OpenCode)
├── .cursor/ · .github/ # Cursor 与 Copilot 的薄指针,只指回 AGENTS.md,不承载内容
├── agent/ # 指挥层控制平面单源(编译管线说明见 agent/README.md)
│ ├── manifest.json # skill 注册表:名称 · 描述 · 类型 · 状态 · 权限(元数据只改这里)
│ ├── contracts.json # 机器契约源:PromptSpec / ChapterPlan
│ └── adapters/ # 宿主入口模板 → CLAUDE.md · .cursor/rules · copilot-instructions
├── assets/ # 仓库资产集合
├── config/ # models 模型与画风 · voices 音色 · audio · templates · storage · branding
├── docs/
│ ├── agents/ # 工程指南的详情层 —— 由 AGENTS.md 索引,动到对应模块前才读
│ ├── kinema/ # 架构总览 design.md · 流程走读 video-pipeline.md · 数据契约 project.schema.json · 厂商矩阵
│ ├── skills/ # 能力包工具中立索引 INDEX.md(生成物,勿手改)
│ └── sql/ # MySQL 建库建表脚本(`db schema` 的生成物,勿手改)
├── engine/
│ ├── kinema/ # 100+ 个 Python 模块 · 执行引擎(内部没有 LLM)
│ │ ├── assets/ # 内置字体 · 设定图与简笔板版式样板
│ │ ├── pipeline/ # 生图 · 配音 · 字幕 · 运镜 · 转场 · 混音 · 合成
│ │ ├── providers/ # 厂商适配器,按「能力 × 厂商」一文件一个
│ │ ├── storage/ # 本地 JSON ⇄ MySQL ⇄ 对象存储
│ │ ├── studio/ # 制作台后端(scanner · server · jobs · actions)
│ │ ├── studio_app/ # 制作台前端,原生 ESM 免构建(app/ 制作台 · director/ 3D 导演台)
│ │ └── cli.py # 50+ 个子命令 · 命令行为以此实现为准
│ ├── examples/ # 可直接跑的样例 project.json
│ └── tests/ # 2000+ 个离线守卫用例
├── music/ # 内置 CC0 曲库与音效库(媒体不入 git,`python music/download.py` 重建)
├── tools/ # agent_assets.py 控制平面编译器 · agents_alias.py 修 Windows 别名链接
├── project/ # 工作区产物落点 —— 你的项目数据在这里(gitignored)
├── AGENTS.md · CLAUDE.md # 工程指南(所有编码 agent 的唯一真源)· Claude Code 入口指针
├── SETUP.md · DEVELOP.md # 首跑与就绪判定 · 全景架构与二开配方
└── LICENSE # GNU AGPL v3
```
## 📄 文档
| 文档 | 内容 |
|---|---|
| [`AGENTS.md`](AGENTS.md) | **Agent Kernel**——架构边界、不可违背的结论与按模块阅读导航。所有 agent 始终加载 |
| [`DEVELOP.md`](DEVELOP.md) | **开发手册**——模块地图、完整 CLI 参考和二次开发说明,并由测试校验其与代码结构一致 |
| [`SETUP.md`](SETUP.md) | 首跑安装与就绪判定 |
| [`docs/kinema/design.md`](docs/kinema/design.md) | **架构总览**——三层/管线/一致性/声音/成本一页看全,附立项取舍存档 |
| [`docs/kinema/video-pipeline.md`](docs/kinema/video-pipeline.md) | **流程走读**——文档/状态/并发模型,再按数据流逐步写清每一步的判据、产物、闸与写回 |
| [`docs/skills/INDEX.md`](docs/skills/INDEX.md) | 能力包的中立索引 |
| [`config/README.md`](config/README.md) | 全部配置文件的字段级说明与换模型手册 |
| [`docs/kinema/project.schema.json`](docs/kinema/project.schema.json) | `project.json` 数据契约 |
| [`docs/kinema/providers.md`](docs/kinema/providers.md) | 各厂商能力、计费与限制 |
| [`engine/kinema/cli.py`](engine/kinema/cli.py) | 文档与代码打架时,**命令行为以它为准** |
## 📜 致谢
- **[FFmpeg](https://ffmpeg.org/)**——唯一的硬依赖,本地合成、运镜、字幕烧录与响度处理全靠它。
- **[Three.js](https://threejs.org/)**——以 MIT 许可 vendored 进来驱动 3D 导演台,
出处见 [`engine/kinema/studio_app/vendor/NOTICE.md`](engine/kinema/studio_app/vendor/NOTICE.md)。
- **[FreePD](https://freepd.com/)** 与 **[Freesound](https://freesound.org/)**——内置
100+ 首 BGM 与 18 枚音效的 CC0 来源,逐条出处登记在 [`music/ATTRIBUTION.md`](music/ATTRIBUTION.md)。
## ⚖️ 许可证
Kinema 以 [**GNU AGPL v3**](LICENSE) 开源。
- **个人免费**——个人使用、学习、研究与评估完全免费,不需要任何额外授权。
- **闭源商用**——对外 SaaS、嵌入闭源产品或 OEM 交付、不打算开源的内部平台,需购买商业授权。
**商业授权与智能体定制咨询** | [bladex.cn](https://bladex.cn) | bladejava@qq.com
---
**Kinema** · Copyright (C) 2018-2099 [BladeX](https://bladex.cn) · [AGPL v3](LICENSE)