> ## Documentation Index
> Fetch the complete documentation index at: https://docs.useswarm.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Personas & Swarms

> How Swarm generates diverse AI personas and how to create reusable persona sets.

# Personas & Swarms

## What are personas?

Personas are AI-generated user profiles that simulate real people using your product. Each persona has:

* **Name and background** — a realistic identity with a backstory
* **Technical ability** — ranging from tech-savvy early adopters to first-time computer users
* **Goals and expectations** — what they're trying to accomplish and what they expect from the experience
* **Behavioral traits** — patience level, attention to detail, willingness to explore

When you run a test, each persona independently navigates your app, makes decisions based on their profile, and reports their experience.

## Why diverse personas matter

A single tester finds a single perspective's issues. Swarm's value comes from diversity:

* A power user might breeze through your signup, but a non-technical user might get stuck on your password requirements
* A screen reader user might find your form labels are missing
* An impatient user might abandon your checkout if it takes too many steps

By testing with multiple diverse personas simultaneously, you surface issues that would take weeks of real user feedback to discover.

## Generating personas

When you run `swarm test`, you can generate personas on the fly:

```bash theme={null}
swarm test --url localhost:3000 \
  --goal "Purchase a subscription" \
  --agents 5 \
  --audience "small business owners evaluating project management tools"
```

Swarm uses the audience description to generate personas that match your target users. The more specific your description, the more relevant the personas.

## Swarms (saved persona sets)

A **swarm** is a named, reusable set of personas. Instead of generating new personas each test, you can create a swarm once and reuse it:

### Creating a swarm

Create swarms from the [dashboard](https://useswarm.co):

1. Go to **Swarms** in the sidebar
2. Click **Create Swarm**
3. Name it and describe your target audience
4. Swarm generates the personas — review and edit as needed

### Using a swarm in tests

List your swarms:

```bash theme={null}
swarm list-swarms
```

```
  2 swarm(s) found:

  a1b2c3d4  Enterprise Users  (5 personas)
    IT managers and procurement leads at mid-size companies

  e5f6g7h8  Consumer Beta  (8 personas)
    Mixed demographics for consumer app testing
```

Run a test with a specific swarm:

```bash theme={null}
swarm test --url localhost:3000 --goal "Complete onboarding" --swarm a1b2c3d4
```

### When to use swarms vs. generated personas

| Scenario               | Recommendation                              |
| ---------------------- | ------------------------------------------- |
| Quick ad-hoc testing   | Generate on the fly with `--agents`         |
| Regression testing     | Use a saved swarm for consistency           |
| A/B comparison         | Same swarm on two URLs for apples-to-apples |
| Specific user segments | Create a dedicated swarm per segment        |
