--- name: bilibili-publisher description: 生成B站视频发布版docx文档,自动嵌入配图。当用户说"生成B站发布版"、"帮我生成docx"、"发B站"时触发。工作流:读取drafts/下对应草稿 → AI生成6张配图存assets/ → Node.js脚本生成带图的docx → 发给用户。 --- # B站发布版生成器 将 B站 视频草稿(md格式)转换为**发布版 docx文档**,图片直接嵌入,可直接导入B站创作页面发布。 ## 输入 - drafts/ 下对应的主题 md 文件(如 `2026-05-08_B站_智能工厂四级补贴.md`) - 内容形态:视频脚本,包含时间戳旁白(如 `[开场 0:00–0:30]`) ## 输出 - `drafts/assets/` 下生成6张配图(png,永久存储) - `drafts/<日期>_<主题>_发布版.docx`(1.1MB左右,含嵌入图片) - 直接发 MEDIA: 路径给用户下载 ## 工作流 ### Step 1:读取草稿 读取 `drafts/` 下对应 md 文件,提取: - 标题(从文件名或文件内 H1 提取) - 封面建议文字 - 视频简介 / 标签 - 脚本正文(去掉 `[时间] 旁白指令` 行) - 分段结构(H2 标题) ### Step 2:生成配图 根据脚本6个段落生成6张配图: | 段落 | 图片主题 | 文件名 | |------|---------|--------| | 封面 | 工厂+数字仪表盘全息投影 | `bilibili_cover.png` | | 开场 | 工厂车间暗光设备剪影 | `bilibili_opening.png` | | 政策全景 | 四级政策图解信息图 | `bilibili_policy.png` | | 补贴数字 | 金额对比信息图 | `bilibili_subsidy.png` | | 四项指标 | SCADA dashboard截图 | `bilibili_indicators.png` | | 真实案例 | 工厂中控室数据大屏 | `bilibili_case.png` | **关键**:每张图生成后**立即用 `cp`** 复制到 `drafts/assets/`,再生成下一张(media 目录会被定时清理,不能存那里) ### Step 3:生成 docx 使用 `scripts/gen_bilibili_docx.js`: ```bash node ~/.openclaw/workspace/skills/bilibili-publisher/scripts/gen_bilibili_docx.js \ --title "标题" \ --subtitle "封面建议文字" \ --intro "视频简介" \ --cover ./drafts/assets/bilibili_cover.png \ --opening ./drafts/assets/bilibili_opening.png \ --policy ./drafts/assets/bilibili_policy.png \ --subsidy ./drafts/assets/bilibili_subsidy.png \ --indicators ./drafts/assets/bilibili_indicators.png \ --case ./drafts/assets/bilibili_case.png \ --output ./drafts/<日期>_<主题>_发布版.docx \ --content "./drafts/assets/content.json" ``` 内容通过 `content.json` 传入(避免命令行参数转义问题): ```json { "title": "标题", "subtitle": "副标题", "intro": "视频简介", "sections": [ { "heading": "段落小标题", "image": "配图路径(可选)", "paragraphs": ["段落1", "段落2"] } ] } ``` ### Step 4:发送给用户 docx 生成后,发 MEDIA: 路径给用户,告知可以直接导入B站。 ## docx 格式规范 - **标题**:28pt,加粗,居中 - **副标题**:14pt,灰色,居中 - **小标题(H2)**:18pt,加粗 - **核心观点**:加粗,带下划线或底边线 - **普通正文**:14pt - **结束语**:斜体,灰色 - **来源**:12pt,灰色,居中 - **图片**:宽度500px,居中,段前段后间距80 ## 禁止出现的内容(发布版必须删除) - 所有 `[时间节点] 旁白类型` 格式的行(如 `[开场 0:00–0:30] 悬念引入`) - 任何分镜备注、拍摄指导 - 未通过合规扫描的内容