mcpField
P
promote-idea

promote-idea

github.com/bitwize-music-studio创意与媒体603159 次安装2 周前更新
代码仓库

关于 promote-idea

promote-idea 将 IDEAS.md 中待处理的创意转换为专辑项目,适用于规划音乐专辑的用户。它创建专辑结构、把创意写入 README.md,并同步更新创意状态和回链。

主要功能

  1. 01查找待处理创意
  2. 02自动生成或指定专辑 slug
  3. 03创建专辑文件结构
  4. 04将创意写入 README.md
  5. 05更新状态并添加回链

适用场景

  1. 01将待处理创意转为专辑项目
  2. 02按创意内容创建专辑规划文档
  3. 03为纪实专辑创建研究与来源模板

MCP 相关

该技能通过 MCP 调用 promote_idea,将创意提升为专辑项目并更新相关状态。纪实选项会决定是否创建 RESEARCH.md 和 SOURCES.md。

安装

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

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

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

详细介绍

你的任务

输入:$ARGUMENTS

在一次调用中,将 IDEAS.md 中一个 Pending 状态的创意转变为完整的专辑项目。 用单一入口取代手动的 3 步工作流(get_ideas → new-album → update_idea)。


推进创意技能

步骤 1:解析参数

预期格式:

  • "<idea title>" — 根据标题自动生成 slug
  • "<idea title>" <album-slug> — 覆盖自动生成的 slug
  • "<idea title>" documentary — 标准 slug,并启用纪录片标记
  • "<idea title>" <album-slug> documentary — 显式指定 slug,并标记为纪录片

示例:

  • "Kleine Welt" → slug 自动生成为 kleine-welt
  • "The Great Molasses Flood" molasses-flood documentary
  • "Ängstliche Kätzchen" → slug 为 angstliche-katzchen(去除变音符号)

如果未提供参数,或标题为空,先列出可用的待处理创意,再询问要推进哪一个:

Which idea should I promote?

Pending ideas:
1. Kleine Welt (electronic, Thematic)
2. The Great Molasses Flood (folk, Documentary)
3. Linux Kernel Wars (electronic, Character Study)

Reply with the exact title.

使用 get_ideas(status_filter="Pending") 获取列表。

步骤 2:确认生成的 slug

调用 get_ideas(status_filter="Pending")(或 search(query=idea_title, scope="ideas")) 确认创意存在,并向用户展示即将执行的操作。

仅为展示而在本地计算 slug(转换为小写、去除变音符号、将非字母数字字符替换为连字符)。如果结果看起来不合适,可提议覆盖:

About to promote:
  Idea:  Kleine Welt
  Slug:  kleine-welt
  Genre: electronic
  Type:  Thematic

Proceed? (Or supply a different slug.)

如果用户已提供显式 slug,则跳过确认步骤——这表示用户已经考虑过 slug。

步骤 3:询问是否启用纪录片标记(如果尚未提供)

documentary 标记决定是否创建 RESEARCH.md 和 SOURCES.md。这无法从创意元数据推断出来——创意的“Type”字段可能写着“Documentary”,但那是另一个概念(叙事形式)。询问一次:

这是一张纪录片/真实故事专辑吗?(会添加研究和来源模板。真实事件请回答“yes”,虚构作品请回答“no”。)

如果参数中已包含 documentary,则跳过此步骤。

步骤 4:通过 MCP 推进创意

调用 promote_idea(idea_title, album_slug=<slug or "">, documentary=<bool>)。

此工具会执行以下所有操作:

  1. 在状态数据中查找创意(若不存在或已推进则报错)
  2. 通过 create_album_structure 创建专辑目录
  3. 将创意概念注入新建的 README.md,置于 ## Concept 部分下
  4. 将创意状态从 Pending 更新为 In Progress
  5. 在 IDEAS.md 中为该创意添加反向链接 **Promoted To**: <slug>

成功时,工具返回 {promoted: true, slug, album_path, files, ...};失败时返回 {error: ...}。

步骤 5:确认并建议后续操作

成功时,报告:

Promoted "Kleine Welt" → album "kleine-welt"

Location: ~/bitwize-music/artists/bitwize/albums/electronic/kleine-welt/
Files:    README.md, tracks/

Concept block injected into README.md from idea.
Idea status: Pending → In Progress

Next step:
  /bitwize-music:album-conceptualizer

  This walks through the 7 Planning Phases (Vision, Identity, Sonic
  Direction, Structure, Tracks, Content, Approval) to develop the concept
  you just carried over into the album.

对于纪录片专辑,补充:

  Research files also created: RESEARCH.md, SOURCES.md
  Don't forget human source verification before generation.

错误处理

未找到创意:

Error: Idea "Nonexistent" not found in IDEAS.md.

Check available ideas: /bitwize-music:album-ideas list

创意已推进:

Error: Idea "Already Active" is already promoted (status: In Progress).

If you want to rename or re-scaffold, use /bitwize-music:rename on the
existing album instead.

创意没有类型:

Error: Idea "No Genre" has no **Genre** field in IDEAS.md.

Set the genre first: /bitwize-music:album-ideas edit "No Genre"

类型无效:

Error: Invalid genre "xyz" on idea. Not in genres/.

Fix the genre in IDEAS.md, then retry.

专辑 slug 重复:

Error: Album "kleine-welt" already exists.

Options:
1. Supply a different slug: /bitwize-music:promote-idea "Kleine Welt" kleine-welt-2
2. Resume the existing album: /bitwize-music:resume kleine-welt

示例

简单标题
/bitwize-music:promote-idea "Kleine Welt"

自动生成 slug kleine-welt,询问是否启用纪录片标记,调用 promote_idea,并报告结果。

显式覆盖 slug
/bitwize-music:promote-idea "The Great Molasses Flood" molasses-1919

使用 molasses-1919,而非自动生成的 the-great-molasses-flood。

纪录片专辑
/bitwize-music:promote-idea "The Great Molasses Flood" documentary

除标准的 README 和曲目目录外,还会创建 RESEARCH.md 和 SOURCES.md。


为什么需要专用技能

手动工作流需要依次执行三个步骤:

  1. 使用 get_ideas 查找创意的流派
  2. 使用用户自行想出的 slug 运行 /bitwize-music:new-album <slug> <genre>
  3. 运行 update_idea("<title>", "status", "In Progress")

此技能解决的问题:

  • 概念传递 — 现在会自动将创意的概念文本合并到新专辑的 README 中(以前常常会漏掉手动复制粘贴)。
  • 状态管理 — 创意在开始处理后不会再一直停留在 Pending;状态转换会自动进行,并且支持双向关联(反向链接 Promoted To)。
  • 生成 slug — 无需再重新想 slug;变音符号和标点符号都会以一致的方式规范化。
  • 统一入口 — 新手只需学习一条命令,而不是三条。

记住

  1. 仅限 Pending — 只有状态为 Pending 的创意才能提升。状态为 In Progress 和 Complete 的创意会返回错误。
  2. 单向操作 — 提升会创建文件并更新状态。没有“取消提升”操作;如需重新执行,请使用 /bitwize-music:rename 或手动清理。
  3. 保留概念 — 提升后,创意的概念会保留在两个位置:IDEAS.md 中的创意条目(历史记录)和新专辑的 README.md(工作文档)。
  4. 下一步始终是 album-conceptualizer — 提升只会搭建初始结构;实际规划将在 7 个规划阶段中进行。

评论

支持 Markdown