# Every question your buyers ask, mapped to a page

> Every question your buyers ask AI, mapped. Runs weekly, unattended.

Loop: `topic-map`
Category: AI visibility
Autonomy: auto
License: MIT
Source: https://vibemarketers.ai/loops/topic-map

Clusters the questions your buyers actually ask into topics, maps each to the page that should answer it, and names the gaps where no page exists.

## What you need

- none required

## Goal prompt

Give this to your agent. Replace anything in <angle brackets> with your own.

```
Read the buyer questions and ICP for <company>, plus the list of pages that
already exist. Cluster every question into one of four buckets: brand,
problem, comparison, category. Map each cluster to the page that should
answer it. Where no page answers a cluster, name it as a gap and say which
question implies it. Write the map with a source and a date on every cluster.
```

## Verifier prompt

Run this as a second, separate agent. It grades the first one's work and must be
able to fail. A checker that never fails is not a checker.

```
Open the topic map. FAIL if any cluster has no source question behind it, if
any mapped page does not exist, if a gap is named without the question that
implies it, or if the file has no date. Otherwise PASS.
```

## Stopping condition

Every buyer question belongs to exactly one cluster, every cluster names a page or a gap, and the verifier marks PASS.

## How to run it

1. Save this file into your project, for example `.claude/loops/topic-map.md`.
2. Open your agent in that project (Claude Code, Cursor, or Codex).
3. Paste the goal prompt, with your own values in place of the angle brackets.
4. When it stops, start a fresh session and paste the verifier prompt.
5. Read the verdict before you accept any change.

## What happened when we ran it

Last run 2026-09-25 on vibemarketers.ai.

- Baseline: 26 buyer questions existed in the Brain with no mapping to pages. Which questions the 13 term pages were supposed to answer had never been written down.
- Result: 26 questions mapped: 13 category, 7 problem, 5 brand, 1 comparison. 11 of 26 have no page that answers them, including the cost question and whether the loop touches your site or only reads it.
- What this does not prove: A topic match is not evidence that the page answers the question well. The map says a page exists, not that it is any good. The questions come from published copy rather than from sales calls, so they are what the sites answer rather than what buyers actually ask.
- Cost: 0 human touches, 4 minutes, $0.00
- Raw log: https://github.com/genwfurukawa/vibemarketers-v2/blob/main/lab/runs/2026-09-25-topic-map.json

## Inside a company

- Problem it solves: Nobody knows which questions the site is supposed to answer, so pages get written by hunch.
- Source of truth it reads: The buyer questions file, the ICP, and the current page list.
- What it may do: Read questions and pages, write a map, name gaps. Never write a page.
- Who approves: The content owner picks which gaps get filled and in what order.
- Who owns it: Content lead
- How you measure it: Share of buyer questions with a page that answers them.

MIT licensed. Copy it, change it, run it. No attribution required.
