CLI-Anything cli-anything-obs-studio
git clone https://github.com/HKUDS/CLI-Anything
T=$(mktemp -d) && git clone --depth=1 https://github.com/HKUDS/CLI-Anything "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/cli-anything-obs-studio" ~/.claude/skills/hkuds-cli-anything-cli-anything-obs-studio && rm -rf "$T"
skills/cli-anything-obs-studio/SKILL.mdcli-anything-obs_studio
A stateful command-line interface for OBS Studio scene collection editing, following the same patterns as the Blender CLI harness. Uses a JSON scene collection format. No OBS installation required for editing.
Installation
This CLI is installed as part of the cli-anything-obs_studio package:
pip install cli-anything-obs_studio
Prerequisites:
- Python 3.10+
- obs_studio must be installed on your system
Usage
Basic Commands
# Show help cli-anything-obs_studio --help # Start interactive REPL mode cli-anything-obs_studio # Create a new project cli-anything-obs_studio project new -o project.json # Run with JSON output (for agent consumption) cli-anything-obs_studio --json project info -p project.json
REPL Mode
When invoked without a subcommand, the CLI enters an interactive REPL session:
cli-anything-obs_studio # Enter commands interactively with tab-completion and history
Command Groups
Project
Project management commands.
| Command | Description |
|---|---|
| Create a new OBS scene collection |
| Open an existing project |
| Save the current project |
| Show project information |
| Print raw project JSON |
Scene Group
Scene management commands.
| Command | Description |
|---|---|
| Add a new scene |
| Remove a scene by index |
| Duplicate a scene |
| Set the active scene |
| List all scenes |
Source Group
Source management commands.
| Command | Description |
|---|---|
| Add a source to a scene |
| Remove a source by index |
| Duplicate a source |
| Set a source property (name, visible, locked, opacity, rotation) |
| Transform a source (position, size, crop, rotation) |
| List all sources in a scene |
Filter Group
Filter management commands.
| Command | Description |
|---|---|
| Add a filter to a source |
| Remove a filter from a source |
| Set a filter parameter |
| List all filters on a source |
| List all available filter types |
Audio Group
Audio management commands.
| Command | Description |
|---|---|
| Add a global audio source |
| Remove a global audio source |
| Set volume for an audio source (0.0-3.0) |
| Mute an audio source |
| Unmute an audio source |
| Set audio monitoring type |
| List all audio sources |
Transition Group
Transition management commands.
| Command | Description |
|---|---|
| Add a transition |
| Remove a transition |
| Set the active transition |
| Set transition duration in milliseconds |
| List all transitions |
Output Group
Output/streaming/recording configuration.
| Command | Description |
|---|---|
| Configure streaming settings |
| Configure recording settings |
| Configure output settings |
| Show current output configuration |
| List available encoding presets |
Session
Session management commands.
| Command | Description |
|---|---|
| Show session status |
| Undo the last operation |
| Redo the last undone operation |
| Show undo history |
Examples
Create a New Project
Create a new obs_studio project file.
cli-anything-obs_studio project new -o myproject.json # Or with JSON output for programmatic use cli-anything-obs_studio --json project new -o myproject.json
Interactive REPL Session
Start an interactive session with undo/redo support.
cli-anything-obs_studio # Enter commands interactively # Use 'help' to see available commands # Use 'undo' and 'redo' for history navigation
State Management
The CLI maintains session state with:
- Undo/Redo: Up to 50 levels of history
- Project persistence: Save/load project state as JSON
- Session tracking: Track modifications and changes
Output Formats
All commands support dual output modes:
- Human-readable (default): Tables, colors, formatted text
- Machine-readable (
flag): Structured JSON for agent consumption--json
# Human output cli-anything-obs_studio project info -p project.json # JSON output for agents cli-anything-obs_studio --json project info -p project.json
For AI Agents
When using this CLI programmatically:
- Always use
flag for parseable output--json - Check return codes - 0 for success, non-zero for errors
- Parse stderr for error messages on failure
- Use absolute paths for all file operations
- Verify outputs exist after export operations
More Information
- Full documentation: See README.md in the package
- Test coverage: See TEST.md in the package
- Methodology: See HARNESS.md in the cli-anything-plugin
Version
1.0.0