@ishlabs/cli 0.17.6 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/README.md +54 -54
  2. package/dist/commands/ask.d.ts +4 -4
  3. package/dist/commands/ask.js +66 -66
  4. package/dist/commands/chat.js +10 -10
  5. package/dist/commands/config.js +1 -1
  6. package/dist/commands/docs.js +1 -1
  7. package/dist/commands/iteration.js +57 -57
  8. package/dist/commands/mcp.d.ts +23 -0
  9. package/dist/commands/mcp.js +676 -0
  10. package/dist/commands/person.d.ts +5 -0
  11. package/dist/commands/{profile.js → person.js} +197 -162
  12. package/dist/commands/source.d.ts +6 -2
  13. package/dist/commands/source.js +35 -30
  14. package/dist/commands/study-analyze.d.ts +1 -1
  15. package/dist/commands/study-analyze.js +3 -3
  16. package/dist/commands/study-participant.d.ts +8 -0
  17. package/dist/commands/{study-tester.js → study-participant.js} +50 -50
  18. package/dist/commands/study-run.d.ts +6 -6
  19. package/dist/commands/study-run.js +295 -271
  20. package/dist/commands/study.js +89 -66
  21. package/dist/commands/workspace.js +13 -13
  22. package/dist/connect.js +5 -5
  23. package/dist/index.js +6 -4
  24. package/dist/lib/accessibility-profile.d.ts +1 -1
  25. package/dist/lib/accessibility-profile.js +1 -1
  26. package/dist/lib/alias-hydrate.js +4 -4
  27. package/dist/lib/alias-store.d.ts +5 -5
  28. package/dist/lib/alias-store.js +8 -8
  29. package/dist/lib/api-client.d.ts +1 -1
  30. package/dist/lib/api-client.js +1 -1
  31. package/dist/lib/billing.d.ts +11 -11
  32. package/dist/lib/billing.js +16 -16
  33. package/dist/lib/chat-endpoint-templates.js +1 -1
  34. package/dist/lib/command-helpers.d.ts +18 -18
  35. package/dist/lib/command-helpers.js +83 -53
  36. package/dist/lib/docs.js +560 -386
  37. package/dist/lib/enums.d.ts +2 -2
  38. package/dist/lib/enums.js +2 -2
  39. package/dist/lib/local-sim/browser.d.ts +1 -1
  40. package/dist/lib/local-sim/browser.js +1 -1
  41. package/dist/lib/local-sim/debug-report.d.ts +2 -2
  42. package/dist/lib/local-sim/debug-report.js +3 -3
  43. package/dist/lib/local-sim/loop.d.ts +5 -5
  44. package/dist/lib/local-sim/loop.js +38 -38
  45. package/dist/lib/local-sim/types.d.ts +12 -12
  46. package/dist/lib/mcp-clients.d.ts +51 -0
  47. package/dist/lib/mcp-clients.js +175 -0
  48. package/dist/lib/modality.d.ts +10 -10
  49. package/dist/lib/modality.js +46 -46
  50. package/dist/lib/observability.d.ts +11 -0
  51. package/dist/lib/observability.js +16 -3
  52. package/dist/lib/output.d.ts +13 -12
  53. package/dist/lib/output.js +244 -184
  54. package/dist/lib/profile-sources.d.ts +64 -16
  55. package/dist/lib/profile-sources.js +91 -30
  56. package/dist/lib/skill-content.js +215 -168
  57. package/dist/lib/study-events.d.ts +3 -3
  58. package/dist/lib/study-events.js +1 -1
  59. package/dist/lib/study-inputs.d.ts +11 -1
  60. package/dist/lib/study-inputs.js +68 -17
  61. package/dist/lib/types.d.ts +105 -34
  62. package/package.json +1 -1
  63. package/dist/commands/profile.d.ts +0 -5
  64. package/dist/commands/study-tester.d.ts +0 -8
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # ish
2
2
 
