mcpField
P
promo-writer

promo-writer

github.com/bitwize-music-studio营销与增长603229 次安装2 周前更新
代码仓库

关于 promo-writer

promo-writer 是为专辑宣传撰写社交媒体文案的技能,面向需要填充推广模板的音乐创作者。它依据专辑主题和流媒体歌词,为不同平台生成适配内容,并在写入文件前提交审核。

主要功能

  1. 01生成宣传活动策略
  2. 02按平台定制文案
  3. 03支持多语言文案
  4. 04依据流媒体歌词提取引用
  5. 05审核通过后写入 promo/

适用场景

  1. 01为新专辑准备发行宣传文案
  2. 02按平台制作不同格式的社交帖子
  3. 03为既有 promo/ 模板填入内容

MCP 相关

技能使用 MCP 的 find_album 定位专辑,并通过 get_session 获取最近专辑上下文;还使用 get_album_full 收集专辑内容。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bitwize-music-studio/claude-ai-music-skills --skill promo-writer

安装后在 Claude Code 中输入/promo-writer确认已加载。

附带文件copy-formulas.md

详细介绍

Promo Writer Skill

为 Twitter/X、Instagram、TikTok、Facebook 和 YouTube 编写专辑宣传文案。根据专辑背景(主题、曲目构想和流媒体歌词),为各个平台生成符合其原生风格的内容。

目的

在 promo/ 目录中填充可供审核的平台专属文案。为每个平台创作符合其格式、语气和惯例的内容,而不是在所有平台发布相同的文本。

适用时机

  • 写好曲目构想和歌词后(需要可供取材的内容)
  • 发布前——生成文案以填充 promo/ 模板
  • 用户说“撰写宣传文案”“创建社交媒体帖子”或“填充宣传模板”时
  • promo/ 文件已存在但仍是模板占位内容时

工作流中的位置

Lyrics Written → Promo Videos (optional) → **[Promo Writer]** → [Promo Review] → Release

位于内容完成之后、promo-reviewer 之前。promo-reviewer 会润色此技能生成的内容。

支持文件


工作流

1. 确定专辑

根据参数确定专辑:

使用 MCP find_album,并从 $ARGUMENTS 获取专辑名称。如果未指定专辑,请通过 get_session 查看上次使用的专辑上下文。

确认准备就绪:

  • 专辑必须已撰写曲目构想
  • 至少部分曲目应有流媒体歌词(以便提取适合引用的钩子)
  • 如果没有流媒体歌词,请提示:“未找到流媒体歌词——将仅使用曲目构想。钩子的针对性会较弱。”
2. 收集数据

批量收集专辑背景信息,尽量减少往返调用:

  1. 专辑数据:get_album_full(album_slug, "concept,streaming,musical-direction") — 专辑叙事和曲目内容
  2. 曲目列表:从专辑数据中获取——所有曲目名称、构想和状态
  3. 流媒体歌词:从专辑数据章节中获取——从流媒体歌词中提取适合引用的钩子(不要使用 Suno 歌词,因为其中包含注音拼写)
  4. 用户偏好:load_override("promotion-preferences.md") — 语气、平台优先级、宣传主题、话题标签偏好、AI 定位

重要:使用流媒体歌词提取适合引用的钩子。Suno 歌词中包含注音拼写(bit-wize、Luh-rock-uh),不得出现在面向公众的文案中。

3. 制定宣传活动策略(campaign.md)

首先生成 campaign.md——它是策略基础,可为所有平台的文案提供指导。

需生成的内容:

章节撰写内容
宣传活动概述专辑名称、发布日期(或 TBD)、主要平台、活动时长
核心信息根据专辑主题提炼出的 3 条核心信息——“为什么值得关注”
目标受众根据流派和主题划分的 2–3 个受众群体
日程安排发布前、发布周和发布后的日历,注明具体内容类型
话题标签主要标签(用于发现和流派分类)以及次要标签(专辑专属;如适用,也包括 AI 相关标签)

根据专辑数据提炼核心信息:

  • 专辑讲述什么?→ 信息 1(概念钩子)
  • 它有何不同?→ 信息 2(独特角度)
  • 为什么现在聆听?→ 信息 3(紧迫性/相关性)

继续撰写平台文案前,先提交给用户审批。

4. 语言选择

生成任何文案前,先确定输出语言。

