Runbooks v0.25.0 Release: Iframe Exchanges, Linked Defaults, and Behavior Changes
gruntwork-io released runbooks v0.25.0 on October 5, 2026. It is a smaller release aimed mostly at runbook authors. The headline change is that pages loaded from the runbook’s assets/ folder can now receive input values and set outputs, so they can serve as custom forms or pickers. There are also two behavior changes to review before you upgrade.
The full release notes and downloads are on the GitHub release page.
Two behavior changes to check first
First, Macs on macOS 12 no longer get updates. The move to Electron 44 needs macOS 13 or later, and v0.24.0 was the last release offered to Monterey. If you run macOS 12, upgrade to Ventura or later to keep receiving new versions.
Second, a variable default in an <Inputs> or <Template> block that references a missing block’s output is now an error. If no block on the page has the referenced ID, the field never fills in, so Runbooks reports the problem up front: the block turns red, Generate will not run, and the issues banner counts it.
Iframe pages can exchange values
The <Iframe> block gained two way communication with local pages. A page under assets/ can receive input values via an inputsId attribute and can set declared outputs with a runbooks:set-outputs postMessage. That makes it usable as a custom picker or form inside a runbook.
Two limits worth noting: values must be strings, and external sites cannot exchange values. The page receives input values in full, including variables marked sensitive, so give it only the <Inputs> blocks it actually needs.
Runbooks also now watches script files that <Command> and <Check> blocks run with path. Edit the script while the runbook is open and the block shows a diff, but it keeps running the loaded version until you click Reload script.
Linked defaults got a polish pass too. Fields whose default uses other variables now show the resolved value with a link icon instead of raw {{ }} syntax, and the value follows the fields it depends on as you edit.
Bug fixes in v0.25.0
Three fixes stand out. hasKey guards now cover only the branch they open, so blocks that read a guarded output elsewhere wait for it instead of failing to render. Markdown files under Generated files keep text that looks like an HTML tag inside fenced code blocks, such as <your-profile> in an aws sso login --profile <your-profile> example. The Menu and Download Logs popups close when the window loses focus.
The remaining work is internal: oxlint now enforces the layering rules, lint warnings fail CI, and Dependabot proposes weekly dependency updates. Nothing here changes runbook behavior.
Where to get it
- Release page: runbooks v0.25.0
- Repository: https://github.com/gruntwork-io/runbooks
- Tag:
v0.25.0