2025-06-10 22:53:14 +01:00
2025-06-10 20:00:28 +01:00
2025-06-10 19:46:39 +01:00
2025-06-11 01:32:24 +01:00
2025-06-10 22:53:14 +01:00
2025-06-11 01:42:05 +01:00

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.10 or greater
  • Streamlabs Desktop
  • A websocket token: Settings > Remote Control > 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

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.

Commands

Scene

  • list: List all available scenes.
slobs-cli scene list
  • current: Show the currently active scene.
slobs-cli scene current
  • switch: Switch to a scene by its name.
    • flags:

      optional

      • --preview: Switch the preview scene only.
    • 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.
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"

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

Special Thanks

License

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

Description
A command line interface for the Streamlabs Desktop websocket API.
Readme MIT 215 KiB
Languages
Python 100%