如果存在覆盖设置,即 promotion-preferences.md 中有 ## Language 部分,则使用该偏好,无需询问。

否则,询问:

What language(s) should the promo copy be written in?

[1] English (default)
[2] German (Deutsch)
[3] French (Français)
[4] Spanish (Español)
[5] Bilingual — two languages per post (e.g., DE + EN, FR + EN)
[6] Other — tell me which language(s)

双语模式:选择两种语言时,每篇帖子都要在同一个代码块中依次附上两个版本,并用 --- 分隔。主要语言放在前面,次要语言放在后面。标签保留英文(便于国际传播)。

添加覆盖文件({overrides}/promotion-preferences.md):

## Language
- Primary: de
- Secondary: en
- Mode: bilingual

保存所选语言,并应用于本次会话中生成的所有文案。

5. 平台选择

如果参数中指定了平台,则只生成该平台的内容。

如果存在覆盖设置,则遵循 promotion-preferences.md 中的平台优先级列表和跳过列表。

否则,询问:

Which platforms should I generate copy for?

[A] All platforms (Twitter, Instagram, TikTok, Facebook, YouTube)
[1] Twitter/X
[2] Instagram
[3] TikTok
[4] Facebook
[5] YouTube
6. 按平台生成内容

对于每个选定的平台,按照 copy-formulas.md 中的结构,并遵循参考指南中的最佳实践,生成符合平台风格的内容。

先阅读该平台的推广模板(templates/promo/{platform}.md 或现有的 promo/{platform}.md),以匹配预期的标题结构。

各平台需生成的内容:

Twitter/X(twitter.md)
  • 发布公告推文(1-2 条推文或一条串文)
  • 每首曲目的推广推文(每首一条,包含吸引点、概念和链接占位符)
  • 幕后推文(制作过程/幕后视角)
  • 互动推文(提问或投票)
  • 每条推文:显示字符数,并确认不超过 280 个字符
  • 每条推文使用 1-2 个标签,开头不得是标签
Instagram(instagram.md)
  • 发布公告文案(前 125 个字符内包含吸引点)
  • 2-3 条曲目精选文案(故事性、个性化)
  • 幕后文案
  • 标签区块(15-20 个标签,与文案分开)
  • 显示每条文案的字符数
TikTok(tiktok.md)
  • 发布公告文案(少于 150 个字符)
  • 每首曲目的文案(简短、随意,少于 150 个字符)
  • 幕后文案
  • 每篇帖子使用 3-5 个标签
  • 注意:视频内容才是重点,文案是次要的
Facebook(facebook.md)
  • 发布公告(较长的故事性格式,150-300 个单词)
  • 曲目精选帖子(2-3 条,采用个人视角)
  • 幕后故事帖子
  • 每篇帖子使用 3-5 个标签,放在末尾
YouTube(youtube.md)
  • 专辑/曲目描述模板(前 2-3 行包含吸引点)
  • 致谢部分
  • 社交链接部分
  • 使用 3-5 个标签
7. 提交审核

展示每个平台生成的文案及其指标:

## Twitter/X — Generated Copy

### Release Announcement
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[Generated tweet text]

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Chars: 187/280 | Hashtags: 2 | Status: Within limits
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

### Track 01: [Track Name]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[Generated tweet text]

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Chars: 214/280 | Hashtags: 2 | Status: Within limits
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

[... more posts ...]

Actions:
  [A] Approve all — write to promo/twitter.md
  [R] Revise specific posts — tell me which ones and what to change
  [N] Next platform — skip this platform
8. 写入已批准的文案

将已批准的文案写入专辑路径下的 promo/ 目录:

{content_root}/artists/{artist}/albums/{genre}/{album}/promo/

