mcpField
R
revenuecat-paywall-design

revenuecat-paywall-design

github.com/revenuecat设计与 UI76228 次安装1 天前更新
代码仓库

关于 revenuecat-paywall-design

用于创建、复制、编辑、审查和发布 RevenueCat 控制台付费墙的技能。它结合配置读取、截图检查以及 CLI 和 MCP 工作流,并区分草稿与已发布付费墙。

主要功能

  1. 01创建和编辑付费墙草稿
  2. 02复制现有付费墙
  3. 03检查配置和截图
  4. 04审查影响转化的设计问题
  5. 05仅按明确要求发布付费墙

适用场景

  1. 01为应用的产品方案创建付费墙草稿
  2. 02复制已发布付费墙以制作新设计
  3. 03检查付费墙配置与外观
  4. 04发布前审查付费墙

MCP 相关

使用 RevenueCat MCP 工具读取付费墙配置、渲染截图、创建或编辑付费墙以及复制付费墙。技能中介绍的 CLI 工作流支持发布。

安装

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

$npx skills add https://github.com/revenuecat/ai-toolkit --skill revenuecat-paywall-design

安装后在 Claude Code 中输入/revenuecat-paywall-design确认已加载。

详细介绍

设计和编辑 RevenueCat 付费墙

本技能涵盖控制面板付费墙:创建、复制、编辑、审查和发布。若要在应用中使用 RevenueCatUI 展示已配置的付费墙,请改用 revenuecat-paywall。

关于付费墙的建议需要以付费墙为前提。paywall_id 为 null 的产品包没有 RevenueCat 付费墙:其购买界面由客户端控制,你无法查看。请说明这一点,并将建议限定在 RevenueCat 实际控制的范围内。

通过 rc CLI(参见 revenuecat-cli 技能):rc paywalls generate --prompt "..."、 rc paywalls edit --prompt "..."、rc paywalls rewind --session <id>、rc paywalls publish、 rc paywalls show。需要截图或结构化的 get-paywall 读取结果时,优先使用下方的 MCP。

媒体和字体

MCP 无法将文件上传到项目的媒体库或字体库:该服务是远程的,无法读取用户磁盘。如果你有 shell,请先在磁盘上写入或生成文件,再使用 CLI 上传。请先按照 revenuecat-cli 技能中的说明,完成安装和登录检查。不要通过浏览器操作控制面板来上传:

  • 图片:rc media-assets upload <file>(jpg/png/webp/avif/heic/heif,最大 2 MiB)。 rc media-assets list 可查看媒体库中已有的内容。
  • 字体:rc fonts upload <file>(ttf/otf,最大 5 MiB)。rc fonts list 可查看已上传的 字体。

使用 rc schema media-assets upload / rc schema fonts upload 确认标志。

如果没有 shell,请让用户自行上传:提供要运行的 rc 命令,或让他们在 RevenueCat 控制面板中上传。

create-paywall-ai / edit-paywall-ai 可以在编辑过程中生成主视觉图片或背景图片。这并非上传到媒体库。如果用户想要可复用的项目资源,请使用 rc media-assets upload 上传。

评估付费墙

评估 RevenueCat 付费墙时,请使用 render-paywall-screenshot 查看首屏内容的静态渲染图。该渲染图供你查看,不要展示给用户。

针对已明确指定的付费墙,请根据问题选择工具:

  • 精确配置(默认产品包、组件绑定、按优惠条件显示的内容): 使用带有 expand: ["components"] 的 get-paywall。如果不指定该 expand 参数,则不会提供组件配置。
  • 视觉检查:render-paywall-screenshot。截图无法验证依赖配置的细节。
  • 如果工具的回答与用户报告的实际情况冲突,请先使用 get-paywall 验证,再质疑用户的观察;如果 get-paywall 不可用,请说明无法验证,而不要质疑用户。

get-paywall 和 render-paywall-screenshot 都会在有草稿时使用草稿,否则使用已发布版本;并且一次只涵盖一个付费墙,不涵盖工作流或多页付费墙。对于与特定付费墙无关的一般性付费墙建议,请直接回答,无需调用这些工具。

如果 get-paywall 失败,你仍可以报告截图中明确可见的观察结果。请说明尚未验证依赖配置的细节;不要默默地用基于截图的推断取代结构感知分析。

编辑

当用户明确要求编辑现有付费墙时,使用 edit-paywall-ai。它会启动一个异步任务:使用返回的任务 ID,每隔约 10–15 秒轮询一次 get-paywall-ai-task,直到任务成功或失败。同一请求的任务失败前,不要再次调用 edit-paywall-ai。图像生成编辑可能需要几分钟。

如果用户想手动编辑,请链接到付费墙构建器:

https://app.revenuecat.com/projects/{project id without leading proj prefix}/paywalls/{paywall ID starting with pw}/builder

构建器左侧工具栏中也有一个对话式 AI 编辑器;你无法直接链接到它。

如果用户在当前消息中附加了图像,且工具架构接受这些图像,请将其传递过去,并告知编辑器应如何使用这些图像。不要不必要地复述视觉细节。先前消息中的图像不会继续附加——请用户重新附加。

