CLI command reference

On this page

Every cleotic command, its flags and what it prints. Each command also has --help. To install the CLI and sign in, see Cleotic CLI.

Global flags

These work on every command.

FlagEffect
--jsonPrint JSON instead of a table
--no-inputFail instead of prompting for missing input
--debugPrint request details to standard error
--api-url <url>Use another Cleotic API for this command

Commands that work on one brand use the default, set with cleotic projects use, unless you pass --project <id> or a [project-id] argument.

cleotic setup

Creates a brand, its primary brand and its first segment, then makes it the default.

cleotic setup
cleotic setup --no-input --brand-name "Acme" --brand-domain acme.com
FlagDescription
--brand-nameThe brand to track. Required.
--brand-domainIts website domain
--monitor-nameThe segment's name. Defaults to the brand name followed by "AI visibility".
--project-nameThe project's name. Defaults to the brand name.

In a terminal, setup asks for the brand name, domain and segment name, filled in from any flags. The segment tracks global, English answers, with up to 25 prompts, on the models your plan includes.

Created brand Acme and monitor Acme AI visibility
Using project proj_01J8Z4…

If a step fails, nothing is rolled back: the error lists what was created and the commands that finish or remove it. With --json, setup prints {"project", "brand", "monitor"}.

cleotic brands, studies and projects

CommandWhat it does
brands listLists your brands
studies listLists your studies
projects listLists every brand and study
projects use <id>Makes a brand or study the default for later commands. Doesn't call the API.
projects show [project-id]Shows one
projects create --name <name>Creates a project. --status sets its status.
projects update [project-id]Renames it (--name) or changes its status (--status)
projects delete [project-id]Deletes it and everything in it. Asks first; --yes skips the question.
projects summary [project-id]Prints its metrics, segments, competitors, reports and tracking as JSON
ID            Name     Status  Access
------------  -------  ------  ------
proj_01J8Z4…  Acme     active  owner
proj_01J9A2…  Acme EU  paused  shared

JSON lists include id, name, status, access_mode, scope_kind, website_url, created_at and updated_at.

cleotic primary-brand

The brand a project tracks.

CommandWhat it does
showShows the tracked brand
setCreates or edits it: --name, --domain, and --alias, repeated for each alias

--alias replaces the existing aliases, so pass all of them. Changing the name or aliases re-reads existing answers.

ID           Name  Domain    Aliases         Status
-----------  ----  --------  --------------  ------
brand_01J8…  Acme  acme.com  Acme Inc, ACME  active

cleotic competitors

The brands you compare against.

CommandWhat it does
listLists competitors
create --name <name>Adds one, with optional --domain and repeated --alias
update <competitor-id>Edits --name, --domain, --alias or --status (active or paused)
delete <competitor-id>Stops tracking it. Asks first; --yes skips the question.

Output has the same columns as primary-brand. A new competitor uses one tracked brand of your plan; pausing keeps its history and frees the capacity.

cleotic monitors

Segments: groups of prompts with a market and language. list and create work on one brand; the others take the segment's ID.

CommandWhat it does
listLists segments
create --name <name>Adds one, with optional --geo (a country code such as GB, or global), --language (such as en) and --prompt-limit
show <monitor-id>Shows one
update <monitor-id>Changes --name, --geo, --language, --prompt-limit or --status
delete <monitor-id>Deletes it with its prompts and their answers. Asks first; --yes skips the question.
ID           Name                Status  Geo  Lang  Models                            Prompts
-----------  ------------------  ------  ---  ----  --------------------------------  -------
mon_01J8Z5…  Acme AI visibility  active  GB   en    openai:consumer, google:consumer  12

A segment collects from every model your plan includes, listed by provider; the CLI can't choose models. show, create and update print prompts as used/limit, such as 12/25.

cleotic prompts

Every prompts command needs --monitor <monitor-id>.

CommandWhat it does
listLists the segment's prompts
create --text <question>Adds one, with optional repeated --tag and --status. It's answered straight away.
update <prompt-id>Changes --status or --tag. To change the wording, use replace.
replace <prompt-id> --text <question>Replaces the wording with a new prompt; the old one keeps its answers in its history
delete <prompt-id>Deletes it and its answers. Asks first; --yes skips the question.
ID           Status  Tags        Text
-----------  ------  ----------  -----------------------------------------------
prm_01J8Z6…  active  pricing     Which expense tools work best for a small team?
prm_01J8Z7…  paused  comparison  Compare Acme and Rival for approval workflows

cleotic benchmark

Exports the evidence behind a brand's answers for analysis outside Cleotic. Built for --json; without it, each command prints a table.

CommandWhat it exportsTable columns
observationsEach model run: prompt, model, status, answer text, latency, tokens and costCaptured, Batch, Run, Model, Status, Batch Health, Latency, Tokens, CostMC (cost in microcents)
derived-factsWhat Cleotic found in each answer: brand mentions, citations, recommendations and outcomes, with confidence and evidence textCaptured, Type, Response, Batch, Entity, Value, Conf, Extractor, Evidence
sourcesCited sources with their ownership, category, sentiment and signalsCaptured, Citation, Source, Ownership, Category, Angle, Sentiment, Brands, Signals
missing-dataAnswers whose analysis is still pending or failedCaptured, Severity, Kind, Status, Batch, Response, Message
bundleAll of the above, plus extraction status, in one JSON document with the filters usedA count of rows per dataset

Every benchmark command takes:

FlagFilters to
--from, --toDays, YYYY-MM-DD
--monitor, --prompt, --batchOne segment, prompt or collection batch, by ID
--modelOne model or surface
--market, --language, --category, --intent-typePrompts with that label
--limit, --offsetA page of rows: 100 by default

Some commands add their own:

CommandFlags
derived-facts--fact-type (brand_mention, citation, citation_brand_match, recommendation_fact or response_outcome) and --entity
sources--domain, --ownership (own, competitor or third_party), --source, --citation, --source-type, --source-category, --content-angle, --source-sentiment and --citation-context
missing-data--kind, --status and --include-optional, which adds optional classifications
bundle--include-optional
Dataset            Rows
-----------------  ----
observations       312
derived_facts      1840
source_evidence    426
extraction_status  312
missing_data       0

That's bundle without --json.

cleotic auth

CommandWhat it does
loginSigns in through the browser. --no-browser prints a link to open on another device; --change-org lets you pick another organisation.
statusChecks the session with Cleotic and shows who you're signed in as, the organisation and when the token expires
logoutRemoves the session from this computer

cleotic config

CommandWhat it does
getShows api_url, default_project_id and the settings file's path
set api-url <url>Saves the API URL
resetDeletes the settings file, including the default brand

cleotic update and version

CommandWhat it does
cleotic updateInstalls the latest release after asking. --yes skips the question; --check only reports whether one is available.
cleotic versionPrints the version, commit and build date

cleotic completion bash, zsh or fish prints a shell completion script.

Updated