demo.mp4成品样本 |
face.swap.mp4人脸适应功能 |
AI 全自动创作的健身短视频 — 从选题到成片,零人工干预,支持一键换人物形象
AutoViral 是一个本地运行的 AI 内容工作台,你描述一个选题,AI Agent 完成从调研到成片的全部工作:
你:"做一个月球战争的科幻短片"
│
▼
┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐
│ 话题调研 │───▶│ 内容规划 │───▶│ 素材生成 │───▶│ 合成输出 │
│ │ │ │ │ │ │ │
│ AI 搜索 │ │ 分镜脚本 │ │ AI 生图 │ │ 视频拼接 │
│ 趋势分析 │ │ 文案策划 │ │ AI 生视频 │ │ 字幕配乐 │
│ 竞品参考 │ │ 配乐规划 │ │ AI 配乐 │ │ 转场特效 │
└─────────┘ └─────────┘ └─────────┘ └─────────┘
每个步骤 AI 会先和你确认方案,等你同意后再执行。你随时可以在对话中给反馈、调整方向。
| 类型 | 目标平台 | 产出 |
|---|---|---|
| 短视频 | 抖音 | 带字幕、配乐的完整视频 |
| 图文 | 小红书 | 专业排版的多图 + 发布文案 |
| 能力 | 技术方案 | 说明 |
|---|---|---|
| AI 图片生成 | OpenAI GPT-5.4 Image (via OpenRouter) | 支持 4K、自定义宽高比、图生图 |
| AI 视频生成 | Dreamina CLI (Seedance 2.0) | 文生视频、图生视频、首尾帧、多帧 |
| AI 音乐生成 | Google Lyria 3 Pro | 文生音乐、图生音乐 |
| 图文排版 | HTML/CSS + Playwright | 5 套小红书模板、专业字体 |
| 视频合成 | FFmpeg | 拼接、字幕、配乐、转场 |
| 趋势调研 | AI Web Search | 抖音/小红书实时热点 |
| 数据分析 | 定时采集 | 粉丝/播放/互动数据追踪 |
| 质量评审 | LLM-as-Judge | 每步可选质量门控 |
AutoViral 不只是一个工具——它会记住你,并用数据优化每一次创作。
🧠 长期记忆(EverMemOS)
集成 EverMemOS 长期记忆系统,AI Agent 在创作时自动检索:
- 风格画像 — 你偏好的表达方式、视觉风格、人设定位
- 创作历史 — 过去做过什么、哪些选题效果好
- 平台规则 — 各平台的算法偏好和内容规范
- 竞品动态 — 同领域热门内容的趋势变化
每次创作完成后,对话内容自动同步回 EverMemOS,形成越用越懂你的正向循环。
📊 平台数据反馈
通过定时采集抖音创作者数据(粉丝、播放、点赞、评论),AI 在后续创作中参考真实表现:
- 哪类视频播放量高?AI 会倾向类似选题
- 哪些时段发布效果好?AI 会建议最佳发布时间
- 评论区在聊什么?AI 会捕捉受众兴趣点
创作 → 发布 → 数据采集 → 记忆沉淀 → 下次创作更精准
└───────────────── 闭环优化 ─────────────────┘
- Node.js >= 18
- Claude Code CLI — 已安装并登录
- FFmpeg —
brew install ffmpeg
git clone https://github.com/nanxingw/AutoViral.git
cd AutoViral
npm install && npm run buildcp .env.example .env编辑 .env:
# 图片生成(Gemini,推荐)
OPENROUTER_API_KEY=sk-or-v1-xxxxxxxx
# 视频生成备用(即梦 API,可选)
JIMENG_ACCESS_KEY=AKLTxxxxxxxx
JIMENG_SECRET_KEY=xxxxxxxx视频生成首选方案:安装 Dreamina CLI(免费,浏览器登录即可):
curl -fsSL https://jimeng.jianying.com/cli | bash
dreamina login # 浏览器弹窗登录autoviral start # 后台启动
autoviral start --foreground # 前台启动(看日志)打开 http://localhost:3271 开始创作。
点击「新建作品」,输入标题和创作方向(如"科幻短片,月球大战"),选择类型和平台。
进入 Studio(视频)或 Editor(图文),按用户意图调用任意模块:
| 模块 | 短视频 | 图文 |
|---|---|---|
| research | 搜索热点趋势、分析竞品 | 搜索话题热度、参考爆款 |
| planning | 分镜脚本、画面描述、台词 | 每张图的内容规划、文案 |
| assets | 生首帧 → 生视频片段 → 生配乐 | 生配图 → 排版渲染 |
| assembly | Remotion 合成 + 字幕 + 配乐 | Konva 多图层 + 排序 + 发布文案 |
任何模块都可以做起点。用户给完整 brief 就直接进 assets/assembly;想试趋势就单独调 research。Agent 不会反问"我们应该先做哪一步"——按你的意图直接动手。
成品在右侧素材面板预览,保存在 ~/.autoviral/works/<id>/output/。
在「数据」页面粘贴抖音主页链接,系统定时采集播放、点赞、评论数据,AI 在后续创作中参考。
AutoViral 支持多个 AI 生成服务,按优先级自动选择:
| 优先级 | 服务 | 密钥 | 说明 |
|---|---|---|---|
| — | OpenRouter (openai/gpt-5.4-image-2) | OPENROUTER_API_KEY |
唯一通道,支持 4K/宽高比/图生图。不再保留备用路径。 |
| 优先级 | 服务 | 配置方式 | 说明 |
|---|---|---|---|
| 1 | Dreamina CLI (Seedance 2.0) | dreamina login |
推荐,支持图生视频、多帧 |
| 2 | 即梦 API | JIMENG_ACCESS_KEY + SECRET_KEY |
备用 |
| 服务 | 密钥 | 说明 |
|---|---|---|
| Google Lyria 3 Pro | OPENROUTER_API_KEY(复用) |
文生音乐、图生音乐 |
检查当前环境可用服务:
python3 skills/autoviral/modules/assets/scripts/check_providers.py --format table浏览器 (React 18 + Vite) ──WebSocket── Node.js (Hono) ──stdin/stdout── Claude Code CLI
│
┌────────┼────────┐
▼ ▼ ▼
Dreamina Gemini Lyria
(视频) (图片) (音乐)
src/ # 后端 TypeScript
cli.ts # CLI 入口(start/stop/config)
config.ts # 配置管理(.env + config.yaml)
work-store.ts # 作品存储(YAML 持久化)
ws-bridge.ts # WebSocket 桥接(浏览器 ↔ Claude CLI)
analytics-collector.ts # 数据采集
server/
api.ts # REST + WebSocket API(/invoke 端点;评审为只读 rubric 工具)
index.ts # Hono 服务启动
remotion-renderer.ts # 服务端 @remotion/renderer mp4 导出
web/src/ # 前端 React 18 + Vite + Zustand + TanStack Query
pages/
Works.tsx # 作品 hub(pick up where you left off)
Studio.tsx # 视频创作(Remotion Player + 多轨 Timeline + Tweaks)
Editor.tsx # 图文创作(Konva 多图层 + Inspector + Filmstrip)
Explore.tsx # 趋势探索
Analytics.tsx # 数据仪表盘
features/
studio/ # 视频合成数据模型 / Remotion composition / Tweaks
editor/ # 图文 carousel / Konva canvas / Inspector
chat/ # WS 客户端 + StreamBlock
skills/ # AI Agent 技能定义
autoviral/ # 一体化创作技能(单 skill,任意起点切入)
SKILL.md # 主入口(prime directive + 模块地图 + 任意起点原则)
taste/ # 品味读物(7 份:叙事 / 镜头 / 节奏 / 排版 / schema / rubric)
modules/
research/ # 事实收集(热搜脚本 + 达人分析 + 视频解构)
planning/ # 情感意图 → 可执行 brief(镜头表 / 图文结构 / 文案)
assets/ # 生成引擎(OpenRouter / Dreamina / Jimeng / Lyria / Playwright)
assembly/ # 成片引擎(ffmpeg / subtitle_burn / beat-sync / audio-mix)
references/ # 模块间契约
~/.autoviral/ # 运行时数据
config.yaml # 配置
fonts/ # 下载的专业字体
works/ # 作品数据 + 素材 + 成品
trends/ # 趋势缓存
| 层 | 技术 |
|---|---|
| 前端 | Svelte 5 (runes), Vite, Glass Noir 深色主题 |
| 后端 | Node.js, Hono, TypeScript, WebSocket |
| AI Agent | Claude Code CLI (stream-json 子进程) |
| 图片生成 | OpenRouter → Gemini 3.1 Flash |
| 视频生成 | Dreamina CLI (Seedance 2.0) / 即梦 API |
| 音乐生成 | Google Lyria 3 Pro |
| 图文排版 | HTML/CSS + Playwright + Jinja2 模板 |
| 视频编辑 | FFmpeg |
配置优先级:.env > ~/.autoviral/config.yaml
| 配置项 | 默认值 | 说明 |
|---|---|---|
port |
3271 |
仪表盘端口 |
model |
opus |
Claude 模型(opus / sonnet / haiku) |
research.schedule |
0 9,21 * * * |
定时调研(每天 9:00 和 21:00) |
analytics.collectInterval |
60 |
数据采集间隔(分钟) |
interests |
[] |
关注领域(在探索页面配置) |
autoviral start [--foreground] # 启动服务
autoviral stop # 停止服务
autoviral dashboard # 打开浏览器
autoviral config get [key] # 查看配置
autoviral config set <key> <value> # 修改配置MIT