AI Product Manager Case Study · V1.0

Music
Agent

让音乐推荐理解
“我现在想听什么”。

想听某种感觉,却不知道具体该搜什么歌。Music Agent 将自然语言即时需求转化为推荐、发现、试听与播放。

Role · AI Product / Agent Design Platform · macOS / Apple Music Status · V1 Implemented / Public GitHub / V2 Iteration
Music Agent current Development Build main window Music Agent current Mini Player
Current Development Build · Actual Product Screens
01 / USER NEED

历史偏好知道过去,
但用户活在现在。

用户往往知道自己此刻想听什么感觉,却不知道具体该搜哪首歌。

Long-term Preference ≠
Current Intent.
LONG-TERM

用户通常喜欢什么?

常听风格Rock / J-Rock
历史偏好高能量
常听歌手长期积累
RIGHT NOW

用户此刻想听什么?

场景晚上散步
情绪安静 / 舒缓
探索不想听平时的
02 / PRODUCT POSITIONING

产品定位,
功能设计。

Music Agent 从即时需求出发,把模糊听歌意图转化为推荐、发现、试听与播放。

01

Current Intent 优先于历史偏好

长期偏好用于个性化增强;用户此刻明确表达的场景、情绪与约束拥有更高优先级。

02

Discovery 是相对新鲜,而不是“从未听过”

系统只能依据当前可用记录描述未收藏、近期未推荐或较少出现;是否“以前没听过”由用户确认。

03

推荐可用 ≠ 正式播放可用

Catalog Candidate 可以进入推荐、Preview 或外部查看,但只有具备真实播放条件时才承诺 Formal Playback。

04

Unknown 不等于 Success

对象、权限或执行状态无法确认时,优先澄清、停止或降级,而不是用自然语言伪装完成。

03 / PRODUCT EXPERIENCE

实际产品体验,
直接展示实现效果。

V1 已打通从自然语言需求 → 推荐 → Preview / Playback → 连续反馈的核心体验,并在 macOS 上完成真实运行验证。

RUNNABLE V1 DEMO

Intent → Recommendation
→ Preview / Playback → Feedback

产品把“现在想听什么”转化为可执行音乐结果,并让推荐、试听、播放与后续反馈保持在同一任务链路中。

Main Window current build
01 / MAIN WINDOW直接表达“现在想听什么”当前播放状态、自然语言输入与常用音乐任务入口保持在同一界面。
Recommendation Result current build
02 / RECOMMENDATION返回可操作的具体音乐结果推荐结果提供歌曲信息,并按真实可执行能力提供 Play / Preview / Apple Music 路径。
Preview state current build
03 / PREVIEW30s 试听,同时保留原播放上下文试听状态与恢复关系直接显示,用户可以继续查看同一批推荐。
Feedback state current build
04 / FEEDBACK用自然语言继续调整与反馈推荐、连续请求与明确反馈都留在同一任务界面中。
05 / MINI PLAYER离开主界面后继续轻量控制Previous / Play-Pause / Next
Mini Player current build
HOW TO USE自然语言输入“推荐一些音乐” / “找类似这首的” / “再安静一点”
RESULT ACTION继续试听或打开音乐Preview 30s / Apple Music
PLAYBACK保持基础播放控制Previous / Pause / Next
REAL PRODUCT DEMO · 02:53

从自然语言推荐,到 Preview / Playback / Feedback 的真实操作。

录制于当前 macOS V1 Demo Build。演示直接覆盖真实产品主链路,无需安装应用或配置 API Key 即可查看实际运行状态与核心交互。

NATURAL LANGUAGERECOMMENDATIONPREVIEWPLAYBACKFEEDBACK
04 / CORE FLOW

从自然语言需求,
到可执行音乐结果。

从表达需求到获得可操作音乐结果,用户可以继续试听、播放或调整方向。

01表达当前需求Scene · Mood · Constraint
→
02理解听歌方向Intent · Context
→
03寻找合适音乐Candidate · Discovery
→
04确认可用操作Play · Preview · External
→
05试听、播放或继续调整Listen · Feedback · Refresh
USER FLOW核心用户流程Recommendation → Preview / Playback / Refresh↗
AGENT WORKFLOWAgent 工作流Intent → Context → Tool Calling → Result↗
PLAYBACK & PREVIEW播放与试听状态正式播放、试听与恢复协调↗
FAILURE & DEGRADATION异常与降级No Result · Permission · Failure · Conflict↗
05 / PRODUCT DECISIONS

明确能力边界,
做出产品取舍。

V1 根据平台能力与执行可靠性收敛 Scope,并为不可用能力明确边界。

DECISION 01

