Releases: asksyllable/syllable-cli
Release list
v2.0.0
Changelog
New Features
- 406e57e feat: accept an optional positional id on the body-routed update commands (#121) (#156)
- e14b6d9 feat: annotate --dry-run output with required fields missing from the body (#143) (#157)
- 67d3a4a feat: escape path/query segments, fix config-error UX, harden setup + install (#126, #127, #130, #133) (#152)
Bug Fixes
Improvements
- f1954af Code review batch 1: API-contract fixes, delete confirmation, structured config errors (#150)
- f8c0ad4 Code review batch 2: credential redaction, redirect/setup hardening, integration build tag (#151)
- 17bbd32 Code review final batch: docs accuracy, CRUD runners, dep upgrades, usage skill (#122, #141, #142) (#158)
- 0e4a9a7 ci: harden test workflow and release hooks (#137, #140) (#153)
v1.7.4
What's new
Campaigns can now be restricted by phone line type.
- New
LineTypeBucketvocabulary:mobile,landline,voip. - New fields on outbound campaigns:
allowed_line_typesandinclude_unknown_line_types. - New
line_typefield on request results. - New status values for calls skipped due to line-type filtering:
FILTERED_LINE_TYPE,SKIPPED.
Set these on a campaign via syllable outbound campaigns create --file …, and inspect the vocabulary with syllable schema get LineTypeBucket.
Spec-only sync — no command or flag changes.
v1.7.3
What's new
The channel-targets list endpoint now supports filtering by a comma-separated list of target modes (target_mode_list) and exposes a dedicated set of sortable fields for order_by.
Synced from the upstream OpenAPI spec — purely additive (one new schema plus new filter/sort vocabulary, zero removals), no command or flag changes. See #106.
v1.7.2
What's new
conversation-config bridges-update now accepts a smart_turn_timeout_seconds field in the bridge-phrases JSON body — it tunes how long an agent waits on caller silence before the first bridge phrase (0.25–30s; subsequent intervals scale 2x / 3x / 4x). Optional; the service-wide default applies when unset.
Synced from the upstream OpenAPI spec — purely additive (one new optional field), no breaking changes. See #101.
v1.7.1
Keeps the embedded OpenAPI spec current with the Syllable API. Additive — no breaking changes.
Added
- Bridge phrases:
conversation-config bridges/bridges-updatenow support a unified orderedmessageslist with optionalrandomize_messages(no-repeat shuffling). Legacy fields (first_slow_messages,very_slow_messages,tool_responses) still apply whenmessagesis empty. Set via--file. is_outboundsession property — usable withsessions list --search-field.
No new commands or flags; existing --file-driven create/update paths pick up the new optional fields automatically.
Internal: the spec-sync diff tool now detects enum-member changes (a removed enum value is flagged as breaking).
v1.7.0
v1.6.1
v1.6.0
v1.5.1
v1.5.0
What's new
The CLI now covers nearly every non-deprecated OpenAPI operation — 13 commands closing the bulk of the gap between the spec and the cobra surface, with --confirm gates on the few destructive ones.
New commands
Directory (#59)
syllable directory history <member-id> [--page] [--limit] [--order-by-direction]syllable directory restore <member-id> [--comments]syllable directory test <member-id> [--timestamp ISO8601] [--language-code](timestamp defaults to now-UTC)
Insights (#60)
syllable insights tools-test --file body.jsonsyllable insights folders move-files <folder-id> --file body.jsonsyllable insights workflows queue-work --file body.json
Discovery & samples (#61)
syllable agents voices— table or JSON of available TTS voicessyllable voice-groups sample --file voice.json > sample.mp3— generates a TTS sample (binary)
Pronunciations & recording stream (#62)
syllable pronunciations upload-csv --file pron.csv --confirmsyllable pronunciations delete-csv --confirmsyllable sessions recording-stream --token <token> > recording.wav— actually streams (no buffering)
Organizations & account (#63)
syllable organizations get(renamed fromlist; old name still works as a hidden alias)syllable organizations update --display-name NAME [...]— modifies the current org via multipart/form-datasyllable users delete-account --confirm— trial-account self-removal- Org create and delete are intentionally NOT exposed via CLI — both are platform-side admin operations; use the web console for either
Safety gates (#64)
Three commands modify org-wide state and require an explicit --confirm:
pronunciations upload-csv(replaces dictionary; every live agent picks it up)pronunciations delete-csv(wipes dictionary)users delete-account(irreversible self-removal)
Without --confirm, these exit non-zero and never hit the network.
Under the hood
- New
Client.GetStream(returnsio.ReadCloser, 30-min timeout) for genuine streaming downloads - New
Client.PutMultipartFormmixes text fields with an optional file (used by org update) - Spec contract test extended to cover
/api/v1/pronunciations/csv(multipart slash convention)
Coverage status
- 163 total spec operations
- 12 deprecated (skipped)
- 151 active operations → 149 covered; the deliberately-omitted ones are
organizations createandorganizations delete
Install / upgrade
```
brew update && brew upgrade --cask syllable
syllable --version # → v1.5.0
```