---
title: "A/B 测试的智能体技能"
description: "安装 ab-tests 技能，让你的 AI 编程工具在 Adapty 中创建、启动、停止和替换付费墙与流程 A/B 测试，并在每个不可撤销的步骤前向你展示哪些用户将看到哪些内容。"
---

> **AI agents**: to search Adapty docs faster and with fewer tokens, install the Adapty skills: `npx adapty skills install --yes`

ab-tests 技能通过您的 AI 编码工具运行付费墙或流程的 [A/B 测试](ab-tests)。您的智能体会与您共同规划测试，创建缺失的部分，将测试保存为草稿，并支持启动、停止（选出获胜者）或替换测试。它通过 [`adapty ab-tests` CLI 命令](developer-cli-ab-tests) 运行。

:::note
启动、停止、替换或归档测试的操作均不可撤销。在执行每个步骤之前，技能会用清晰易懂的语言说明哪些用户从何时起将看到什么内容，并在您确认后才会执行命令。
:::

## 你可以提问什么 \{#what-you-can-ask\}

像给同事布置任务一样提问，无需指定技能名称：

```
Run a 50/50 test of my Monthly and Annual paywalls for users in Germany.

Test my new onboarding flow against the current one.

Which A/B tests are running in my app?

Stop the price test. B wins.

Change the weights of my flow test to 70/30.

Archive the old tests on the settings placement.
```

*以下是与示例应用程序的对话示例，您的版位和付费墙可能有所不同。*

**User:** 在 Main 版位为德国用户对我的 Monthly 和 Annual 付费墙进行 50/50 的 A/B 测试。

**Agent ran:** 运行了 5 个只读命令并创建了草稿

- `adapty paywalls list`
- `adapty placements list`
- `adapty segments list`
- `adapty ab-tests create --title "Monthly vs Annual" --paywalls '[…]'`
- `adapty ab-tests get <test-id>`
- `adapty placements get <placement-id>`

**Agent:**

我已将测试"Monthly vs Annual"创建为草稿。目前没有用户看到它。

**Agent asks:** 启动 A/B 测试

在德国用户的 Main 版位上启动"Monthly vs Annual"。

- 现在：德国用户看到 Monthly 付费墙。
- 启动后：他们将看到 Monthly 付费墙（50%）或 Annual 付费墙（50%）。针对某个市场细分的变更最多需要 20 分钟才能覆盖所有用户。
- 停止：Monthly 付费墙将对德国用户停止展示。该版位当前没有正在运行的测试，因此不会停止任何测试。
- **无法撤销。** 之后停止该测试不会恢复被替换的内容。

确认启动？

1. Yes
2. No

## 开始之前 \{#before-you-start\}

- **能运行终端命令的 AI 工具**：例如 Claude Code、Codex、Copilot CLI 或 Gemini CLI。像 claude.ai 或 ChatGPT 这类对话工具无法运行 CLI，因此无法访问你的 Adapty 账户。
- **Adapty CLI 0.13.0 或更高版本**：如果尚未安装，技能会自动安装。若你的 CLI 没有 `ab-tests` 命令，技能会提示你并引导你前往[看板](run_stop_ab_tests)操作。

## 安装技能 \{#install-the-skill\}

