- 我的帖子已经打上 开源推广 标签: 是
- 我的开源项目完整开源,无未开源部分: 是
- 我的开源项目已链接认可 LINUX DO 社区: 是
- 我帖子内的项目介绍,AI生成、润色内容部分已截图发出: 是
- 以上选择我承诺是永久有效的,接受社区和佬友监督: 是
以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出
正文:
搞了大半年的 Koma Studio 今天正式开源。
GitHub - M-JYuan/Koma: Koma 发布仓库 · GitHub
https://gitee.com/M-JYuan/koma
License: GPL-3.0-or-later
它做什么
一个面向 AI 漫剧、短剧、连续视频内容生产的本地桌面工具。整条流水线一个应用搞定:
剧本编辑 → 角色/场景/道具拆解 → AI 参考图生成 → 分镜板 →
图片生成 → 视频生成 → 多轨时间轴 → FFmpeg 导出 / 剪映草稿导出
数据存本地 SQLite,AI 调用走你自己的 API key。不需要注册账号,没有数据上传。
截图




技术栈
- 桌面端: Electron 39 + ee-core(一个国产 Electron 应用框架,自带 ee-bin 打包链)
- 前端: React 19 + TypeScript + Vite 6 + Ant Design 6 + Tailwind CSS 4
- 状态: Zustand 5
- AI 编排: LangChain + MCP (Model Context Protocol),主进程跑,渲染进程走 IPC
- 本地存储: better-sqlite3(同步 API,配 schema migration,目前版本 v10)
- 视频: xgplayer 预览 + FFmpeg 二进制内置 + 自研时间轴 / 关键帧引擎
- 测试: Vitest
代码量:前端 95k 行 + 主进程 23k 行 ≈ 118k 行 TS/TSX。
内置 AI 渠道
接好 key 就能用:
类别 内置 LLM OpenAI · Claude · Gemini 文生图 OpenAI 兼容协议 · Grok · Nano Banana 图生视频 Grok · 即梦 (Seedance) · OpenAI 视频协议 语音合成 Edge TTS (免费) · OpenAI TTS · Fish Audio · GPT-SoVITS · Koma TTS想接其他上游?Provider SDK 完全开放,写个插件就能注册新 provider,无需改主程序。仓库里附带了两个插件示例:hello-world(最小示例)+
qiniu-image-hosting(七牛云图床,真实可用)。
工程上一些值得聊的设计
- 统一 Provider Registry — LLM/TTI/TTS/ITV 四类 AI 能力共享一个注册表模式,内置 provider 和插件 provider 用同一接口
- 任务持久化 — 长耗时的异步 AI 任务(生图/生视频)状态机 + SQLite 持久化,应用重启能继续追踪
- 分镜参考链 — 角色定妆照 → 分镜参考 → 视频首尾帧,引用关系建图,做连续镜头一致性
- AppKV-Settings 分离 — 项目数据 / 全局设置走两个独立 sqlite,迁移和导入导出更干净
- TypeScript strict 全开 —
strict + noUnusedLocals + noUnusedParameters,前端 src/ 零错误 - 签名链路 — electron-updater 走 ed25519 自签名,公钥嵌入应用,私钥签 release manifest,免依赖第三方证书
怎么参与
Bug 报告:Issues · M-JYuan/Koma · GitHub
想法讨论:M-JYuan/Koma · Discussions · GitHub
PR:见 CONTRIBUTING.md,遵循 Conventional Commits
觉得思路有意思点个 Star
特别欢迎:
- 视频创作者 “我想要 X 功能” 反馈
- 前端 / Electron 同行的代码审查建议
- 接其他 AI 上游的 PR(Provider SDK 文档在
docs/PLUGIN_DEVELOPMENT.md) - 视频 / 关键帧引擎方向的人来卷一下
1 个帖子 - 1 位参与者