[PLUGIN] Script Stash - Save, edit, share, and run your command scripts

new reason to use Script Stash

Update

A convenience update: some Stashes you create may be nondestructive and shouldn’t require a prompt/confirmation every time you want to run it.

You can now set the ConfirmRun boolean field to disable confirmation when users run a Stash. The default behavior when ConfirmRun is omitted (nil) will still result in being prompted when you run the Stash.

Demo:

Bonus Feature

The UI buttons on the Stashes (Run, Edit, Delete) now have hover and click animations (a slight color change) to provide more user feedback. This update goes well with having UI feedback when ConfirmRun is disabled.

1 Like

that pretty cool
Suggestion:
Make run have 1st argument as a plugin
Useful to call plugin api

1 Like

Update

Added ctx.Plugin, which resolves to Script Stash’s instance of Plugin.

This allows Stashes to access many Plugin-only features previously not accessible, like plugin:GetMouse for detecting clicks, plugin:SelectRibbonTool for forcing a ribbon tool (or lack thereof) to be selected, and much more.

Here’s the fully updated documentation of the ctx argument (first argument) passed to the Run function of Stashes:

ctx.Selection -- The current selection in Studio, convenience for game.Selection:Get().
ctx.Plugin -- Script Stash's Plugin instance.
ctx.UI -- Mini UI library to add options to your Stash.
ctx.UI.SetDraggable(enabled: boolean)
ctx.UI.SetPosition(position: UDim2)
ctx.UI.SetAnchorPoint(anchorPoint: Vector2)
ctx.UI.Switch(name: string, defaultValue: boolean) -> (() -> boolean)
ctx.UI.Slider(name: string, defaultValue: number, min: number, max: number, step: number?) -> (() -> number)
ctx.UI.Input(name: string, defaultValue: string) -> (() -> string)
ctx.UI.Button(name: string?, buttonText: string, callback: () -> ())
ctx.UI.WaitUntilConfirmed()

Side note: ctx.UI.WaitUntilConfirmed has been in Script Stash for a while, but I’ve now added it in the context API documentation above.

[SCRIPT STASH] Failed to start ChangeHistoryService recording