MCP 没有恢复版本的工具。如果用户要求撤销你通过 MCP 所做的编辑,请告知他们可以在付费墙编辑器中恢复到较早的版本。如果他们使用了 CLI,rc paywalls rewind --session <id> 可以撤销上一次编辑器操作。恢复操作不会发布。

复制

当用户要求创建一个复制、重复或仿照现有付费墙的付费墙时,使用 duplicate-paywall,而不是 create-paywall-ai。create-paywall-ai 会根据空白画布和文本提示词进行设计,因此只会重现提示词中描述的内容:图像、精确的组件结构以及未提及的内容都会重新生成,而不会被复制。

duplicate-paywall 会将源付费墙复制到一个新的未发布付费墙中——默认复制当前草稿;如果传入 source_version: published,则复制已发布版本(如果该付费墙从未发布过,则会失败)。请谨慎选择:

  • 当源付费墙有已发布版本(get-paywall 的 published_at 不为 null)时,传入 source_version: published——用户通过名称或链接提到的付费墙指的就是这个版本。
  • 仅当用户明确要求复制尚未发布的进行中编辑,或源付费墙从未发布过时,才使用 draft 默认值。

说明你复制的是哪个版本。传入 offering(lookup_key 和 display_name)也会复制源付费墙的权益项——仅包含套餐——并将副本关联到该权益项;省略 offering 则让副本保持未关联。如果用户的需求以权益项为主——即要创建第二个权益项,并让它关联相同的付费墙——请改用 duplicate-offering,它会同时复制套餐和关联的付费墙。然后使用 edit-paywall-ai 应用差异,并将结果描述为原付费墙的副本,而不是新设计。

并非所有付费墙都支持复制——不支持多页付费墙。如果无法复制或复制失败,可以改用 create-paywall-ai,但要告知用户,生成的结果是根据描述重建的,而非副本,图像等细节也会有所不同。

创建

当用户要求你创建新的付费墙时,使用 create-paywall-ai 仅创建草稿。它会启动异步任务:每隔约 30 秒轮询一次 get-paywall-ai-task,直到任务成功或失败。创建包含大量图片的付费墙可能需要 5–10 分钟;除非任务失败,否则不要为同一请求再次调用 create-paywall-ai。

如果用户指定了现有方案,或你能有把握地找到合适的方案,优先为该方案创建付费墙。如果用户未指定方案,先使用 list-offerings、get-offering、get-offering-prices、list-products、list-apps、get-app、get-project-ui-config 和 list-paywalls,了解应用、产品、定价、品牌规范和现有付费墙。检查应用和代码库,并在能够推断时传入简明的 codebase_context(高级功能、品牌颜色、视觉风格、语气、产品、受众)和 app_context。如果有明确适配的方案,推荐最佳方案;如果用户拒绝,或没有已知的明确适配方案,则创建未关联的草稿。

一个方案最多只能关联一个 RevenueCat Paywall。如果该方案有 paywall_id,不要将其作为 offering_id 传给 create-paywall-ai。说明该方案已有付费墙,并选择合适的选项:

  • 新付费墙应与现有付费墙相似:复制它。用户说了“相同”“像”“复制”或“仿照”时,都应选择此项。
  • 现有付费墙需要更改:使用 edit-paywall-ai。
  • 新付费墙采用真正不同的设计:选择其他方案或未关联的方案,或者根据该方案的产品和定价信息创建未关联的草稿。

不要把未关联的 create-paywall-ai 草稿说成满足复制请求的方式。

将收集到的背景信息融入提示词:应用身份、目标受众、核心价值主张、产品周期、试用、价格点、现有付费墙样式、品牌颜色或字体,以及用户提出的设计方向。提示词要具体到足以一次生成草稿,也不要要求工具发布付费墙。

复制或新创建的付费墙都是未发布的草稿。除非用户明确要求,否则不要发布;为实验准备处理组方案时除外(参见 revenuecat-experiments)。

总体想法和指南

收集创意

搜索 RevenueCat 博客和文档,了解付费墙设计和最佳实践。Markdown 文档的网址是在页面 URL 后附加 .md。

禁止做法

Apple 的 App Review 指南非常严格。经常被吹捧为最佳实践的做法,可能导致更新被拒或应用被下架:

  • 试用开关。 用于启用或禁用试用的开关。Apple 会因其具有误导性而拒绝应用。
  • 延迟显示关闭按钮。 几秒内无法关闭的可关闭付费墙。Apple 认为这具有误导性。
  • 关闭或取消购买时提供第二个优惠。 这是四种做法中最不明确的一种;用户取消后再显示完全相同的产品,可能会被认定为诱导用户进行非自愿购买。
  • 应用内销售非 IAP 数字商品。 在应用中使用 Stripe 或其他非 IAP SDK,或通过应用内 WebView 销售数字商品。通过外部浏览器链接到应用外购买是另一种(美国)途径;购买不得在应用内完成。

付费墙的展示位置