3
- CLI tool for [Ish](https://ishlabs.io) — run studies, send asks, and expose your localhost for AI tester sessions.
3
+ CLI tool for [Ish](https://ishlabs.io) — run studies, send asks, and expose your localhost for AI participant sessions.
4
4
 
5
5
  ## Install
6
6
 
@@ -49,27 +49,27 @@ Test plan is available at `/Users/felixweiland/ish-cli-test-plan.md`.
49
49
 
50
50
  ## Concepts
51
51
 
52
- Two top-level research primitives, both consume reusable tester profiles:
52
+ Two top-level research primitives, both consume reusable people:
53
53
 
54
54
  ```
55
55
  Workspace (= product, top-level container)
56
56
 
57
- ├── Tester Profiles ← reusable audience personas
57
+ ├── People ← reusable personas
58
58
  │ └── Audience Sources (images/PDFs/audio/video/text transcripts that seed generation)
59
59
 
60
60
  ├── Study ─────────────── "structured research artifact"
61
61
  │ ├── modality (interactive | text | video | audio | image | document)
62
62
  │ ├── content-type (for non-interactive studies: email | social_post | ad | etc.)
63
- │ ├── assignments (tasks the tester does)
64
- │ ├── questionnaire (questions testers answer — text, slider, likert, choice)
63
+ │ ├── assignments (tasks the participant does)
64
+ │ ├── questionnaire (questions participants answer — text, slider, likert, choice)
65
65
  │ └── Iterations ← the unit of execution within a study
66
- │ └── Testers ← instance of a Profile inside this Iteration
66
+ │ └── Participants ← instance of a Person inside this Iteration
67
67
  │ └── Interactions / results
68
68
 
69
69
  └── Ask ──────────────── "lightweight reaction artifact"
70
- ├── Audience (testers, fixed at creation, max 5 rounds per ask)
70
+ ├── Audience (participants, fixed at creation, max 5 rounds per ask)
71
71
  └── Rounds ← the unit of execution within an ask
72
- └── Responses (per-tester reactions to a variant)
72
+ └── Responses (per-participant reactions to a variant)
73
73
  ```
74
74
 
75
75
  **The two primary run verbs:**
@@ -79,7 +79,7 @@ Workspace (= product, top-level container)
79
79
  | Default | Run the latest iteration on the active study | Append a round to the active ask |
80
80
  | Fresh setup | Create the iteration first: `ish iteration create …` | `--new` (creates ask + round 1 in one shot) |
81
81
  | Specific target | `--iteration <id>` | Pass the ask id as positional arg |
82
- | Audience | `--profile <ids>`, `--sample <N>`, `--all`, or demographic filters (`--country`, `--gender`, `--min-age`, `--max-age`, `--search`, `--visibility`) — else reuse iteration's testers | `--profile <ids>`, `--sample <N>`, `--all-simulatable`, or demographic filters (with `--new`) |
82
+ | Audience | `--person <ids>`, `--sample <N>`, `--all`, or demographic filters (`--country`, `--gender`, `--min-age`, `--max-age`, `--search`, `--visibility`) — else reuse iteration's participants | `--person <ids>`, `--sample <N>`, `--all-simulatable`, or demographic filters (with `--new`) |
83
83
 
84
84
  ## Commands
85
85
 
@@ -95,36 +95,36 @@ ish upgrade --release 0.8.1 # pin a specific release
95
95
 
96
96
  `ish upgrade` only works on standalone-binary installs (curl/Homebrew). On npm-installed CLIs (`npm install -g @ishlabs/cli`) it refuses with a pointer to `npm install -g @ishlabs/cli@latest` — overwriting `node` would break every other Node tool.
97
97
 
98
- ### Workspaces, studies, iterations, profiles, configs (CRUD groups)
98
+ ### Workspaces, studies, iterations, people, configs (CRUD groups)
99
99
 
100
100
  ```bash
101
101
  ish workspace list | create | get | update | delete | use | info
102
102
  ish workspace site-access status | basic-auth | cookie | login | affirm-public | clear
103
103
  ish study list | create | generate | get | results | update | delete | use
104
104
  ish iteration list | create | get | update | delete
105
- ish profile list | create | generate | get | update | delete
105
+ ish person list | create | generate | get | update | delete
106
106
  ish source upload | get | delete
107
107
  ish config list | create | get | schema | update | delete
108
108
  ish chat endpoint list | create | get | update | delete | use | init | test
109
109
  ish secret list | set | delete
110
110
  ```
111
111
 
112
- `ish workspace info` reports `studies_used / studies_max / testers_used / testers_max / tier` so an agent can branch on plan caps before a destructive call returns `error_code: usage_limit_reached`.
112
+ `ish workspace info` reports `studies_used / studies_max / participants_used / participants_max / tier` so an agent can branch on plan caps before a destructive call returns `error_code: usage_limit_reached`.
113
113
 
114
114
  `ish chat endpoint` configures HTTP-bot endpoints for chat-modality studies (auto-detect from a curl example, smoke-test, edit). `ish secret` is the per-workspace KV store referenced from chatbot endpoint headers via `{{secret:KEY}}` placeholders. Run `ish docs get-page guides/chat` for the end-to-end recipe.
115
115
 
116
- Testers live as a nested group on a study (low-level — usually created via `study run`):
116
+ Participants live as a nested group on a study (low-level — usually created via `study run`):
117
117
 
118
118
  ```bash
119
- ish study tester <id> # show tester details and results
120
- ish study tester create | batch-create | delete # low-level escape hatches
119
+ ish study participant <id> # show participant details and results
120
+ ish study participant create | batch-create | delete # low-level escape hatches
121
121
  ```
122
122
 
123
- `use` saves an active workspace/study/ask to `~/.ish/config.json` so you don't repeat `--workspace`/`--study`/`--ask` on every command. Aliases like `w-6ec`, `s-b2c`, `a-…`, `i-…`, `t-…` work anywhere an ID is expected.
123
+ `use` saves an active workspace/study/ask to `~/.ish/config.json` so you don't repeat `--workspace`/`--study`/`--ask` on every command. Aliases like `w-6ec`, `s-b2c`, `a-…`, `i-…`, `pt-…` work anywhere an ID is expected.
124
124
 
125
125
  ### Define a study — `ish study create`
126
126
 
127
- A study locks in the persistent shape: modality, optional content-type taxonomy, the tasks testers do (`--assignment`), and the questionnaire they answer (`--question` or `--questionnaire`). The actual URL or file lives on an iteration (next step).
127
+ A study locks in the persistent shape: modality, optional content-type taxonomy, the tasks participants do (`--assignment`), and the questionnaire they answer (`--question` or `--questionnaire`). The actual URL or file lives on an iteration (next step).
128
128
 
129
129
  ```bash
130
130
  # Interactive study, one assignment + a single-question questionnaire:
@@ -178,7 +178,7 @@ ish iteration create --image-urls ./post.png \
178
178
 
179
179
  ### Configure site access — `ish workspace site-access`
180
180
 
181
- For studies that target a gated URL (HTTP basic auth, a session-cookie wall like Vercel preview protection, or a login form), set credentials on the workspace once. Testers reuse them whenever a study points at a matching origin. Credentials are encrypted at rest; the CLI never reads them back, only checks whether each method is configured.
181
+ For studies that target a gated URL (HTTP basic auth, a session-cookie wall like Vercel preview protection, or a login form), set credentials on the workspace once. Participants reuse them whenever a study points at a matching origin. Credentials are encrypted at rest; the CLI never reads them back, only checks whether each method is configured.
182
182
 
183
183
  ```bash
184
184
  # Show what's configured:
@@ -190,7 +190,7 @@ ish workspace site-access basic-auth --username alice --password hunter2
190
190
  # Session cookie (Vercel preview, Lovable, etc.):
191
191
  ish workspace site-access cookie --name session --value abc123
192
192
 
193
- # Login form — credentials the tester types into the page:
193
+ # Login form — credentials the participant types into the page:
194
194
  ish workspace site-access login --username demo --password demo
195
195
 
196
196
  # Mark the site as public (silences the "credentials needed?" check):
@@ -209,19 +209,19 @@ printf %s "$STAGING_PW" | ish workspace site-access basic-auth --username alice
209
209
 
210
210
  ### Run a study — `ish study run`
211
211
 
212
- Picks the latest iteration on the study (or `--iteration <id>`), creates testers (explicit `--profile`, demographic-filtered sample, or reusing the iteration's existing testers), and dispatches simulations. If the study has no iterations, run `ish iteration create` first.
212
+ Picks the latest iteration on the study (or `--iteration <id>`), creates participants (explicit `--person`, demographic-filtered sample, or reusing the iteration's existing participants), and dispatches simulations. If the study has no iterations, run `ish iteration create` first.
213
213
 
214
214
  ```bash
215
- # Run the latest iteration, reusing its testers (after `study use`):
215
+ # Run the latest iteration, reusing its participants (after `study use`):
216
216
  ish study run -y
217
217
 
218
- # Run the latest iteration with an explicit audience:
219
- ish study run --profile tp-795,tp-af2
218
+ # Run with explicit people:
219
+ ish study run --person p-795,p-af2
220
220
 
221
- # Sample 3 Swedish profiles aged 35–50 from the workspace pool:
221
+ # Sample 3 Swedish people aged 35–50 from the workspace pool:
222
222
  ish study run --country SE --min-age 35 --max-age 50 --sample 3
223
223
 
224
- # Run with every female profile in the workspace:
224
+ # Run with every female person in the workspace:
225
225
  ish study run --gender female --all
226
226
 
227
227
  # Run a specific iteration:
@@ -238,28 +238,28 @@ ish study run --wait --timeout 600
238
238
  ish study run --local --headed --slow-mo 500
239
239
  ```
240
240
 
241
- **Audience flags** (shared with `ish ask`): `--profile <ids>` for explicit IDs, or any of `--country`, `--gender`, `--min-age`, `--max-age`, `--search`, `--visibility` paired with `--sample <N>` or `--all` to seed from the workspace pool. Mutually exclusive with `--profile`.
241
+ **Audience flags** (shared with `ish ask`): `--person <ids>` for explicit IDs, or any of `--country`, `--gender`, `--min-age`, `--max-age`, `--search`, `--visibility` paired with `--sample <N>` or `--all` to seed from the workspace pool. Mutually exclusive with `--person`.
242
242
 
243
243
  **Other study verbs (low-level):**
244
244
 
245
245
  ```bash
246
246
  ish study poll --study <id> # one-shot progress
247
- ish study poll <tester_id> # single tester status
247
+ ish study poll <participant_id> # single participant status
248
248
  ish study wait --study <id> # block until all done
249
249
  ish study wait --iteration <id> # block on one iteration
250
- ish study wait <tester_id> --timeout 600 # block on one tester
251
- ish study cancel <tester_id> # cancel a running sim
250
+ ish study wait <participant_id> --timeout 600 # block on one participant
251
+ ish study cancel <participant_id> # cancel a running sim
252
252
  ```
253
253
 
254
- `<tester_id>` is a tester alias (`t-...`) or UUID. Get them from `ish study run --json`'s `tester_aliases[]` / `tester_ids[]` arrays:
254
+ `<participant_id>` is a participant alias (`pt-...`) or UUID. Get them from `ish study run --json`'s `participant_aliases[]` / `participant_ids[]` arrays:
255
255
 
256
256
  ```bash
257
- ish study run --study s-b2c -y --json | jq -r '.tester_aliases[]' # → t-072, t-1ed, ...
257
+ ish study run --study s-b2c -y --json | jq -r '.participant_aliases[]' # → pt-072, pt-1ed, ...
258
258
  ```
259
259
 
260
260
  ### Run an ask — `ish ask run`
261
261
 
262
- Smart wrapper around the ask flow. With `--new`, creates a fresh ask + round 1 (audience from `--profile`, `--sample`, `--all-simulatable`, or any demographic filter — `--country`, `--gender`, `--min-age`, `--max-age`, `--search`, `--visibility`). Without `--new`, appends a new round to the active or specified ask.
262
+ Smart wrapper around the ask flow. With `--new`, creates a fresh ask + round 1 (people from `--person`, `--sample`, `--all-simulatable`, or any demographic filter — `--country`, `--gender`, `--min-age`, `--max-age`, `--search`, `--visibility`). Without `--new`, appends a new round to the active or specified ask.
263
263
 
264
264
  ```bash
265
265
  # Append a round to the active ask:
@@ -270,25 +270,25 @@ ish ask run --prompt "And now which?" \
270
270
  ish ask run a-6ec --prompt "Round 2" \
271
271
  --variant text:"A" --variant text:"B"
272
272
 
273
- # Create a fresh ask with round 1, sample 30 profiles, wait for results:
273
+ # Create a fresh ask with round 1, sample 30 people, wait for results:
274
274
  ish ask run --new --name "tagline AB" \
275
275
  --prompt "Which sounds better?" \
276
276
  --variant text:"Short and punchy." \
277
277
  --variant text:"A longer, descriptive line." \
278
278
  --sample 30 --wants-pick --wait
279
279
 
280
- # Demographic-filtered sample (Swedish profiles aged 35–50):
280
+ # Demographic-filtered sample (Swedish people aged 35–50):
281
281
  ish ask run --new --name "SE 35-50" \
282
282
  --prompt "Which sounds better?" \
283
283
  --variant text:"A" --variant text:"B" \
284
284
  --country SE --min-age 35 --max-age 50 --sample 10 --wants-pick
285
285
 
286
- # Image comparison from local files (auto-uploaded), explicit profiles:
286
+ # Image comparison from local files (auto-uploaded), explicit people:
287
287
  ish ask run --new --name "hero shots" \
288
288
  --prompt "Which feels premium?" \
289
289
  --variant image:./hero-a.png::label=A \
290
290
  --variant image:./hero-b.png::label=B \
291
- --profile tp-d4e,tp-a17 --wants-ratings
291
+ --person p-d4e,p-a17 --wants-ratings
292
292
 
293
293
  # Text from a markdown file + JSON questionnaire:
294
294
  ish ask run --new --name "newsletter" \
@@ -306,15 +306,15 @@ ish ask run --new --name "newsletter" \
306
306
  ]
307
307
  ```
308
308
 
309
- **Audience flags** (`--profile`, `--sample`, `--all-simulatable`, `--country`, `--gender`, `--min-age`, `--max-age`, `--search`, `--visibility`, `--name`, `--description`, `--workspace`) only apply with `--new` — the audience is fixed at ask creation.
309
+ **People flags** (`--person`, `--sample`, `--all-simulatable`, `--country`, `--gender`, `--min-age`, `--max-age`, `--search`, `--visibility`, `--name`, `--description`, `--workspace`) only apply with `--new` — the people are fixed at ask creation.
310
310
 
311
311
  **`--visibility` values** (same set everywhere it's accepted):
312
312
 
313
313
  | Value | Selects |
314
314
  |---|---|
315
- | `workspace` | Profiles owned by your workspace (default scope). |
316
- | `shared` | Community-published profiles visible across workspaces. |
317
- | `platform` | Admin-curated profiles from the platform pool. |
315
+ | `workspace` | People owned by your workspace (default scope). |
316
+ | `shared` | Community-published people visible across workspaces. |
317
+ | `platform` | Admin-curated people from the platform pool. |
318
318
 
319
319
  Old values `private` (now `workspace`) and `public` (now `platform`) keep working until the next release; the server logs a deprecation warning and maps them to the new vocabulary.
320
320
 
@@ -327,26 +327,26 @@ ish ask results [id] [--round <n>]
327
327
  ish ask wait [id] [--round <n>] [--timeout <s>]
328
328
  ish ask add-round [id] --prompt … --variant … # explicit form of `run`
329
329
  ish ask add-questions [id] --round <n> --questions ./qs.json
330
- ish ask add-testers [id] --profile # extend audience for one round
330
+ ish ask add-people [id] --person # extend people for one round
331
331
  ish ask create … # explicit form of `run --new`
332
332
  ish ask update | archive | unarchive | delete | use
333
333
  ```
334
334
 
335
- ### Generate tester profiles
335
+ ### Generate people
336
336
 
337
- `ish profile generate` runs the same audience-generation flow used in the web UI: an LLM reads your description and any uploaded sources (transcripts, customer records, audio interviews, screenshots) and returns either a single profile or a full audience.
337
+ `ish person generate` runs the same generation flow used in the web UI: an LLM reads your description and any uploaded sources (transcripts, customer records, audio interviews, screenshots) and returns either a single person or a group of people.
338
338
 
339
339
  ```bash
340
- # 5 profiles from a written brief:
341
- ish profile generate \
340
+ # 5 people from a written brief:
341
+ ish person generate \
342
342
  --description "Tech-savvy millennials in the US who use mobile banking" \
343
343
  --count 5
344
344
 
345
- # One profile from a transcript — the file is uploaded automatically:
346
- ish profile generate --source ./interviews/sarah.txt --count 1
345
+ # One person from a transcript — the file is uploaded automatically:
346
+ ish person generate --source ./interviews/sarah.txt --count 1
347
347
 
348
348
  # Audio call with a written brief, diarized:
349
- ish profile generate \
349
+ ish person generate \
350
350
  --description "Voices behind support tickets" \
351
351
  --source ./call.mp3 --diarize --count 3
352
352
  ```
@@ -355,12 +355,12 @@ For explicit control over uploads — e.g. reusing the same source across multip
355
355
 
356
356
  ```bash
357
357
  ish source upload ./call.mp3 --diarize
358
- # → tps-3a4 (status: processed)
358
+ # → ps-3a4 (status: processed)
359
359
 
360
- ish profile generate --source tps-3a4 --propose-count
360
+ ish person generate --source ps-3a4 --propose-count
361
361
  # → { proposed_count: 4, rationale: "..." }
362
362
 
363
- ish profile generate --source tps-3a4 --count 4
363
+ ish person generate --source ps-3a4 --count 4
364
364
  ```
365
365
 
366
366
  ### Chat-modality studies — `ish chat`
@@ -387,10 +387,10 @@ ish chat endpoint test ep-abc -m "Hello"
387
387
  ish chat endpoint test ep-abc -m "Tell me more" --conversation-id "$CID" # stateful threading
388
388
 
389
389
  # Run a chat-modality study using the saved endpoint (existing study verbs).
390
- # Audience size lives on study run via --sample / --all / --profile.
390
+ # Audience size lives on study run via --sample / --all / --person.
391
391
  ish study create --modality chat --endpoint ep-abc --name "Sign-up Q1" --assignment "Sign up:Try to sign up"
392
392
  ish study run --study stu-xyz --sample 5 --wait
393
- ish study results stu-xyz --json | jq '.testers'
393
+ ish study results stu-xyz --json | jq '.participants'
394
394
  ```
395
395
 
396
396
  Local bots (`localhost` / `127.0.0.1` / `0.0.0.0`) auto-flag `is_tunnel_backed=true` on `init`; pair with `ish connect <port>` in another shell. Override with `--tunnel-backed` / `--no-tunnel-backed`.
@@ -413,7 +413,7 @@ ish disconnect --json # graceful shutdown of an active tunne
413
413
  ISH_TOKEN=YOUR_TOKEN ish connect 8080
414
414
  ```
415
415
 
416
- Foreground `connect` is long-running — keep it open while testers run. The tunnel URL prints prominently after "Connected"; pass `--json` for one-line machine-readable output (`{"status":"connected","tunnel_url":"...","local_port":3000,"registered":true}`). The `--detach` form forks after the first successful heartbeat and returns immediately, tracking PID + URL in `~/.ish/connect.lock` so `connect status` and `disconnect` find it later.
416
+ Foreground `connect` is long-running — keep it open while participants run. The tunnel URL prints prominently after "Connected"; pass `--json` for one-line machine-readable output (`{"status":"connected","tunnel_url":"...","local_port":3000,"registered":true}`). The `--detach` form forks after the first successful heartbeat and returns immediately, tracking PID + URL in `~/.ish/connect.lock` so `connect status` and `disconnect` find it later.
417
417
 
418
418
  Destructive verbs in `--json` mode (e.g. `chat endpoint delete`, `study delete`) require an explicit `--yes`; the rejection envelope carries `error_kind: "ConfirmationRequired"` and an `example` field with the same command + `--yes` appended, so an agent can recover without re-reading the help text.
419
419
 
@@ -2,16 +2,16 @@
2
2
  * ish ask — Create and run asks (multi-round surveys with variants).
3
3
  */
4
4
  import type { Command } from "commander";
5
- import type { AudienceSubset } from "../lib/types.js";
5
+ import type { ParticipantSubset } from "../lib/types.js";
6
6
  /**
7
7
  * Parse the `--subset-round <n> --subset-variant <variant_id>` pair into
8
- * an `AudienceSubset` payload (Pattern B). Both flags must be passed
8
+ * an `ParticipantSubset` payload (Pattern B). Both flags must be passed
9
9
  * together or neither — half a subset is a misconfiguration the agent
10
10
  * should fix before dispatch, not a silent fallthrough to the full
11
- * audience.
11
+ * participant list.
12
12
  *
13
13
  * Returns `undefined` when neither flag is set; throws when only one is
14
14
  * set or when `--subset-round` isn't a positive integer.
15
15
  */
16
- export declare function parseAudienceSubset(subsetRound: string | undefined, subsetVariant: string | undefined): AudienceSubset | undefined;
16
+ export declare function parseParticipantSubset(subsetRound: string | undefined, subsetVariant: string | undefined): ParticipantSubset | undefined;
17
17
  export declare function registerAskCommands(program: Command): void;