verify can measure them before and after every push.
What you track
An intent is what someone wants. Its prompts are how they ask for it. Both live inappeeky.spec.yaml, per storefront:
Write prompts the way a person types them, not the way you would describe the app.
Two ways to run it
Each key adds that assistant. With only
ANTHROPIC_API_KEY, a local scan asks Claude alone.
Through Appeeky
initwrites the intents and prompts Appeeky already tracks intoaiVisibility.intents. With none yet, Appeeky writes them from your listing, andinitsays to run it again in a few minutes.--country <cc>adds a storefront.syncsends the spec’s intents and prompts to Appeeky. Ones that are only in Appeeky are listed, and archived only with--prune.--dry-runshows the plan and sends nothing.pullwrites one file per storefront (--countryfor one).scanasks the assistants now. It uses AI Visibility credits; pull the results a few minutes later.
On your own keys
init --local has your own model write intents and prompts from the listing, the target keywords and your competitors. It prints what that cost on your key, and it skips a storefront that already has intents. Edit them, then quote the scan.
Quote before you pay
--dry-run asks nothing and spends nothing. It also lists the assistants that have no key. Without it, the scan shows the same quote and asks Ask the assistants for about $2.45 on your own keys? before it spends. --yes skips the question.
Each prompt goes to each assistant with web search on, the way the apps answer people, and a second cheap call lists the apps each answer names. The quote is roughly, per prompt:
The scan prints progress, then the same summary as
pull with what it cost. An assistant that failed is listed with its error; the others still count.
On a schedule
--every <days> skips a storefront scanned in the last <days> days:
VISIBILITY_EVERY (for example 7) as a repository variable or in the Docker .env, with the keys as secrets. The daily routine then runs visibility scan --local --every $VISIBILITY_EVERY --yes. The weekly agent is not allowed to run a paid scan. See GitHub Actions & CI.
The visibility files
appeeky/visibility/us.yaml:
Read the results and improve them
- Missing, with the same names in
namedInstead. Those apps own the intent. Read their store descriptions: assistants quote store text that says what an app is for. - Weak on one assistant. Read that assistant’s answers in
answers/<country>.jsonlto see what it picked and why. - Your site is not in
sources. Assistants cite pages they can read. Runseo checkand make the site readable for AI crawlers. See Website and Google search. - The app is named but not counted. Add the name the assistants use to
aliases.
Measure it
verify reads ai_visibility, the share of answers that name the app, for the first watched storefront: Appeeky’s daily series, or history.csv from local scans. Higher is better. Experiments can use it too: experiment add --metric ai_visibility. See Push, measure and revert.
Related: Website and Google search · On your own keys · Listing