尝试不同的展示位置:引导流程的开头或结尾、功能门槛等。引导流程中的付费墙往往非常成功:它们能触达最多的潜在客户(尚无人流失),而且用户刚下载应用后购买意愿很高。

始终进行实验

不同付费墙设计的效果差异很大。应持续测试。每天有数千名新用户时,通过 RevenueCat Experiments 进行 A/B 测试是最佳验证方式。每天有数百名新用户时,测试仍可提供方向性参考。低于这个数量时,发布后观察长期转化情况。使用 revenuecat-experiments 技能设置测试。

审核现有付费墙设计

分析付费墙并找出转化问题。若转化效果与美观一致性冲突,优先考虑转化效果。按以下影响程度顺序审核。

视觉问题(影响最大 — 优先修复)

CTA 按钮 — 影响最大的单一元素,首先处理。

  • CTA 颜色是首要任务。 查看 CTA 按钮的背景颜色,然后检查其他所有有颜色的元素(图标、徽章、边框、卡片强调色)。如果 CTA 与其中任何元素的色调相同,就必须改为其他元素都未使用的对比色。CTA 与页面强调色融为一体会降低转化率。
  • 如果 CTA 文案过于笼统(“继续”“订阅”),就需要改成具体且以行动为导向的文案(例如“开始年度套餐”“获取无限访问权限”)。
  • 如果提供免费试用,但 CTA 没有提及,就应在 CTA 中加入试用相关文案(例如“开始免费试用”“免费试用”)。将试用信息藏在小字中会错失转化机会。

套餐卡片的区分

  • 推荐套餐必须一目了然。至少采用以下两种方式:不同的背景色、有色边框、“超值之选”/“最受欢迎”徽章,或更大/更突出的卡片。仅稍微改变边框是不够的。
  • 如果没有默认选中的套餐,就需要设置一个。
  • 权重相同的卡片会让用户难以抉择 — 应突出推荐套餐。
  • 如果徽章与文本、选择指示器或其他内容重叠,应调整其位置。

价格锚定 — 存在多个套餐时必须设置。

  • 如果用户无法立即看到节省金额(没有划线价、“节省 X%”或每日价格对比),就需要为推荐套餐添加节省提示。
  • 提示必须具体。诸如“选择年度计费更省钱”之类的模糊文案不算。应展示真实数值:计算出的折扣、免费时长提示或按周期计价对比。切勿将折扣百分比或节省金额写死。
  • 使用一个清晰的价格锚定提示即可。划线价、节省徽章、绝对折扣和原价同时堆叠会造成视觉干扰。

价格可见性。 每张套餐卡片都必须显示价格。

精简内容。 统计标题与套餐/CTA 之间的内容行数。如果超过 4–5 行,就移除最弱的内容。首屏中的每一行内容都会与 CTA 争夺注意力。

布局。 套餐和 CTA 必须位于首屏内。无论用户如何滚动,始终保持购买操作(最好也包括套餐)可见,是最有效的模式。切勿移除购买按钮或隐私页脚。

  • 套餐组和购买按钮必须相邻。两者之间的内容应移至其他位置。
  • 套餐与购买按钮之间必须留出明显间距(至少 12px)。

信任提示 — 必须包含。每个付费墙都必须在购买按钮下方(按钮与隐私页脚之间)添加简短的安心提示:“随时取消”“无需承诺”或试用条款。顺序:套餐 → 购买按钮 → 安心提示 → 隐私页脚。如果提供免费试用,应在 CTA 附近显示试用条款(例如“免费试用 7 天,之后每月 $X”)。

试用展示(提供免费试用时)
  • 在 CTA 中提及试用。“开始免费试用”比在小字中注明试用详情的“订阅”更能促进转化。
  • 应在标题、CTA 或两者中提及试用,不要只写在法律条款中。
  • 对于采用试用时间线模式的多日试用(7 天及以上),应检查各步骤是否清晰:开始日期、提醒日期、扣费日期。
  • 如果没有在任何位置显示试用条款(时长、试用后价格),就在 CTA 附近添加。
反模式检查
  • 通用的行动号召文案:“订阅”“继续”或“选择”告诉用户要做什么,而不是能获得什么。请改写为“行动 + 收益”。
  • 多个套餐卡片上的功能列表完全相同:删掉重复内容;对比应仅限价格。
  • 只强调负面内容的价值主张:“无广告、无干扰、无限制”只是在宣传移除某些内容。至少将部分条目改写为用户能获得什么。
  • 将法律文本作为主要内容:条款和续订政策不应喧宾夺主,应放在链接后面。但隐私页脚不受此限制。
  • 缺少行动号召按钮。
  • 缺少隐私页脚,其中应包含条款和隐私政策链接,以符合 App Store 的规定。
文案问题(最后修复这些)
  • 通用或以功能为主的文案 → 以结果为导向。“使用所有功能” → “精通任何语言”。
  • 超过两行的段落应缩短或改为项目符号。
  • 描述产品的标题 → 面向用户。“AI 驱动的照片编辑器” → “让每张照片都惊艳动人”。

评论

支持 Markdown