Install
$ agentstack add skill-jtydhr88-music-composition-skills-mc-case-studies ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
语料层(Case Studies & Corroboration)
这一层回答一个问题:
> 教材说的,真实作品到底做不做?
本库的规则不是抄来的,是抄来之后拿 62 首真实多轨验过的。 验过的结果分三档,只有强规则才进 20 条自查表。
按任务读哪几节
| 任务 | 读 | |---|---| | 想知道某条规则靠不靠谱 | §4 佐证表 + 仓库规则表 | | 要加一条新规则 | §4.3 流程 | | 规则和数据打架了 | ★ §5 | | 要找一个真实例子 | §6 | | 要标注一首曲子 | §3.3 | | 想知道这套语料能测什么 | §2.2 |
边界
| 不归这里 | 归哪 | |---|---| | 规则本身的内容 | L1/L2 各 skill | | 生成结果的验收 | mc-ai-tell-audit | | 规格写完的检查 | mc-workflow §3.0 | | 某个风格的语汇 | mc-style-*(L3) | | 具体曲目的逐段拆解 | [reference.md](reference.md) |
1. 语料的三条原则
1.1 ★ 只存结构与参数,不存作品
> 语料条目里没有音频、没有谱面、没有歌词——只有测出来的数值。
这既是版权上的必需,也是方法上的正确: 我们要的是"真实作品的参数分布",不是作品本身。
1.2 ★ 自然抽样胜过策展
语料不精选,用自然抽样。
> 策展会把语料偏向"规则成立"的那一侧—— > 你挑的是你认为的好例子,而你认为的好例子就是符合你已有理论的例子。 > > 自然抽样自动供给反例。
所以最终用的是 Cambridge-MT 的 60+ 首自然样本,不筛选。 这也顺带取消了另找 MIDI/分轨语料的必要(它原本的唯一用途是给分轨工具做标定, 而真分轨直接消除了这个需求)。
1.3 语料的单元是"反向 ARR-SPEC"
不是音频文件,是从音频反推测出来的一份 ARR-SPEC。 选这个单元是因为它和我们的产出用同一套字段:结构、编制进退场、能量曲线都记在同样的位置, 所以佐证表能直接拿语料条目和规则判据对齐,不用先做一层格式转换。 字段长什么样、哪些标记是诚实留白而非漏填,见 §2.1。
2. 反向 ARR-SPEC
2.1 长什么样
仓库实测语料,63 条。每条头部就写明了性质:
# 实测 ARR-SPEC(语料条目)—— 由 仓库的反推工具 自动生成
# ★ 只存结构与参数,不存谱面与歌词。intent / hooks 等 TODO 项需人工填。
★ 注意那些 # TODO 和 # 估算,非实测 的注释—— 它们是诚实标注,不是没做完。 intent.one_thing 这类东西机器测不出来,硬填就是造假。
2.2 ★ 这套语料能测什么、不能测什么
Cambridge-MT 是未混的原始多轨,不是母带成品。 所以:
| 能测 | 不能测 | |---|---| | 段落边界、小节数 | DR / 响度(未混) | | 拍速 | 立体声宽度(未混) | | 能量曲线、减法事件 | 频谱质心的绝对值(未混 + 无母带) | | 编制进退场(有真分轨!) | 制作质感 | | onset 相对网格偏移 | | | 和弦(chroma 匹配) | |
★ 测不了的规则要标出来,不许硬跑。 rules.yaml 里这类规则标 evidence: unusable_here, 仓库的佐证工具 跳过而不是给一个假数字。
本库的语料是多轨分轨,不含成品混音,所以这类规则目前没有数字。
3. 真值与标注
3.1 为什么需要人工真值
算法测出来的段落边界本身可信度存疑(rules.yaml 里标 no_truth)。 没有一份独立的真值,就没法判断一个异常的命中率到底是规则不成立,还是算法本身测错了—— §5.2 那次"硬编码阈值把命中率压到 16%"就是靠人工真值才翻案的实例。 所以做了一批人工标注当真值,校准结果见 §3.2。
3.2 ★ 一个被验证过的担心
用户担心"我不是专家,标的边界不准"。实测结果推翻了这个担心:
> 人工标记与算法的偏差中位数 = 0.0 秒。
★ 结论:段落边界是感知判断,不是品味判断。 非专家标出来的边界和算法一致——这说明这件事本来就不需要专家。 (能标的和不能标的要分清:边界能标,"这段好不好听"不能标。)
校准结果:7 首人工标注,算法命中 72%,偏差中位 0.0 s。
3.3 怎么标注
标注工具与 7 份标注文件在仓库里,不随包发布。
已标注的 7 首: AMContraHeartPeripheral、APZXCyberMower、DigitalHumansElectrvm、 ForkupinesSemantics、MERCMusicKnockout、MR1103Flags、SimonLyn_Copper
4. ★ 佐证表:规则 × 语料 → 命中率 → 分档
4.1 两条诚实约束
违反了,佐证表就是自欺:
| # | 约束 | |---|---| | 1 | ★ 判据不能复用生成器的定义。 反向 ARR-SPEC 里的 subtraction_events 是 反推工具 按"较前段降 >1 dB"自动填的;拿它去验"真编曲有没有减法"是循环论证。所以涉及减法的判据一律直接从 energy_curve 重算,用一个有音乐意义的阈值(≥3 dB),不读 subtraction_events 字段 | | 2 | ★ 语料测不了的规则要标出来,不许硬跑(见 §2.2) |
evidence 的三个取值:
| 值 | 含义 | |---|---| | ok | 本语料能验 | | unusable_here | 本语料性质不对,需要成品混音语料 | | no_truth | 缺真值(如段落边界),判据本身可信度存疑 |
4.2 第一轮结果
| 规则 | 命中 | 档 | |---|---|---| | 能量曲线必须有下降 | 62/62 | 强规则 | | 编制必须有乐器中途进场 | 59/59 | 强规则 | | 至少一件乐器提前退场 | 59/59 | 强规则 | | 不该全声部严格对齐网格 | 62/62 | 强规则 | | 开场不该把乐器一次铺满 | 54/59 | 强规则 | | 全曲至少一处明显减法 | 36/62 = 70% | 倾向 | | 最高潮前应有能量回落 | 全量 22% / 人工真值 5/7 | ★ 矛盾,只当手法 | | 编制在最高潮最密 | 25/59 = 42% | 挂起 |
4.3 分档决定什么
| 档 | 在 skill 里怎么写 | 进 lint 吗 | |---|---|---| | 强规则 | "必须" | ✅ 硬检查 | | 倾向 | "通常应该" | ❌,进"写完后必过"清单 | | 手法 | "可以这么做" | ❌,只在诊断路径里出现 | | 挂起 | 不写进 skill | ❌,留在实验记录里等更多数据 |
4.4 加一条规则的流程
- 在 仓库规则表 里写:规则 + 可跑的判据 +
evidence - 检查是否违反 §4.1 的两条约束
- 用仓库的 corroborate 工具跨语料跑判据(维护者步骤,不随包发布)
- 按命中率分档(§4.3)
- ★ 把结果写进 仓库实验记录,然后才改 skill
> 规则集是有版本的。 > 改了规则集就要重跑,否则前后轮不可比。
5. ★ 规则和数据打架时怎么办
这是本 skill 最重要的一节。
5.1 先问:指标测的是不是那回事
不要拿指标去推翻教科书。
实例:「最高潮前应有能量回落」在全量 62 首里只有 22%, 但在 7 首人工标注真值里是 5/7。
差距的来源:算法用能量峰值定位"最高潮",而人耳不是。 所以 22% 那个数测的不是这条规则,测的是"能量峰值前有没有回落"。
★ 结论:这条不降级为伪规则,也不升为强规则——列为手法。
5.2 另一个实例:硬编码阈值造成的假低命中率
仓库的佐证工具 里曾硬编码"12 dB 动态范围", 把规则 ARR-R-012 的命中率压到 16%,差点被报成"教科书是错的"。
证伪方法:拿 7 首人工标注真值测 → 5/7 = 71%。 修法:改成在归一化的 0–10 单位上打分,不假装能还原 dB。
★ 通用教训:一个异常低的命中率,先怀疑判据,再怀疑规则。
5.3 佐证表与 lint 问的不是同一个问题
| | 问什么 | |---|---| | 佐证表 | 人类一般会不会这么做 | | 20 条自查 | 不这么做会不会听起来像 AI |
★ 所以 70% 的命中率不会机械地把一条 lint 检查降级。 一件事可能只有 70% 的人做,但不做的那 30% 恰好都听起来像机器。
6. 找一个真实例子
| 你要 | 去哪 | |---|---| | 某个技法的真实用例 | [reference.md](reference.md) 的逐段拆解 | | 某个和弦进行用在哪首歌 | mc-progressions [reference.md](../mc-progressions/reference.md) §7 名曲索引 | | 一首曲子的完整实测参数 | 仓库实测语料(63 条) | | 段落边界的人工真值 | 仓库标注数据(7 条) | | 配器/混合音色的谱例 | mc-orchestration [reference.md](../mc-orchestration/reference.md) §4 | | 对位的谱例 | mc-counterpoint [reference.md](../mc-counterpoint/reference.md) |
6.1 逐段拆解的格式
四者对齐:时间码 / 段落 / 编制事件 / 和声。 格式与反向 ARR-SPEC 一致,人工补上机器测不出的部分(intent、hooks、为什么)。
7. 与其他层的接口
| 方向 | 内容 | |---|---| | → L1/L2 各 skill | 提供"实测:62/62,强规则"这样的证据等级标注 | | → 20 条自查 | 只有强规则才能进自查表 | | → mc-ai-tell-audit | 零点校准(不相关成品得 63–66)就是在这套语料上测的 | | ← 仓库的反推工具 | 语料条目的生成器 | | ← 成品混音语料(★ 缺) | §2.2 那些 unusable_here 的规则需要它 |
8. 用完必过
- [ ] 引用规则时带了证据等级(强规则/倾向/手法),不是光说"教材说"
- [ ] 新加的判据没有复用生成器的定义(§4.1 约束 1)
- [ ] 语料测不了的规则标了
unusable_here,没有硬跑出假数字 - [ ] 命中率异常低时,先怀疑了判据(§5.2)
- [ ] 没有拿佐证表的命中率机械地给 lint 检查降级(§5.3)
- [ ] 改了规则集就重跑并记进 仓库实验记录
附:现状
已有:
- 仓库实测语料 —— 63 条实测 ARR-SPEC(Cambridge-MT)
- 仓库规则表(规则集带版本号)
- 仓库标注数据 —— 标注工具 + 7 条人工真值
_corpus/multitracks/—— 11 项(含_index.json、_parts.json)- 仓库实验记录:度量标定 / 拍速校准 / 规则佐证第一轮
- 拍速校准:56 首真值
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: jtydhr88
- Source: jtydhr88/music-composition-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.