Skip to main content

ish iteration list

List iterations for a study Usage: ish iteration list [options]

Options

string
Study ID
string
Workspace ID; accepted for consistency (workspace is inferred from the study)

ish iteration create

Create a new iteration with run-time content/URL Usage: ish iteration create [options]

Options

string
Study ID (or set via ish study use)
string
Workspace ID; accepted for consistency (workspace is inferred from the study)
string
Iteration name (defaults to the next position letter A/B/C… if omitted)
string
Iteration description
string
Platform (browser, android, ios, figma, code) - interactive only
string
URL to test - interactive only (optional for ios/android native apps)
string
Native app bundle id (or .app/.apk path) - ios/android; supplies the iteration target so —url isn’t required
string
Screen format (mobile_portrait, desktop) - interactive only; hyphen/underscore variants accepted. Default: desktop, or mobile_portrait for native ios/android
string
Locale code (e.g. en-US) - interactive only
string
Figma file key - required when —platform=figma
string
Figma start node id - required when —platform=figma
string
Figma flow name - interactive only
string
Text content to evaluate, or @filepath to read from file - text modality
string
HTML version of the text, or @filepath to read from file - text modality
string
Email ‘From’ display name - text modality (email rendering)
string
Email sender address - text modality (email rendering)
Hero image URL - text modality (email rendering)
string
URL or local file path to media file - video, audio, document modalities
string
Comma-separated image URLs or local file paths - image modality
string
Content title shown to participants (the leading headline they read) - media modalities
string
MIME type (e.g. video/mp4) - media modalities
string
Ad copy or social post caption (or @filepath) - ads & social posts
string
HTML version of copy text (or @filepath)
string
Social platform (instagram, tiktok, facebook, linkedin, x)
string
Copy position relative to media (before, after) Default: “after”.
string
Segmentation JSON - time_based {intervals_seconds, labels?}, section_based {sections[{name,label,…}]}, or page_based {} - media modalities. section_based sections are SEMANTIC: group related paragraphs into a few coherent sections (a long article is usually 3-6 sections, not one per paragraph; paragraph_start/end just mark where each section begins and ends).
string
Content config JSON - {early_termination, selected_segment_indices?} - media modalities
string
Chat mode: external_chatbot (default; probe a customer chatbot) or participant_pair (two AI people talk to each other)
string
Saved chatbot endpoint id - chat modality, external_chatbot mode (legacy; prefer —endpoint)
string
Inline chatbot endpoint config JSON - chat modality, external_chatbot mode (legacy; prefer —endpoint-config)
string
Max participant turns (1-50) - chat modality (default 12)
boolean
End the chat session early when the participant signals stop - chat modality
string
Saved chatbot endpoint id (alias or UUID) - chat modality, external_chatbot mode
string
Raw ChatbotEndpointConfig JSON file or - for stdin - chat modality, external_chatbot mode
string
Person IDs/aliases for side A (comma-separated or repeatable). Pass a single person and N on —group-b to broadcast (1×N rehearsal: fix side A, vary side B) - chat participant_pair mode Default: [].
string
Person IDs/aliases for side B (comma-separated or repeatable). When both sides are explicit they must be equal length, BUT if either side is a singleton it’s auto-broadcast to match the other (1×N rehearsal) - chat participant_pair mode Default: [].
string
Side-A scenario + goal text, or @filepath - chat participant_pair mode
string
Side-B scenario + goal text, or @filepath - chat participant_pair mode
string
Which side speaks first (default: a) - chat participant_pair mode
string
RoleCriteria filter for side A (inline JSON or @filepath). Keys: occupation[], min_age, max_age, gender[], country[], education_level_in[], household_in[], locale_type_in[], income_level_in[], employment_status_in[], requires_captions, uses_screen_reader, prefers_reduced_motion, prefers_high_contrast, has_any_accessibility_need. The five *_in arrays accept snake_case spec values; the five accessibility filters are booleans. Persona-first: filters the eligible profile pool without altering personas. Use INSTEAD of —group-a or alongside it (criteria then validates the explicit list). chat participant_pair mode.
string
RoleCriteria filter for side B - same shape as —role-criteria-a. chat participant_pair mode.
string
Raw iteration details JSON (overrides individual flags)

ish iteration get

Get iteration details (accepts multiple IDs for batched lookup) Usage: ish iteration get <ids>... [options]

Arguments

Iteration ID(s) - one or more aliases/UUIDs (space- or comma-separated) (required, variadic)

Options

string
Workspace ID; accepted for consistency (inferred from alias / active context)

ish iteration update

Update an iteration Usage: ish iteration update <id> [options]

Arguments

Iteration ID (required)

Options

string
Iteration name
string
Iteration description
string
Iteration details as JSON string
string
Iteration label (uppercase letters)
string
Workspace ID; accepted for consistency (inferred from alias / active context)

ish iteration delete

Delete an iteration Usage: ish iteration delete <id> [options]

Arguments

Iteration ID (required)

Options

boolean
Skip confirmation prompt (required in —json / non-TTY)
string
Workspace ID; accepted for consistency (inferred from alias / active context)

Global flags

Every command accepts the global flags.
boolean
output the version number
string
Auth token (or set ISH_TOKEN env var)
string
Read auth token from a file (preferred over —token / ISH_TOKEN)
string
Default workspace ID; per-subcommand —workspace overrides
boolean
Output as JSON (auto-enabled when piped)
string
Extract a single field from the JSON response and print only its value (implies —json internally; supports dotted paths e.g. person.name)
boolean
Force human-readable output even when stdout is piped (overrides JSON-when-piped auto-detection)
string
Comma-separated fields to include in JSON output (e.g. alias,name,status)
boolean
Include full UUIDs and timestamps in JSON output
boolean
Disable colored output (also honored: NO_COLOR env var)
boolean
Suppress progress messages on stderr (no-op for read commands that emit none)