README initial commit

add CHANGELOG
This commit is contained in:
onyx-and-iris 2025-06-10 19:46:39 +01:00
parent 6a2464f10b
commit eb2ca22568
2 changed files with 245 additions and 1 deletions

12
CHANGELOG.md Normal file
View File

@ -0,0 +1,12 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
# [0.7.3] - 2025-06-10
### Added
- Initial release.

234
README.md
View File

@ -1 +1,233 @@
# sld-cli
# slobs-cli
[![pdm-managed](https://img.shields.io/endpoint?url=https%3A%2F%2Fcdn.jsdelivr.net%2Fgh%2Fpdm-project%2F.github%2Fbadge.json)](https://pdm-project.org)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
A command line interface for Streamlabs Desktop
For an outline of past/future changes refer to: [CHANGELOG](CHANGELOG.md)
-----
## Table of Contents
- [Installation](#installation)
- [Configuration](#configuration)
- [Commands](#root-typer)
- [License](#license)
## Requirements
- Python 3.12 or greater
- [Streamlabs Desktop][sl-desktop]
## Installation
##### *with uv*
```console
uv tool install slobs-cli
```
##### *with pipx*
```console
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: Remote Control API Token
Pass `--domain`, `--port` and `--password` as flags on the root command, for example:
```console
slobs-cli --domain localhost --port 59650 --token <websocket password> --help
```
#### Environment Variables
Load the following values from your environment:
```env
SLOBS_DOMAIN=localhost
SLOBS_PORT=59650
SLOBS_TOKEN=<API Token>
```
Flags can be used to override environment variables.
[sl-desktop]: https://streamlabs.com/streamlabs-live-streaming-software?srsltid=AfmBOopnswGBgEyvVSi2DIc_vsGovKn2HQZyLw1Cg6LEo51OJhONXnAX
## Commands
#### Scene
- list: List all available scenes.
```console
slobs-cli scene list
```
- current: Show the currently active scene.
```console
slobs-cli scene current
```
- switch: Switch to a scene by its name.
- flags:
*optional*
- --preview: Switch the preview scene only.
- args: <scene_name>
```console
slobs-cli scene switch "slobs-test-scene-1"
```
#### Stream
- start: Start the stream.
```console
slobs-cli stream start
```
- status: Get the current stream status.
```console
slobs-cli stream start
```
- stop: Stop the stream.
```console
slobs-cli stream stop
```
- toggle: Toggle the stream status.
```console
slobs-cli stream toggle
```
#### Record
- start Start recording.
```console
slobs-cli record start
```
- status Get recording status.
```console
slobs-cli record status
```
- stop Stop recording.
```console
slobs-cli record stop
```
- toggle Toggle recording status.
```console
slobs-cli record status
```
#### Audio
- list: List all audio sources.
```console
slobs-cli audio list
```
- mute: Mute an audio source by name.
- args: <source_name>
```console
slobs-cli audio list
```
- unmute: Unmute an audio source by name.
- args: <source_name>
```console
slobs-cli audio list
```
- toggle: Toggle mute state of an audio source by name.
- args: <source_name>
```console
slobs-cli audio list
```
#### Replay Buffer
- start Start the replay buffer.
```console
slobs-cli replaybuffer start
```
- stop: Stop the replay buffer.
```console
slobs-cli replaybuffer stop
```
- status: Get the current status of the replay buffer.
```console
slobs-cli replaybuffer status
```
- save: Save the current replay buffer.
```console
slobs-cli replaybuffer save
```
#### Studio Mode
- enable: Enable studio mode.
```console
slobs-cli studiomode enable
```
- disable: Disable studio mode.
```console
slobs-cli studiomode disable
```
- toggle: Toggle studio mode.
```console
slobs-cli studiomode toggle
```
- status: Check the status of studio mode.
```console
slobs-cli studiomode status
```
- force-transition: Force a transition in studio mode.
```console
slobs-cli studiomode force-transition
```