匹配 promo-reviewer 所需的文件结构:

  • 使用 ## 和 ### 标题划分各个部分
  • 将帖子文案放入 ``` 代码块
  • 包含平台特定的元数据(字符数不写入文件)

如果 promo/ 目录不存在,则创建该目录。 如果文件已存在,覆盖前先询问:

promo/twitter.md already has content. Overwrite? [Y/n]
9. 总结和后续步骤

所有平台的内容写入后:

## Promo Copy Generated

| Platform | Posts | Status |
|----------|-------|--------|
| Campaign | 1 | Written |
| Twitter  | 8 | Written |
| Instagram | 5 | Written |
| TikTok | 6 | Written |
| Facebook | 4 | Written |
| YouTube | 1 | Written |

Files written to: {album_path}/promo/

Next steps:
  1. Review and polish: /bitwize-music:promo-reviewer <album-name>
  2. Replace [Streaming Link] placeholders with actual URLs when available
  3. When ready to release: /bitwize-music:release-director <album-name>

内容规则

仅使用流媒体歌词

从流媒体歌词部分提取适合引用的句子。绝不要使用 Suno 歌词——其中包含供 AI 使用的语音拼写,不适合人类读者。

优先制定营销活动

始终先生成 campaign.md,再编写平台文案。策略文档会确立关键信息、受众和日程,为各平台的内容提供依据。

平台原生内容

每个平台的内容都应符合其惯例:

  • Twitter:简洁有力,少于 280 个字符,使用 1-2 个标签
  • Instagram:以视觉为先,前 125 个字符内包含吸引点,并设置标签区块
  • TikTok:极其随意,少于 150 个字符,以视频内容为主
  • Facebook:讲故事,篇幅较长,注重社区建设
  • YouTube:信息丰富、结构清晰,并兼顾 SEO

绝不要在多个平台上使用相同文案。

匹配 promo-reviewer 结构

promo-reviewer 技能要求特定的文件结构:

  • 主要部分使用 ## 标题
  • 单篇帖子使用 ### 标题
  • 帖子文案放在 ``` 代码块中
  • 此结构便于逐部分审核
标签规则

遵循调研得出的最佳实践:

  • Twitter:每条推文使用 1-2 个,绝不以标签开头,并轮换使用不同标签组合
  • Instagram:每篇帖子使用 15-20 个,单独成块,并混合不同热度级别的标签
  • TikTok:每篇帖子使用 3-5 个,适用时加入热门标签
  • Facebook:使用 3-5 个,放在末尾,用于分类
  • 绝不使用:#MusicPromotion、#SoundCloudPromotion、#FollowBack、#Like4Like
语言处理
  • 所有文案都使用第 4 步中选择的语言
  • 双语模式:先写主要语言,再用 --- 分隔,然后写次要语言——两种语言都放在同一个代码块中
  • Twitter 例外:双语模式下,每种语言分别使用一条推文(每种语言一条推文,或使用推文串),不得将两种语言堆叠在同一条推文中——280 个字符不足以容纳两种语言
  • 标签:无论文案使用何种语言,始终使用英文标签,以便国际用户发现
  • 引用歌词:保留原文;如果文案语言不同,则在括号中附上简短翻译
  • 平台备注(每个文件底部的 Notes 部分):始终使用英文,以保持一致
遵循覆盖设置

如果存在 promotion-preferences.md 覆盖设置:

  • 遵循语气和风格偏好
  • 遵守平台跳过列表
  • 应用消息主题偏好(始终提及/绝不提及)
  • 遵循标签偏好(始终包含、避免使用的列表)
  • 遵循 AI 定位指南
  • 遵循语言偏好(主要语言、次要语言、模式)

请记住

  1. 调用时读取 copy-formulas.md——其中包含吸引注意力的文案公式和帖子结构
  2. 仅使用流媒体歌词——公开文案中绝不使用 Suno 音标歌词
  3. 先读取 Campaign.md——先制定策略,再撰写平台文案
  4. 先确定语言,再处理平台——生成文案前,先确定输出语言
  5. 先展示,再撰写——展示生成的文案和指标,供用户批准
  6. 为各平台量身打造——针对每个平台采用不同的语气、长度和结构
  7. 匹配 promo-reviewer 格式——使用标题和代码块,便于逐部分审核
  8. 检查覆盖设置——加载 promotion-preferences.md,了解语气、平台、消息和语言偏好
  9. 建议接下来使用 promo-reviewer——始终以审核建议结尾
  10. 占位链接——真实 URL 的位置使用 [Streaming Link]
  11. 保留专辑风格——文案应与专辑的主题和语气保持一致
  12. 标签使用英文——即使文案使用其他语言,也始终使用英文标签,以便用户发现

交付内容:填充完成的 promo/ 目录,其中包含按平台区分、可供审核的文案。

工作流集成:你负责填补内容完成与 promo-reviewer 之间的空档,生成过去需要手动完成的创意内容。

评论

支持 Markdown