Actions
Create actions, build handler chains, and test automations in Stream Kit.
Actions
Actions are the main unit of automation in Stream Kit. Each action has a handler chain (sub-actions) and one or more triggers.
Actions page
Open Actions in the sidebar.
- Groups organize actions (drag to reorder).
- Enable/disable toggles whether triggers can run the action.
- Clone duplicates an action including handlers and triggers.
- Bulk edit assigns queue, group, or enabled state to multiple actions.
- Export / Import share actions as a JSON file.
Export and import
Use Export all (or Export selected when actions are selected) to download a JSON file of your actions. Import always creates new actions — existing ones are never replaced.
- Queue assignments are stored by queue name. On import, matching queues are linked; otherwise the default queue is used. Actions with No queue stay without a queue.
- Plugin-owned actions are not included in exports.
- Triggers or handlers from plugins that are not installed still import, but show as unavailable until those plugins are available.
Action editor
Click an action to open the editor.
| Area | Purpose |
|---|---|
| Handler chain | Sub-actions run top to bottom |
| Triggers panel | Events that start this action |
| Queue | Optional queue assignment |
| Test | Run the handler chain immediately (bypasses queue) |
Handler chain rules
- Handlers call
next()to continue; omittingnext()stops the chain (used by Delay on invalid input). - Thrown errors are logged; the chain continues unless the handler stops explicitly.
- Async handlers are awaited in order.
Browse handlers in the API Reference.
Triggers panel
Add triggers from the + menu or right-click. Configure conditions per trigger. Use Test trigger to fire with sample data.
See Triggers.
Queues
New actions use the default queue. Set No queue for parallel execution, or pick a named queue to serialize runs.
See Action queues.
Variables in handlers
Use \{variableName\} in text fields. The action editor shows available variables from the trigger and earlier handlers.
See Variables.
Run script handler
Add Run script from Core handlers to run custom TypeScript in the chain. Scripts receive:
app— full Stream Kit API (toast, filesystem, plugins, actions, …)context— trigger payload(s) for the run, including mutableactionVariables
Return a plain object (for example return { greeting: 'hi' }) to expose values as {greeting} for later handlers. You can also mutate actionVariables or trigger data in place.
The editor uses Monaco with TypeScript IntelliSense. Trigger data is typed based on triggers configured on the action. Use Open in editor (after saving the action) to edit in Cursor or VS Code; changes sync back automatically.
See Run script API for examples and limits.