CLI Command Server
CLI Command Server
Highlight Studio includes a local TCP command server that lets you control the app programmatically from your terminal, scripts, or AI agents.
How It Works
When Highlight Studio is running, it listens on localhost:9847 for incoming JSON commands. Each command is a single-line JSON object terminated by a newline character. The server responds with a JSON result for every command.
Connecting
You can connect using any tool that supports TCP sockets. For example, using netcat:
echo '{"command":"project.info"}' | nc localhost 9847
Available Commands
- record.start — Start a new screen recording with the current settings.
- record.stop — Stop the active recording and open it in the editor.
- clip.split — Split the clip at a given time. Example:
highlight-cli clip.split --at 5.0 - zoom.add — Add a zoom effect at the current playhead position.
- annotation.add — Add an annotation to the timeline.
- subtitle.generate — Trigger AI transcription on the current project.
- project.export — Export the current project with the configured settings.
- project.open — Open a project file by path.
- project.save — Save the current project.
- project.close — Close the current project.
- project.info — Get information about the current project state.
Response Format
Every command returns a JSON response with a status field ("success" or "error") and a data object with the result.