File contents Operational Steps
确认输入参数完整
执行核心操作(参考本目录下的 scripts/ 或 references/)
验证输出符合契约
保存结果并报告
Pitfalls
-
-
Verification
-
-
-
-
1.
2.
3.
IO_CONTRACT
input : request: str, context: dict — 用户请求描述、上下文信息
output : result: dict — 技能执行结果(结构因技能而异)
对应原则:P2(机械原子暴露输入输出规范)
media
父级技能目录,包含 4 个子技能。
子技能通过Hermes技能加载机制自动发现,无需显式调用。
子技能
gif-search
heartmula
songsee
spotify
使用方式
直接调用子技能名称即可:
验证清单 · VERIFICATION
约束规则 · RULES
输入约束 : 参数类型、范围、格式必须校验
输出约束 : 返回值结构、编码、命名必须一致
异常约束 : 错误信息必须包含上下文和恢复建议
安全约束 : 不执行未验证的任意代码,不暴露内部状态
Golden 集合 · GOLDEN SET
Golden Input : 标准输入样本(覆盖正常路径)
Golden Output : 预期输出(精确匹配或格式校验)
Golden Error : 预期错误信息(覆盖失败路径)
Golden 集合是测试的单一真理来源。所有改进必须通过 golden 测试。
违反规则的操作视为不安全,必须拒绝或隔离。
每项验证必须可执行、可记录、可复现。验证失败时记录原因和修复。
skill_view(name='gif-search') # 加载第一个子技能
父级SKILL.md仅作为目录索引,实际执行由子技能完成。
Media
Genes (策略基因)
紧凑策略表示。条件→策略。需要深度时参考完整文档。
[MEDI-001] 用户请求涉及媒体内容(GIF/音乐/音谱/Spotify) → 识别为父级技能,通过 Hermes 机制自动发现并路由至对应子技能
[MEDI-002] 执行核心操作前 → 必须确认输入参数(request/context)完整且符合 IO_CONTRACT 规范
[MEDI-003] 处理输入数据时 → 严格校验参数类型、范围及格式,拒绝未验证的任意代码执行
[MEDI-004] 生成输出结果时 → 确保返回值结构、编码及命名与契约一致,并验证内容符合预期
[MEDI-005] 遇到空输入、极大值或异常场景 → 执行边界验证,确保系统具备明确的错误信息和恢复指引
[MEDI-006] 技能执行过程中 → 遵循“可执行、可记录、可复现”原则,对中间步骤和最终结果进行全链路验证
1 --- 2 name: media 3 description: media 4 license: MIT 5 --- 6 7 8 ## Operational Steps 9 1. 确认输入参数完整 10 2. 执行核心操作(参考本目录下的 scripts/ 或 references/) 11 3. 验证输出符合契约 12 4. 保存结果并报告 13 14 ## Pitfalls 15 - 16 - 17 18 ## Verification 19 - 20 - 21 - 22 - 23 1. 24 2. 25 3. 26 ## IO_CONTRACT 27 28 - **input**: `request: str, context: dict` — 用户请求描述、上下文信息 29 - **output**: `result: dict — 技能执行结果(结构因技能而异)` 30 31 > 对应原则:P2(机械原子暴露输入输出规范) 32 33 # media 34 35 > 父级技能目录,包含 4 个子技能。 36 > 子技能通过Hermes技能加载机制自动发现,无需显式调用。 37 38 ## 子技能 39 40 - `gif-search` 41 - `heartmula` 42 - `songsee` 43 - `spotify` 44 45 ## 使用方式 46 47 直接调用子技能名称即可: 48 49 ## 验证清单 · VERIFICATION 50 51 - [ ] `request`/`context` 输入符合 IO_CONTRACT(str/dict),参数缺失时给出明确错误而非静默失败 52 - [ ] 4 个子技能(gif-search / heartmula / songsee / spotify)均能经 Hermes 机制自动发现并路由 53 - [ ] 媒体请求(GIF/音乐/音谱/Spotify)正确路由至对应子技能,无越级直接执行 54 - [ ] 父级目录仅做索引,未与子技能功能重叠(原子边界精确) 55 - [ ] 输出 `result: dict` 结构一致,验证失败时记录原因与修复路径 56 57 ## 约束规则 · RULES 58 59 1. **输入约束**: 参数类型、范围、格式必须校验 60 2. **输出约束**: 返回值结构、编码、命名必须一致 61 3. **异常约束**: 错误信息必须包含上下文和恢复建议 62 4. **安全约束**: 不执行未验证的任意代码,不暴露内部状态 63 64 ## Golden 集合 · GOLDEN SET 65 66 - **Golden Input**: 标准输入样本(覆盖正常路径) 67 - **Golden Output**: 预期输出(精确匹配或格式校验) 68 - **Golden Error**: 预期错误信息(覆盖失败路径) 69 70 > Golden 集合是测试的单一真理来源。所有改进必须通过 golden 测试。 71 72 > 违反规则的操作视为不安全,必须拒绝或隔离。 73 74 > 每项验证必须可执行、可记录、可复现。验证失败时记录原因和修复。 75 76 ``` 77 skill_view(name='gif-search') # 加载第一个子技能 78 ``` 79 80 父级SKILL.md仅作为目录索引,实际执行由子技能完成。 81 82 # Media 83 84 ## Genes (策略基因) 85 86 > 紧凑策略表示。条件→策略。需要深度时参考完整文档。 87 88 - **[MEDI-001]** 用户请求涉及媒体内容(GIF/音乐/音谱/Spotify) → 识别为父级技能,通过 Hermes 机制自动发现并路由至对应子技能 89 - **[MEDI-002]** 执行核心操作前 → 必须确认输入参数(request/context)完整且符合 IO_CONTRACT 规范 90 - **[MEDI-003]** 处理输入数据时 → 严格校验参数类型、范围及格式,拒绝未验证的任意代码执行 91 - **[MEDI-004]** 生成输出结果时 → 确保返回值结构、编码及命名与契约一致,并验证内容符合预期 92 - **[MEDI-005]** 遇到空输入、极大值或异常场景 → 执行边界验证,确保系统具备明确的错误信息和恢复指引 93 - **[MEDI-006]** 技能执行过程中 → 遵循“可执行、可记录、可复现”原则,对中间步骤和最终结果进行全链路验证
yakeworld/Synthos/tree/main/skills/extended/external-automation/automation-skills/media commit 91f0976694
Frequently asked questions How do I install the Media skill? Run npx skillmds@latest add yakeworld/media in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
What does the Media skill do? media It is listed under Coding & Dev Tools on SkillMD.
Is Media safe to use? This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
Which AI agents work with Media? This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Is Media free to use? Yes. Installing skills from SkillMD is free. This skill is licensed under MIT.
Who published Media? yakeworld (@yakeworld) published this skill. Their other Agent Skills are listed on their SkillMD profile.