Skip to main content

A command line application for Streamlabs Desktop

Project description

slobs-cli

pdm-managed Ruff

A command line interface for the Streamlabs Desktop websocket API.

For an outline of past/future changes refer to: CHANGELOG


Table of Contents

Requirements

  • Python 3.11 or greater
  • Streamlabs Desktop
  • A websocket token: Settings > Mobile > Third Party Connections > API Token

Installation

with uv
uv tool install slobs-cli
with pipx
pipx install slobs-cli

The CLI should now be discoverable as slobs-cli

Configuration

Flags

  • --domain/-d: Streamlabs client domain
  • --port/-p Streamlabs client port
  • --token/-t: API Token
  • --version/-v: Print the slobs-cli version

Pass --domain, --port and --token as flags on the root command, for example:

slobs-cli --domain localhost --port 59650 --token <API token> --help

Environment Variables

Load the following values from your environment:

SLOBS_DOMAIN=localhost
SLOBS_PORT=59650
SLOBS_TOKEN=<API Token>

Flags can be used to override environment variables.

Style

Styling is opt-in, by default you will get a colourless output:

colourless

You may enable styling with the --style/-s flag:

slobs-cli --style="yellow" audio list

Available styles: red, magenta, purple, blue, cyan, green, yellow, orange, white, grey, navy, black

coloured

Optionally you may disable border colouring with the --no-border flag:

coloured-no-border

slobs-cli --style="yellow" --no-border audio list

Or with environment variables:

SLOBS_STYLE=yellow
SLOBS_STYLE_NO_BORDER=true

Commands

Scene

  • list: List all available scenes.
    • flags:

      optional

      • --id: Include scene IDs in the output.
slobs-cli scene list
  • current: Show the currently active scene.
    • flags:

      optional

      • --id: Include scene IDs in the output.
slobs-cli scene current
  • switch: Switch to a scene by its name.
    • flags:

      optional

      • --id: Include scene IDs in the output.
      • --preview: Switch the preview scene.
    • args: <scene_name>

slobs-cli scene switch "slobs-test-scene-1"

Stream

  • start: Start the stream.
slobs-cli stream start
  • stop: Stop the stream.
slobs-cli stream stop
  • status: Get the current stream status.
slobs-cli stream status
  • toggle: Toggle the stream status.
slobs-cli stream toggle

Record

  • start: Start recording.
slobs-cli record start
  • stop: Stop recording.
slobs-cli record stop
  • status: Get recording status.
slobs-cli record status
  • toggle: Toggle recording status.
slobs-cli record toggle

Audio

  • list: List all audio sources.
    • flags:

      optional

      • --id: Include audio source IDs in the output.
slobs-cli audio list
  • mute: Mute an audio source by name.
    • args: <source_name>
slobs-cli audio mute "Mic/Aux"
  • unmute: Unmute an audio source by name.
    • args: <source_name>
slobs-cli audio unmute "Mic/Aux"
  • toggle: Toggle mute state of an audio source by name.
    • args: <source_name>
slobs-cli audio toggle "Mic/Aux"
  • status: Get the mute status of an audio source by name.
slobs-cli audio status "Mic/Aux"

Replay Buffer

  • start: Start the replay buffer.
slobs-cli replaybuffer start
  • stop: Stop the replay buffer.
slobs-cli replaybuffer stop
  • status: Get the current status of the replay buffer.
slobs-cli replaybuffer status
  • save: Save the current replay buffer.
slobs-cli replaybuffer save

Studio Mode

  • enable: Enable studio mode.
slobs-cli studiomode enable
  • disable: Disable studio mode.
slobs-cli studiomode disable
  • toggle: Toggle studio mode.
slobs-cli studiomode toggle
  • status: Check the status of studio mode.
slobs-cli studiomode status
  • force-transition: Force a transition in studio mode.
slobs-cli studiomode force-transition

Scene Collection

  • list: List all scene collections.
    • flags:

      optional

      • --id: Include scenecollection IDs in the output.
slobs-cli scenecollection list
  • create: Create a new scene collection.
    • args: <scenecollection_name>
slobs-cli scenecollection create "NewCollection"
  • delete: Delete a scene collection by name.
    • args: <scenecollection_name>
slobs-cli scenecollection delete "ExistingCollection"
  • load: Load a scene collection by name.
    • args: <scenecollection_name>
slobs-cli scenecollection load "ExistingCollection"
  • rename: Rename a scene collection.
    • args: <scenecollection_name> <new_name>
slobs-cli scenecollection rename "ExistingCollection" "NewName"

Special Thanks

License

slobs-cli is distributed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

slobs_cli-0.11.5.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

slobs_cli-0.11.5-py3-none-any.whl (15.5 kB view details)

Uploaded Python 3

File details

Details for the file slobs_cli-0.11.5.tar.gz.

File metadata

  • Download URL: slobs_cli-0.11.5.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.26.3 CPython/3.14.2 Linux/6.11.0-1018-azure

File hashes

Hashes for slobs_cli-0.11.5.tar.gz
Algorithm Hash digest
SHA256 0676be2a8bad202abbbdbda7783731cce0a4e0d02c028a2b3f590c1603f3c82f
MD5 9395a4fee265b63d9d2dafbbcaf71e6c
BLAKE2b-256 468afca770cdda2f7b4e0bdcee64b155b6b549620d701ae40f7d899d226a3761

See more details on using hashes here.

File details

Details for the file slobs_cli-0.11.5-py3-none-any.whl.

File metadata

  • Download URL: slobs_cli-0.11.5-py3-none-any.whl
  • Upload date:
  • Size: 15.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: pdm/2.26.3 CPython/3.14.2 Linux/6.11.0-1018-azure

File hashes

Hashes for slobs_cli-0.11.5-py3-none-any.whl
Algorithm Hash digest
SHA256 38f7a269a3304aceb57d2dfb51eacd2b62513be343af4ed5a6a2617729e2bcf8
MD5 b67c180e7e3b5e513358e22467e66afd
BLAKE2b-256 2c2f39d854f8159f306e846e89dd1144227b90c6c1fffa9efc7deac362195d53

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page