edit | blame | history | raw

用户目标

  • 只讨论 TagLauncher 本轮“免费版 + Pro 解锁”新增/改动的产品内 UI。
  • 范围限定为:
  • 设置页 Data / Theme 区域里的 Pro 状态区。
  • Pro 功能入口的轻量标识。
  • 免费用户触发 Pro 功能时的提示弹窗。
  • Pro 主题卡片在免费预览态与已解锁态的视觉差异。
  • 不讨论营销页,不改代码。

已完成事项

  • 读取并遵守项目入口规则、CODE_GOVERNANCE.md、研发前置讨论规则、会话记忆规则。
  • 读取 PRD《2026-06-25-PRD-免费版与Pro解锁》相关条目。
  • 审阅现有设置页与主题卡片实现:
  • src/Apptag/PreferencesView.swift
  • src/Apptag/AppGridTheme.swift
  • 查看现有设置页截图,确认当前 macOS App 风格与信息密度。

关键决策

  1. 不建议新增独立 Pro 页签,也不建议做营销式大卡。
  • 低风险方案是在 Theme 和 Data 两个已有上下文里复用同一套 Pro 状态组件。
  1. 不建议使用重锁图标或“V 锁”作为主标识。
  • 更合适的是轻量 Pro 文本胶囊;仅在必要处配小图标,不全局铺锁。
  1. 免费用户触发 Pro 功能时,优先做“轻弹窗 + 可返回”,而不是硬阻断或直接跳支付。
  2. Pro 主题卡片应区分三态:
  • 免费未解锁:可见 Pro 轻标识。
  • 免费预览中:显示临时态与倒计时,不伪装成已购买。
  • 已解锁:回归普通可选主题样式,不持续强化“付费”身份。
  1. 多语种容错优先级高于装饰性。
  • 不把 Pro 拼进主题标题同一行。
  • 价格、权益、恢复购买入口不塞进单行。

文件变更

  • 无业务代码变更。
  • 新增本条会话记录:
  • .codex-sessionhistory/2026-06-26-Pro界面方案.md

未决问题

  • 后续实现阶段需要确认 Pro 价格字符串的最终展示位置与长度策略。
  • 若后续产品希望把 Pro 状态区做成单一入口,需在“Theme 顶部完整卡片”与“Data 内联紧凑行”之间再收敛一次版位。

后续建议

  • 实现时先落 Theme / Data 两处的静态状态与卡片样式,再接购买状态机和弹窗。
  • QA 重点覆盖:
  • 免费 / Pro / 老用户自动 Pro / 购买中 / 恢复失败。
  • 长文案语言。
  • macOS 深浅外观下的对比度与按钮层级。