将无法可靠验证的持久写能力移出 V1。

Why:Like、Add to Library、Rating、Create / Edit Playlist 无法证明能够稳定执行并可靠确认结果,因此不作为 V1 可执行能力承诺。

DECISION 02

先验证可执行路径,再让候选进入主结果。

Why:主要推荐至少需要一种真实可用路径,例如 Play、Preview 或外部查看;完全不可执行的候选默认不进入主结果。

DECISION 03

将当前会话反馈与长期偏好分开处理。

Why:“今晚不要摇滚”描述的是当前 Session;只有明确的长期表达才作为 Long-term Preference Evidence。

DECISION 04

对象不明确时先澄清,再执行。

Why:存在多个候选时不让 Agent 自行猜测目标;Fail-closed 优先于一次看似聪明但不可验证的执行。

06 / AGENT DESIGN

Agent 规则,
保证行为可控、可信。

Agent 优先理解当前需求,歧义先确认,并只依据真实执行结果反馈状态。

01 / INTENT当前需求优先Current Intent 优先于 Long-term Preference。
02 / CLARIFY歧义先澄清对象无法唯一确认时,不自行选择并执行。
03 / FIDELITY结果必须可验证没有真实 Tool Result,就不声称外部动作成功。
04 / FEEDBACK临时反馈不污染长期偏好Current Session Adjustment 默认只影响当前 Session,不自动写入 Long-term Preference。
07 / ITERATION

从 Bad Case 出发,
收敛 Agent 的执行架构。

通过真实场景 UAT 与回归测试定位语义漂移、目标选择与执行可信度问题,并据此将关键决策逐步从模型自由判断收敛到结构化语义与代码工作流。

01 / STRUCTURED INTENT

减少同一需求被重复解释

Bad Case 显示,同一输入在不同环节被反复解释可能导致任务方向漂移。当前采用 deterministic-first 的 TurnPlan 与结构化语义边界:模型负责理解,代码持有后续任务状态。

02 / CODE-OWNED SELECTION

把关键目标选择交给确定性流程

对“随便播放一首”等请求,模型不直接决定最终执行对象;候选范围、选择权限与执行目标由结构化结果和代码规则约束。

03 / VERIFIED ACTION

先验证外部状态,再报告成功

播放等关键动作经过 Execution → Readback → Reconciliation,确认真实状态与目标一致后,Agent 才向用户报告成功。

CURRENT ARCHITECTUREStructured Intent → Code-owned Workflow → Verified Action当前实现中,模型负责语义理解,代码持有关键流程与状态,并通过 Readback / Reconciliation 验证真实执行结果。
08 / VALIDATION

固定任务验证,
持续检查真实表现。

Eval 不只检查“回答是否合理”,而是验证 Agent 是否遵守 Intent、Context、Tool Result、Failure / Safety 等产品契约。

EVAL 01

Ambiguous Context

“播放那个。”

存在多个候选时先 Clarify,不随机选择并执行。

EVAL 02

Current vs Long-term

历史偏好 Rock,但今晚想安静。

结果必须体现当前安静 / 舒缓约束。

EVAL 03

Tool Failure / Verified Action

Playback Tool 返回失败。

必须保留真实失败状态;未经过成功执行与状态验证,不能回复“已经播放”。

EVAL 04

Cold Start / Degradation

无 Preference / Library 不可读取。

降级到 Current Intent 与可用 Catalog Candidate,而不是虚构长期偏好或直接中断任务。

PUBLIC SCORECARD15 top-level Product Eval tasks当前公开 scorecard 已记录 2/15 项执行证据;其余案例保留为后续 UAT / acceptance coverage,不将局部通过率包装成全量通过。
09 / DELIVERABLES

产品成果,
完整文档。

从产品问题、可运行 Demo、PRD 到公开实现仓库,形成“设计 → 实现 → 验证”的完整证据链。

V1 Demo Build

可运行的 macOS V1 Demo,覆盖自然语言请求、Recommendation、Preview / Playback、Feedback 与 Mini Player 等核心产品状态。

View Product Screens

Product Demo

02:53 真实操作录屏,覆盖自然语言推荐、候选结果、Preview / Playback 与连续反馈等核心体验。

Watch Demo

Public GitHub Repository

用于核验产品设计是否真正落地:包含 Agent Runtime、macOS App Shell、Product Eval、Automated Tests、Architecture Decisions 与 User Guide。

View Repository

Full PRD V1.0

62 页:需求、Scope、User Flow、F01–F10、Agent / Prompt Design、Failure、Acceptance、Metrics、Risk,以及完整 Flow 与 Development Prototype Appendix。

View Full PRD