Sentinel

AppleScript

Sentinel includes a scriptable object model for AppleScript. With Sentinel installed, you can view the details of the model in Script Editor: File → Open Dictionary.

info

Job vs Script

Please note that the class representing a script is called job not script. This was necessary because script is a reserved type in AppleScript.

The commands for interacting with scripts themselves are still verb phrases: start script, stop script, restart script, get output of script, open log for script, list scripts format FORMAT. quit works out of the box as part of the standard Application suite.

Each job exposes read-only name (the identifier), folder, command, working directory, running, and uptime (seconds, 0 if not running).

Basic example

tell application "Sentinel"
    start script "Work/Build"
    get running of job "Work/Build"
    get output of script "Work/Build"
    open log for script "Work/Build"
    list scripts format json
    stop script "Work/Build"
    quit
end tell

Walkthrough: only restart if a script is actually running

The URL scheme fires blind; AppleScript lets you check first and skip the no-op:

tell application "Sentinel"
    if running of job "Work/API" then
        restart script "Work/API"
    else
        start script "Work/API"
    end if
end tell

Save this as an .scpt in Script Editor, or trigger it from Automator/osascript -e for a one-liner that’s smarter than a blind restart.

Walkthrough: fail a build if a dependency is not running

If a script (say, a local database proxy) has to be running before a build can succeed, gate the build on it from a wrapper script:

tell application "Sentinel"
    if not (running of job "Work/DB Proxy") then
        error "Work/DB Proxy is not running — start it in Sentinel before building."
    end if
end tell

Call this with osascript check-db-proxy.scpt at the top of a build script; a non-zero AppleScript error stops the build with a clear message instead of a confusing downstream connection failure.

Walkthrough: dump every script as JSON for another tool

tell application "Sentinel"
    list scripts format json
end tell

Run via osascript -e 'tell application "Sentinel" to list scripts format json' from a shell, then pipe the result into jq or any other JSON-consuming tool to build your own dashboard or status check.

More surfaces: URL scheme · Shortcuts · CLI