ab-tests 技能是 [`adapty-skills` 插件](https://github.com/adaptyteam/adapty-skills) 的一部分。在终端中运行以下命令安装该插件：

```bash
npx adapty skills install
```

重启你的 Agent 以加载技能。其他安装方式请参阅[插件 README](https://github.com/adaptyteam/adapty-skills/blob/main/plugin/README.md#install)。

## 技能如何运行测试 \{#how-the-skill-runs-a-test\}

1. 该技能会与您确认计划：付费墙测试还是流程测试、要对比的付费墙或流程及其流量权重、版位、目标受众和测试目标。所有缺失信息会在一条消息中一次性询问完毕。
2. 它会逐项核验，并尽可能完成创建。请参阅[测试所需内容](#what-the-test-needs)。
3. 它会将测试创建为草稿。草稿状态下不会有任何用户看到，因此这一步无需您确认。
4. 它会读取测试和版位，然后向您展示启动后的影响：目标受众当前看到什么、启动后会看到什么、哪个付费墙、流程或正在运行的测试会停止，以及哪些用户会进入本次测试。
5. 它等待您的确认。此前对计划的"同意"不算数。如果您拒绝，则不发送任何内容。
6. 它在启动前会再次读取版位。如果版位在您查看影响后发生了变化，它会向您展示新的影响并再次询问。
7. 它启动测试并回读确认，让您了解当前运行的内容。

停止、替换或归档测试的步骤与第 4–7 步相同，只需将相应操作替换为启动即可。

技能不会在测试运行后重新启动它，因为原来的用户将会重新进入旧的实验变体。它会提供一个包含相同实验变体的新 A/B 测试。

## 测试需要什么 \{#what-the-test-needs\}

测试只能比较已有的内容。技能会逐一核查各项内容，并自动创建 CLI 能够创建的部分：

| 组成部分 | 技能的具体操作 |
|---|---|
| 一个流程 | 验证流程是否已发布。流程只有在发布后才能加入测试。如需构建或发布流程，将由 [flow-generator 技能](flow-generator-skill) 接管。 |
| 使用 Adapty 中已有产品的付费墙 | 经你确认后创建。 |
| 采用新设计的付费墙 | 建议你在[付费墙编辑工具](adapty-paywall-builder)中创建，或在你的应用代码中创建（适用于由应用自行渲染的付费墙）。 |
| 新产品 | 建议你在 App Store Connect 或 Google Play Console 中创建，并将其添加到 Adapty。详见[产品](product)。 |
| 市场细分 | 经你确认后，通过受众技能创建。 |
| 版位 | 在你确认开发者 ID 后创建（该 ID 后续无法修改）。新版位的代码在应用中被调用之前，不会向用户展示任何内容。在发布包含该版位调用代码的应用版本之前，该版位上的测试不会触达任何用户。 |

## 测试面向哪个目标受众运行 \{#which-audience-the-test-runs-on\}

测试在版位的某个目标受众上运行：

- 如果版位中已存在针对你所在市场细分的目标受众，或测试面向所有用户，则测试沿用该目标受众。当前在此处运行的测试将停止。
- 如果版位中没有针对你所在市场细分的目标受众，技能会以最高优先级在版位上新增一个对应的目标受众。原本匹配其他目标受众的该市场细分用户将被纳入本次测试，技能会在你确认之前列出受影响的目标受众名称。

要使测试的优先级低于另一个目标受众，请询问技能。技能会先将你的市场细分作为一个具有该优先级的目标受众添加，并附上这些用户当前看到的付费墙或流程，以确保他们的体验不受影响。然后技能会在该目标受众上启动测试。

## 更改、停止或归档测试 \{#change-stop-or-archive-a-test\}

- **重命名或修改目标**：技能会更新测试。用户保留其分组，测试保留其开始时间。
- **修改正在运行的测试的分组或流量权重**：技能会替换该测试。当前运行的测试停止并保留其结果，新测试在同一目标受众上启动。Adapty 会重新将目标受众中的所有用户分配到各分组。在看板中，此操作称为 **Modify**。
- **停止测试**：告诉技能目标受众之后应看到哪个付费墙或流程——获胜者、其他内容或不显示任何内容。如需选择获胜者，请在看板中查看结果：[A/B 测试结果与数据图表](results-and-metrics)。
- **归档测试**：技能可归档任何未在运行的测试。已归档的测试无法恢复。

## 与其他技能配合使用 \{#with-other-skills\}

- **找到测试方向**：[growth-advisor 技能](export-analytics-with-ai)读取你的数据并提出假设。当你选定某个假设后，growth-advisor 会验证测试所需的一切是否齐备，然后将测试交给 ab-tests 技能处理。
- **构建测试内容**：[flow-generator 技能](flow-generator-skill)会复制你的流程并应用待测试的改动。
- **不用测试直接展示内容**：如果你想在不运行测试的情况下，向不同用户展示不同的付费墙或流程，直接告诉你的 agent 即可，audiences 技能会完成相应配置。

## 限制 \{#limits\}

- **无结果读取**：该技能不会读取测试结果。请在看板中查看结果，然后告诉技能哪个变体获胜。
- **每次测试仅限一个版位**：如需运行[跨版位测试](ab-test-types)，请使用看板。
- **旧版用户引导编辑工具**：在旧版用户引导编辑工具中创建的用户引导测试，请在看板中管理。
- **不支持无人值守启动**：在计划任务或脚本中运行时，由于无人响应，技能仅能列出和读取测试，以及创建和修改草稿。如需执行启动、停止、替换或归档操作，技能会报告操作影响及对应命令，供你手动执行。

要不借助技能自行运行命令，请参阅[通过 CLI 运行 A/B 测试](developer-cli-ab-tests)。