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.
| Flag | Effect |
|---|---|
--json | Print JSON instead of a table |
--no-input | Fail instead of prompting for missing input |
--debug | Print 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
| Flag | Description |
|---|---|
--brand-name | The brand to track. Required. |
--brand-domain | Its website domain |
--monitor-name | The segment's name. Defaults to the brand name followed by "AI visibility". |
--project-name | The 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
| Command | What it does |
|---|---|
brands list | Lists your brands |
studies list | Lists your studies |
projects list | Lists 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.
| Command | What it does |
|---|---|
show | Shows the tracked brand |
set | Creates 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.
| Command | What it does |
|---|---|
list | Lists 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.
| Command | What it does |
|---|---|
list | Lists 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>.
| Command | What it does |
|---|---|
list | Lists 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.
| Command | What it exports | Table columns |
|---|---|---|
observations | Each model run: prompt, model, status, answer text, latency, tokens and cost | Captured, Batch, Run, Model, Status, Batch Health, Latency, Tokens, CostMC (cost in microcents) |
derived-facts | What Cleotic found in each answer: brand mentions, citations, recommendations and outcomes, with confidence and evidence text | Captured, Type, Response, Batch, Entity, Value, Conf, Extractor, Evidence |
sources | Cited sources with their ownership, category, sentiment and signals | Captured, Citation, Source, Ownership, Category, Angle, Sentiment, Brands, Signals |
missing-data | Answers whose analysis is still pending or failed | Captured, Severity, Kind, Status, Batch, Response, Message |
bundle | All of the above, plus extraction status, in one JSON document with the filters used | A count of rows per dataset |
Every benchmark command takes:
| Flag | Filters to |
|---|---|
--from, --to | Days, YYYY-MM-DD |
--monitor, --prompt, --batch | One segment, prompt or collection batch, by ID |
--model | One model or surface |
--market, --language, --category, --intent-type | Prompts with that label |
--limit, --offset | A page of rows: 100 by default |
Some commands add their own:
| Command | Flags |
|---|---|
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
| Command | What it does |
|---|---|
login | Signs in through the browser. --no-browser prints a link to open on another device; --change-org lets you pick another organisation. |
status | Checks the session with Cleotic and shows who you're signed in as, the organisation and when the token expires |
logout | Removes the session from this computer |
cleotic config
| Command | What it does |
|---|---|
get | Shows api_url, default_project_id and the settings file's path |
set api-url <url> | Saves the API URL |
reset | Deletes the settings file, including the default brand |
cleotic update and version
| Command | What it does |
|---|---|
cleotic update | Installs the latest release after asking. --yes skips the question; --check only reports whether one is available. |
cleotic version | Prints the version, commit and build date |
cleotic completion bash, zsh or fish prints a shell completion script.
Related
Updated